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

98 lines
5.6 KiB
Markdown

# P9.5 Equipment And Individual Growth Implementation Plan
> Status: `COMPLETE`
> Active step: `NONE`
> Baseline: `e006160`
> Goal: `docs/goals/PHASE9_5_EQUIPMENT_GROWTH_GOAL.md`
> Contract: `docs/runtime/PHASE9_5_EQUIPMENT_GROWTH_CONTRACT.md`
## Player Outcome
After the second reward, the player equips one visible Recruit for a known Bell
push, sees safety versus exposed tempo change the third fight, and returns with
the item plus each Recruit's earned individual Lv/XP preserved.
## Steps
| Step | Status | Outcome | Gate |
|---|---|---|---|
| P9.5-STEP-0 Contract | `COMPLETE` | Two existing items, compatible wearers, four exact Bell outcomes and individual XP are bounded. | Goal, contract, plan, checkpoint and ledger agree before product edits. |
| P9.5-STEP-1 Domain transactions | `COMPLETE` | One-slot equip, Bell push/item effects, reward and individual XP commit atomically across four paths. | Source `6b426c7`; four exact paths and five P9.3/P9.4 regressions pass strict-clean. |
| P9.5-STEP-2 World equipment choice | `COMPLETE` | Two item pedestals and the Bell threat are readable in the returned Hall; actor-body equip replaces forms. | Source `9fa82d5`; three parsed touches, five 844x390 states, 44px targets and no card/form surfaces pass strict-clean. |
| P9.5-STEP-3 Third-cycle runtime | `COMPLETE` | Parsed touch completes all four equip/battle/growth routes with event-bound feedback. | Source `7e1fc75`; 24 parsed touches, 12 frames, four exact paths and strict diagnostics pass. |
| P9.5-STEP-4 Pacing and H5 | `COMPLETE` | Five profiles preserve choice consequences and the Owner can play the source-bound Web build. | Source `7e5d82a`; 40 timestamps, `13.00s` longest gap, runtime-only Web export and Gallery item `YbptaxfasrjY`. |
## Active Step Contract
```text
ID: P9.5-STEP-4 PACING_AND_H5
PLAYER OUTCOME: The equipment decision remains distinct across representative
play patterns, and the fixed runtime is available for remote Owner play.
IN SCOPE: one new runtime/tests/p9_5/ five-profile test and UID; source-bound
runtime-only Web export; private Artifact Gallery delivery; P9.5 durable docs.
OUT OF SCOPE: product rules/UI/assets, save/offline implementation, audio,
content expansion, native packaging, stores, release and other games.
OWNED FILES: the new test and UID plus P9.5 durable status/delivery documents;
Web output remains ignored and source-bound.
ACCEPTANCE CHECKS: five named profiles; explicit state/decision timestamps;
both items and both P9.4 Companies; exact projections; invalid actions inert;
longest no-decision interval reported; strict regressions; clean Web scope,
hashes, remote MIME/bytes and signed Gallery entry.
EVIDENCE LEVEL EXPECTED: simulation_verified plus remote H5 availability.
COMMIT BOUNDARY: pushed pacing source, then docs-only H5/terminal closure.
LEGAL TERMINAL: Aetherbound Guild P9.5 equipment and individual growth candidate
ready, or redesign required at the earliest pacing/export/delivery boundary.
NEXT STEP: Owner uncoached H5 play; any P9.6 requires a separate plan.
```
## Frozen
Only the active step's exact files may change. Existing P9.3/P9.4 values,
domain values, P9.2 default battle behavior, save, content, packaging and
release remain frozen.
## Current Evidence
- Step 1 source: `6b426c7`.
- Source-bound root: `/private/tmp/abg-p95-6b426c7-step1-r1/`.
- Marker: `ABG_P9_5_EQUIPMENT_GROWTH_DOMAIN_OK paths=4 items=2
slots=1 ticks=91,88,145,124 coin=38,37 levels=2,2,2 xp=12,12,0`.
- P9.4 domain, five-profile and runtime plus P9.3 domain/runtime regressions are
strict-clean.
- Evidence inventory SHA-256:
`68bcd910df68094e90d3a5e05c720a1877090d0e8df85c4a36e45a7ae24fdfe9`.
- Step 2 source: `9fa82d5`.
- Source-bound root: `/private/tmp/abg-p95-9fa82d5-step2-r1/`.
- Hall marker: `ABG_P9_5_EQUIPMENT_GROWTH_HALL_OK viewport=844x390
touch=3 items=2 focus=2 actor_equip=true bell_only=true levels=2
xp=12,12,0 cards=0`.
- Five exact-size normal frames, P9.5 domain and P9.3/P9.4 runtime regressions
pass strict-clean; inventory SHA-256 is
`9530a7e8904b9c5c67278cc5be392e658b34821e26b5762c4d49f0243358654a`.
- Step 3 source: `7e1fc75`.
- Source-bound root: `/private/tmp/abg-p95-7e1fc75-step3-r1/`.
- Runtime marker: `ABG_P9_5_EQUIPMENT_GROWTH_RUNTIME_OK paths=4 touch=24
fallback=0 direct=0 frontpin=true push=true open_line_shot=true
projectile=true ticks=91,88,145,124 hp_exact=true`.
- Twelve `844x390` normal frames cover both equipment effects, all four causal
results and all four changed-Hall returns. P9.5 Hall/domain and P9.3/P9.4
runtime regressions pass strict-clean. Inventory SHA-256 is
`e5a1a777f5c4d5ed44c79150d81ce8c3a8f4fdfeb8c4d22fc1d18e01b265affb`.
- Step 4 source: `7e5d82a`.
- Profile root: `/private/tmp/abg-p95-7e5d82a-step4-profile-r1/`; inventory
SHA-256 `4046981f7ccbe3d642e9f3fb419cdae3bc5169340a89b2fcc37dc62b184e906a`.
- Marker: `ABG_P9_5_FIVE_PROFILE_OK profiles=5 paths=4 decisions=40
longest_gap=13.00 items=2 companies=2` with starvation and invalid mutations
zero.
- Web root: `/private/tmp/abg-p95-7e5d82a-web-r1/`; nine runtime-only files,
strict import/export, forbidden PCK paths zero and Gallery item
`YbptaxfasrjY`. External browser cold start remains open as recorded in
`H5_DELIVERY.md`.
## Issue Register
| ID | Status | Finding |
|---|---|---|
| P95-I01 | `RESOLVED_IN_CONTRACT` | The existing battle has no generic push/equipment API. P9.5 owns a Bell-only boundary inside the P9.3 service; default P9.2 behavior remains unchanged. |
| P95-I02 | `OPEN_HUMAN_GATE` | Automated outcomes cannot prove the player understands why preserving the line or exposing Farstring was rational. |