Commit Graph
63 Commits
Author SHA1 Message Date
jpmschweitzerandClaude Opus 4.6 f3550577a9 chore(db): snapshot database after server branch merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 16:10:13 +01:00
jpmschweitzerandClaude Opus 4.6 651b1d34a6 chore(db): update database backup after server merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 15:17:23 +01:00
jpmschweitzerandClaude Opus 4.6 f1bd361816 feat(docs): add D-066 dual-scale grid decision and propagate to all docs
0.5m sim tiles for movement/LOS granularity, 1m visual tiles for
proportional art and readable spaces (2x retina factor). All world
geometry constrained to 2x2 sim tile minimum so cover/LOS maps 1:1
with visuals. Entities occupy 1x1 sim tiles for fine positioning.

Updates: D-043, D-044, D-051, D-056, D-059 annotations, workshop
outcomes (art direction + control/interaction), sprint 6 briefings,
decision index, and CLAUDE.md.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 11:01:05 +01:00
jpmschweitzerandClaude Opus 4.6 6e0ecb4d4a chore(db): update database backup after planning merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 09:48:30 +01:00
jpmschweitzerandClaude Opus 4.6 9d0077bb80 docs(sprints): Sprint 6 Touch briefings — server, client, copy, joint
18 tickets across 3 teams. Movement stances, fog shader rebuild,
multi-verb interactions, smuggler inventory.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 09:34:55 +01:00
jpmschweitzerandClaude Opus 4.6 5c3c2a527b docs(workshops): Control & Interaction Workshop outputs
Workshop notes (2 rounds), outcomes document (13 decisions, 27 tickets,
v0.1 interaction model), and updated brief with final lead direction.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 09:34:49 +01:00
jpmschweitzerandClaude Opus 4.6 dde270322c docs(briefings): update agent briefings after Sprint 5 pipeline fixes
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 19:24:43 +01:00
jpmschweitzerandClaude Opus 4.6 8228ef3c1c chore(db): update database backup after client merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 18:11:56 +01:00
jpmschweitzer 07d7bf635d Merge remote-tracking branch 'origin/ci'
# Conflicts:
#	CHANGELOG.md
2026-02-13 18:10:27 +01:00
jpmschweitzerandClaude Opus 4.6 e01de6684e feat(content): add character voice speech patterns (#310)
Speech-level execution spec for smuggler and detective: contraction
rules, sentence length, punctuation patterns, stress markers,
vocabulary, verbal tics, and 8-point authoring validation checklist.
Blocks all FRIEND pack and PC-as-NPC content authoring.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 17:51:29 +01:00
jpmschweitzerandClaude Opus 4.6 163de8bf25 fix(ci): address PR review — filter comments, trim whitespace, warn on missing scripts
- Filter YAML comment lines (grep -v '^\s*#') from both extraction
  pipelines to prevent phantom canonical IDs
- Trim trailing whitespace from extracted fact_ids so grep -qxF exact
  match works reliably
- Pre-commit dispatcher now prints explicit warning when a check script
  is missing instead of silently skipping
- Document --no-verify bypass for emergencies in DEVOPS.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 17:42:22 +01:00
jpmschweitzerandClaude Opus 4.6 fe204aa5f4 feat(ci): add pre-commit FactId validation hook (#393)
Grep-based pre-commit check validating fact_id references in content
YAML against canonical knowledge catalogs. Runs in advisory mode when
catalogs are stubs (exit 0), switches to enforcing mode once populated
(exit 1 on unknown fact_ids with file:line output).

- tooling/check-fact-ids: core validation script (<2s runtime)
- .config/hooks/pre-commit: hook dispatcher for modular checks
- Makefile: check-fact-ids + setup-hooks targets, wired into setup
- docs/DEVOPS.md: content validation and pre-commit hooks sections

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 17:17:34 +01:00
jpmschweitzerandClaude Opus 4.6 524aca52eb chore(db): update database backup after client merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 02:14:01 +01:00
jpmschweitzerandClaude Opus 4.6 03914c6442 docs(briefings): update Hoshe with integration test coverage priorities
Adds directive to focus on client-server integration tests landing
from Sprint 5, push for proper test harnesses, a dedicated test map
for routing/edge cases, and edge case coverage over happy-path volume.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 02:13:57 +01:00
jpmschweitzerandClaude Opus 4.6 2fa609b19c docs(sprints): add Sprint 5 "Live" team briefings
Content-focused sprint: FRIEND packs (Kael Davan, Sera Venn),
NPC authoring style guide, voice patterns, PC-as-NPC content,
UI microcopy, and FactId pre-commit validation. Briefings for
copy (6 tickets), client (2), CI (1), plus joint integration.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 01:50:59 +01:00
jpmschweitzerandClaude Opus 4.6 d3b68012d9 docs(architecture): add seed configuration schema design (#394)
Design document defining what the randomizer produces at game-start:
FRIEND selections, pool draws, template assignments, triangle config,
entanglement config, contraband selection, starting knowledge. Includes
ChaCha20 RNG protocol, validation rules, and implementation roadmap.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 01:19:34 +01:00
jpmschweitzerandClaude Opus 4.6 e309f66c99 chore(db): update database backup after copy merge
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 01:00:29 +01:00
jpmschweitzerandClaude Opus 4.6 b672b9c269 feat(docs): restructure wiki taxonomy with templates and Krenn System entry (#301, #319)
Move wiki from docs/wiki/ to root wiki/. Add 14 category templates with
YAML frontmatter, governance model, hierarchical spatial structure
(system > station > district > location). Populate Krenn System entry
as first concrete star system. Update cross-references in workshop and
sprint docs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 00:58:45 +01:00
jpmschweitzerandClaude Opus 4.6 d1cb0d129d docs(sprints): add sprint 4 "Feel" team briefings
Content conversion and authoring sprint — 19 tickets across copy (8),
server (9), client (1 carry-over), and CI (1). Critical path runs
through wiki→YAML NPC conversion (#398) to content loader (#408).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 00:02:28 +01:00
jpmschweitzer 30f6666d7d Merge remote-tracking branch 'origin/main' into visual 2026-02-12 23:28:25 +01:00
jpmschweitzerandClaude Opus 4.6 0358eedbc5 docs(workshops): archive art direction & mood board workshop (3 rounds + closing)
Four-agent workshop (Araminta, Ozzie, Miri, Gore) establishing visual
identity for The Settled Reach. 9 mood board images, 16 art direction
principles, 10 candidate decisions (D-042 through D-051), v0.1.1 sprite
plan. Post-workshop technical session resolved 3D render pipeline,
resolution chain (1024/256/64), and camera angle lock ("the angle").
Pipeline test samples included: Era 1 institutional wall + bar green
wall rendered through the full Nano Banana -> 3D model -> sprite chain.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:21:09 +01:00
jpmschweitzerandClaude Opus 4.6 010c4158f9 docs(copy): address PR #15 review feedback
Miri (critical):
- Fix 3 stale "Hael" references in decisions/content.md (D-034, D-036)

Paula (suggestions):
- Flag dual-fire 15-30s delay as tuning target in smuggler moral arc
- Clarify MIRROR NPCs can be wrong (lied to) without being dishonest
- Add implementation note for Path C deferred follow-up fork
- Note detective-NPC dialogue rotation variants for post-v0.1
- Clarify detective vs smuggler moral_weight criteria in entity attributes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 19:07:24 +01:00
jpmschweitzerandClaude Opus 4.6 d06c0e0f4e docs(design): add smuggler voice card and moral arc spec
Wave 4 deliverable for #382 (subsumes #310):
- Voice card: register parameters, 5 anchors, 4 anti-patterns, paired
  comparison examples, display constraints, authoring checklist
- Moral arc: 4 phases (Comfort→Doubt→Reckoning→Compromise), FactId
  gates, monologue trigger rules, Kael intersection mapping

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 18:12:31 +01:00
jpmschweitzerandClaude Opus 4.6 d9448b5af0 docs(wiki): add Triangle 1 fork, PC-as-NPC spec, expand Drin to Tier 2
Wave 3 deliverables:
- Triangle 1 Hub Power Volume Escalation fork (#377): 3-path smuggler
  decision (escalate/stabilize/mediate), NPC state changes, ~41 dialogue lines
- PC-as-NPC unified spec (#381): starting knowledge/relationship graphs,
  tell inversion, orientation monologue, 9-step conversion checklist,
  v0.1 smuggler + detective briefs (29 items each)
- Drin Rosta Tier 2 expansion (#397): full 10-axis profile, 6 voice lines,
  formalized Triangle 2 + Triangle 5 roles

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 18:06:07 +01:00
jpmschweitzerandClaude Opus 4.6 58c7d882bc docs(design): add dual lens guide, MIRROR spec, interaction verbs, wow moments checklist, NPC pattern mapping
Wave 2 of Sprint 3 "Know":
- #261: Dual Lens Authoring Guide (7 chapters, smuggler/detective voice registers)
- #380: THE MIRROR pattern spec with Naia Tamm reference implementation
- #396: Pattern/Motivation sections added to all 18 NPC wiki pages + index
- #400: v0.1 wow moments checklist mapping 6 D-039 moments to deliverables
- #402: Interaction verb spec (7 verbs, priority resolution, architecture)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 17:55:57 +01:00
jpmschweitzerandClaude Opus 4.6 5fdb7f9c53 docs(design): add content directory structure, update entity attributes, stub Nils Davan
Wave 1 critical blockers for Sprint 3:
- #384: Content directory structure design doc (10 sections + 2 appendices,
  defines canonical IDs, 8 JSON schemas, 3-tier validation pipeline, migration path)
- #374: Update entity-attributes.md (14→16 keys, secret→leverage rename,
  add 4 role-perspective keys, archetype interpretation note)
- #376: Nils Davan off-stage NPC stub (GHOST+HANDLER pattern, lattice messages,
  Triangle 1 role, relationship to Kael)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 17:45:16 +01:00
jpmschweitzerandClaude Opus 4.6 64fea5139a docs(wiki): rename Hael to Naia Tamm, apply canonical full names, standardize shortcodes
Wave 0 wiki maintenance for Sprint 3:
- #372: Rename Hael → Naia Tamm across 16 living wiki files (phonetic collision fix)
- #371: Apply canonical full names to 11 single-name NPC headers and roster table
- #375: Replace hub_m_ → terminal_m_ shortcodes, add shortcode reference table,
  situation overlap rules, and mood exclusivity rules to monologue guide

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 17:45:04 +01:00
jpmschweitzerandClaude Opus 4.6 ef091de281 docs(sprints): regenerate sprint 3 briefings from database
Previous briefings referenced tickets not assigned to sprint 3.
Rewrote all four team briefings (server, client, joint, copy) to
match actual sprint 3 ticket assignments in the database.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 17:15:16 +01:00
jpmschweitzerandClaude Opus 4.6 60ca9d951c feat(db): add database backup/restore tooling
- tooling/db-backup: copies shared settledreach.db to docs/backups/
  for git tracking (main branch only)
- tooling/db-install: restores from backup for new clones
- make db-backup / make db-install Makefile targets
- worktree-update skill runs make db-backup after merges on main

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:54:21 +01:00
jpmschweitzer ffb73a6a77 Merge branch 'copy'
# Conflicts:
#	CHANGELOG.md
#	db/commonwealth.db
2026-02-12 16:21:37 +01:00
jpmschweitzerandClaude Opus 4.6 8c95bda639 docs(workshops): add control & interaction brief, update workshop index
Add workshop brief for Control & Interaction Scheme (next workshop).
Update index with wiki-review (complete) and v0.1-content-scoping
(complete, 38 tickets).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:19:10 +01:00
jpmschweitzerandClaude Opus 4.6 3944b4e79f docs(workshops): archive v0.1 content scoping workshop (2 rounds + closing)
Scoped the vertical slice: 16 EntityKnowledge keys, v0.1 mechanical
NPC mapping, YAML content format, 7-verb interaction model, server-
authoritative pause, 38 tickets created across copy/server/client/ci.
20 decisions (D-042 through D-061). 8 agents, 2 rounds + closing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:19:05 +01:00
jpmschweitzerandClaude Opus 4.6 0100b33635 docs(workshops): archive wiki review workshop (4 rounds + lead interview)
Long-term content strategy workshop: 300-world generator model,
cultural ingredients menu, three-system NPC architecture (9 patterns
x 6 motivations), Sacred/Profane/Middle Kingdom framework. 9 agents
across 4 rounds plus lead interview establishing the production path
from hand-authored Sova to generated 300 worlds.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:18:56 +01:00
jpmschweitzerandClaude Opus 4.6 3776443e8a docs(wiki): establish Sova Transit District game world glossary
45 files covering the v0.1 vertical slice content: 17 NPC profiles
across 3 tiers, 5 triangles, 3 social sites, 7 factions, 6 technology
entries, 3 contraband types, knowledge vocabulary (FactIds, entity
attributes, relationship states), and monologue authoring guide.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:18:49 +01:00
jpmschweitzerandClaude Opus 4.6 ed09439a31 docs(sprints): add Sprint 3 "Know" team briefings
NPC data model, pathfinding, observation events, and interaction
foundation. Briefings for server, client, joint, and copy teams.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 02:14:52 +01:00
jpmschweitzerandClaude Opus 4.6 715c7e16ab docs(sprints): add copy team briefing for Sprint 2
Sprint briefing for #368 (knowledge vocabulary for v0.1 content).
Defines FactId categories, known_attributes keys, and
RelationshipState transition patterns the copy team needs to deliver.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 01:31:00 +01:00
jpmschweitzerandClaude Opus 4.6 93abd9b9d0 docs(workshops): complete Knowledge Graph & Information Boundaries workshop
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>
2026-02-11 23:24:37 +01:00
jpmschweitzerandClaude Opus 4.6 160add9719 docs(sprints): update sprint 2 briefings with ticket IDs and dependencies
Server team added #356-#360 for pre-sprint design tasks and
integration milestones. Updated server.md and joint.md with
actual ticket numbers, dependency chains, and done status.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 22:30:05 +01:00
jpmschweitzerandClaude Opus 4.6 79603c9a7f chore(db): add sprint 2 pre-sprint tickets and update joint briefing
Server team added #356-#360: fog bridge, sprint proof, snapshot
v2 schema, Q-018/Q-019 resolution tasks. Updated joint.md with
actual ticket numbers and #81 done status.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 22:24:09 +01:00
jpmschweitzerandClaude Opus 4.6 7f97cb7ce3 docs(sprints): add Sprint 2 "See" briefings for server, client, joint
Sprint 2 goal: fog of perception working through the bridge. Server
computes LOS visibility, client renders fog. Carries over #236 and #81
from Sprint 1.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:45:38 +01:00
jpmschweitzerandClaude Opus 4.6 1920f002a1 docs(workshops): add 5 architecture spike workshop briefs
Workshop briefs for the larger spikes identified by the architecture
review audit: knowledge graph & information boundaries, observer
snapshot pipeline, NPC AI state machines, save/load architecture,
and map authoring pipeline. Each includes participants, key questions,
input documents, and expected outputs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:36:02 +01:00
jpmschweitzerandClaude Opus 4.6 33db0caa69 docs(audits): add architecture audit framework and Sprint 1 review
Two-round adversarial review by Tyre + Troblum covering full
architecture decisions and implementation. Status: GREEN architecture,
AMBER implementation plan.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:29:58 +01:00
jpmschweitzerandClaude Opus 4.6 af4d0d3f26 docs(workshops): complete v0.1 content gap analysis workshop
Workshop produced 42 new tickets (#297-#338) + 6 updated, 9 new
decisions (D-032 through D-040), and 53 dependency links. All 18
agent briefings updated to reflect 40 confirmed decisions.

Key outcomes: Sera Venn as detective's FRIEND, Kael Davan as
smuggler's FRIEND, all 6 wow moments in scope, converged 6+3 tag
taxonomy, wiki taxonomy with 14 categories, 8 audio files via
Stable Audio Open, 4 parallel unblocked work tracks identified.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 20:38:21 +01:00
jpmschweitzerandClaude Opus 4.6 228844fb5d docs(briefings): update Mellanie briefing post-workshop
Workshop outputs unblock content authoring. Updated status,
key decisions, and immediate work items.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 20:28:58 +01:00
jpmschweitzerandClaude Opus 4.6 3b6148e56f docs(meta): add PR #4 protocol codec test report
Hoshe's code quality review of client MessagePack codec.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 20:27:42 +01:00
jpmschweitzerandClaude Opus 4.6 e96ec80d9c docs(workshops): archive v0.1 content gap analysis workshop
6 agents × 2 rounds examining 9 content layers. Produced D-032
through D-039, THE FRIEND NPC pattern, converged tag taxonomy,
and Sova Transit District setting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 20:27:31 +01:00
jpmschweitzerandClaude Opus 4.6 91db2f99de docs(sprints): add PR workflow instructions to sprint briefings
All three sprint briefings now include tea CLI PR creation example
with required --login and --repo flags to avoid TTY prompts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 19:26:15 +01:00
jpmschweitzerandClaude Opus 4.6 198749f9c1 docs(workshops): add v0.1 content gap analysis workshop brief
Nine-layer analysis from global (art direction) to specific (audio).
Identifies gaps in content tickets for Mellanie, Paula, and Araminta.
Structured as 2-round workshop with 6 participants to produce missing
tickets, dependency chain, and content team work plan.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 19:18:28 +01:00
jpmschweitzerandClaude Opus 4.6 116b6c308c docs(sprints): add Sprint 1 team briefings
Per-team sprint briefings under docs/sprints/sprint-1/ for server,
client, and joint tracks. Each lists assigned tickets, dependencies,
key decisions to read, and implementation notes. Agents use
ticket show <id> for full details.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 18:49:49 +01:00
jpmschweitzerandClaude Opus 4.6 fb733209e0 chore(config): add automated Rust install to make setup
Adds tooling/install-rust script that installs Rust via rustup if
not present, with clippy and rustfmt components. Idempotent — skips
when already installed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 16:53:02 +01:00