DRIFTLANDS co-op survival on drifting tides — studio progress

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 sweepPartial — CI gate block, AC-46, AC-20b hold; knob row bounds wrong → CS-6
CS-5 placerHasExitPartial — 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
2521FAIL (high extreme)
3431FAIL
3532PASS
5042PASS
584 (232/58 exactly)2PASS
5952FAIL

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.