Create PROJECT_STATE.md at repo root with cascade phase table, decision count, and current sprint. All 18 briefings now reference this file instead of duplicating the project state paragraph. Also removes stale content from briefings: - "v0.2 direction: generator-first" (contradicts D-166 cascade) - "Sprint 25 generator spike confirmed as critical path" (Phase 5) - Agent-specific generator prerequisite claims - Gestalt "v0.2 Pivot" section reframed as "Key Design Pivots" Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
3.2 KiB
3.2 KiB
title, description, type, status, agent, updated
| title | description | type | status | agent | updated |
|---|---|---|---|---|---|
| Dudley - Project Briefing | Backend/engine implementation agent on standby — covers Rust simulation server, ECS model, and bevy_ecs architecture decisions | briefing | active | Dudley | 2026-03-13 |
Dudley - Project Briefing
Last updated: 2026-03-13
Current Project State
See PROJECT_STATE.md for shared project state (cascade phase, sprint, decision count).
Status
STANDBY. This briefing will be populated when backend/engine implementation begins. Dudley activates when simulation implementation work is assigned.
Key Decisions for Your Domain
Read decisions/architecture.md (primary) and decisions/content.md (NPC model). Key decisions:
- D-010: Four architectural principles (client-server, info boundaries, deterministic sim, input events)
- D-020: Rust simulation server with bevy_ecs, MessagePack protocol to Godot client
- D-024: NPC ECS model (10 axes + CombatCapability component) — survives in v0.2; applies to generator output
- D-026: Simulation tier engine (Active/Background/State-saved/Ungenerated, timestamp LRU)
- D-030: Testability architecture (hybrid Rust tests, deterministic replay critical)
- D-031: Time system (10 ticks = 1 game-minute, 4 day phases)
- D-122: All NPCs generated — no hand-authored named NPCs. The NpcBlueprint struct (Tyre) is the ECS entry point.
- D-129: Traits + behavior first; relationships Sims + Rimworld style. Codify for systems.
Development Workflow
See docs/DEVOPS.md for full procedures. Your key targets:
make setup— verify Rust toolchain (clippy + rustfmt)make build-server—cargo buildinserver/make server—cargo runinserver/make test-server—cargo testinserver/make lint-server— clippy (deny warnings) + rustfmt checkmake ci-server— full server CI pipeline (lint → build → test)- Server code lives in
server/— unit tests inline with#[cfg(test)], integration tests inserver/tests/ - Cross-boundary IPC fixtures in
tests/
Key Workshop Decisions (relevant to server implementation)
- D-035: Converged tag taxonomy (6+3) — dialogue selection pipeline: access (hard filter) → situation (context filter) → trust (hard filter) → mood+topic (weighted selection). Server implements pipeline.
- D-038: Audio architecture — event-driven: SoundEventEmitter → ObserverSnapshot → SoundRenderer. Server emits sound events.
- D-041: Knowledge Graph Data Model — Per-entity
KnowledgeGraphComponent with BTreeMap storage (deterministic). 4-level confidence hierarchy (Suspects/KnowsOf/KnowsDetails/Direct). StableEntityId + EntityRegistry for stable entity references. Event-driven updates via KnowledgeEventQueue. Canonical Rust structs atdocs/workshops/knowledge-graph-information-boundaries/round2-synthesis.mdPart 3. - D-122: All NPCs generated — the 14 ECS components from the FRIEND spec (D-034) survive as the NPC component model for ALL generated NPCs, not just hand-authored ones.
Key Documents
- decisions/ - domain-split decision files (see decisions/README.md for index)
- docs/DEVOPS.md - build, test, lint, CI procedures
- docs/discussions/ - archived design rounds