Skip to content

Instantly share code, notes, and snippets.

@jleechan2015
Created May 21, 2026 10:15
Show Gist options
  • Select an option

  • Save jleechan2015/48bf7f938bb9f938c8f419dd7fc8859a to your computer and use it in GitHub Desktop.

Select an option

Save jleechan2015/48bf7f938bb9f938c8f419dd7fc8859a to your computer and use it in GitHub Desktop.
PR #6968 evidence — test_level_up_organic iteration_005 — WARN→PASS

Evidence Package: test_level_up_organic

Package Manifest

  • Test Name: test_level_up_organic
  • Run ID: test_level_up_organic-005-20260521T100100
  • Iteration: 5
  • Bundle Version: 1.2.0
  • Collected At (UTC): 2026-05-21T10:01:00.047078+00:00
  • Repository: worldarchitect.ai
  • Branch: fix/level-up-extra-action-post-finish
  • Commit: c4f9e786d5c1fd42fe2462faa7f12727fdbc2fdf
  • Merge Base: 652274ba13ada044a01750c51dbd1ec81194e11e
  • Commits Ahead of Main: 25

Git Provenance

.github/workflows/green-gate.yml               |   1 +
 docs/design/pr-designs/pr-6968.html            | 151 +++++++++
 docs/design/pr-designs/pr-6968.md              |  65 ++++
 mvp_site/agents.py                             |   9 +
 testing_mcp/core/test_level_up_organic.py      | 150 ++++++++-
 testing_mcp/test_level_up_finish_return_bug.py | 439 -------------------------
 testing_mcp/test_smoke.py                      |   7 +-
 7 files changed, 370 insertions(+), 452 deletions(-)

Server Runtime

  • Port: 8022
  • PID: 25286
  • Command: /opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info

Environment Variables

  • WORLDAI_DEV_MODE: true
  • TESTING: None
  • MOCK_SERVICES_MODE: false
  • GOOGLE_APPLICATION_CREDENTIALS: [SET - file:serviceAccountKey.json]
  • WORLDAI_GOOGLE_APPLICATION_CREDENTIALS: [SET - file:serviceAccountKey.json]
  • FIRESTORE_EMULATOR_HOST: None
  • PORT: 8022
  • FIREBASE_PROJECT_ID: worldarchitecture-ai
  • GEMINI_API_KEY: [SET - 39 chars]
  • LLM_REQUEST_RESPONSE_CAPTURE_PATH: /tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/llm_request_responses_1779357261326.jsonl
  • HTTP_REQUEST_RESPONSE_CAPTURE_PATH: /tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/http_request_responses_1779357261326.jsonl
  • GEMINI_HTTP_REQUEST_RESPONSE_CAPTURE_PATH: /tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/gemini_http_request_responses_1779357261326.jsonl
  • MCP_TEST_PROVIDER_HTTP_CAPTURE_PATH: /tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/provider_http_request_responses_1779357261326.jsonl

Files in This Bundle

  • README.md - This manifest
  • methodology.md - Testing methodology
  • evidence.md - Evidence summary with Claim→Artifact Map and Coverage Matrix
  • notes.md - Additional context, TODOs, follow-ups
  • metadata.json - Machine-readable metadata
  • assertions.json - Strict before/after parity assertions (if present)
  • run.json - Test results
    • streaming_evidence.json - Normalized streaming evidence summary
    • request_responses.jsonl - Raw MCP request/response payloads (if present)
    • llm_request_responses.jsonl - Raw LLM request/response payloads (if present)
    • http_request_responses.jsonl - Raw local-server HTTP request/response payloads (if present)
    • gemini_http_request_responses.jsonl - Raw Gemini transport HTTP traces (if present)
    • artifacts/ - Additional evidence files

Evidence Summary: test_level_up_organic

Test Results

  • Total Scenarios: 4

  • Scenario Validation Passed: 3

  • Scenario Validation Failed: 1

  • Scenario Validation Pass Rate: 75.0%

  • Raw LLM Layer Passed: 1/2 (50.0%)

  • Post-Processing Campaign Capture Passed: 1

  • Post-Processing Campaign Capture Failed: 0

  • Post-Processing Campaign Capture Pass Rate: 100.0%

Scenario Results

finish_intent_prompt_and_classifier

  • Status: ✅ PASS

single_organic_level_up

  • Status: ✅ PASS
  • Campaign ID: aTzwFF3kduxP6aZOc9WR

