Design Re-Review 3: Base Building — 2026-08-27
Document reviewed:
design/gdd/base-building.md(1245 lines at review time)
Review mode: full, fresh session — 4 specialists + creative-director, scoped to CS-4/CS-5 per the second re-review's "pending third re-review of CS-4/CS-5 only"
Re-review: Yes — prior verdict NEEDS REVISION (narrow), 2026-08-27 (base-building-rereview-2-2026-08-27.md)
Specialists consulted: systems-designer, qa-lead, network-programmer, game-designer
Senior reviewer: creative-director
Verdict: NEEDS REVISION (narrow — 2 change-sets, both applied same day)
Zero mechanism redesign. CS-4's residue was the Tuning Knobs row's own bounds (wrong at both ends) and a gate-subject contradiction; CS-5's residue was one unconstructible AC, one ambiguous BFS pin, and two sentences that hand an implementer or designer a wrong model. The placerHasExit mechanism itself is consistent across F1 / EC23 / the AC block.
Completeness: 8/8 · Dependency Graph: all on disk
Retired-literal sweep (BB + harvesting, crafting, tide, systems-index, all quick-specs): clean before and after this revision.
Prior change-sets — status
| Status | |
|---|---|
| CS-4 anchor 60→50 sweep | Partial — CI gate block, AC-46, AC-20b hold; knob row bounds wrong → CS-6 |
CS-5 placerHasExit | Partial — mechanism holds; AC-14b/14c and two wording items → CS-7 |
CD-verified gate table (2 ≤ ⌈seg×4/haul⌉ ≤ 4 at haul 58 AND 138)
| seg | ⌈t/58⌉ | ⌈t/138⌉ | gate |
|---|---|---|---|
| 25 | 2 | 1 | FAIL (high extreme) |
| 34 | 3 | 1 | FAIL |
| 35 | 3 | 2 | PASS |
| 50 | 4 | 2 | PASS |
| 58 | 4 (232/58 exactly) | 2 | PASS |
| 59 | 5 | 2 | FAIL |
Gate-safe set is exactly [35, 58], no holes.
Required — applied
CS-6 [systems-designer, main review, game-designer F1; CD] Knob row 25–57 → 35–58 with worked bounds at both extremes; "too low" cell corrected (floor is set by the fast haul; "⌈24×4/58⌉ = 2 is the last two-session value" was false — two sessions holds for 15–29 at the slow end); "too high" → above 58, ⌈59×4/58⌉ = 5; gate subject named as the perimeterSegments anchor constant, the 25-seg shelter recorded as a player path below the gate-safe floor by design (user decision D2: option b); Formulas l.334 swept. Recommended: fallback owner/trigger (home-island authoring, spatial-budget pass, procedural fit check); Player Fantasy ↔ Formulas cross-link of the two unverified "keep" legs; systems-index "13–15" → "13–16".
CS-7 [qa-lead, network-programmer, game-designer; CD] AC-14b rewritten to a constructible topology (three neighbours unavailable incl. ≥1 out-of-region, 1×1 candidate covers the last; edge-of-region intent preserved); AC-14c and EC21 pin FIFO expansion-order tie-break (with a hop-2 discriminating case); F1 rows + EC23 name why the host is exact (host owns its own transform — local read, no transport hop, no interp buffer — not fresher-than-RTT knowledge of others); EC23 maze boundary stated (legal up to and excluding the last-exit segment) and the concrete forgone pattern named (sealed room + demolish out). Recommended: pin (iii) "completes" = local synchronous write, no ack; pin (ii) window named (cross-frame, same client); observer asymmetry recorded as intentional and routed to player-movement Rule 6 for ratification; EC22 citation + remedy tier; AC-20b mixed batch rejected at construction; Dependencies registration-vs-ordering split; settle beat hop-invariant; new EC17 row + AC-64b: gridCellSize ≥ placementReach → loud reject (the one latent defect, taken per CD advice).
Rejected
game-designer "CS-4 holds on math" (verified false). qa-lead's AC-14b rewrite in literal form (understated why the other neighbours are unavailable; substance accepted). Reopening the conjunct-vs-document ruling. Any edit outside the CS-4/CS-5 surface. "no way out" register drift → UI microcopy owner, not this GDD.
Disagreements adjudicated
CS-4 math → systems-designer/main review. Floor → 35–58 with shelter gate-exempt (user chose b). Severity: host-"live" wording and maze boundary BLOCKING (mislead an implementer/designer); missing forgone-pattern example RECOMMENDED.
Process finding [creative-director]
"Fix introduces the defect" recurred a fourth time in three shapes: a bound checked at one extreme only; a table cell contradicted by its neighbour in the same row; an AC against a geometry the baseline cannot produce. Root cause named: edited cells and new ACs do not re-enter the checks the original section passed. Four lines added to .claude/skills/design-review/SKILL.md's revision-pass checklist.
Scope Signal
Revision: S. System: M (unchanged).
Files changed
design/gdd/base-building.md, design/gdd/systems-index.md, design/quick-specs/player-movement-2026-08-27.md, .claude/skills/design-review/SKILL.md.