docs/05 · roadmap
The phase arc
One phase at a time, each behind an exit gate with a number on it. We are late to tier 1 and early to tier 0 — where the field ships eviction alone and no major harness sends a diff.
Foundations
tier — · shipped · done“Nothing above this is worth building on sand.”
- Core schemas and the closed Expect DSL — Zod first, types derived
- Lossless crash-safe recorder: append-only, fsync per event, blobs over 64KB content-addressed
- Verified replay executor — deterministic steps at zero LLM tokens, every expect re-checked
- The sacred invariant suite touching every executor exit path
Working memory — tier 0
tier 0 · 2026 Q3 · ← we are here“The first browser agent with a managed context window.”
- A11 observation eviction — kills the dominant quadratic term
- A4 diff observations — 849 diffs in G1, median 24 chars, −99.6% vs re-send
- B3 cache-layout discipline — immutable prefix routed through prompt_cache_key, 20.5% cost cut at WP-N25
- Launch package: the npx quickstart, the README number, the demo
Cumulative logical input must grow materially slower with task length — a public ≥30% floor, CI-bounded, at success parity.
A tokens-per-task win at success parity — at least 15 runs, seeded-bootstrap lower bound above the floor.
The harness that learns — tiers 1 & 2
tier 1 · 2 · 2026 Q4“Your 50th task on a site costs a fraction of your 1st.”
- Playbook distiller — trajectories become verified playbooks
- Matcher: semantic match + bind behind the fingerprint gate
- Site memory and briefs; B4 history compaction — the lever that makes the curve linear
Speculation
tier 2 · 2027 Q1“Warm flows bounded by think-time only.”
- Transition models learned from recorded runs
- Speculative pre-execution with assertion-gated commits
Fleet & enterprise
tier — · 2027 Q2–Q3“10K tasks a day, audited, lowest $ per task.”
- Fleet-scale memory administration and audit surfaces
- Every replay attributable: who, when, from which verified run
Platform
tier — · 2027 Q4+“The efficiency substrate other agents build on.”
- The memory manager as a surface other harnesses consume
Built and working end-to-end
- ✓Core schemas + the closed Expect DSL (10 primitives)
- ✓Lossless, crash-safe recorder
- ✓Verified replay executor — zero-LLM deterministic steps
- ✓CDP browser backend + fake-world fixture backends
- ✓Perception: distill → stable IDs → budget → diffs
- ✓A11 observation eviction
- ✓A4 diff observations, measured on real pages
- ✓B3 cache-layout discipline, economically qualified (T11)
- ✓Agent loop with tagged LLM accounting on every call
- ✓Benchmark matrix, curve reports, head-to-head launch gate
- ✓Action plane: settledness, self-healing resolution, scoped repair
Not built — on purpose, on the record
The roadmap rule is executor before distiller — never build ahead of the phase. The gaps are part of the ledger:
B4 history compaction
the lever that would make the curve linear rather than a smaller quadratic — deferred to P2 on purpose
Playbook distiller
V1 replays hand-written playbooks; trajectory → playbook distillation is unbuilt
Matcher (semantic match + bind)
only the exact-fingerprint hard gate exists today
Site memory, model routing, speculation
designed in docs/02, scheduled for P2/P3
what blocks launch
G1 passed at 37.2%; G2 — the tokens-per-task level win at success parity — has not yet run. The packages are private at 0.0.0, so the npx rote run quickstart does not exist yet, and there is no public demo. The second number isn't in — and the launch package waits for it.