EVIDENCE_SIGNATURE_GUARD

  • Status: ✅ PASS

PROVENANCE_VALIDATION

  • Status: ❌ FAIL
  • Errors: ['Git commit drift detected: start=9e42b4ee, end=c4f9e786. Evidence bundle requires stable commit.']

Provenance Chain

  • Git HEAD: c4f9e786d5c1fd42fe2462faa7f12727fdbc2fdf
  • Test Timestamp: 2026-05-21T10:01:00.047078+00:00
  • Server PID: 25286

Claim → Artifact Map

Claim File Key Field(s)
Scenario validation passed: 3/4 run.json scenarios[].passed, scenarios[].errors
Campaign post-processing capture passed: 1/1 run.json campaign_capture_status[*].status
Streaming evidence normalized streaming_evidence.json summary., scenarios[].chunk_count_observed
Bundle artifact inventory artifacts/collection_log.txt core_files, jsonl_captures, campaigns_dir
MCP request/response captured request_responses.jsonl Full request/response pairs
Local server HTTP request/response captured http_request_responses.jsonl http_request/http_response entries
LLM request/response stream captured llm_request_responses.jsonl request/response entries (type field)
Gemini HTTP transport captured gemini_http_request_responses.jsonl http_request/http_response/transport_error entries
Server execution log artifacts/server.log Raw server output
Git provenance metadata.json git_provenance.git_head = c4f9e786...

Coverage Matrix

Scenario Status Campaign ID
finish_intent_prompt_and_classifier ✅ Pass None
single_organic_level_up ✅ Pass aTzwFF3k...
EVIDENCE_SIGNATURE_GUARD ✅ Pass N/A
PROVENANCE_VALIDATION ❌ Fail N/A

Evidence Integrity

  • All files in this bundle have corresponding .sha256 checksum files

  • Checksums use local basename paths so per-file verification works from each artifact directory

  • ⚠️ Server warnings detected (see artifacts/server.log)

  • Warning: ACTION_RESOLUTION_MISSING_FIELDS

  • Warning: SYSTEM_INSTRUCTION_EMERGENCY_COMPACT

  • Warning: ENTITY_TRACKING_CAPPED

What This Evidence Proves vs. Does NOT Prove

Proves:

  • Core logic and scenario validation for test_level_up_organic
  • Scenario execution pass rates (3/4)

