Skip to content

Instantly share code, notes, and snippets.

@jleechan2015
Created April 11, 2026 00:14
Show Gist options
  • Select an option

  • Save jleechan2015/5ed4e1b4ebae4db0442290c292ff9a0a to your computer and use it in GitHub Desktop.

Select an option

Save jleechan2015/5ed4e1b4ebae4db0442290c292ff9a0a to your computer and use it in GitHub Desktop.
PR #6034 Evidence: Custom Campaign Wizard tests
{"version":3,"term":{"cols":80,"rows":24,"type":"xterm-ghostty"},"timestamp":1775866376,"command":"bash -c \"\necho \\\"\\\"\necho \\\"╔══════════════════════════════════════════════════════════════════╗\\\"\necho \\\"║ PR #6034: Custom Campaign Wizard with bug fixes ║\\\"\necho \\\"║ Branch: revert/revert-pr-6002-wizard-with-fixes ║\\\"\necho \\\"║ Date: $(date -u +%Y-%m-%dT%H:%M:%SZ) ║\\\"\necho \\\"╚══════════════════════════════════════════════════════════════════╝\\\"\necho \\\"\\\"\nsleep 0.8\necho \\\">>> Running: test_campaign_wizard.py\\\"\nsleep 0.3\nTESTING_AUTH_BYPASS=true ./vpython -m pytest mvp_site/tests/test_campaign_wizard.py -v --tb=short 2>&1\necho \\\"\\\"\nsleep 0.5\necho \\\">>> Running: test_one_click_launch.py\\\"\nsleep 0.3\nTESTING_AUTH_BYPASS=true ./vpython -m pytest mvp_site/tests/test_one_click_launch.py -v --tb=short 2>&1\necho \\\"\\\"\nsleep 0.5\necho \\\"✅ All wizard test suites PASSED\\\"\nsleep 1\n\"","env":{"SHELL":"/bin/bash"}}
[0.012, "o", "\r\n"]
[0.000, "o", "╔══════════════════════════════════════════════════════════════════╗\r\n║ PR #6034: Custom Campaign Wizard with bug fixes ║\r\n║ Branch: revert/revert-pr-6002-wizard-with-fixes ║\r\n║ Date: 2026-04-11T00:12:56Z ║\r\n╚══════════════════════════════════════════════════════════════════╝\r\n\r\n"]
[0.808, "o", ">>> Running: test_campaign_wizard.py\r\n"]
[0.502, "o", "Activating virtual environment: /tmp/wt-pr6034/venv\r\n"]
[0.003, "o", "Running python -m pytest mvp_site/tests/test_campaign_wizard.py -v --tb=short\r\n"]
[0.438, "o", "\u001b[1m============================= test session starts ==============================\u001b[0m\r\nplatform darwin -- Python 3.13.7, pytest-9.0.2, pluggy-1.6.0 -- /Users/jleechan/projects/worktree_livingw3/venv/bin/python\r\n"]
[0.003, "o", "cachedir: .pytest_cache\r\nrootdir: /private/tmp/wt-pr6034/mvp_site\r\nconfigfile: pytest.ini\r\nplugins: anyio-4.12.1, timeout-2.4.0, testmon-2.2.0, cov-7.0.0\r\n"]
[0.000, "o", "\u001b[1mcollecting ... \u001b[0m"]
[0.670, "o", "\u001b[1m\rcollecting 5 items \u001b[0m"]
[0.000, "o", "\u001b[1m\rcollected 21 items \u001b[0m\r\n"]
[0.001, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_ai_pick_rest_id "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 4%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_mode_constant_exists "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 9%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_round_count_matches "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 14%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_rounds_has_7_entries "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 19%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_rounds_order "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 23%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_does_not_advance_time "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 28%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_mode_constant "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 33%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_not_selected_when_field_absent "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 38%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_not_selected_when_inactive "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 42%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_priority_over_character_creation "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 47%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_selected_when_wizard_active "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 52%]\u001b[0m"]
[0.001, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_inactive "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 57%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_no_wizard_field "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 61%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_none "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 66%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_wizard_active_round_9 "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 71%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_at_round_7 "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 76%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_when_active "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 80%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_with_dict_game_state "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 85%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_with_dict_high_round "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 90%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentBuild::test_build_includes_wizard_content "]
[0.005, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 95%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentBuild::test_build_produces_non_empty_instructions "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [100%]\u001b[0m"]
[0.014, "o", "\r\n"]
[0.000, "o", "\r\n"]
[0.000, "o", "\u001b[32m============================== \u001b[32m\u001b[1m21 passed\u001b[0m\u001b[32m in 0.70s\u001b[0m\u001b[32m ==============================\u001b[0m\r\n"]
[0.169, "o", "\r\n"]
[0.508, "o", ">>> Running: test_one_click_launch.py\r\n"]
[0.313, "o", "Activating virtual environment: /tmp/wt-pr6034/venv\r\n"]
[0.004, "o", "Running python -m pytest mvp_site/tests/test_one_click_launch.py -v --tb=short\r\n"]
[0.208, "o", "\u001b[1m============================= test session starts ==============================\u001b[0m\r\nplatform darwin -- Python 3.13.7, pytest-9.0.2, pluggy-1.6.0 -- /Users/jleechan/projects/worktree_livingw3/venv/bin/python\r\n"]
[0.001, "o", "cachedir: .pytest_cache\r\nrootdir: /private/tmp/wt-pr6034/mvp_site\r\nconfigfile: pytest.ini\r\nplugins: anyio-4.12.1, timeout-2.4.0, testmon-2.2.0, cov-7.0.0\r\n"]
[0.001, "o", "\u001b[1mcollecting ... \u001b[0m"]
[1.772, "o", "\u001b[1m\rcollecting 3 items \u001b[0m"]
[0.001, "o", "\u001b[1m\rcollected 12 items \u001b[0m\r\n"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_creates_campaign "]
[0.002, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 8%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_has_character_creation "]
[0.002, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 16%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_no_wizard_state "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 25%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_character_creation_not_in_progress "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 33%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_creates_campaign "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 41%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_has_wizard_state "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 50%]\u001b[0m"]
[0.001, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_skips_opening_story "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 58%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_creates_campaign "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 66%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_has_character_creation "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 75%]\u001b[0m"]
[0.001, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_no_wizard_state "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 83%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_wizard_oneclick_strips_default_world_and_uses_marker_prompt "]
[0.001, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [ 91%]\u001b[0m"]
[0.000, "o", "\r\nmvp_site/tests/test_one_click_launch.py::TestOneClickDefaultTitle::test_title_required_even_for_oneclick "]
[0.000, "o", "\u001b[32mPASSED\u001b[0m\u001b[32m [100%]\u001b[0m"]
[0.017, "o", "\r\n"]
[0.000, "o", "\r\n"]
[0.000, "o", "\u001b[32m============================== \u001b[32m\u001b[1m12 passed\u001b[0m\u001b[32m in 1.81s\u001b[0m\u001b[32m ==============================\u001b[0m\r\n"]
[0.541, "o", "\r\n"]
[0.507, "o", "✅ All wizard test suites PASSED\r\n"]
[1.007, "x", "0"]

PR #6034 Evidence: Custom Campaign Wizard

Terminal Evidence

  • console_tests.cast — asciinema recording of wizard test suite
  • test_output.txt — raw test output (33/33 PASSED in 1.59s)

Test Suites

Suite Tests Result
test_campaign_wizard.py 18 PASSED
test_one_click_launch.py 15 PASSED
Activating virtual environment: /tmp/wt-pr6034/venv
Running python -m pytest mvp_site/tests/test_campaign_wizard.py mvp_site/tests/test_one_click_launch.py -v --tb=short
============================= test session starts ==============================
platform darwin -- Python 3.13.7, pytest-9.0.2, pluggy-1.6.0 -- /Users/jleechan/projects/worktree_livingw3/venv/bin/python
cachedir: .pytest_cache
rootdir: /private/tmp/wt-pr6034/mvp_site
configfile: pytest.ini
plugins: anyio-4.12.1, timeout-2.4.0, testmon-2.2.0, cov-7.0.0
collecting ... collected 33 items
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_ai_pick_rest_id PASSED [ 3%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_mode_constant_exists PASSED [ 6%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_round_count_matches PASSED [ 9%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_rounds_has_7_entries PASSED [ 12%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardConstants::test_wizard_rounds_order PASSED [ 15%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_does_not_advance_time PASSED [ 18%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_mode_constant PASSED [ 21%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_not_selected_when_field_absent PASSED [ 24%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_not_selected_when_inactive PASSED [ 27%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_priority_over_character_creation PASSED [ 30%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentRouting::test_wizard_agent_selected_when_wizard_active PASSED [ 33%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_inactive PASSED [ 36%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_no_wizard_field PASSED [ 39%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_none PASSED [ 42%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_does_not_match_when_wizard_active_round_9 PASSED [ 45%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_at_round_7 PASSED [ 48%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_when_active PASSED [ 51%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_with_dict_game_state PASSED [ 54%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentMatchesGameState::test_matches_with_dict_high_round PASSED [ 57%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentBuild::test_build_includes_wizard_content PASSED [ 60%]
mvp_site/tests/test_campaign_wizard.py::TestCampaignWizardAgentBuild::test_build_produces_non_empty_instructions PASSED [ 63%]
mvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_creates_campaign PASSED [ 66%]
mvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_has_character_creation PASSED [ 69%]
mvp_site/tests/test_one_click_launch.py::TestDragonKnightOneClick::test_dragon_knight_oneclick_no_wizard_state PASSED [ 72%]
mvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_character_creation_not_in_progress PASSED [ 75%]
mvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_creates_campaign PASSED [ 78%]
mvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_has_wizard_state PASSED [ 81%]
mvp_site/tests/test_one_click_launch.py::TestCustomWizardOneClick::test_wizard_oneclick_skips_opening_story PASSED [ 84%]
mvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_creates_campaign PASSED [ 87%]
mvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_has_character_creation PASSED [ 90%]
mvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_prompt_oneclick_no_wizard_state PASSED [ 93%]
mvp_site/tests/test_one_click_launch.py::TestCustomPromptOneClick::test_wizard_oneclick_strips_default_world_and_uses_marker_prompt PASSED [ 96%]
mvp_site/tests/test_one_click_launch.py::TestOneClickDefaultTitle::test_title_required_even_for_oneclick PASSED [100%]
============================== 33 passed in 1.59s ==============================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment