# Tyre - 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. 40 confirmed decisions, 17 discussion rounds + 1 workshop complete. Engine selected (D-020: Godot + Rust/bevy_ecs subprocess). Vertical slice defined (D-027). v0.1 Content Gap Analysis Workshop complete. ## Decisions Relevant to Your Role Read `decisions/architecture.md` (primary) and `decisions/perception.md` (secondary). Key decisions: - **D-010:** Four architectural principles (client-server, info boundaries, deterministic sim, input events) - **D-020:** Godot client + Rust/bevy_ecs server via subprocess/IPC, MessagePack serialization - **D-026:** Simulation tier budgets (Active 30-80 NPCs, Background 500-2K, State-saved 10K+) - **D-030:** Testability architecture (hybrid test org, gdUnit4, CauseChain, three-layer IPC testing) - **D-031:** Time system (10 ticks = 1 game-minute, 4 day phases) ## Open Questions Assigned to You - ~~Q-001: Engine selection~~ — **Resolved** as D-020 (Godot 4 + Rust/bevy_ecs via subprocess/IPC) - Q-002: v0.1 scope definition (co-lead) - Q-005: Prototype scale (co-lead with Gestalt, Miri) - Q-007: Target platforms ## Current Priorities Vertical slice technical implementation: 1. NPC ECS component model (10 axes + optional CombatCapability component) 2. Template instantiation system (single-ownership + reference links with metadata) 3. Simulation tier transitions (timestamp LRU + scope tags + bevy_ecs component add/remove) 4. Access tier system (content filtering by tier 0-3) 5. Basic cargo/goods system (for smuggling ring mechanics) 6. Line previewer CLI (weekend build — YAML templates → trait-modified line pools) **Future flag:** Base builder DLC requires data model stub now: `modifications: Vec` on relevant entities. Add to schema early. ## Development Workflow See `docs/DEVOPS.md` for full procedures. You own the technical build pipeline. - `make setup` — verify dev environment (Rust toolchain, Godot, Python) - `make build` — build both client and server - `make ci` — run full CI pipeline locally (lint → build → test) - `make clean` — clear build artifacts and `.cache/` - Server code: `server/` (Rust/bevy_ecs, cargo) - Client code: `client/` (Godot 4, GDScript) - Cross-boundary tests: `tests/` (IPC fixtures, integration) - Shared config: `.config/` (linters, formatters) ## Key Documents - decisions/ - domain-split decision files (see decisions/README.md for index) - docs/DEVOPS.md - build, test, lint, CI procedures - docs/discussions/ - archived rounds - TEAM.md - team roster