Delegate sprint-status to a haiku subagent (sprint-plan pattern) so
intermediate artifacts (sweep JSON, template read, PR list) stay out
of the main context window. Trim sweep JSON output by removing unused
fields (ok, sprint.status, priority, ticket_id) and shortening issue
detail strings. Condense output template by moving rendering rules
into SKILL.md and simplifying the bookkeeping table to two columns.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Structured JSON output with tickets grouped by status, per-team
summary counts, and bookkeeping issue detection (unassigned
in_progress, stale backlog, assigned but done).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Reduces prompt approvals from ~30 per batch to 2 (one manifest write,
one batch run). audio-generate --post chains trim+normalize+convert
after generation. audio-batch processes a JSON manifest of multiple
assets sequentially, supporting both SAO generation and harmonic
synthesis methods. Includes --dry-run, --only, and --skip-existing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
sprint stop now marks in_progress/review tickets as done
automatically — agents often forget to update status after merging.
Backlog/ready tickets are left as carry-over candidates since they
were never started.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
ticket create previously had no way to set descriptions, causing
agents to work around with raw SQL or mangled titles.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
audio-generate: Gradio API wrapper with timeout handling (600s default),
sequential-only generation, SSE stream polling. audio-health: API
health check. audio-post: ffmpeg wrapper for convert/normalize/trim/
pipeline operations. All follow existing connector pattern.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Unified sprint script at db/connectors/sprint with 5 subcommands:
status, start, stop, start-work, prepare. Calls ticket CLI via
subprocess (no SQL duplication), auto-detects sprint from DB state
and team from git branch. Guards prevent activating unplanned
sprints. Updated start-sprint, plan-sprint, and ticket skills to
reference the new CLI. Added sprint CLI section to CLAUDE.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The SQLite database now lives at ../settledreach.db, shared across all
git worktrees. This eliminates binary merge conflicts that occurred
whenever two branches modified the database independently.
All Python connectors (ticket CLI, sqlite_connector, decisions_sync)
now resolve the DB path relative to their own location — three levels
up from db/connectors/ reaches the worktree parent. The _main_worktree()
git-rev-parse pattern and config.json sqlite_db key are removed.
The database file is untracked from git; a backup mechanism commits
snapshots through the main branch (see following commits).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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>
Adds a comma-separated team field to tickets so work can be
attributed to server, client, or joint teams. Includes --team
filter on list, --team on create, and a new team subcommand.
Schema, CLI, and skill docs all updated.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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>
Sprint 1 "Run" completed — 8/8 tickets done. Player-controlled
character moving on screen through working IPC bridge achieved.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
E2E connection test (#81) merged via PR #7. Tile collision
system (#236) already on main. Sprint 1 now 7/8 complete.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
ticket show now accepts multiple IDs (e.g. ticket show 110 111 112).
--brief flag outputs compact human-readable summaries instead of JSON,
useful for sprint planning scans. Single-ID JSON output unchanged.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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>
Same fix as the ticket CLI — uses git rev-parse --git-common-dir to
resolve DB path to the main worktree. Prevents WAL/journal pollution
when sqlite-query or sqlite-exec are called from feature branches.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Uses git rev-parse --git-common-dir to find the main worktree root,
then resolves the DB path there. Prevents WAL/journal pollution on
feature branch worktrees that caused merge conflicts on commonwealth.db.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ergonomic Python CLI wrapping parameterized SQLite queries for ticket
management. Supports list, show, create, assign, sprint, deps, search,
epics, children, count commands with JSON output. Replaces raw SQL
access for Si and other agents.
Also includes Sprint 1 "Run" creation and story assignments:
- #77, #79 → client
- #78, #236 → server
- #81, #82, #83 → joint
- 36 tickets updated to done (boilerplate work completed by merged PRs)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Tickets 276 (epic) and 278-286 (stories/tasks) updated to done
status after make ci-server passed green.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The SQLite database contains integral project content (273 tickets,
dependencies, sprint planning). Remove from .gitignore and check in.
WAL/SHM journal files remain ignored as transient.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Agent personality files and skill definitions updated to reference decisions/
domain files instead of monolithic DECISIONS.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add decisions_sync.py that parses decisions/*.md markdown headings,
extracts metadata (type, domain, status, round, date), and upserts
into SQLite. Two-pass approach: decisions first, then cross-references
to avoid FK violations on forward references.
Schema adds decisions table (52 rows) and decision_refs table (29 rows)
with cascading deletes. Makefile gains decisions-sync, decisions-coverage,
decisions-active, and decisions-orphan targets. Sync runs as part of
make setup.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Complete the set of whitelistable wrapper scripts so all SQLite
access goes through db/connectors/sqlite-* (query, exec, init, seed).
Update the ticket skill to reference wrappers instead of calling
sqlite_connector.py directly, making permissions allowlisting clean.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Thin bash wrappers around sqlite_connector.py and qdrant_connector.py
that can be whitelisted in Claude Code permissions. Covers sqlite-query,
sqlite-exec, qdrant-search, qdrant-index, qdrant-health, qdrant-count.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Set up Commonwealth game project with complete agent team (18 agents),
discussion archives (12 rounds), briefing system, ticketing database,
Qdrant document search, and skill definitions. Establishes the
documentation and tooling foundation for engine selection and
implementation phases.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>