millpond is designed, not built. Its design book holds the design whole.
Roadmap
Nothing of millpond is built yet. Each step ends with something running
on real work before the next one depends on it. A step is done when a
check passes or an observation holds. The step names are the plan’s, in agentplot/blueprints’
design/capture/plan.md.
millpond’s own steps
Section titled “millpond’s own steps”-
P1 · The statement. millpond’s statement is written from the capture design. A fresh model reconstructs millpond from it, and the questions it asks are ruled and folded back in.
Needs the capture design’s decisions ruled. Done when the statement lands on blueprints’
main. -
P2 · The repository’s rules. This repository gains its founding decisions, its rules, its sluice gate and its OpenSpec configuration.
Needs P1. Done when sluice protects
mainand the first change lands through it. -
P3 · The core.
millpond land,run,tickandstatus --json, with the seven steps, the raw bank, cursors and the write lock; the import and the built-in adapters;millpond.toml.Needs P2 and flywheel-next’s capture, signals and adapters crates. Done when millpond passes the conformance pack and a capture landed twice writes nothing the second time. A refused line leaves the rest of the run landed, and a run that exits without
donekeeps its cursor. -
P4 · The tools and the Claude Code plugin.
millpond mcpserves the reader and curation tools, and the plugin ships the curate and read skills.Needs P3. Done when a session on a trial inbox proposes a batch of fifty, you change a row, and one
movescall writes the batch as changed. A reader’s excerpt missing from the raw material is refused. -
P5 · The herdr plugin. It shows the count and age of unmoved signals by source, and opens a proposed batch for review row by row.
Needs P3. Done when its counts match
millpond status --jsonon the trial inbox. -
P6 · Send an item to a worktree.
sendmakes a worktree for an item, writes its brief, starts an agent and records sluice’s landing.Needs P4. Done when an item of two bumps sent from herdr lands through sluice and shows its landing, and a send from an inbox crew keeps is refused.
-
Q5 · Send a question to a sounding.
sendtakes a sounding as its target. millpond opens the sounding with the item’s signals and captures as its sources, keeps the accepted conclusion as the item’s record, and makes an item of each piece of work the conclusion proposes.Needs P6 and sounding’s core. Done when an item asking whether to take a major release goes to a sounding and its accepted conclusion shows on the item. The bump the conclusion proposes arrives as a new item, and curation answers the release’s next signal by naming the conclusion.
Where it meets the others
Section titled “Where it meets the others”- F1 to F3, Flywheel’s statement and flywheel-next. The contract and the inbox enter Flywheel’s statement, and flywheel-next splits out the capture, signals and adapters crates with the conformance pack. P3 builds on them.
- Q1 to Q4, sounding. sounding’s statement, its repository, its core with the Claude Code plugin, and its herdr plugin. sounding needs nothing of millpond’s until millpond sends it questions in Q5.
- S1, swancloud. The fleet’s release adapter speaks the contract and
lands into a trial inbox under
millpond runfor a week, beside its current path. - C1 and C2, crew. crew’s record says a partition’s signals live in
its inbox, and crew calls millpond: each partition’s branch becomes an
inbox, imported once, and
crew signalwrites throughmillpond land. - S3, swancloud. One list names each part, its inbox, host and
schedule. A timer per inbox runs
millpond tick, and the doctor shows a row per part. - C3 and C4, crew. crew’s reader writes signals with millpond’s
read, and crew’s curator works each inbox through millpond’s tools. The planner turns accepted items into chores and units. - C5, crew and swancloud. One real release travels the whole path: captured, curated into an item, planned, bumped by a team and landed by sluice.
- F4 and F5, flywheel-next and crew. Flywheel hosts on the same crates and reads an inbox millpond kept with no import, and crew becomes Flywheel.
headwater and eddy proceed beside millpond once its core exists, each in
its own repository: headwater’s capture part lands through millpond run
(H6), and eddy’s meeting parts pass the conformance pack’s meeting checks
(E1).