Two-round workshop producing D-041 (Knowledge Graph Data Model): - Round 1: independent analyses from Dudley, Gestalt, SI, Tyre, Paula - Round 2: synthesis resolving debates + Gestalt mechanics validation Key decisions: - 4-level confidence hierarchy (Suspects < KnowsOf < KnowsDetails < Direct) - BTreeMap for deterministic iteration (D-010 principle 4) - Per-entity Component model, not centralized Resource - StableEntityId + EntityRegistry for save/load stability (partial Q-019) - Sprint 2 stub: structs + direct observation + basic decay (~6.5 dev-days) Resolved Q-016 (knowledge hierarchy), raised Q-024/Q-025/Q-026. Created tickets #361-#368 under epic #351, reconciled #49 children. Updated sprint 2 briefings, agent briefings, and decision files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
5.6 KiB
Gestalt - Project Briefing
Last updated: 2026-02-11
Current Project State
The Settled Reach: top-down immersive sim, single-character perspective, asymmetric information core mechanic, Rimworld-style storyteller. 41 confirmed decisions, 17 discussion rounds + 2 workshops complete. Engine selected (D-020). Vertical slice defined (D-027). v0.1 Content Gap Analysis Workshop complete — tag taxonomy converged, FRIEND ECS spec defined, audio architecture designed, previewer scoped. Knowledge Graph & Information Boundaries Workshop complete (D-041) — Q-016 resolved.
Status
ACTIVE. Systems specification work unblocked. Tag taxonomy needs formalization as standalone document. Knowledge state vocabulary blocks Mellanie's monologue authoring. 17 content-supporting systems identified, 0 built — significant server-side work ahead.
Decisions Relevant to Your Role
- D-005: Core concept — story generator mechanics, emergent narrative from systems
- D-007: Five pillars — mechanical framework
- D-008: Action pillar — hubris wall mechanic
- D-011: Fog of war as pillar 1 infrastructure
- D-015: Camera lock — vision cone as information constraint
- D-017: Perception loadout system — observer queries
- D-018: Three-range sound system — information quality by distance
- D-020: Godot client + Rust/bevy_ecs simulation via subprocess/IPC
- D-021: Official title "The Settled Reach"
- D-024: 10-axis NPC consolidation
- D-025: Social site as systemic unit
- D-026: Timestamp eviction
- D-027: Vertical slice as systems proof
- D-028: Axis-to-pipeline mapping (dialogue selection)
Workshop Decisions (Content Gap Analysis)
- D-032: Separate monologue pools —
characteris a hard partition tag. Two parallel content trees. - D-034: THE FRIEND ECS spec — full pipeline depth test. Every system exercised on these two NPCs. ECS components: NpcIdentity, Want, Secret, Relationships[3], ToleranceThreshold, DailyRoutine, InformationInventory, Contentment, PersonalityTraits, TellState, SkillSet, AccessTierMap, TriangleMembership, MoodState.
- D-035: Converged tag taxonomy (6+3) — your Round 2 design is canonical:
- 6 structural:
id,text,role,access(list),trust,situation(list) - 3 selection:
topic(list),mood(list),tags(freeform) - 13 situations, 9 topics, 8 moods, 9 monologue triggers
- 4-layer pipeline: access (hard filter) → situation (context filter) → trust (hard filter) → mood+topic (weighted selection)
- 6 structural:
- D-033: Entity color — client-side derivation from RelationshipState + knowledge state. Not an NPC property.
- D-038: Audio architecture — event-driven: SoundEventEmitter → ObserverSnapshot → SoundRenderer with AudioAssetRegistry + VisualSoundIndicator + AmbientManager. Events first, assets second.
- D-039: 6 wow moments — systems must support all 6 (observation triggers, FRIEND contradiction staging, divergence reveal, ticker display, idle monologue).
- D-041: Knowledge Graph Data Model — 4-level confidence hierarchy: Suspects < KnowsOf < KnowsDetails < Direct. Resolves Q-016. Maps to D-028 access tiers and D-035 prerequisite tags. Per-entity KnowledgeGraph Component with BTreeMap storage. KnowledgeState enum supports contradiction detection for THE FRIEND arc (D-034). Sprint 2 scope: data structures + direct observation + basic decay.
Open Questions Assigned to You
- Q-002: v0.1 scope definition (co-lead)
- Q-005: Prototype scale (co-lead with Tyre, Miri)
- Q-009: Time system design — resolved (D-031)
- Q-010: Storyteller AI architecture (co-lead with Nigel)
- Q-012: Generation expansion method (co-lead with Mellanie)
- Q-013: Line previewer temporal progression (co-lead with Dudley)
- Q-014: Audio timing with monologue chime (co-lead with Ozzie)
- Q-015: Generation expansion for FRIEND content (co-lead with Mellanie)
- Q-016: Knowledge hierarchy for prerequisites — RESOLVED (D-041)
- Q-017: Triangle pressure threshold (co-lead with Paula)
- Q-024: Gossip propagation timing (co-lead with Tyre) — preferred direction: queued
- Q-026: Contradiction detection algorithm (co-lead with Paula, Dudley)
Current Priorities
Systems specification → server implementation support → previewer
- Lock tag taxonomy + line pool format — formalize Round 2 converged schema as standalone spec document. Reference for all content authors.
- Knowledge state vocabulary — UNBLOCKED by D-041. Use 4-level confidence hierarchy (suspects/knows_of/knows_details) plus FactId format (
category.topic). See D-041 Appendix A for v0.1 vocabulary and prerequisite format. - Dialogue selection pipeline specification — formalize the 4-layer filter algorithm for server implementation.
- Sound event system architecture — formalize Round 2 section 6 for Dudley.
- Line previewer (#193) MVP scope — 7 must-have features. Build as first implementation of dialogue pipeline (shares 80% code). Rust CLI.
- Content-to-system mapping validation — 17 content needs, 0 built. Track which systems are needed when.
Systems critical path
NPC Component Architecture (10 axes)
+-> NPC Routine System → Observation Event Generator → Monologue Trigger System
+-> NPC Mood State Machine → Tell State Derivation
+-> Interaction Tracking → Trust Progression
+-> YAML Content Loader → Dialogue Selection Pipeline → Line Variety Tracker
Key Documents
- decisions/content.md — D-023 through D-037
- decisions/architecture.md — D-008 through D-031
- docs/workshops/content-gap-analysis_v0_1/ — workshop outputs and SUMMARY.md (your Round 2 has converged taxonomy, ECS spec, audio architecture, previewer scope)