Files
settled-reach/docs/workshops/generator-architecture/tyre-round5.md
T
jpmschweitzerandClaude Opus 4.6 9a5c9c4408 docs(docs): add frontmatter to generator-architecture workshop
Standardized YAML frontmatter on all 38 files with title, description,
type, workshop, agent, and round fields.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 23:40:37 +01:00

11 KiB
Raw Blame History

title, description, type, status, workshop, agent, round, created
title description type status workshop agent round created
Tyre Round 5 — Final Review Final review of workshop outcomes for technical architecture accuracy workshop archived generator-architecture tyre 5 2026-02-27

Round 5: Tyre — Final Review of Workshop Outcomes

Workshop: Generator Architecture (#562) Agent: Tyre (Technical Architect) Date: 2026-02-27

Round 5 scope: Review workshop-outcomes.md for accuracy against my Round 4 canonical output. Corrections only.


Overall Assessment

The outcomes document is accurate and well-compiled. Qatux has correctly captured the three-layer model, the spatial hierarchy, the Phase 1 pipeline, and all 14 D-READY items. The lead decisions table is correct. The key tensions and resolutions table is correct. The open questions are correctly identified.

cracks knuckles — That said, I have a few corrections. None are architectural — they're all accuracy/consistency issues in how the outcomes doc represents decisions that were made.


Corrections

CORRECTION 1: WorldTier enum values don't match Round 4 canonical

Location: Workshop-outcomes §"WorldTier and ComplexityTier" (lines 127143)

Issue: The outcomes document uses:

Core, Regional, Local, Transit, Dormant

My Round 4 canonical enum (§2.1, the D-record version) uses:

Epicenter, Regional, Passage, Backwater, Waypoint

The lead decision L-3 says "WorldTier wins over SignificanceTier as the field name." Correct — but the enum variant names should match the Round 4 canonical. The outcomes doc appears to have substituted simplified names that were never agreed upon.

Fix: Replace the WorldTier enum values with the Round 4 canonical:

Current (incorrect) Correct (Round 4 canonical)
Core Epicenter
Regional Regional
Local Backwater
Transit Passage
Dormant Waypoint

Also update the constraint ceiling text:

  • Current: "Core/Regional → Full max; Local → Moderate max; Transit → Minimal; Dormant → Empty"
  • Correct: "Epicenter/Regional → Full max; Backwater → Full (key insight: dense isolated community); Passage → Moderate max; Waypoint → Minimal"

This matters because the Backwater → Full case is one of the most important combinations in the game (§2.3 of my Round 4 — the fishing village scenario). The current text says "Local → Moderate max" which would prohibit this case. That's a material error.

CORRECTION 2: Missing fields on DistrictSkeleton summary

Location: Workshop-outcomes §"The Three-Layer Model" (lines 4379)

Issue: The canonical DistrictSkeleton in my Round 4 (§5.1) includes fields that are absent from the outcomes summary:

  • district_id: DistrictId — identity field, omitted
  • seed: u64 — critical for deterministic generation, omitted
  • district_type: DistrictType — classification, omitted
  • context: DistrictContext — world context, omitted
  • access_points: Vec<AccessPoint> — district-level entries/exits, omitted

The summary does include breach_only_zones, vertical_structure, and derived_analysis which are not on my Round 4 canonical struct. These appear to have been pulled from other participants' proposals rather than the final canonical struct.

Fix: The DistrictSkeleton field list in the three-layer model should match the canonical struct from my Round 4 §5.1. Either reproduce it exactly or add a note that the summary is simplified and the full struct is in the D-record.

I'd recommend: keep the summary form but correct the field list to match the canonical. Add the missing identity/seed/context fields. Remove breach_only_zones, vertical_structure, and derived_analysis unless another participant's round 4 added these and I missed them — in which case, note the source.

CORRECTION 3: Spatial hierarchy table — missing visual tile dimension

Location: Workshop-outcomes §"Spatial Hierarchy (D-094)" (lines 8387)

Issue: Minor. The table lists "Visual tiles" as 32×32 for chunks, 64×64 for blocks, 256×256 for districts. These are correct. But my Round 4 also specifies that a Block is "2×2 chunks" in the DistrictSkeleton comments (§5.1, line: /// The 4×4 block grid (each block = 128×128 sim tiles = 2×2 chunks)). The outcomes table says Block = 4 chunks in the "Purpose" column. These are consistent (2×2 = 4 chunks total). No error — just confirming.

No fix needed. The table is correct.

CORRECTION 4: MobileChunk — missing Idle movement state

Location: Workshop-outcomes §D-READY-13 (lines 334346)

Issue: The outcomes document lists MobileMovementState as (Docked / InTransit / InterSystem). My Round 4 canonical (§1.4) includes a fourth state: Idle — vessel parked at a location but not docked to infrastructure (anchored ship, grounded shuttle). This was a Round 4 addition (noted in my §6 cost summary: "MobileChunk Idle state added: +0.5 dev-days").

Fix: Add Idle to the MobileMovementState list:

MobileMovementState (Docked / InTransit / InterSystem / Idle)

CORRECTION 5: Implementation targets — MobileChunk effort

Location: Workshop-outcomes §"Implementation Targets" (lines 409416)

Issue: The outcomes document says "MobileChunk (single-chunk vessels)" at v0.3, ~9.5 dev-days. This is consistent with my Round 4 estimate. However, my Round 4 milestone breakdown (§6) places mobile chunks at v0.3 alongside organic layout, palette modifiers, edge bleed, etc. — the v0.3 total is ~23 dev-days. The outcomes table correctly shows ~9.5 for just the MobileChunk portion.

No fix needed. The figure is correct.

CORRECTION 5b: MobileChunk Docked state missing required fields

Location: Workshop-outcomes §D-READY-13 (lines 340341)

Issue: D-READY-13 explicitly states:

"The scheduled_departure: Option<SimTick> field in Docked state satisfies this; the generator must populate it. Vessels without departure schedules are an error state."

My Round 4 canonical Docked state (§1.4):

Docked {
    dock_position: WorldPosition,
    connected_chunk: Option<ChunkCoord>,
}

Neither scheduled_departure nor docked_since is present. The outcomes doc explicitly references these fields as satisfying a generator requirement — so the D-record struct must include them. The outcomes doc is correct; my Round 4 struct is incomplete here.

Fix for D-record filing:

Docked {
    dock_position: WorldPosition,
    connected_chunk: Option<ChunkCoord>,
    docked_since: SimTick,
    scheduled_departure: Option<SimTick>,
},

CORRECTION 6: Guarantee audit — missing checks from Round 4

Location: Workshop-outcomes §D-READY-2 (lines 158165) and §D-READY-8 (lines 249257)

Issue: My Round 4 GuaranteeAuditResult struct (§5.2) has 11 named checks. D-READY-2 in the outcomes lists the tiers correctly. However, D-READY-8 says "A-1/A-2/A-3 are Tier 3 Conditional" and "A-4 is mandatory Full-complexity." In my Round 4 audit struct, A-4 (non_institutional_route) is NOT in the struct — it's listed in D-READY-8 as a requirement but I didn't add it as a named field on GuaranteeAuditResult.

This is my omission from Round 4, not an error in the outcomes doc. The outcomes correctly state A-4 is mandatory for Full-complexity. When filing the D-record, A-4 should be added to the GuaranteeAuditResult struct as a Tier 2 check (it's mandatory for Full, not conditional). Similarly, egress_multiplicity (A-2) is missing from my struct.

Recommended fix for D-record filing (not outcomes doc): Add non_institutional_route: Option<AuditCheck> and egress_multiplicity: Option<AuditCheck> to the Tier 2 section of GuaranteeAuditResult. Also add horizon_view_corridor: Option<AuditCheck> and breach_only_zone: Option<AuditCheck> and rooftop_discovery: Option<AuditCheck> from D-READY-2 Tier 2 list. The outcomes doc correctly lists these; my Round 4 struct was incomplete.


Items Verified Correct (No Changes Needed)

  • L-1 through L-7: All lead decisions accurately captured.
  • Phase 1 pipeline stages: Correct (5 stages).
  • LayoutMode struct: BlockPlacement with offset, rotation_steps, street_width_factor — matches Round 4.
  • 45-degree rotation hard cap: Correctly stated as non-negotiable.
  • D-READY-3 (TrianglePurpose): Enum values match. Vec<TrianglePurpose> correctly noted.
  • D-READY-4 (WallBackside/TileBehindState): Dual classification correctly captured. Era-tagged infrastructure contents correct.
  • D-READY-5 (DamageOverlay): Structs match. scatter_seed correctly scoped. RegenerationStrategy correctly defined. XOR prohibition correctly stated.
  • D-READY-6 (ZonePalette): 8 base terrain types correct. Modifier axes (A/B/C) correctly described.
  • D-READY-9 (Heritage Grammar): Blend rules correct. Authoring domain separation (Miri vs Araminta) correct.
  • D-READY-12 (Trauma Events): TraumaEventSubtype enum matches. Decay rate per heritage root correct.
  • D-READY-14 (DamageOverlay/RegenerationStrategy): Correctly filed as separate D-record from D-READY-5. Prohibition framing accurate.
  • NPC model (10 axes): All axes correctly listed. Axis 11 correctly flagged as Q-record.
  • Minimum NPC count (3): Correctly stated.
  • Key tensions table: All 6 tensions and resolutions accurate.
  • Open questions: All 6 Q-records correctly identified with appropriate owners.
  • Ozzie's "promises" synthesis: Accurately captured.

Summary of Required Corrections

# Severity What Where
1 HIGH WorldTier enum values wrong (Core/Local/Transit/Dormant → Epicenter/Backwater/Passage/Waypoint). Constraint ceiling text prohibits the Backwater+Full case. §WorldTier, lines 127143
2 MEDIUM DistrictSkeleton field list has missing and extra fields vs. Round 4 canonical §Three-Layer Model, lines 4362
3 No correction needed §Spatial Hierarchy
4 LOW MobileMovementState missing Idle variant §D-READY-13, line 336
5 No correction needed §Implementation Targets
5b MEDIUM Docked state missing scheduled_departure + docked_since (D-READY-13 explicitly requires them) §D-READY-13, line 340
6 NOTE My Round 4 GuaranteeAuditResult struct was incomplete — outcomes doc is correct, but D-record filing should add missing Tier 2/3 fields §D-READY-2/8

Correction 1 is the only one I'd flag as potentially misleading — the wrong enum values combined with the wrong constraint ceiling text could cause implementation to prohibit Backwater+Full, which is a key game experience. The rest are bookkeeping.


Tyre — Round 5 review complete. One high-severity correction (WorldTier enum names and constraint ceiling), one medium (DistrictSkeleton field list), one low (missing Idle state). The outcomes document is solid work overall — the architecture is accurately represented.