Does NOT Prove:

  • Production server behavior (tested on local server unless otherwise noted)
  • Performance under load (single-request tests)
  • Edge cases not covered by scenarios
{
"test_name": "test_level_up_organic",
"run_id": "test_level_up_organic-005-20260521T100100",
"iteration": 5,
"bundle_version": "1.2.0",
"timestamp": "2026-05-21T10:01:00.047078+00:00",
"bundle_timestamp": "2026-05-21T10:01:00.047078+00:00",
"evidence_mode": "lightweight_prompt_tracking",
"evidence_mode_notes": "System instruction captured as filenames + char_count (not full text). Raw LLM request/response payloads captured in request_responses.jsonl. Server logs in artifacts/. Bundle file inventory in artifacts/collection_log.txt.",
"git_provenance": {
"git_head": "c4f9e786d5c1fd42fe2462faa7f12727fdbc2fdf",
"git_branch": "fix/level-up-extra-action-post-finish",
"merge_base": "652274ba13ada044a01750c51dbd1ec81194e11e",
"commits_ahead_of_main": 25,
"diff_stat_vs_main": ".github/workflows/green-gate.yml | 1 +\n docs/design/pr-designs/pr-6968.html | 151 +++++++++\n docs/design/pr-designs/pr-6968.md | 65 ++++\n mvp_site/agents.py | 9 +\n testing_mcp/core/test_level_up_organic.py | 150 ++++++++-\n testing_mcp/test_level_up_finish_return_bug.py | 439 -------------------------\n testing_mcp/test_smoke.py | 7 +-\n 7 files changed, 370 insertions(+), 452 deletions(-)",
"working_tree_dirty": false,
"working_tree_staged_changes": 0,
"working_tree_unstaged_changes": 0,
"working_tree_changed_files": [],
"working_tree_diff_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
"server": {
"base_url": "http://127.0.0.1:8022",
"hostname": "127.0.0.1",
"mode": "local",
"port": "8022",
"pid": 25286,
"process_cmdline": "/opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info",
"env_vars": {
"WORLDAI_DEV_MODE": "true",
"TESTING": null,
"MOCK_SERVICES_MODE": "false",
"GOOGLE_APPLICATION_CREDENTIALS": "[SET - file:serviceAccountKey.json]",
"WORLDAI_GOOGLE_APPLICATION_CREDENTIALS": "[SET - file:serviceAccountKey.json]",
"FIRESTORE_EMULATOR_HOST": null,
"PORT": "8022",
"FIREBASE_PROJECT_ID": "worldarchitecture-ai",
"GEMINI_API_KEY": "[SET - 39 chars]",
"LLM_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/llm_request_responses_1779357261326.jsonl",
"HTTP_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/http_request_responses_1779357261326.jsonl",
"GEMINI_HTTP_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/gemini_http_request_responses_1779357261326.jsonl",
"MCP_TEST_PROVIDER_HTTP_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/provider_http_request_responses_1779357261326.jsonl"
},
"lsof_output": "COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME\nPython 25286 jleechan 5u IPv4 0x851254dfa64d3ee9 0t0 TCP *:8022 (LISTEN)\nPython 25293 jleechan 5u IPv4 0x851254dfa64d3ee9 0t0 TCP *:8022 (LISTEN)",
"ps_output": "PID USER ELAPSED ARGS\n25286 jleechan 06:28 /opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info"
},
"provenance": {
"git_fetch_origin_main": {
"returncode": 0,
"stdout": null,
"stderr": "From https://github.com/jleechanorg/worldarchitect.ai\n * branch main -> FETCH_HEAD\nAuto packing the repository in background for optimum performance.\nSee \"git help gc\" for manual housekeeping.\nwarning: The last gc run reported the following. Please correct the root cause\nand remove /Users/jleechan/projects/worldarchitect.ai/.git/worktrees/worktree_level_redundant/gc.log\nAutomatic cleanup will not be performed until the file is removed.\n\nwarning: There are too many unreachable loose objects; run 'git prune' to remove them."
},
"git_head": "c4f9e786d5c1fd42fe2462faa7f12727fdbc2fdf",
"git_branch": "fix/level-up-extra-action-post-finish",
"merge_base": "652274ba13ada044a01750c51dbd1ec81194e11e",
"commits_ahead_of_main": 25,
"diff_stat_vs_main": ".github/workflows/green-gate.yml | 1 +\n docs/design/pr-designs/pr-6968.html | 151 +++++++++\n docs/design/pr-designs/pr-6968.md | 65 ++++\n mvp_site/agents.py | 9 +\n testing_mcp/core/test_level_up_organic.py | 150 ++++++++-\n testing_mcp/test_level_up_finish_return_bug.py | 439 -------------------------\n testing_mcp/test_smoke.py | 7 +-\n 7 files changed, 370 insertions(+), 452 deletions(-)",
"working_tree_staged_changes": 0,
"working_tree_unstaged_changes": 0,
"working_tree_untracked_files": 0,
"working_tree_changed_files": [],
"working_tree_diff_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"working_tree_dirty": false,
"server": {
"base_url": "http://127.0.0.1:8022",
"hostname": "127.0.0.1",
"mode": "local",
"port": "8022",
"pid": 25286,
"process_cmdline": "/opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info",
"env_vars": {
"WORLDAI_DEV_MODE": "true",
"TESTING": null,
"MOCK_SERVICES_MODE": "false",
"GOOGLE_APPLICATION_CREDENTIALS": "[SET - file:serviceAccountKey.json]",
"WORLDAI_GOOGLE_APPLICATION_CREDENTIALS": "[SET - file:serviceAccountKey.json]",
"FIRESTORE_EMULATOR_HOST": null,
"PORT": "8022",
"FIREBASE_PROJECT_ID": "worldarchitecture-ai",
"GEMINI_API_KEY": "[SET - 39 chars]",
"LLM_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/llm_request_responses_1779357261326.jsonl",
"HTTP_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/http_request_responses_1779357261326.jsonl",
"GEMINI_HTTP_REQUEST_RESPONSE_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/gemini_http_request_responses_1779357261326.jsonl",
"MCP_TEST_PROVIDER_HTTP_CAPTURE_PATH": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/iteration_005/provider_http_request_responses_1779357261326.jsonl"
},
"lsof_output": "COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME\nPython 25286 jleechan 5u IPv4 0x851254dfa64d3ee9 0t0 TCP *:8022 (LISTEN)\nPython 25293 jleechan 5u IPv4 0x851254dfa64d3ee9 0t0 TCP *:8022 (LISTEN)",
"ps_output": "PID USER ELAPSED ARGS\n25286 jleechan 06:28 /opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info"
},
"timestamp": "2026-05-21T10:00:59.497379+00:00",
"test_file": "/Users/jleechan/projects/worktree_level_redundant/testing_mcp/core/test_level_up_organic.py"
},
"summary": {
"total_scenarios": 4,
"passed": 3,
"failed": 1,
"campaign_capture_total": 1,
"campaign_capture_passed": 1,
"campaign_capture_failed": 0,
"raw_passed": 1,
"raw_total": 2,
"raw_pass_rate": "50.0%"
}
}

Methodology: test_level_up_organic

Test Type

Real API test against MCP server (not mock mode).

Test Mode

  • TESTING env var: None
  • MOCK_SERVICES_MODE env var: false
  • Mode: Real API calls via MCP HTTP JSON-RPC

Execution Environment

  • Server running at port 8022
  • Process: /opt/homebrew/Cellar/python@3.12/3.12.11/Frameworks/Python.framework/Versions/3.12/Resources/Python.app/Contents/MacOS/Python -m gunicorn mvp_site.main:app --bind 0.0.0.0:8022 --workers 1 --worker-class gthread --threads 4 --timeout 600 --max-requests 50 --access-logfile - --error-logfile - --log-level info

Evidence Capture

  • Git provenance captured at test start
  • Raw request/response payloads captured for each MCP call
  • Server runtime info captured via lsof/ps
  • Streaming evidence normalized into streaming_evidence.json
  • Raw local-server HTTP request/response payloads captured in http_request_responses.jsonl
  • Raw LLM request/response payloads captured in llm_request_responses.jsonl
  • Raw Gemini HTTP transport payloads captured in gemini_http_request_responses.jsonl
  • Raw LLM response text captured in server.log (artifacts/server.log)

Evidence Mode

  • System instruction capture: filenames + char_count (lightweight). Raw LLM request/response payloads captured in request_responses.jsonl when raw payload capture is enabled.

Validation Criteria

Test scenarios validate that:

  1. MCP server processes actions correctly
  2. State updates are returned as expected
  3. Server processes all requests successfully (validation warnings may be logged but requests succeed)

Note: Server warnings (e.g., validation, entity tracking) may appear in logs. Check artifacts/server.log for full server output.

Warning parser for notes: counts each log line matching \bWARNING\b|SYSTEM WARNING: once.

Notes: test_level_up_organic

Run Information

  • Run ID: test_level_up_organic-005-20260521T100100
  • Iteration: 5
  • Bundle Version: 1.2.0
  • Timestamp: 2026-05-21T10:01:00.047078+00:00

Evidence Integrity

  • All files in this bundle have corresponding .sha256 checksum files
  • Checksums use local basename paths so per-file verification works from each artifact directory

Scenario Summary

  • Total: 4
  • Passed: 3
  • Failed: 1

Post-Processing Capture Summary

  • Campaigns with capture status: 1
  • Capture Passed: 1
  • Capture Failed: 0

Warning/Error Summary

  • Server Warnings: 93 warnings in server.log
  • Warning Parser: line-level regex \bWARNING\b|SYSTEM WARNING: (one count per matching line)
  • Key Warning Categories:
    • ACTION_RESOLUTION_MISSING_FIELDS
    • SYSTEM_INSTRUCTION_EMERGENCY_COMPACT
    • ENTITY_TRACKING_CAPPED

Failed Scenarios

PROVENANCE_VALIDATION

  • Git commit drift detected: start=9e42b4ee, end=c4f9e786. Evidence bundle requires stable commit.

Follow-up Items

Additional Context

{
"scenarios": [
{
"name": "finish_intent_prompt_and_classifier",
"passed": true,
"campaign_id": null,
"user_id": "deterministic",
"errors": [],
"user_email": "jleechantest@gmail.com"
},
{
"name": "single_organic_level_up",
"passed": true,
"errors": [],
"campaign_id": "aTzwFF3kduxP6aZOc9WR",
"progression": [
{
"target_level": 2,
"start_level": 1,
"start_xp": 0,
"end_xp": 458,
"end_level": 2,
"triggered": true,
"completed": true,
"immediate_choice_ids": [
"level_up_now",
"level_up_hp_fixed",
"finish_level_up_return_to_game"
],
"polled_choice_ids": [
"level_up_now",
"level_up_hp_fixed",
"custom_action",
"finish_level_up_return_to_game"
],
"completion_transcript": [
{
"step": "enter_level_up",
"action": "CHOICE:level_up_now",
"choice_ids": [
"level_up_hp_fixed",
"level_up_hp_roll",
"level_up_fighting_style_defense",
"level_up_fighting_style_dueling",
"level_up_fighting_style_great_weapon",
"level_up_fighting_style_protection",
"finish_level_up_return_to_game"
],
"has_planning_block": true
},
{
"step": "escape_attempt_without_finish",
"action": "I try to leave the level-up modal and continue the adventure without choosing the finish level-up option.",
"choice_ids": [
"level_up_hp_fixed",
"level_up_hp_roll",
"level_up_fighting_style_defense",
"level_up_fighting_style_dueling",
"level_up_fighting_style_great_weapon",
"level_up_fighting_style_protection",
"finish_level_up_return_to_game"
],
"has_planning_block": true,
"still_level_up_active": true,
"before_xp": 458,
"after_xp": 458
},
{
"step": "level_up_step_1",
"action": "CHOICE:level_up_hp_fixed",
"choice_ids": [
"level_up_fighting_style_defense",
"level_up_fighting_style_dueling",
"level_up_fighting_style_great_weapon",
"level_up_fighting_style_protection",
"finish_level_up_return_to_game"
],
"has_planning_block": true,
"before_xp": 458,
"after_xp": 458
},
{
"step": "level_up_step_2",
"action": "CHOICE:level_up_fighting_style_defense",
"choice_ids": [
"level_up_select_spells_bless_cure",
"level_up_select_spells_shield_favor",
"level_up_select_spells_heroism_bless",
"finish_level_up_return_to_game"
],
"has_planning_block": true,
"before_xp": 458,
"after_xp": 458
},
{
"step": "level_up_step_3",
"action": "CHOICE:finish_level_up_return_to_game",
"choice_ids": [
"ascend_to_second_circle",
"meditate_on_new_power",
"inspect_arena_remnants"
],
"has_planning_block": true,
"before_xp": 458,
"after_xp": 458
},
{
"step": "post_finish_state_poll",
"action": "get_campaign_state",
"level": 2,
"level_up_in_progress": false,
"rewards_pending_level_up": null,
"persisted_choice_ids": [
"ascend_to_second_circle",
"meditate_on_new_power",
"inspect_arena_remnants"
]
}
]
}
],
"final_level": 2,
"user_id": "test-test_level_up_organic-1779357261",
"user_email": "jleechantest@gmail.com",
"details": {
"chunk_count_observed": 317,
"chunk_count": 317,
"done_chunk_count": 317,
"request_ts": "2026-05-21T09:55:13.002031+00:00",
"response_ts": "2026-05-21T09:58:33.442542+00:00",
"stream_actions": 7,
"execution_path": "streaming"
},
"raw_response_text": "{\n \"session_header\": \"[SESSION_HEADER]\\nTimestamp: 1 DR, Celestial Cycle 1, 08:00:00\\nLocation: Divine Training Gauntlet - The Radiant Arena\\nStatus: Lvl 1 Paladin | HP: 12/12 | XP: 0/300 | Gold: 10gp\\nConditions: Normal | Exhaustion: 0 | Inspiration: No\",\n \"resources\": \"HD: 1/1, Spells: No Spells Yet (Level 2+), Lay on Hands: 5/5\",\n \"narrative\": \"Morning (08:00:00) in the Divine Training Gauntlet\u2014The Radiant Arena. You stand upon a floor of polished white marble that seems to glow from within, reflecting the soft, golden light of the celestial sky above. The air is crisp and carries the faint scent of ozone and incense. Before you, a series of geometric runes flare with azure light, and from the floor rises a Sparring Construct (Lvl 1). It is a humanoid form of articulated silver plates and glowing blue cores, wielding a blunted practice sword.\\n\\n\\\"Initiating Tier 1 Combat Trial,\\\" a resonant, disembodied voice echoes through the chamber. \\\"Demonstrate your discipline, Paladin.\\\"\\n\\nThe construct clicks as its joints lock into a combat stance, its blue optic sensor focusing on you. This is the first test of your journey toward divine ascension.\",\n \"planning_block\": {\n \"thinking\": \"Combat has been initiated. I need to establish the initiative order and assess the tactical situation. As a Paladin, Mira's strength lies in her close-quarters discipline. The construct appears to be a standard melee unit. I will roll initiative for both Mira and the construct to determine who acts first.\",\n \"context\": \"First combat trial against a celestial sparring construct.\",\n \"choices\": [\n {\n \"id\": \"engage_construct\",\n \"text\": \"Engage the Construct\",\n \"description\": \"Close the distance and lead with a disciplined sword strike.\",\n \"risk_level\": \"medium\",\n \"pros\": [\n \"Establishes immediate pressure\",\n \"Utilizes high Strength\"\n ],\n \"cons\": [\n \"Exposes you to a counter-attack if the construct acts first\"\n ]\n },\n {\n \"id\": \"defensive_stance\",\n \"text\": \"Adopt a Defensive Stance\",\n \"description\": \"Focus on your footwork and shield positioning, preparing to parry the first blow.\",\n \"risk_level\": \"low\",\n \"pros\": [\n \"Increases AC for the first round\",\n \"Safer against unknown enemy tactics\"\n ],\n \"cons\": [\n \"Gives up tactical momentum\"\n ]\n },\n {\n \"id\": \"evaluate_construct\",\n \"text\": \"Evaluate the Construct\",\n \"description\": \"Circle the construct and look for weaknesses in its silver plating before striking.\",\n \"risk_level\": \"safe\",\n \"pros\": [\n \"Potential bonus to next attack\",\n \"Identify combat patterns\"\n ],\n \"cons\": [\n \"Consumes your action without dealing damage\"\n ]\n }\n ]\n },\n \"action_resolution\": {\n \"player_input\": \"Start Adventure\",\n \"interpreted_as\": \"combat_initiation\",\n \"reinterpreted\": false,\n \"mechanics\": {\n \"type\": \"other\",\n \"rolls\": [\n {\n \"notation\": \"1d20+1\",\n \"result\": 11,\n \"total\": 12,\n \"purpose\": \"initiative\",\n \"label\": \"Mira's Initiative\"\n },\n {\n \"notation\": \"1d20+1\",\n \"result\": 14,\n \"total\": 15,\n \"purpose\": \"initiative\",\n \"label\": \"Construct's Initiative\"\n }\n ],\n \"audit_events\": [\n \"Combat session combat_1716285294_aren started.\",\n \"Mira rolled 11+1=12 for initiative.\",\n \"Sparring Construct rolled 14+1=15 for initiative.\"\n ]\n },\n \"audit_flags\": [],\n \"narrative_outcome\": \"Combat begins; the Sparring Construct reacts slightly faster than Mira.\"\n },\n \"state_updates\": {\n \"world_data\": {\n \"world_time\": {\n \"hour\": 8,\n \"minute\": 0,\n \"second\": 10,\n \"microsecond\": 0\n }\n },\n \"combat_state\": {\n \"in_combat\": true,\n \"combat_session_id\": \"combat_1716285294_aren\",\n \"current_round\": 1,\n \"combat_phase\": \"active\",\n \"initiative_order\": [\n {\n \"name\": \"npc_construct_001\",\n \"initiative\": 15,\n \"type\": \"enemy\"\n },\n {\n \"name\": \"pc_mira_001\",\n \"initiative\": 12,\n \"type\": \"pc\"\n }\n ],\n \"combatants\": {\n \"pc_mira_001\": {\n \"hp_current\": 12,\n \"hp_max\": 12,\n \"ac\": 18,\n \"type\": \"pc\"\n },\n \"npc_construct_001\": {\n \"display_name\": \"Sparring Construct\",\n \"hp_current\": 15,\n \"hp_max\": 15,\n \"ac\": 13,\n \"cr\": \"1/4\",\n \"type\": \"enemy\"\n }\n }\n },\n \"custom_campaign_state\": {\n \"core_memories\": {\n \"append\": \"Mira began her first combat trial against a celestial Sparring Construct in the Radiant Arena of the Divine Training Gauntlet.\"\n }\n }\n },\n \"entities_mentioned\": [\n \"Mira\",\n \"Sparring Construct\"\n ],\n \"location_confirmed\": \"Divine Training Gauntlet - The Radiant Arena\",\n \"god_mode_response\": \"\"\n}\n",
"model": "gemini-3-flash-preview"
},
{
"name": "EVIDENCE_SIGNATURE_GUARD",
"passed": true,
"signed_count": 9,
"user_id": "test-test_level_up_organic-1779357261"
},
{
"name": "PROVENANCE_VALIDATION",
"passed": false,
"errors": [
"Git commit drift detected: start=9e42b4ee, end=c4f9e786. Evidence bundle requires stable commit."
]
}
],
"summary": {
"total": 4,
"passed": 3,
"failed": 1,
"pass_rate": "3/4 (75%)",
"raw_total": 2,
"raw_passed": 1,
"raw_pass_rate": "50.0%",
"raw_data_complete": true
},
"doctor_report": {
"generated_at_utc": "2026-05-21T10:00:59.900797+00:00",
"test_name": "test_level_up_organic",
"work_name": "test_level_up_organic",
"server_base_url": "http://127.0.0.1:8022",
"using_external_server": false,
"user_id": "test-test_level_up_organic-1779357261",
"failure_messages": [
"Git commit drift detected: start=9e42b4ee, end=c4f9e786. Evidence bundle requires stable commit."
],
"http_probes": {
"/health": {
"ok": true,
"status": 200,
"body_excerpt": "{\"mcp_client\":{\"initialized\":false},\"service\":\"worldarchitect-ai\",\"status\":\"healthy\",\"timestamp\":\"2026-05-21T10:00:59.902502+00:00\"}\n",
"is_json_api": true,
"content_type": "application/json"
},
"/mcp": {
"ok": true,
"status": 200,
"body_excerpt": "<!doctype html>\n<html lang=\"en\">\n\n<head>\n <meta charset=\"UTF-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/frontend_v1/dragon-favicon.svg\" />\n <title>WorldAI</title>\n <!-- DNS prefetch for external domains to reduce",
"is_json_api": false,
"content_type": "text/html; charset=utf-8"
},
"/settings": {
"ok": true,
"status": 200,
"body_excerpt": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <script src=\"/frontend_v1/js/theme-bootstrap.js\"></script>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/frontend_v1/dragon-favicon.svg\">\n <title>Se",
"is_json_api": false,
"content_type": "text/html; charset=utf-8"
}
},
"mcp_probes": {
"get_user_settings": {
"ok": true,
"payload": {
"cerebras_model": "qwen-3-235b-a22b-instruct-2507",
"gemini_model": "gemini-3-flash-preview",
"has_custom_cerebras_key": false,
"has_custom_gemini_key": false,
"has_custom_openclaw_gateway_token": false,
"has_custom_openclaw_key": false,
"has_custom_openrouter_key": false,
"llm_provider": "gemini",
"openclaw_gateway_port": 18789,
"openclaw_gateway_url": "",
"openrouter_model": "meta-llama/llama-3.1-70b-instruct",
"success": true
}
}
},
"openclaw_endpoint_probes": [
{
"target": "http://127.0.0.1:18789/v1/models",
"probe": {
"ok": false,
"error": "<urlopen error [Errno 61] Connection refused>"
}
}
],
"openclaw_settings": {
"llm_provider": "gemini",
"openclaw_gateway_port": 18789,
"openclaw_gateway_url": ""
},
"doctor_report_path": "/tmp/worldarchitect.ai/fix_level-up-extra-action-post-finish/test_level_up_organic/doctor_report.json"
},
"campaign_capture_status": {
"aTzwFF3kduxP6aZOc9WR": {
"status": "success",
"attempts": 1,
"export": {
"status": "success"
}
}
}
}
{
"version": "1.0.0",
"generated_at": "2026-05-21T10:01:00.461463+00:00",
"summary": {
"scenarios_with_streaming_evidence": 1,
"total_chunk_events_observed": 317,
"stream_http_calls_captured": 15,
"process_action_calls_captured": 15,
"mcp_process_action_calls_captured": 0,
"route_stream_process_action_calls_captured": 15,
"process_action_calls_with_raw_response_text": 8
},
"scenarios": [
{
"name": "single_organic_level_up",
"campaign_id": "aTzwFF3kduxP6aZOc9WR",
"passed": true,
"chunk_count_observed": 317,
"done_chunk_count": 317,
"chunk_count_matches_done": null,
"strictly_increasing_sequence": null,
"streaming_request_timestamp": "2026-05-21T09:55:13.002031+00:00",
"streaming_response_timestamp": "2026-05-21T09:58:33.442542+00:00",
"timeline_sample_size": 0
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment