diff --git a/CLAUDE.md b/CLAUDE.md index ba9033fe..9cf60ec2 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -245,13 +245,14 @@ NO 3D preview (chargen-only machinery); UI Studio no longer exists (deleted at Campaign V — ignore stale memory/docs claims otherwise); App `Program.cs` has no subcommand dispatch (the `--session-config` flag is additive). -LA0 through LA5 plus LA7 are review-closed. The launcher composer is now +LA0 through LA9 are review-closed. The launcher composer is now compiled into both host test suites, and Launcher.Core runs in the portable Windows/Ubuntu CI closure. The self-contained Avalonia launcher, -transactional two-host plugin lifetime, and Runtime-owned retail selection -state/flow are integrated; the combined Release gate passes 13,769 tests / 4 -skips. LA6 login commands, LA8's authored retail screen, and LA9 installer are -the active parallel wave; LA10 updater and LA11 closeout follow. +transactional two-host plugin lifetime, shared login-command route, +Runtime-owned retail selection state, authored DAT character screen, and +crash-safe verified installer are integrated; the combined Release gate +passes 13,865 tests / 5 skips. LA10 updater is the final implementation slice; +LA11 closeout follows. **Placement cutover — C4 COMPLETE 2026-08-05, merged to main.** Every placement route now runs through the canonical residence + continuation- diff --git a/docs/plans/2026-04-11-roadmap.md b/docs/plans/2026-04-11-roadmap.md index 0c3c68eb..7033f339 100644 --- a/docs/plans/2026-04-11-roadmap.md +++ b/docs/plans/2026-04-11-roadmap.md @@ -103,14 +103,15 @@ a future campaign). Spec: [`2026-08-14-launcher-campaign-design.md`](../superpowers/specs/2026-08-14-launcher-campaign-design.md); plan + ledger: [`2026-08-14-launcher-campaign.md`](2026-08-14-launcher-campaign.md). -LA0 through LA5 plus LA7 are review-closed: the portable path boundary, +LA0 through LA9 are review-closed: the portable path boundary, failure-isolated launch/status contract, BCL-only launcher core, shared composer-to-both-host-loader anti-drift gate, and character wire messages are landed. The self-contained Avalonia launcher, transactional two-host plugin -lifetime, and Runtime-owned retail selection state/flow are integrated. The -combined Release gate passes 13,769 tests / 4 skips. LA6 login commands, LA8's -authored retail screen, and LA9 installer are the active parallel wave; LA10 -updater and LA11 connected/visual closeout follow. +lifetime, shared login-command route, Runtime-owned retail selection state, +authored DAT character screen, and crash-safe verified installer are +integrated. The combined Release gate passes 13,865 tests / 5 skips. LA10 +updater is the final implementation slice; LA11 connected/visual closeout +follows. **Remaining physics-divergence closeout (ACTIVE, checkpoint 2026-08-03):** the user then authorized retirement of the remaining proven collision/placement gaps before diff --git a/docs/plans/2026-08-14-launcher-campaign.md b/docs/plans/2026-08-14-launcher-campaign.md index 853e69fc..56ab2c07 100644 --- a/docs/plans/2026-08-14-launcher-campaign.md +++ b/docs/plans/2026-08-14-launcher-campaign.md @@ -507,9 +507,9 @@ LA6 adds CH-regression scrutiny; LA0 adds guard-integrity scrutiny. | LA3 | **DONE + MERGED 2026-08-14** | `37d74e44`, `26feba81`, `347a1a5d`, merge `7749545d`, seam `8a03a25f` | Initial 12 findings CLOSED; four-gap narrow review FIX FIRST; final narrow re-review PASS | `AcDream.Launcher.Core` remains BCL + Platform only. Windows/WSL Core 114/114; full Release build green. Composer output is parsed by BOTH real host loaders from one linked fixture; Launcher.Core build/tests run in the portable Windows+Ubuntu lane. Windows graceful-stop gap remains tracked as #397. | | LA4 | **DONE + MERGED 2026-08-14** | `d0a9c65d`, `10a712d6`, `ae2cbbee`, merge `60f62799` | Initial dual-lens review found 10 issues; fix re-review left one Linux execute-bit gap; final narrow re-review PASS | Avalonia 12.1.1 launcher remains thin over one BCL-only Core orchestrator. Windows/WSL Launcher.Core 162/162 and Launcher 17/17. Native `linux-x64` publish evaluates self-contained + single-file, runs without a discoverable runtime, and CI verifies executable launcher/App/Headless artifacts. LA9/LA10 bodies and LA11 visual/accessibility confirmation remain intentionally later. | | LA5 | **DONE + MERGED 2026-08-14** | `95f4be94`, `fbe9c8a2`, `f820eb25`, merge `5535d0ad` | Initial review found 5 issues; first narrow re-review found 4 ownership/race gaps; final narrow re-review PASS | Both hosts share exact absent/null=`all`, `[]`=`none` allow-listing; transactional scoped UI/entity/selection rollback precedes unload; graphical/headless status and teardown ordering match; headless replay is exact-once under Runtime's borrowed membership lease. Branch complete suite 13,679+4 skip; portable WSL closure green. | -| LA6 | — | | | | +| LA6 | **DONE + MERGED 2026-08-14** | `41b15efd`, `259f0e5a`, merge `2bb8ccb6` | Dual-lens/CH regression review found one Headless wire-parity gap; narrow re-review PASS | Runtime owns the sole parser/router/catalog and shared four-route live binding. Both hosts run generation-scoped login commands after world entry with strict monotonic delay and nonterminal v1 failure status. Headless permit/chat/notell semantics match App. Branch complete suite 13,787+4 skip; WSL Runtime 1,662, Headless 165, Launcher.Core 167, UI/chat 922. | | LA7 | **DONE + MERGED 2026-08-14** | LA7a `6a32f375`, `4338b1c1`, `0c8643a7`, merge `fa2de1c4`; LA7b `0e82cbf7`, `1b9e7e41`, `ff406562`, merge `7691cf75` | LA7a retail-lens PASS; LA7b review found 4 issues, first narrow pass left one restore/delete interleave, final narrow re-review PASS; AD-97 filed | Runtime owns the sole generation-scoped pre-world selection graph. Exact retail roster/grey/button/delete/restore behavior and queue routing are preserved; `NumErrors` is a sentinel, paused selection retains reliable transport sweeping, silent restore cannot block, and App has no mirror. Windows Runtime 1,653, Core.Net 958, App 5,042+3 skip; WSL Runtime/Core.Net green. | -| LA8 | — | | | | -| LA9 | — | | | | +| LA8 | **DONE + MERGED 2026-08-14** | `6cfab727`, `aeac874d`, `1dd5706e`, merge `fe63ce18` | Initial retail/architecture review found 4 issues; first narrow re-review left 2 retry-transaction/order gaps; final narrow re-review PASS | Installed DAT enum table 5 proves `0x10000005 -> 0x21000004`, root `0x1000039A`, exact flat list/buttons/templates/dialog assets, and no viewport. Runtime remains the only selection owner; row sizing, modal priority/retry, restore ordering, reset/disposal, and explicit live-DAT skip/probe are covered. Branch full suite 13,796+5 skip; LA11 owns physical visual/live-ACE acceptance. | +| LA9 | **DONE + MERGED 2026-08-14** | `ff6ebb6a`, `3f688951`, `208a70ac`, merge `2198a0cc` | Initial integrity review found 5 issues; narrow re-review left one orphan-child publication race; final narrow re-review PASS | First-run installer validates four DATs, consumes strict v1 Bake JSONL, preserves/reverifies SHA+size+tool-version records, and co-publishes self-contained launcher+Bake. Cross-process install/publish locks plus durable nonce prevent post-recovery mutation across real parent-only hard kills on Windows/Linux. Branch full suite 13,799+4 skip; real retail-DAT bake remains LA11. | | LA10 | — | | | | | LA11 | — | | | |