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

148 lines
8.2 KiB
Markdown

# P9.9 Guild Charter And Second Contract Opening Implementation Plan
> Status: `COMPLETE`
> Active step: `COMPLETE`
> Baseline: `890141879bfdd0769140298ea8018a4ccb992987`
> Goal: `docs/goals/PHASE9_9_GUILD_CHARTER_SECOND_CONTRACT_GOAL.md`
> Contract: `docs/runtime/PHASE9_9_GUILD_CHARTER_SECOND_CONTRACT_CONTRACT.md`
## Player-Visible Stopping Point
Starting from the exact P9.8 persistent result, reconcile canonical first-clear
Renown, claim one breadth-only Guild Charter packet, choose two of four new
Recruits, hire to four, clear Contract 2 Rounds 1-3 and reload at Market 4.
No H5 is published before Step 4 closes. Internal steps are verified, committed
and pushed without pausing for routine authorization.
## Ordered Steps
| Step | Status | Player outcome | Commit boundary |
|---|---|---|---|
| P9.9-STEP-0 Contract | `COMPLETE` | The next-cycle scope, canonical Renown repair and stopping point are frozen. | Goal, contract, plan, checkpoint and ledger pushed. |
| P9.9-STEP-1 Profile, Charter and save | `COMPLETE` | The first clear becomes 14 Renown and one Charter claim commits safely. | P9.9 content/profile/save plus focused tests. |
| P9.9-STEP-2 Second run and three Rounds | `COMPLETE` | A new two-of-four Company hires to four and reaches saved Market 4. | Run/Market/battle content and tests plus affected regressions. |
| P9.9-STEP-3 Complete runtime evidence | `COMPLETE` | Charter through three battles is playable and readable by touch. | Source `0b0113a`; 30 programs, 10 captures and 24.83-second recording pass. |
| P9.9-STEP-4 H5 and closure | `COMPLETE` | One fresh cached H5 exposes the larger next-cycle flow. | Source `0b0113a`; Gallery `cnsTx_iRrspj`; remote bytes/cache/304 pass. |
## Step Contracts
### P9.9-STEP-1 PROFILE, CHARTER AND SAVE
```text
ID: P9.9-STEP-1
PLAYER OUTCOME: The completed first Contract truthfully grants canonical Renown,
and one of two visible breadth-only Charter consequences can be claimed.
IN SCOPE: P9.9 content; P9.8 closed-save migration; profile state; Renown
reconciliation; Charter preview/claim; save v4; focused negative tests.
OUT OF SCOPE: new-run creation, Market, battle, UI and H5.
OWNED FILES: runtime/content/p9_9_content.gd plus UID; runtime/p9_9/profile_state.gd,
charter_service.gd and save_service.gd plus UIDs; runtime/tests/p9_9 profile/
Charter/persistence tests plus UIDs; durable status.
ACCEPTANCE CHECKS: exact 3->14 forward receipt once; 14 stays 14; every other
unexplained balance rejects; both claims preview/commit; cost/effect/prereq,
stale/duplicate/insufficient/interruption and save migration are exact;
affected P9.8 close/persistence regressions pass unchanged.
EVIDENCE LEVEL EXPECTED: automated_verified.
COMMIT BOUNDARY: focused source/test/status push.
LEGAL TERMINAL: P9.9 Step 1 profile and Charter complete.
NEXT STEP: P9.9-STEP-2.
```
### P9.9-STEP-2 SECOND RUN AND THREE ROUNDS
```text
ID: P9.9-STEP-2
PLAYER OUTCOME: The player chooses a new two-person seed, hires to four and
completes three distinct automatic battles under the Charter consequence.
IN SCOPE: run draft; four provisional Recruits; Market offers; two protected
hires; automatic formation; nine routes; Rounds 1-3; recovery; Market 4 save.
OUT OF SCOPE: runtime rendering, Rounds 4-12, boss and H5.
OWNED FILES: isolated runtime/p9_9 run/Market/battle modules and tests; P9.9
content extensions; durable status.
ACCEPTANCE CHECKS: stable exact two-of-four revision/commit; two separate hires;
both Charter counterfactuals; risk 0/1/2; three settlements; one defeat/
recovery; capacity 4/4/5/5; Market 4 reload; P9.8 regressions unchanged.
EVIDENCE LEVEL EXPECTED: automated_verified and simulation_verified.
COMMIT BOUNDARY: focused systems/test/status push.
LEGAL TERMINAL: P9.9 Step 2 second-run core complete.
NEXT STEP: P9.9-STEP-3.
```
### P9.9-STEP-3 COMPLETE RUNTIME EVIDENCE
```text
ID: P9.9-STEP-3
PLAYER OUTCOME: The complete next-cycle slice is playable through the landscape
world with direct actor touches and readable automatic combat.
IN SCOPE: P9.9 controller; main handoff; parsed touch/drag; feedback; five
profiles; viewports/locales/accessibility; 20-30 second recording.
OUT OF SCOPE: gameplay expansion, final art/audio, packaging and H5.
OWNED FILES: runtime/p9_9/runtime_controller.gd plus UID; runtime/main.gd;
focused P9.9 runtime/profile/layout/recording tests plus UIDs; durable status.
ACCEPTANCE CHECKS: real parsed touch/drag, fallback/direct zero; both Charter
paths; selection/hire/three results/Market 4; <=30s decision gaps; required
viewport matrix; strict diagnostics and owned cleanup zero.
EVIDENCE LEVEL EXPECTED: runtime_verified and agent_visual_reviewed.
COMMIT BOUNDARY: complete source-bound evidence/status push.
LEGAL TERMINAL: P9.9 Step 3 runtime complete.
NEXT STEP: P9.9-STEP-4.
```
### P9.9-STEP-4 H5 AND CLOSURE
```text
ID: P9.9-STEP-4
PLAYER OUTCOME: The Owner can test the complete next-cycle slice from one cached
private landscape H5.
IN SCOPE: fresh runtime-only Web export, stable cache, one Gallery item, source
hashes, delivery record and durable closure.
OUT OF SCOPE: gameplay edits, native packaging, devices, stores and release.
OWNED FILES: docs/runtime/p9_9/H5_DELIVERY.md and durable status only.
ACCEPTANCE CHECKS: exact source binding; tests/docs/evidence absent from PCK;
remote bytes/MIME/cache/304 pass; clean upstream repository and owned
processes zero.
EVIDENCE LEVEL EXPECTED: delivery transport verified; human gates remain open.
COMMIT BOUNDARY: docs-only closure after immutable delivery.
LEGAL TERMINAL: Aetherbound Guild P9.9 Guild Charter and second Contract opening candidate ready.
NEXT STEP: Owner play and ranked issue intake.
```
## Issue Register
| ID | Status | Finding |
|---|---|---|
| P99-I01 | `RESOLVED_IN_CONTRACT` | P9.8's bounded three-Renown result conflicts with the canonical 14-point first-clear formula. P9.9 adds an exactly-once forward reconciliation receipt instead of rewriting P9.8 evidence. |
| P99-I02 | `RESOLVED_IN_SCOPE` | A Charter screen without a changed next run would be decorative. P9.9 binds each claim to a visible Market or threat-preview counterfactual before Round 1. |
| P99-I03 | `OPEN_LATER_CONTRACT` | Rounds 4-12 and Gale Loom remain outside this slice; Market 4 must state the continuation honestly. |
| P99-I04 | `OPEN_HUMAN` | Automated checks cannot prove Charter comprehension, choice quality, fun or continuation. |
| P99-I05 | `RESOLVED_RESOURCE` | The foreign Simulator exited without task intervention; fresh source-bound normal capture and MovieWriter then passed in a quiet window. |
## Completion Evidence
- Product and test source `0b0113a` completes the exact P9.8 persistent-result
handoff through canonical Renown, one Guild Charter claim, stable two-of-four
recruitment, two paid hires, three automatic battles and saved Market 4.
- Step 3 evidence at `/private/tmp/abg-p99-0b0113a-step3-r1/` passes 28
headless plus two normal programs, 10 source-bound captures and one
24.833333-second recording. Inventory SHA-256 is
`c84ed7071f3f82da574b06bd46ab1edca6a96e420c5d6dcc0b7b5ab702b30699`.
- Web R2 at `/private/tmp/abg-p99-0b0113a-web-r2/` exports nine files from a
fresh exact-source archive with `runtime/tests` physically absent. Its PCK
has 321 rows, seven P9.9 compiled modules and zero test/evidence/build path.
Export manifest SHA-256 is
`2260452314c65f1d5c80e7d660652e5ac1c0560fb2999c4795bdeb54a18e6844`.
- Gallery item `cnsTx_iRrspj` preserves all nine identity bytes, serves four
verified gzip representations, applies one-year private immutable cache to
runtime files and returns nine matching conditional `304` responses. Gallery
evidence inventory SHA-256 is
`3cf800543b2110ac690f4127eb8fedacdd749a0fdd5c7215c023785d7b7807e2`.
- Web R1 remains `INVALID_AUDIT_COMMAND`; Web R2 retains two failed local
reporting commands before the absolute-path final verifier. No failed command
changed or regenerated the exported files, and only the final checks support
the delivery claim.
- P9.9 is `runtime_verified + agent_visual_reviewed + delivery transport
verified`. Human understanding, fun, visual/listening acceptance, browser
Canvas play, physical devices, native packaging, stores and release remain
open or frozen.