Files
aetherbound-guild/docs/runtime/p9_6/IMPLEMENTATION_PLAN.md
T

4.6 KiB

P9.6 Risk, Recovery And Persistence Implementation Plan

Status: IN_PROGRESS Active step: P9.6-STEP-3 Baseline: 7ca0302 Goal: docs/goals/PHASE9_6_RISK_RECOVERY_PERSISTENCE_GOAL.md Contract: docs/runtime/PHASE9_6_RISK_RECOVERY_PERSISTENCE_CONTRACT.md

Player Outcome

The player reads real post-Bell injuries, chooses whether recovery is worth its cost, sees a two-wave consequence, recovers from defeat without losing the Company, and can close and continue the stable run without duplicate progress.

Steps

Step Status Outcome Gate
P9.6-STEP-0 Contract COMPLETE Four entry states, two plans, exact two-wave results and save boundaries are frozen. Goal, contract, plan, checkpoint and ledger agree.
P9.6-STEP-1 Domain COMPLETE Risk choice, two waves, defeat, recovery, retry, reward and XP are atomic. Source 68c4dbd; exact contract matrix and P9.5 domain/five-profile regressions pass strict-clean.
P9.6-STEP-2 Persistence COMPLETE Stable state survives refresh/interruption without duplicate progress. Source cc393cb; 14-case persistence matrix plus P9.6/P9.5 domain regressions pass strict-clean.
P9.6-STEP-3 Runtime IN_PROGRESS Direct world touches expose HP, risk, waves, defeat/recovery and the changed return. Parsed touch routes, 44px bounds, normal frames and strict diagnostics pass.
P9.6-STEP-4 Pacing and H5 PENDING Five profiles preserve the counterfactual and the Owner can play the cached build. Explicit timestamps, interruption scenarios, runtime-only export and Gallery delivery pass.

Active Step Contract

ID: P9.6-STEP-3 RUNTIME
PLAYER OUTCOME: From the post-Bell Hall, real touch chooses a plan, sees both
  waves and their consequence, recovers injuries, and returns to a visibly
  changed Company; reopening exposes one truthful Continue action.
IN SCOPE: P9.3 controller integration with P9.6 domain/save authority; one P9.6
  runtime test and UID; source-bound 844x390 captures; P9.6 durable documents.
OUT OF SCOPE: new assets/audio, broad settings, additional viewports/profiles,
  H5, native packages, content expansion, release and other games.
OWNED FILES: runtime/p9_3/core_loop_controller.gd,
  runtime/tests/p9_6/risk_recovery_runtime_test.gd and P9.6 docs.
ACCEPTANCE CHECKS: title Continue only for a valid save; new run clears old
  save; parsed touch selects both plans, Rift Tide and injury recovery;
  Wayrunner defeat/retry and Kindhand direct victory; wave-two event visible;
  current/max HP, exact costs, cause, reward and living-member XP readable;
  save reload returns selected pre-battle state; 44px controls; no card/form/
  modal surfaces; P9.6 domain/persistence and P9.5 runtime regressions clean.
EVIDENCE LEVEL EXPECTED: runtime_verified.
COMMIT BOUNDARY: focused pushed controller/runtime-test commit before pacing.
LEGAL TERMINAL: P9.6 Step 3 runtime complete, or redesign required at the
  earliest comprehension/input/recovery/resume boundary.
NEXT STEP: five profiles, layout/accessibility matrix and cached H5 delivery.

Issue Register

ID Status Finding
P96-I01 RESOLVED_IN_CONTRACT A single extra fixture lets every Company win and teaches no recovery decision. Two carried-HP waves produce the required state-dependent counterfactual.
P96-I02 RESOLVED_STEP_2 Source cc393cb adds versioned, checksummed, backup-safe stable snapshots and pre-battle interruption recovery.
P96-I03 RESOLVED_STEP_1 Exact waves leave two Wayrunner members at 0 HP after victory. Accepted living-member XP remains unchanged; a 2-Coin-per-fallen-member victory recovery prevents a stranded terminal state.

Current Evidence

  • Step 1 source: 68c4dbd.
  • Root: /private/tmp/abg-p96-68c4dbd-step1-r1/.
  • Marker: ABG_P9_6_RISK_RECOVERY_DOMAIN_OK paths=8 waves=2 press_wayrunner=defeat press_kindhand=victory recover_all=victory costs=0,4,6,8 reward=20 xp=18 recruits_lost=0 items_lost=0 invalid_mutations=0.
  • P9.5 domain and five-profile regressions pass; strict diagnostics are zero.
  • Evidence inventory SHA-256: e1ddacc7b4cfca0cdc4fa796924f876c351909adf03d056d7f7a5a5980c68780.
  • Step 2 source: cc393cb.
  • Root: /private/tmp/abg-p96-cc393cb-step2-r1/.
  • Marker: ABG_P9_6_PERSISTENCE_OK version=1 migration=0_to_1 cases=14 checksum=true backup=true corruption=true rollback=true offline_cap=86400 offline_rewards=0 checkpoint=pre_battle duplicate_claim=0 duplicate_recovery=0 temp_clean=true.
  • Step 1 and P9.5 domain regressions pass; strict diagnostics are zero.
  • Evidence inventory SHA-256: f5f0e57d512c33a0f83923f9a89cf81421cc2ca2380b78b079fa420d18a9d35c.