Roadmap

A steering board, not a wish list.

Every piece of intended work is a register row with an ID, a role, a risk score and its prerequisites. Nothing is built without a row, and a shipped row leaves the table at closeout.

41
Live rows
128
Shipped slices
12
Decision gates
18
Guardrails

Shipped this week

The night now runs, inside bounds.

  • 09/08/20265S.10, 5S.12 and 5S.13 · Every way of spending on a model now writes a run record: the census of unrecorded spend reads zero.
  • 08/08/20265G.2 · Unattended operation shipped: nothing launches without a committed schedule, a live arming grant and a configured cap, and every due tick ends as a launch, a skip or a cap-stop, on the ledger.
  • 07/08/20265M.2 · Studio gains Signals: ten deterministic signals over this machine's own ledgers, computed fresh on every read, refusing to say more than the evidence allows.
  • 06/08/20265C.5 and 5C.6 · Studio gains Projects: every enrolled repository as a card with counted readiness, and a guided, propose-only enrolment that composes a fenced opening prompt for your own AI tool.
  • 05/08/20265M.1, 5R.1 and 5T.1 · Three designs adopted in one day, clearing the design shelf 5G.1 opened the day before.
  • 04/08/20265X.9 and 5X.10 · A local docs index and search, at $0: no corpus text stored, and every answer states its denominator.

Up next

Picked, not promised.

The Next queue is ranked and grouped by kind. A row leaves it by being kicked off, not by being wished for.

Build

Small and bounded first: the two runner-parser siblings (5S.9, 5S.14), the absolute-anchor fix (5M.5), then the spend surface (5Z.17). And 5G.3, the schedule controls, is cut-ready now that the night it renders exists.

Design

5J.1, the Studio-wide UX review, is the row every new surface has been deferring to: Signals, Projects and the coming schedule controls all want its answer. Then the backup build (5T.2), whose risk class demands an external adversarial pass before code.

The tracks

Where the register is heading.

Ten open tracks, each a family of register rows. The status word is where the track stands; rows here are intentions, not shipped features.

5M

Self-study of runs

Mine run history for per-workflow signal; display and proposal evidence only, never behaviour.

signals shipped
5C

Projects and enrolment

Every enrolled repository as a card with counted readiness, and a guided, propose-only enrolment.

first build shipped
5G

Unattended operation

Schedule, enqueue and auto-drain, armed only by an explicit recorded act, never by config, inside caps that fail closed.

shipped
5R

Declarative authoring

Workflows composed from a code-owned stage catalogue; narrowing only, gates non-expressible.

design adopted
5T

User-state backup

Every user-facing registry exported to a git-tracked, secret-scanned format.

design adopted
5X

Local models

A local model fleet surface, and a docs index and search that run at $0; pipeline participation stays refused by rule.

search shipped
5S

Portfolio context serve

The gateway serves per-consumer context slices instead of every consumer re-reading files.

core shipped
5W

Chat with real routing

A Studio chat tab that goes through the same model routing, metering and provenance as pipeline calls.

design shipped
5V

Approvals from the phone

Read-only triage over a private network today; the remote approval act is its own gated design.

read-only shipped
5EG

Egress governance

A census of every way anything leaves the machine, each entry naming its authority; banned channels locked as absences.

rowed

The register

Every live row.

The full backlog register, as it stands. A row's role says why it exists: boundary, keystone, unlock, hygiene, validation or polish. A prerequisite you cannot find below has already shipped.

