Spaces:
Paused
Paused
Commit History
-
Document the main-branch gate, and fix the docs my own changes falsifiedβ
Claude +1: Claude Opus 4.8Unverified signatureThe three items left open after the review merge. BRANCH PROTECTION. I cannot set it: there is no MCP tool for the branch protection API and a direct call returns 403, so this is a repository setting only a human with admin can apply. What I can do is remove the guesswork, so CONTRIBUTING.md now carries the exact steps β target `main`, require status checks, and the two check names verbatim (`tests (node 20)` and `tests (node 22)`, both, because the matrix produces one per Node version and requiring only one lets a version-specific regression through), plus require-up-to-date and block-force-pushes. It also notes the coupling nobody would otherwise notice: those names come from the workflow's job `name:` line, so editing that silently unhooks the gate. DOCS THAT CONTRADICT THE CODE. Fixed the ones this branch's own work falsified, rather than pruning anyone's design work: - README's module map predated inputCommands.js and described input.js as one thing. It also called tools/ "a β¦2b4cf02
-
Tier 3: record the outcomes in the plan documentβ
Claude +1: Claude Opus 5Unverified signatureMarks all seven refactors delivered, with the answer each design question actually got β including the two that changed what was built (the AI seam is "export in place", not a new leaf module; the declarative save schema was rejected on inspection and replaced by the guard it was for) and the four findings the work turned up that were not in the plan. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XZ2MLqDX3grEPTJpwivWZX2a72b3c -
Tier 2f: name the rebuild signature, and record Tier 2 as deliveredβ
Claude +1: Claude Opus 5Unverified signatureThe 141-line signature expression was inline in renderSelectionPanel, with 11 anonymous IIFEs each re-deriving a selection lookup that rebuildSelectionPanel derives again a thousand lines later. It is the panel's entire reactivity model β a panel whose own state contributes no term silently never redraws, which is what left the Freight Lane and Colony Policy controls inert β so it is worth being able to read as a unit. Extracted to a named panelSignature(), which is also the seam the Tier-3 registry moves into: genuine per-panel co-location (each panel declaring its own signature beside its own render) needs the decomposition itself, and this makes that a move rather than a rewrite. Doc updated with Tier 2's outcome, including the three things that changed the plan rather than following it: the perf item that measured as a loss and was reverted with its numbers recorded, the self-play ordering fixed in the comment rather than the code (the sanctioned option, with the bound pinned by aβ¦8d248b1 -
Record Tier 1 as delivered in the improvement planβ
Claude +1: Claude Opus 5Unverified signatureAll 42 Tier-1 items shipped: 1,897 -> 1,964 tests, 0 failures throughout, typecheck clean, // @ts-check coverage 10 -> 20 files. Notes what the work itself surfaced beyond the written findings (the NET tests correctly rejecting an over-eager first cut, galaxySnapshot's own key-order claim being false, and three further typedef drifts that only appeared once persist.js was annotated), and records the two deliberate deferrals with their measurements: strictNullChecks costs 198 errors today, and C6's silhouette test needs the art decision that sits in Tier 2. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XZ2MLqDX3grEPTJpwivWZX6422576 -
Add a tiered, TDD-first code-improvement plan from a full-codebase reviewβ
Claude +1: Claude Opus 5Unverified signatureEight parallel reviews β engine core, AI + ailab, economy/logistics, persistence/galaxy, UI/HUD, render, the test suite itself, and the cross-cutting seams (types, import graph, duplication, tooling) β judged the code rather than the game design. Findings were executed, not inferred: real games run, source mutated in scratch clones against the full suite, canvas save-depth instrumented, tsc probed against engine/types.js, and the import graph built from actual import statements across 181 files. The result is docs/code-improvement-tiers.md: 69 findings ranked into 42 Tier-1 items (ship now β a named red-first test and S/M effort each), 20 Tier-2 (structural, several move replays), and 7 Tier-3 (deep refactors, each gated on a design question stated up front). Four patterns recur across domains that never talked to each other, and they matter more than any single finding: - Six load-bearing "why" comments assert invariants the code no longer holds β radiusOf's claimed equality, sepβ¦af3ad6f