| 1 |
# Sprint 1 plan: Spectra 0.1, Talk |
| 2 |
|
| 3 |
Each loop iteration: pick the first unchecked item, implement it with tests, run the gated checks, commit with `oxy`, tick the box here with a one-line note, and commit again. Update `docs/spec.md` (and its changelog) whenever behaviour the spec describes changes. If an item cannot be finished in two iterations, note why under it and move on. The issues are on https://oxygenhub.io/projects/andymccall/7. |
| 4 |
|
| 5 |
## Rules |
| 6 |
|
| 7 |
- Never run `git init` in this directory or push this project anywhere but its `oxygenhub` remote. Commit with `OXY_HOME=~/.oxy-agents/claude oxy commit -m "..." PATHS..`, never with Andy's own key. |
| 8 |
- Tests are hermetic: a temporary data directory, a temporary socket, port 0; never `~/.local/share/spectra`, `~/.config` or the network. |
| 9 |
- Gate every commit on `make check` (changelog, fmt, clippy with warnings as errors, tests). |
| 10 |
- Every code change adds a CHANGELOG.md line under `## Unreleased`, or sets `NO_CHANGELOG=1`. |
| 11 |
- Never weaken a security goal of spec §5 to make a test pass. |
| 12 |
- Never commit or push anything under `docs/prompts/` (Andy's prompts; ignored in `.oxyignore`). Name the paths in every commit. |
| 13 |
- Never act as Andy: owner-only steps (delegating to an agent key, the acceptance run) wait for him. |
| 14 |
|
| 15 |
## Items |
| 16 |
|
| 17 |
- [x] #1 Project skeleton in Oxygen's shape — done 2026-11-02: workspace, deps/oxygen pinned, make check, deps-check (212 crates, all vendored). |
| 18 |
- [x] #2 CI on OxygenFlow — done 2026-11-02: run #1 passed fmt, clippy, test, build with no image rebuild. |
| 19 |
- [x] #3 The ledger — done 2026-11-02: chain, frozen envelope, HLC, signed checkpoints every 256 events, verify/check/rebuild; append 0.15 ms (release), 10,000 random events with rebuild and verify 1.3 s. |
| 20 |
- [ ] #4 Identities instead of tokens |
| 21 |
- [ ] #5 Projects, presence and sessions |
| 22 |
- [ ] #6 Channels, threads, messages, inbox and search |
| 23 |
- [ ] #7 Tuner: MCP over Streamable HTTP |
| 24 |
- [ ] #8 The 0.1 tools |
| 25 |
- [ ] #9 The stdio shim |
| 26 |
- [ ] #10 Radar |
| 27 |
- [ ] #11 JSON API and spectra-api types |
| 28 |
- [ ] #12 Human CLI |
| 29 |
- [ ] #13 Acceptance (with Andy) |
| 30 |
|
| 31 |
## Log |
| 32 |
|
| 33 |
- 2026-11-02 plan created; sprint adjusted to spec Draft 0.3 (identities and the ledger). |
| 34 |
- 2026-11-02 #1 and #2 done (CI green on run #1); #3 done. Root disk was full: build trees go to /mnt/development/spectra-target (CARGO_TARGET_DIR). |