71 lines
5.7 KiB
Markdown
71 lines
5.7 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to The Settled Reach project will be documented in this file.
|
||
|
||
Format based on [Keep a Changelog](https://keepachangelog.com/).
|
||
|
||
## [Unreleased]
|
||
|
||
### Added
|
||
- Automated Rust install via `make setup` (tooling/install-rust script, rustup + clippy + rustfmt)
|
||
- Automated Godot download/install via `make setup` (tooling/install-godot script, installs to ~/bin/godot4)
|
||
- Round 18 v0.1 gap analysis workshop — 7 agents, 2 rounds, 4 tracks (concept proof, wow factor, missing systems, testability)
|
||
- D-030: Testability architecture — 8 sub-decisions for ticket #214 (gdUnit4, hybrid Rust testing, CauseChain component, three-layer IPC testing)
|
||
- D-031: Time system — 10 ticks = 1 game-minute, 4 day phases (Morning/Afternoon/Evening/Night), diegetic clock display
|
||
- 41 new tickets from gap analysis: 3 epics (Movement & Collision, Observation & Interaction, Game State Management) + 38 stories
|
||
- 15 priority promotions including 3 tickets to critical (deterministic replay, divergent knowledge, divergent relationships)
|
||
- 21 new dependency records mapping critical path through collision → pathfinding → NPC movement → routine execution
|
||
- Workshop directory convention established with per-workshop subdirectories
|
||
- Project directory scaffold: client/, server/, tooling/, tests/, .config/, .cache/
|
||
- Top-level Makefile with dev workflow targets (setup, build, run, test, lint, ci, clean)
|
||
- Whitelistable sqlite-init and sqlite-seed wrapper scripts completing the db/connectors/sqlite-* set
|
||
- Round 17 content architecture workshop — Full team (8 agents, 3 rounds) defining content pipeline
|
||
- D-023: Three-tier content model (authored drama modules, templated content, procedural filler) with life-sim substrate
|
||
- D-024: NPC generation model — 10 axes (7 essential + 3 supporting) with CombatCapability ECS component
|
||
- D-025: Social site / functional cluster as atomic Tier 2 template unit (4-8 NPCs, 15-40 tiles)
|
||
- D-026: Simulation tiers with timestamp-based LRU eviction (Active/Background/State-saved/Ungenerated)
|
||
- D-027: Vertical slice — smuggler + detective two-character proof-of-concept (supersedes D-006)
|
||
- D-028: Dialogue architecture — tagged line pools with four relational layers (access tiers, history, trust-gating, unprompted disclosure)
|
||
- D-029: Population entanglement ratio — 30% flat / 50% mundane triangles / 20% intrigue-entangled
|
||
- Content architecture workshop brief documenting the "life first, drama second" design philosophy
|
||
- Mellanie (Copywriter) activated from standby for content authoring phase
|
||
- Round 16 faction development — Full faction framework with lore, political analysis, mechanical grounding (session closed, awaiting team input for v0.1 selection)
|
||
- 3D reputation system: Trust × Usefulness × Exposure per faction
|
||
- Faction mechanical grounding: starting loadouts, information asymmetry, blind spots, resource loops
|
||
- Power dynamics analysis: formal vs. real power distribution across factions
|
||
- Character drama templates: whistleblower, inspector with conscience, dual-loyalty operative, reluctant conspirator
|
||
- Betrayal vectors and conspiracy potential for all six factions
|
||
- "First 30 Minutes" test demonstrating six mechanically distinct faction perspectives
|
||
- D-021: Official project title "The Settled Reach" confirmed, domain settledreach.com secured
|
||
- Round 14 worldbuilding — "The Settled Reach" original SF setting foundation with full team reactions
|
||
- Original terminology established: Settled Reach, Founder Gates, Span Gates, Interstitium, neural lattice, Meridian, imprint, re-embodiment, Perpetuals, the Unbound, Forking, Severance
|
||
- Four enhancement tiers: Baseline, Augmented, Transcendent, Elevated (plus the Threshold as endgame horizon)
|
||
- Two-tier death system: soft death (lattice intact) and hard death (lattice destroyed, imprint restore)
|
||
- Six factions: Concord Assembly, Syndics, Separatists, Guardians of Autonomy/Severance, Veil Institute, Lattice Commission
|
||
- Infrastructure-as-mystery: Builders inhabiting the Interstitium, Gyre events as leakage
|
||
- Miri's IP originality guardian role — flags concepts too close to source franchises
|
||
- Whitelistable wrapper scripts for SQLite and Qdrant connectors (sqlite-query, sqlite-exec, qdrant-search, qdrant-index, qdrant-health, qdrant-count)
|
||
- Architecture evaluation and risk assessment documents for Godot+Rust bridge approach
|
||
- Round 13 engine selection discussion — full team debate on engine paradigms
|
||
- D-020: Engine and architecture selection — Godot 4 client + Rust/bevy_ecs simulation server via subprocess/IPC
|
||
- Rejected alternatives R-004 through R-010 documented (pure Bevy, pure Godot, GDExtension, C++ GDExtension, Fyrox, custom framework, protobuf)
|
||
|
||
### Fixed
|
||
- Replaced all absolute paths (macOS and Linux) with project-relative paths across round-16 docs
|
||
- Removed duplicate ROUND-16-STATUS.md from project root (content already in round-16-session-notes.md)
|
||
- Added relative-path convention to Qatux agent persona for cross-system consistency
|
||
|
||
### Removed
|
||
- dotfiles/tmux.conf (no longer needed)
|
||
|
||
### Changed
|
||
- All 18 agent briefings updated for decisions/ directory split and DEVOPS.md references
|
||
- Implementation agents (Dudley, Hoshe, Justine, Oscar, Si, Stig, Tyre) now include Development Workflow sections with Makefile targets
|
||
- Q-009 (time system) resolved via D-031
|
||
- Ticket catalog expanded from 232 to 273 tickets with sprint sequencing (Run → Feel → Content → Validate)
|
||
- Ticket skill updated to use wrapper scripts exclusively (no more direct python3 calls)
|
||
- Miri's role updated from Canon Guardian to Worldbuilder & Setting Designer (original IP pivot)
|
||
- Project description updated to reflect D-020 engine decision
|
||
- Connector usage instructions now reference wrapper scripts instead of python3 directly
|
||
- Q-001 (engine selection) resolved via D-020
|