The full register 41 rows
IDTitleRolePrereqStatus
5A.2Webview render harness: pure state-to-HTML snapshot testshygiene5A.1proposed
5A.3Tier 1 sensitive pure helpershygiene5A.1proposed
5A.4Tier 3 _getWebviewContent() decompositionhygiene5A.2, 5A.3proposed
5M.5A code-audit report may store an absolute anchor pathhygienenoneproposed
5C.2Development methodology as data: per-project descriptorunlocknoneproposed
5C.3Roadmap-authoring interview: designunlock5C.2proposed
5C.7Website machinery to config: the enrolment path's last code editunlocknoneproposed
5D.1Outbound notifications designunlocknoneproposed
5E.1Goals interface designunlocknoneproposed
I2wPublic website flip to Fulltrace (separate Showcase repo)hygienenoneproposed
5G.3Schedule controls in Studiounlock5G.2proposed
5I.2Register drift checkhygienenoneproposed
5J.1Studio UX review and IA redesignunlocknoneproposed
5J.2IA restructure implementationunlock5J.1proposed
5J.3Run-completion notifications in the IDEpolishnoneproposed
5J.5Open-source jump in the content/website audit panelpolishnoneproposed
5O.4Injection fence red-team eval corpusvalidationnoneproposed
5S.6The website audit's challenger is the last unvoiced model callpolish5S.3proposed
5U.2The launch press owns the in-progress flipunlock5U.1proposed
5U.6Four of the seven closeout steps can never tick, so the group is finished by hand or not at allunlock5U.4proposed
5EG.1Adopt G19 and the outside definition (the egress rule doc flip)boundarynoneproposed
5EG.2The egress census and its both-directions locksboundary5EG.1proposed
5EG.3The push tool refuses a foreign remotehygiene5EG.2proposed
5EG.4Client-plane deny set for shell egresshygiene5EG.1proposed
5S.14A pipeline that dies part-way records nothing, and its finished stages die with ithygiene5S.13proposed
5S.9A flag that takes a value swallows the next flaghygiene5S.8proposed
5S.5The context serve cannot name the run it framedhygiene5S.2proposed
5T.2Backup implementation and Settings tab controlsunlock5T.1proposed
5V.4Remote decision surface: design gateboundary5V.2, 5V.3 shipped + demonstrated demandproposed
5W.2Chat tab v1: explicit pick, metered classunlock5W.1proposed
5W.3Subscription execution class for chatunlock5W.2proposed
5W.5MS-2 provenance in authority-plane recordsboundarynoneproposed
5W.4Tiers and Auto routing for chatboundary5W.3, 5W.5proposed
5X.5Chat local execution classunlock5W.2, 5X.4proposed
5Z.2Wall-clock term in the graph budgetboundary5Z.1proposed
5Y.6Tool-call subject on the trace: re-open the path half of the G10 args exclusionboundarynoneproposed
5Z.16Filter the Runs page by modelunlock5Z.15proposed
5Z.17A spend surface: what did the runs costunlocknoneproposed
5M.6Findings over time: new, persisting, resolved per targetunlocknoneproposed
5V.5A weekly digest: the week in countsunlock5EG.1proposed
5Z.18Run comparison: two runs of the same workflow side by sideunlocknoneproposed
Recently shipped the last 12 of 128
IDWhat landedShipped
5S.13The last three ways of spending without a record, closed: the unrecorded-spend census reads zero.09/08/2026
5S.12Three signal checks stop assuming this machine has run history; a bare node now reaches the end.09/08/2026
5S.10A bought agent run finally writes a run record, locked by a census of all 18 entry points.09/08/2026
5S.11A smoke check stops reporting this machine's own history: fixture-built counts replace live reads.08/08/2026
5S.8A mistyped runner flag is refused, naming the nearest real flag, instead of buying a model call.08/08/2026
5U.5The cockpit's restart step says exactly what to do, chosen from the commit's own file list.08/08/2026
5U.4The cockpit stops dropping a slice mid-closeout: each closeout step ticks on its own evidence.08/08/2026
5G.2Unattended operation: schedules, arming grants and fail-closed caps; every due tick ends as a launch, a skip or a cap-stop.08/08/2026
5H.4The two judgement stores converge in the reading: one view, with expiry belonging to the filter.08/08/2026
5M.2The Signals pill: ten deterministic signals over this machine's own ledgers, refusing to overstate.07/08/2026
5O.6Prompts composed in the dashboard registered and completeness-checked, plane by plane.07/08/2026
5C.6The enrolment funnel: a guided, propose-only interview that composes a fenced opening prompt.06/08/2026

The method

How the board is run.

Roles

Every row declares why it exists: boundary, keystone, unlock, hygiene, validation or polish. A row that cannot say is not rowed.

Decision gates

Twelve standing conditions that bind named rows at kickoff. They constrain what a slice may do; they never rank the queue.

Guardrails

Eighteen invariants every kickoff re-reads. A slice that would cross one is redesigned or refused, not excused.

Hand-carried from the system's own steering board, correct as at 09/08/2026.

Watch the board's own product run.