A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live
Plan
The milestones and issues of this repository's plan, as the plan derives them.
41milestonesplan.roadmap
424issues shownplan.issues
M002milestone nowplan.roadmap
I0702issue nextplan.next
What to work on
plan.next- Issue
- I0702 READY
- Title
- Decide how a record is attributed, between named alternatives
- Milestone
- Wave
1- Objective
- Choose between the alternatives that actually exist — attribute to the session that ran the command, refuse to write when the active task belongs to somebody else, or require the task to be named explicitly — and record the choice with the case each rejected option gets wrong.
Milestones
plan.roadmap| Status | Milestone | Title | Issues | Rank | Waiting on |
|---|---|---|---|---|---|
| DONE | M000 | Milestone and DAG driven development | 15 DONE | 0 | — |
| DONE | M001 | A blocking question survives a handover | 4 DONE | 0 | — |
| ACTIVE now | M002 | A durable record names the worker that wrote it | 2 BLOCKED1 DONE1 READY | 0 | — |
| ACTIVE next | M003 | A session is a durable envelope, and knowledge is compiled from what is already canonical | 3 BLOCKED1 CANCELLED11 DONE1 READY | 0 | — |
| ACTIVE | M004 | Performance is executable evidence, and the hot path does no canonical work twice | 1 ACTIVE10 BLOCKED16 DONE10 READY1 VERIFY | 0 | — |
| DONE | foundation | A supervisory control layer that is real rather than described | 0 | — | |
| ACTIVE | fly-deployment | The container image is a projection of the repository model, and its smoke is its evidence | 14 BLOCKED9 CANCELLED4 DONE5 READY | 0 | — |
| PLANNED | web-sign-in | The deployed surfaces know who is asking, and the identity providers are data | 7 BLOCKED1 READY | 0 | — |
| ACTIVE | capability-graph | One capability graph, two projections, and no second inventory of what this repository can do | 15 BLOCKED9 DONE7 READY1 VERIFY | 0 | — |
| ACTIVE | external-workspaces | An external workspace is read the way this repository reads anything else, and its content never becomes public by accident | 8 BLOCKED1 DONE1 READY | 0 | — |
| ACTIVE | two-folder-integration | A repository that adopts Majordomus gains two directories and two lines, and can give them back | 22 BLOCKED1 VERIFY | 0 | — |
| VERIFY | derived-data-integrity | A committed derivation describes something it can be a projection of | 1 DONE | 0 | — |
| VERIFY | work-graph-github | The projection to GitHub is gated, identified and traversable, and a merged pull request leads back to the outcome it served | 10 DONE | 0 | — |
| PLANNED | intent-lifecycle | Work is traceable to the intent it serves, and an intent is satisfied only by evidence | 1 BLOCKED1 READY | 0 | — |
| ACTIVE | development-runtime | The runtime has a development surface | 11 BLOCKED38 DONE21 READY | 0 | — |
| ACTIVE | test-evidence | Every verifiable claim and widget resolves to revision-bound test evidence, on every surface | 12 BLOCKED12 DONE4 READY | 0 | — |
| ACTIVE | public-proof | A visitor sees the product prove itself, and can check every claim it makes | 1 DONE1 READY | 0 | — |
| ACTIVE | adopter-upgrades | An adopting repository survives a Majordomus upgrade, and what the tool vendors into it is adopter-neutral | 2 BLOCKED10 DONE5 READY | 0 | — |
| ACTIVE | a-second-adopter-is-served | A second adopter is served: what a foreign repository met on its first day is fixed in the tool | 1 VERIFY | 0 | — |
| DONE | a-session-leaves-what-it-observed | A session leaves what it observed, and the repository routes it | 3 DONE | 0 | — |
| ACTIVE | automation | Repository automation is scripted capabilities over typed Rust, not shell | 2 BLOCKED2 DONE1 READY | 0 | — |
| ACTIVE | runtime-trust | A runtime is safe to reach from another machine, and joining the mesh trusts nobody by accident | 1 BLOCKED5 DONE3 READY | 0 | — |
| ACTIVE | runtime-lifecycle | One usable server per checkout starts, attaches, stops and reports its state without races or hidden kills | 5 DONE3 READY | 0 | — |
| ACTIVE | mesh-journal-converges | The cooperation journal is durable, converges under any delivery order, and never lets a stale claim win | 1 BLOCKED2 DONE2 READY | 0 | — |
| VERIFY | mcp-transports-are-reliable | Every MCP transport delivers each request at most once, bounds what it carries, and honours cancellation | 2 DONE | 0 | — |
| ACTIVE | surfaces-never-disagree | Every surface projects the same state, says when it was observed, and keeps no list of its own | 3 BLOCKED1 DONE2 READY | 0 | — |
| ACTIVE | failure-is-visible | Every failure the runtime can suffer is bounded, tested or stated, and changes the health it reports | 3 DONE1 READY | 0 | — |
| ACTIVE | architecture-is-enforced | A violated invariant fails a gate, and green means every required check ran | 2 DONE1 READY | 0 | — |
| ACTIVE | safe-self-update | Every mesh node follows the published release by itself, versions meet safely, and a release's provenance can be checked | 3 BLOCKED2 DONE2 READY | 0 | — |
| PLANNED | every-session-joins-the-mesh | Every LLM session joins the Majordomus mesh at start, told the mesh as work | 3 BLOCKED1 READY | 0 | — |
| ACTIVE | truthful-plan-surfaces | The plan's surfaces are inferred from delivery, and nothing they show is typed beside the repository | 4 BLOCKED3 READY2 VERIFY | 0 | — |
| ACTIVE | idd-workspace | The UI is where the owner directs the work, from an intent to its next move | 1 VERIFY | 0 | — |
| ACTIVE | everything-is-followed-in-one-stream | Everything that happens in the repository is followed in one stream | 5 BLOCKED1 DONE2 READY | 0 | — |
| PLANNED | the-mesh-works-out-of-the-box | The mesh works out of the box: trusted machines find each other by every means and their sessions cooperate from the first turn | 6 READY | 0 | — |
| PLANNED | runtime-adapters | Profiles become runtime constraints rather than advice | 5 BLOCKED1 READY | 1 | — |
| BLOCKED | intent-planning | The plan of an intent is held to it before execution | 2 BLOCKED | 1 | |
| BLOCKED | execution-telemetry | Execution telemetry, only from providers that expose it honestly | 5 BLOCKED | 2 | |
| BLOCKED | intent-bound-work | A task is bound to the intent it serves | 5 BLOCKED | 2 | |
| BLOCKED | cost-per-accepted-outcome | Cost per accepted outcome, only on measured data | 4 BLOCKED | 3 | |
| BLOCKED | routing-recommendations | Routing recommendations derived from measured cost | 4 BLOCKED | 4 | |
| BLOCKED | shared-policy | Shared policy across repositories and workers | 5 BLOCKED | 5 |
Narrow
Issues
plan.issues| Status | Issue | Title | Milestone | Wave | Priority | Waiting on | Evidence |
|---|---|---|---|---|---|---|---|
| DONE | I0001 | Audit what actually plans work in this repository | 0 | p0 | — | 1 of 1 | |
| DONE | I0002 | Define the canonical milestone and issue schema | 1 | p0 | — | 1 of 1 | |
| DONE | I0003 | Implement the model loader and the status derivation engine | 2 | p0 | — | 1 of 1 | |
| DONE | I0004 | Implement DAG validation and execution waves | 3 | p0 | — | 1 of 1 | |
| DONE | I0005 | Implement the plan command surface | 4 | p0 | — | 1 of 1 | |
| DONE | I0006 | Generate the Mermaid DAG from the graph | 4 | p1 | — | 1 of 1 | |
| DONE | I0007 | Enforce the canonical model as doctrine | 5 | p1 | — | 1 of 1 | |
| DONE | I0008 | Project the model to GitHub milestones and issues | 5 | p1 | — | 2 of 2 | |
| DONE | I0009 | Project the model into the website | 5 | p1 | — | 1 of 1 | |
| DONE | I0010 | Behavioural tests for schema, status, graph and command | 4 | p0 | — | 1 of 1 | |
| DONE | I0011 | Cross-surface consistency and mutation tests | 6 | p0 | — | 2 of 2 | |
| DONE | I0012 | Make CI refuse an invalid model or a stale projection | 7 | p1 | — | 1 of 1 | |
| DONE | I0013 | Document the semantics and the dogfooding rule | 5 | p1 | — | 1 of 1 | |
| DONE | I0014 | Make the worker instructions require the model | 6 | p0 | — | 1 of 1 | |
| DONE | I0015 | Open the first real milestone and execute one issue through it | 8 | p0 | — | 1 of 1 | |
| DONE | I0101 | Reproduce the escaped blocker as an executable case | 0 | p1 | — | 1 of 1 | |
| DONE | I0102 | Decide whether a question transfers or the gate widens | 1 | p1 | — | 1 of 1 | |
| DONE | I0103 | Implement the decision and prove it holds | 2 | p1 | — | 1 of 1 | |
| DONE | I0104 | Move the claim from planned to guaranteed | 3 | p2 | — | 1 of 1 | |
| READY | I0201 | Declare which profile axis may become which runtime limit | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I0202 | Resolve a task's effective limits and print them as data | 1 | p1 | 0 of 1 | ||
| BLOCKED | I0203 | Make enforcement opt-in, and prove a repository that declines is unaffected | 2 | p1 | 0 of 1 | ||
| BLOCKED | I0204 | Apply one derived limit for real and prove it changes what happens | 3 | p1 | 0 of 2 | ||
| BLOCKED | I0205 | Declare the clamp as a doctrine so the mapping and the adapter cannot drift | 4 | p2 | 0 of 2 | ||
| BLOCKED | I0206 | Publish the runtime-adapters claim with the test that proves it and the limits it does not cover | 5 | p2 | 0 of 1 | ||
| BLOCKED | I0301 | Define the execution record, including what an absence looks like | 0 | p2 | 0 of 1 | ||
| BLOCKED | I0302 | Record telemetry a provider reports, and refuse anything it did not | 1 | p2 | 0 of 1 | ||
| BLOCKED | I0303 | Prove a silent provider produces an explicit absence, never a guess | 2 | p2 | 0 of 1 | ||
| BLOCKED | I0304 | Read the measurements back through the history surface, under a bound | 3 | p2 | 0 of 1 | ||
| BLOCKED | I0305 | Publish the telemetry claim and record what remains unmeasured | 4 | p3 | 0 of 1 | ||
| BLOCKED | I0401 | Define an accepted outcome, and join it to its measurements without storing the join | 0 | p2 | 0 of 1 | ||
| BLOCKED | I0402 | Report cost only where measurement and acceptance both exist | 1 | p2 | 0 of 1 | ||
| BLOCKED | I0403 | Make a thin denominator say so rather than average it away | 2 | p2 | 0 of 1 | ||
| BLOCKED | I0404 | Publish the cost-per-outcome claim with its unit defined beside it | 3 | p3 | 0 of 1 | ||
| BLOCKED | I0501 | Group comparable work from what the records already carry | 0 | p3 | 0 of 1 | ||
| BLOCKED | I0502 | Recommend a profile from measured cost, naming the measurements | 1 | p3 | 0 of 1 | ||
| BLOCKED | I0503 | Return no recommendation where the data is too thin, and say why | 2 | p3 | 0 of 1 | ||
| BLOCKED | I0504 | Prove the recommendation is advisory and publish it as such | 3 | p3 | 0 of 2 | ||
| BLOCKED | I0601 | Let a policy name a shared source it does not copy | 0 | p3 | 0 of 1 | ||
| BLOCKED | I0602 | Make a local override explicit and prove it survives an update of the shared source | 1 | p3 | 0 of 1 | ||
| BLOCKED | I0603 | Report drift from the shared policy in one command | 2 | p3 | 0 of 1 | ||
| BLOCKED | I0604 | Prove the offline guarantee survives sharing | 3 | p3 | 0 of 2 | ||
| BLOCKED | I0605 | Publish the shared-policy claim and what sharing still cannot do | 4 | p3 | 0 of 1 | ||
| DONE | I0701 | Reproduce the misattribution as an executable case | 0 | p1 | — | 1 of 1 | |
| READY | I0702 | Decide how a record is attributed, between named alternatives | 1 | p1 | — | 0 of 1 | |
| BLOCKED | I0703 | Implement the decision and prove it holds | 2 | p1 | 0 of 2 | ||
| BLOCKED | I0704 | Publish what attribution guarantees, and what it still cannot | 3 | p2 | 0 of 1 | ||
| DONE | I0801 | Narrow the Clean Extraction Boundary and record what was adopted | 0 | p1 | — | 1 of 1 | |
| DONE | I0802 | Specify the session record before writing one | 0 | p1 | — | 1 of 1 | |
| DONE | I0803 | Open a session and report its status | 1 | p1 | — | 1 of 1 | |
| DONE | I0804 | Close a session into an envelope derived from the ledger | 2 | p1 | — | 2 of 2 | |
| DONE | I0805 | Read sessions back with a divergence label | 3 | p1 | — | 1 of 1 | |
| DONE | I0806 | Make the session rules doctrines, with retention and archiving | 4 | p1 | — | 1 of 1 | |
| DONE | I0807 | Discover knowledge sources from git, not from the filesystem | 1 | p1 | — | 1 of 1 | |
| DONE | I0808 | Extract nodes with identities that survive a rebuild | 2 | p1 | — | 2 of 2 | |
| DONE | I0809 | Record only edges that a file states, each with where it was observed | 3 | p1 | — | 2 of 2 | |
| CANCELLED | I0810 | A content-hash manifest that makes a second sync cheap | 4 | p1 | — | 0 of 2 | |
| DONE | I0811 | Read-only knowledge lookup with an ordering that can be explained | 4 | p1 | — | 2 of 2 | |
| READY | I0812 | Validate the graph, and let doctor and watch ask the same validator | 5 | p1 | — | 0 of 2 | |
| BLOCKED | I0813 | A closed session becomes a node that points at its episode | 6 | p1 | 0 of 1 | ||
| DONE | I0814 | Give the worker a bounded slice of knowledge, not the knowledge base | 5 | p1 | — | 1 of 1 | |
| BLOCKED | I0815 | Say what is now true in the claims, the documentation and the worker instructions | 7 | p1 | 0 of 2 | ||
| BLOCKED | I0816 | Prove the loop on a real issue, without a transcript | 8 | p1 | 0 of 1 | ||
| DONE | I0817 | Phase timing and work counters behind MJ_TIMING | 0 | p0 | — | 1 of 1 | |
| DONE | I0818 | The command registry is read in one pass | 1 | p0 | — | 1 of 1 | |
| DONE | I0819 | The project model is loaded with one flatten per file and no per-file lookups | 1 | p0 | — | 1 of 1 | |
| READY | I0820 | Catalogue, DAG, context and command-surface validators read their inputs once | 2 | p0 | — | 0 of 1 | |
| READY | I0821 | Flattened YAML is cached under .ai/local/cache by content hash | 1 | p0 | — | 0 of 1 | |
| BLOCKED | I0822 | Every canonical file is flattened at most once per command | 3 | p0 | 0 of 1 | ||
| DONE | I0823 | majordomus bench: targets derived from the command registry | 1 | p0 | — | 1 of 1 | |
| DONE | I0824 | Bench persists local runs and keeps a latest projection | 2 | p0 | — | 1 of 1 | |
| DONE | I0825 | An explicit committed baseline | 3 | p0 | — | 1 of 1 | |
| DONE | I0826 | bench --check refuses a regression by policy | 4 | p0 | — | 1 of 1 | |
| DONE | I0827 | The benchmark policy block | 2 | p0 | — | 1 of 1 | |
| BLOCKED | I0828 | doctor under a declared budget, and the hook inherits it | 3 | p0 | 0 of 1 | ||
| DONE | I0829 | Performance doctrine as project rules | 0 | p0 | — | 1 of 1 | |
| DONE | I0830 | docs/PERFORMANCE.md, README, CONTRIBUTING and CLI reference | 5 | p0 | — | 1 of 1 | |
| BLOCKED | I0831 | Performance claims at their proven status | 5 | p0 | 0 of 1 | ||
| READY | I0832 | generate-site-data instrumented and its hot spots removed | 2 | p0 | — | 0 of 1 | |
| DONE | I0833 | knowledge nodes and edges read each source once | 1 | p0 | — | 1 of 1 | |
| BLOCKED | I0834 | The test runner reports per-case time and the suite budget | 4 | p0 | 0 of 1 | ||
| BLOCKED | I0835 | CI runs the structural performance checks | 5 | p0 | 0 of 1 | ||
| DONE | I0836 | A synthetic repository generator for scaling cases | 2 | p0 | — | 1 of 1 | |
| DONE | I0837 | Timing report as JSON | 1 | p0 | — | 1 of 1 | |
| READY | I0838 | bench compare and the top regressions report | 5 | p0 | — | 0 of 1 | |
| BLOCKED | I0839 | watch inherits every doctor fix and its own budget | 4 | p0 | 0 of 1 | ||
| BLOCKED | I0840 | context and its subcommands under a second | 3 | p0 | 0 of 1 | ||
| BLOCKED | I0841 | Cache equivalence proved by property-shaped cases | 2 | p0 | 0 of 1 | ||
| BLOCKED | I0842 | Before and after evidence for every optimisation | 3 | p0 | 0 of 1 | ||
| BLOCKED | I0843 | The performance workflow is discoverable and complete | 6 | p0 | 0 of 1 | ||
| DONE | I0901 | The deployment description is a kind of the layer, not a provider file | 0 | p0 | — | 4 of 4 | |
| DONE | I0902 | The deployment object becomes typed Rust that refuses nonsense | 1 | p0 | — | 3 of 3 | |
| DONE | I0903 | Deployment reads are declared once and projected everywhere | 2 | p0 | — | 4 of 4 | |
| DONE | I0904 | The listen address is one fact with two projections | 2 | p0 | — | 3 of 3 | |
| READY | I0905 | Liveness and readiness are registered capabilities, not router hacks | 2 | p0 | — | 0 of 3 | |
| READY | I0906 | Termination is graceful and proved against the real container | 3 | p1 | — | 0 of 3 | |
| READY | I0907 | The running process says what it is, from an allowlist | 2 | p1 | — | 0 of 3 | |
| READY | I0908 | A hosted process has no repository, and says so instead of failing | 2 | p0 | — | 0 of 3 | |
| BLOCKED | I0909 | The production image is a generated projection of the build specification | 3 | p0 | 0 of 4 | ||
| BLOCKED | I0910 | The release profile is chosen by measurement, not by folklore | 4 | p1 | 0 of 2 | ||
| BLOCKED | I0911 | A source change does not rebuild the world, and the context stays small | 4 | p1 | 0 of 3 | ||
| BLOCKED | I0912 | The image serves the site the canonical pipeline produced | 4 | p0 | 0 of 3 | ||
| CANCELLED | I0913 | The provider configuration is generated, and the cheap profile is declared | 3 | p0 | — | 0 of 4 | |
| CANCELLED | I0914 | One deployment core, one command, and a dry run that mutates nothing | 4 | p0 | 0 of 4 | ||
| CANCELLED | I0915 | Deployment joins the diagnostics that already exist | 5 | p0 | 0 of 3 | ||
| BLOCKED | I0916 | The smoke suite is derived from the route registry, never written twice | 5 | p0 | 0 of 4 | ||
| CANCELLED | I0917 | A bad deployment can be undone deterministically | 5 | p1 | 0 of 2 | ||
| CANCELLED | I0918 | The bootstrap credential is used once and belongs to nothing | 2 | p0 | — | 0 of 3 | |
| BLOCKED | I0919 | Nothing secret and nothing local leaves in the image | 4 | p0 | 0 of 3 | ||
| BLOCKED | I0920 | The image's dependencies are known and its advisories are policy | 4 | p2 | 0 of 4 | ||
| BLOCKED | I0921 | Size is measured first and budgeted second | 5 | p1 | 0 of 3 | ||
| CANCELLED | I0922 | The memory hypothesis is tested, not asserted | 6 | p0 | 0 of 3 | ||
| BLOCKED | I0923 | Cold start and endpoint cost are benchmark targets like everything else | 6 | p1 | 0 of 3 | ||
| CANCELLED | I0924 | The decision is recorded where architecture decisions are recorded | 1 | p1 | — | 0 of 1 | |
| BLOCKED | I0925 | Every deployment rule is a check that runs | 6 | p0 | 0 of 3 | ||
| BLOCKED | I0926 | The deployment documentation is generated and reachable | 4 | p1 | 0 of 3 | ||
| READY | I0927 | The cockpit shows the deployment from the same data | 3 | p2 | — | 0 of 3 | |
| BLOCKED | I0928 | A pull request cannot merge a deployment that would not work | 6 | p0 | 0 of 2 | ||
| CANCELLED | I0929 | Production deploys from CI with a token scoped to one application | 8 | p1 | 0 of 3 | ||
| BLOCKED | I0930 | The real image runs under the real limits before anything is deployed | 5 | p0 | 0 of 4 | ||
| CANCELLED | I0931 | The application exists, one machine runs it, and the URL answers | 7 | p0 | 0 of 4 | ||
| BLOCKED | I0932 | The milestone is accepted on its evidence | 9 | p0 | 0 of 3 | ||
| DONE | I1001 | One typed graph composes the registries that already own their facts | 0 | p0 | — | 2 of 2 | |
| DONE | I1002 | Relations are typed, inferred from stable identities, and never dangle | 1 | p0 | — | 2 of 2 | |
| DONE | I1003 | Skills, rules, decisions, documents, use cases and benchmarks enter the graph as themselves | 1 | p0 | — | 2 of 2 | |
| DONE | I1004 | Availability and visibility are metadata, not conditions in a template | 1 | p0 | — | 2 of 2 | |
| DONE | I1005 | The graph is a generated artifact with a schema and no unsafe field | 2 | p0 | — | 3 of 3 | |
| DONE | I1006 | The runtime reads the graph through the registry, like every other read | 3 | p1 | — | 2 of 2 | |
| READY | I1007 | The site renders the same graph, generated once | 3 | p0 | — | 0 of 2 | |
| BLOCKED | I1008 | The two projections are proved to be the same model | 4 | p0 | 0 of 1 | ||
| READY | I1009 | Every menu in this repository comes from one derivation | 3 | p0 | — | 0 of 2 | |
| READY | I1010 | The overview is what exists, counted rather than claimed | 3 | p1 | — | 0 of 2 | |
| READY | I1011 | The coverage matrix reports evidence, and never a green cell without one | 2 | p0 | — | 0 of 2 | |
| READY | I1012 | One detail view, assembled from what a node actually has | 3 | p1 | — | 0 of 3 | |
| BLOCKED | I1013 | Search over the graph, generated, with nothing to run | 4 | p2 | 0 of 2 | ||
| BLOCKED | I1014 | The relation view reads the graph and holds no data of its own | 4 | p2 | 0 of 3 | ||
| DONE | I1015 | A surface with no server behind it is not offered as if it had one | 2 | p0 | — | 2 of 2 | |
| BLOCKED | I1016 | The Cockpit works on a phone and before JavaScript runs | 4 | p0 | 0 of 3 | ||
| READY | I1017 | Live state is an overlay that degrades to nothing | 4 | p2 | — | 0 of 2 | |
| BLOCKED | I1018 | The surface rules exist as checks, proved by making them fail | 3 | p0 | 0 of 2 | ||
| BLOCKED | I1019 | One skill runs the whole loop, and is itself in the graph | 4 | p2 | 0 of 2 | ||
| BLOCKED | I1020 | The graph's health is answered by the doctor that already answers everything else | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1021 | A browser proves the interface, at the widths people use | 5 | p1 | 0 of 2 | ||
| BLOCKED | I1022 | Drift in any derived surface fails the build | 4 | p0 | 0 of 2 | ||
| READY | I1023 | Nothing private reaches a published page | 3 | p0 | — | 0 of 2 | |
| BLOCKED | I1024 | The interface has a weight, and it is measured | 5 | p2 | 0 of 2 | ||
| DONE | I1025 | The federated model and its two projections are an architecture decision | 1 | p1 | — | 1 of 1 | |
| BLOCKED | I1026 | The architecture explains itself, from inside itself | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1027 | A synthetic capability proves the architecture instead of describing it | 5 | p0 | 0 of 2 | ||
| BLOCKED | I1028 | The inventories this replaces are removed, not left running beside it | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1029 | The gate refuses what would silently break the interface | 6 | p1 | 0 of 2 | ||
| BLOCKED | I1030 | The milestone is accepted on its evidence | 7 | p0 | 0 of 3 | ||
| VERIFY | I1031 | A served surface says which checkout it is serving | 0 | p1 | — | 2 of 2 | |
| VERIFY | I1101 | What this tool leaves behind, established by inspection rather than by memory | 0 | p0 | — | 2 of 2 | |
| BLOCKED | I1102 | The two namespaces are a typed contract, not a habit | 1 | p0 | 0 of 2 | ||
| BLOCKED | I1103 | Whether a file is authored or derived is a field, not a naming convention | 2 | p0 | 0 of 2 | ||
| BLOCKED | I1104 | Both namespaces carry their contracts, all the way down | 2 | p1 | 0 of 2 | ||
| BLOCKED | I1105 | The repository is discovered once, into one model | 1 | p0 | 0 of 2 | ||
| BLOCKED | I1106 | The registries are views of the model, not separate discoveries | 2 | p0 | 0 of 2 | ||
| BLOCKED | I1107 | Discovery is deterministic, cached, and its cost is known | 3 | p1 | 0 of 3 | ||
| BLOCKED | I1108 | The desired integration is a value, and the plan is a diff | 3 | p0 | 0 of 3 | ||
| BLOCKED | I1109 | Everything placed outside the two namespaces is recorded, with what it was | 4 | p0 | 0 of 2 | ||
| BLOCKED | I1110 | The second run changes nothing, and a test says so | 5 | p0 | 0 of 2 | ||
| BLOCKED | I1111 | Uninstall gives back exactly what was taken | 5 | p0 | 0 of 3 | ||
| BLOCKED | I1112 | What touches the root is two small blocks, and they never change again | 5 | p0 | 0 of 2 | ||
| BLOCKED | I1113 | Entering a directory is local, bounded and silent about the network | 6 | p1 | 0 of 2 | ||
| BLOCKED | I1114 | A provider is an adapter over the model, and adding one is an implementation | 6 | p1 | 0 of 2 | ||
| BLOCKED | I1115 | Completion comes from the command model, not from a second list | 7 | p2 | 0 of 1 | ||
| BLOCKED | I1116 | This repository's own footprint moves, through the reconciler | 6 | p0 | 0 of 3 | ||
| BLOCKED | I1117 | The hand-maintained lists are removed, not left running beside the derivation | 3 | p1 | 0 of 2 | ||
| BLOCKED | I1118 | Every invariant of this milestone is a rule with a check that runs | 7 | p0 | 0 of 3 | ||
| BLOCKED | I1119 | The budgets are measured, and a regression fails rather than being noticed | 7 | p2 | 0 of 2 | ||
| BLOCKED | I1120 | A refusal says what to do about it | 4 | p1 | 0 of 1 | ||
| BLOCKED | I1121 | Every surface shows the integration from the one model | 6 | p1 | 0 of 2 | ||
| BLOCKED | I1122 | A foreign repository, adopted, upgraded and given back | 7 | p0 | 0 of 3 | ||
| BLOCKED | I1123 | The milestone is accepted on its evidence | 8 | p0 | 0 of 3 | ||
| READY | I1201 | An identity provider is a declarative object, and Google and Facebook are two of them | 0 | p0 | — | 0 of 3 | |
| BLOCKED | I1202 | One typed provider model reads the objects, and no code names a provider | 1 | p0 | 0 of 3 | ||
| BLOCKED | I1203 | One flow serves every provider, and it refuses everything it did not start | 2 | p0 | 0 of 3 | ||
| BLOCKED | I1204 | The session is signed, short, and revocable from the server | 3 | p0 | 0 of 3 | ||
| BLOCKED | I1205 | Identity is resolved once, in the router, and every surface reads it from there | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1206 | What an anonymous reader may do is derived from the effect classification, not from a list | 5 | p1 | 0 of 3 | ||
| BLOCKED | I1207 | No credential reaches any output, and hostile provider metadata renders safely | 4 | p0 | 0 of 3 | ||
| BLOCKED | I1208 | Adding a provider is one file, removing one is one deletion, and both are executed rather than described | 6 | p1 | 0 of 3 | ||
| DONE | I1301 | A workspace is a declared object of the layer; only its content is local | 0 | p0 | — | 4 of 4 | |
| READY | I1302 | Identity, provenance and support level are typed fields, not prose | 1 | p0 | — | 0 of 4 | |
| BLOCKED | I1303 | The store is bounded, measured and invisible to every published projection | 2 | p0 | 0 of 4 | ||
| BLOCKED | I1304 | The browser transport is the one this repository already drives | 2 | p0 | 0 of 5 | ||
| BLOCKED | I1305 | An observed contract has a fingerprint, a compatibility state and a fixture | 3 | p1 | 0 of 5 | ||
| BLOCKED | I1306 | A sync resumes, repeats itself without harm, and says how fresh it is | 4 | p1 | 0 of 4 | ||
| BLOCKED | I1307 | The ChatGPT shape is mapped from evidence and never becomes the canonical model | 4 | p1 | 0 of 4 | ||
| BLOCKED | I1308 | The executable's share is one capability, shaped like continuity | 3 | p1 | 0 of 4 | ||
| BLOCKED | I1309 | The boundaries this milestone asserts are gates, not sentences | 4 | p0 | 0 of 5 | ||
| BLOCKED | I1310 | The subsystem is documented where a person looks, and the plan is closed against the repository | 5 | p2 | 0 of 4 | ||
| DONE | I1401 | The identity of a projected record is what the record carries, not what its title says | 0 | p0 | — | 2 of 2 | |
| DONE | I1402 | A finding says which of six states it found, and the state that could hide a person's edit is no longer one of them | 1 | p1 | — | 2 of 2 | |
| DONE | I1403 | Backfill the projection once, deliberately, and record what it created | 3 | p0 | — | 1 of 1 | |
| DONE | I1404 | The drift check is a gate, so a projection that stops being applied cannot stay silent | 2 | p0 | — | 2 of 1 | |
| DONE | I1405 | A pull request names the issue it realises, and the edge is derived rather than remembered | 1 | p1 | — | 1 of 1 | |
| DONE | I1406 | The plan's derivations are capabilities, so every surface reads the readiness the terminal reads | 0 | p1 | — | 2 of 2 | |
| DONE | I1407 | One issue travels the whole path and back, as an executable case | 3 | p1 | — | 1 of 1 | |
| DONE | I1408 | The documents stop claiming a projection nobody runs | 3 | p2 | — | 1 of 1 | |
| DONE | I1409 | Derived data stops hashing inputs it cannot control | 0 | p1 | — | 3 of 3 | |
| DONE | I1501 | An execution a person starts is an execution the server can see | 0 | p0 | — | 2 of 2 | |
| DONE | I1502 | A server serving code that no longer exists stops calling itself ready | 0 | p0 | — | 2 of 2 | |
| DONE | I1503 | A closed session is not closed a second time under the same identity | 0 | p0 | — | 2 of 2 | |
| READY | I1504 | One development transition is a capability, end to end | 0 | p0 | — | 0 of 3 | |
| BLOCKED | I1505 | A mutating capability leaves a durable event, and the ledger can be read back | 1 | p1 | 0 of 2 | ||
| BLOCKED | I1506 | The lifecycle commands become non-interactive capabilities | 2 | p1 | 0 of 2 | ||
| BLOCKED | I1507 | Issues, milestones, sessions and peers reach the Cockpit as projections | 3 | p2 | 0 of 2 | ||
| DONE | I1508 | The navigation is derived from the dispatcher, not kept beside it | 0 | p1 | — | 2 of 2 | |
| DONE | I1509 | A detail page that pages nothing has outgrown the reason it pages nothing | 0 | p1 | — | 2 of 2 | |
| DONE | I1510 | A gap the audit calls planned names a plan object that exists | 0 | p1 | — | 2 of 2 | |
| DONE | I1511 | The documentation surface answers in a checkout that has not built the site | 0 | p2 | — | 1 of 1 | |
| READY | I1512 | Gate state is something the runtime can answer | 0 | p2 | — | 0 of 2 | |
| DONE | I1516 | The adapter composes a projected body in one place | 0 | p0 | — | 2 of 2 | |
| DONE | I1520 | A step that runs out of time says so itself | 0 | p1 | — | 2 of 2 | |
| DONE | I1600 | The challenge is one recorded run, and every public surface replays it | 0 | p1 | — | 3 of 3 | |
| READY | I1800 | The sandboxed engine a scripted capability runs in | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I1801 | A scripted capability is a kind, discovered and registered, runnable and projected like any capability | 1 | p1 | 0 of 2 | ||
| DONE | I1802 | Nothing runs Perl | 0 | p1 | — | 1 of 1 | |
| DONE | I1803 | New shell is refused without a declared exemption, and the migration inventory is tracked | 0 | p1 | — | 1 of 1 | |
| BLOCKED | I1804 | The first shell scripts become scripted capabilities over typed Rust | 2 | p2 | 0 of 1 | ||
| READY | I1900 | An intent is a typed record whose stage and satisfaction are derived | 0 | p1 | — | 0 of 2 | |
| BLOCKED | I1901 | An issue names the intent criterion it serves, and coverage is derived | 1 | p1 | 0 of 2 | ||
| BLOCKED | I1902 | The gap and the critique of an intent are typed records the plan is held to | 2 | p1 | 0 of 2 | ||
| BLOCKED | I1903 | The work realising an intent is joined across episodes, providers and handovers | 1 | p1 | 0 of 2 | ||
| DONE | I1945 | The test-evidence decision and its plan are recorded | 0 | p1 | — | 2 of 2 | |
| DONE | I1946 | The verdict words are status words of the design system | 0 | p1 | — | 1 of 1 | |
| DONE | I1947 | Every feature reaches a test, and every use case has a feature | 0 | p1 | — | 2 of 2 | |
| DONE | I1948 | Evidence is judged at the presented revision, by one freshness function | 0 | p1 | — | 3 of 3 | |
| DONE | I1949 | CI evidence is recorded clean, and its report is the tracked ledger's verdict | 0 | p1 | — | 2 of 2 | |
| DONE | I1950 | Text a run printed is redacted by one rule set | 0 | p1 | — | 1 of 1 | |
| READY | I1951 | Evidence runs are typed, and a recording carries what its run measured | 1 | p1 | — | 0 of 3 | |
| DONE | I1952 | Evidence subjects are derived once, in Rust | 1 | p1 | — | 2 of 2 | |
| BLOCKED | I1953 | Evidence answers by subject, on every surface | 2 | p1 | 0 of 2 | ||
| BLOCKED | I1954 | Every runner reaches the ledger, through the recording branch | 2 | p1 | 0 of 4 | ||
| BLOCKED | I1955 | The evidence publication is an allow-listed projection | 3 | p1 | 0 of 2 | ||
| BLOCKED | I1956 | The Cockpit shows evidence by subject | 3 | p2 | 0 of 1 | ||
| BLOCKED | I1957 | Every test line is read, and a local run stays local | 4 | p2 | 0 of 2 | ||
| BLOCKED | I1958 | Evidence has one route per subject, and every panel is joined to its subject | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1959 | The evidence publication is typed, bound to its build, and kept on gh-pages | 4 | p1 | 0 of 2 | ||
| BLOCKED | I1960 | Every widget names its proof | 5 | p1 | 0 of 2 | ||
| BLOCKED | I1961 | A deploy verifies the evidence routes it publishes | 5 | p1 | 0 of 1 | ||
| BLOCKED | I1962 | The evidence gates read subject findings and widgets | 6 | p1 | 0 of 2 | ||
| BLOCKED | I1963 | Evidence is tested end to end | 6 | p1 | 0 of 3 | ||
| BLOCKED | I1964 | The evidence reference is documented and held to the tree | 7 | p2 | 0 of 1 | ||
| READY | I1965 | The entry preflight reads the one verdict | 1 | p2 | — | 0 of 1 | |
| DONE | I1966 | The composed graph is whole or its generation refuses | 0 | p1 | — | 3 of 3 | |
| DONE | I1967 | A reporter that sets a flag is a reporter | 0 | p2 | — | 1 of 1 | |
| READY | I1980 | A layer names the tool version it was written for, and doctor tells version skew from defects | 0 | p0 | — | 0 of 3 | |
| DONE | I1981 | A command's effect class is declared per subcommand and flag, and live scenarios judge the whole argv | 0 | p0 | — | 4 of 2 | |
| BLOCKED | I1982 | Plan stamps written before seals existed are re-sealed by a command that keeps their original times | 1 | p1 | 0 of 2 | ||
| BLOCKED | I1983 | Upgrading the vendored rules reports or applies the policy and source keys those rules depend on | 1 | p1 | 0 of 1 | ||
| DONE | I1984 | Knowledge candidates never leave untracked files on a trunk that only pull requests change | 0 | p1 | — | 2 of 2 | |
| READY | I1985 | A knowledge candidate relates to its own decision and commit, not to the whole episode | 1 | p2 | — | 0 of 1 | |
| DONE | I1986 | The vendored rule package says nothing that is only true of this repository | 0 | p2 | — | 2 of 2 | |
| DONE | I1987 | A knowledge record's file provenance survives the file's deletion | 0 | p2 | — | 1 of 1 | |
| READY | I1988 | A use case's setup scripts live where the adopter declares, and its scenarios may run the adopter's own commands | 1 | p2 | — | 0 of 1 | |
| DONE | I1989 | init seeds a scope for the stack it finds, not for this repository's | 0 | p3 | — | 1 of 1 | |
| READY | I1990 | The pre-push check judges the refs being pushed, or says why the checkout's task binds them | 0 | p3 | — | 1 of 2 | |
| DONE | I1991 | A comment-only edit of the policy regenerates no bootstrap | 0 | p3 | — | 1 of 1 | |
| DONE | I1992 | A rebuild that fails consumes no change: the next request retries it | 0 | p2 | — | 1 of 1 | |
| DONE | I1995 | Work a session left uncommitted in a worktree is named, not found by luck | 0 | p1 | — | 2 of 2 | |
| DONE | I1996 | doctor does not fail an adopter on a check written for this repository | 0 | p2 | — | 2 of 2 | |
| READY | I1997 | The peer board can be read from the command line | 0 | p1 | — | 0 of 2 | |
| DONE | I1998 | A health command in an unsupervised repository does not exit 0 | 0 | p2 | — | 1 of 1 | |
| READY | I1999 | A tracked file a hook regenerates does not refuse a task that never touched it | 0 | p2 | — | 0 of 2 | |
| BLOCKED | I2000 | What a piece of work serves is one derivation, with a revision | 0 | p1 | 0 of 4 | ||
| BLOCKED | I2001 | start asks what the task serves and refuses a refused binding where the policy requires it | 1 | p1 | 0 of 4 | ||
| BLOCKED | I2002 | The context of a bound task says what the intent asks of this work | 2 | p1 | 0 of 1 | ||
| BLOCKED | I2003 | A handover pins the binding it was written under, and resolving it reports drift | 2 | p1 | 0 of 1 | ||
| BLOCKED | I2004 | plan start refuses an issue whose binding is refused, in both engines | 1 | p1 | 0 of 1 | ||
| DONE | I2054 | A tag does not turn every other pull request red until its record lands | 0 | p1 | — | 1 of 1 | |
| READY | I2059 | A rebuild never replaces the executable a live lease names | 0 | p1 | — | 0 of 2 | |
| VERIFY | I2068 | A verdict that depends on the runner says so, and one cold sample is not a regression | 0 | p2 | — | 2 of 2 | |
| DONE | I2073 | A worker records an observation in one command | 0 | p1 | — | 1 of 1 | |
| DONE | I2074 | An observation becomes a candidate that says what it is about, and reading groups recurrence | 1 | p1 | — | 1 of 1 | |
| DONE | I2075 | A candidate is routed by what it is about | 2 | p1 | — | 1 of 1 | |
| READY | I2114 | A task's scope admits what its derive writes | 0 | p2 | — | 0 of 2 | |
| DONE | I2123 | A caller beyond loopback reads, and changes nothing it cannot authenticate | 0 | p0 | — | 2 of 2 | |
| DONE | I2124 | An event reloaded from disk meets the trust policy in force, and no stamp outruns the clock | 0 | p0 | — | 1 of 1 | |
| DONE | I2126 | A server busy with tool calls is never taken over as if it were dead | 0 | p1 | — | 1 of 1 | |
| DONE | I2127 | A server that lost its lease hands its sessions on and ends | 0 | p1 | — | 2 of 2 | |
| DONE | I2128 | A lease is removed only by the process that holds it, and serve stop stops the server in order | 0 | p1 | — | 3 of 3 | |
| DONE | I2129 | The lease timings the policy declares are the ones the mcp and serve elections use | 0 | p2 | — | 1 of 1 | |
| DONE | I2131 | A server in use through the Cockpit or HTTP is not stopped as idle, and a checkout keeps one address | 0 | p1 | — | 1 of 1 | |
| READY | I2132 | A hello names the runtime it is meant for, and no other runtime accepts it | 0 | p1 | — | 0 of 1 | |
| DONE | I2133 | Every mesh input and answer has a bound, and a refused registration learns nothing | 0 | p1 | — | 2 of 2 | |
| DONE | I2134 | A key removed from the trust list loses its links without a restart, and a node key can be rotated | 0 | p0 | — | 2 of 2 | |
| DONE | I2135 | The trust root is read from the default branch, not from whatever the checkout holds | 0 | p0 | — | 2 of 2 | |
| DONE | I2137 | An accepted mesh event is on disk before it counts, and a damaged journal line is reported, never fused or dropped silently | 0 | p0 | — | 3 of 3 | |
| DONE | I2139 | A sync message stays under the link bound whatever the marks weigh | 0 | p1 | — | 1 of 1 | |
| READY | I2140 | Paging mesh.events returns every event exactly once | 0 | p2 | — | 0 of 1 | |
| DONE | I2145 | A tool call that may have run is never sent a second time | 0 | p0 | — | 2 of 2 | |
| DONE | I2147 | The MCP transports bound what they read and follow the Streamable HTTP rules they claim | 0 | p2 | — | 3 of 3 | |
| DONE | I2151 | A page served beside the write routes runs only script it shipped, and a rebinding host reads nothing | 0 | p0 | — | 3 of 3 | |
| DONE | I2156 | A slow or silent HTTP client cannot hold a server worker | 0 | p1 | — | 1 of 1 | |
| DONE | I2157 | Ready means ready: a lost lease, a degraded layer or a failing mesh is not reported ready | 0 | p1 | — | 2 of 2 | |
| DONE | I2161 | No answer, log line or mesh frame carries a credential the redactor knows | 0 | p1 | — | 1 of 1 | |
| DONE | I2162 | A released archive, installed, serves a foreign repository over the shared server in CI | 0 | p1 | — | 2 of 2 | |
| DONE | I2163 | A client never attaches to a server of another version without saying so, and a newer client replaces an older server | 1 | p1 | — | 2 of 2 | |
| DONE | I2165 | A released archive carries a provenance attestation the installer can check | 0 | p1 | — | 2 of 2 | |
| READY | I2282 | The record pull request's dispatched verdict does not satisfy branch protection | 0 | p1 | — | 0 of 2 | |
| BLOCKED | I2288 | A task is on the mesh while it works | 1 | p0 | 0 of 1 | ||
| BLOCKED | I2289 | A task built off the mesh is refused | 2 | p0 | 0 of 1 | ||
| DONE | I2296 | The executor reopens a record pull request no run was started for | 0 | p1 | — | 2 of 2 | |
| DONE | I2298 | A pull request stacked on one that landed merges on the verdict its head already has | 0 | p1 | — | 2 of 2 | |
| DONE | I2300 | A head is judged against what it changes, not against GitHub's live state | 0 | p1 | — | 2 of 2 | |
| DONE | I2301 | Whether the work is done is answered by measurement: the done invariant asks about debt, what was left behind and the backlog | 0 | p1 | — | 2 of 2 | |
| DONE | I2303 | A release publishes its metadata to the site before its record lands, and the site never goes back a release | 0 | p0 | — | 2 of 2 | |
| DONE | I2396 | The CI critical path of 2026-10-10 is measured, recorded, and explained before anything is changed | 0 | p0 | — | 1 of 1 | |
| DONE | I2398 | A derive offloaded to another machine waits its turn in a declared queue | 0 | p1 | — | 2 of 2 | |
| DONE | I2399 | Every session briefs itself on an interval, without being asked | 0 | p1 | — | 2 of 2 | |
| DONE | I2400 | A signal model and a fold join every source the server already records | 0 | p1 | — | 1 of 1 | |
| READY | I2401 | monitor is one read capability with three projections | 1 | p1 | — | 0 of 1 | |
| BLOCKED | I2402 | majordomus monitor follows the stream from a terminal and a script | 2 | p1 | 0 of 1 | ||
| READY | I2403 | Pull requests, checks and deploys reach the stream when GitHub is reachable | 1 | p2 | — | 0 of 1 | |
| BLOCKED | I2404 | The Cockpit shows the stream live | 2 | p1 | 0 of 1 | ||
| BLOCKED | I2405 | Every session is told what happened since its last look | 2 | p1 | 0 of 1 | ||
| BLOCKED | I2406 | The stream is documented where a reader looks | 3 | p2 | 0 of 1 | ||
| BLOCKED | I2407 | The monitor is released and deployed | 4 | p1 | 0 of 1 | ||
| READY | I2410 | A trusted machine on the tailnet is found through Tailscale, with no address written by hand | 0 | p0 | — | 0 of 1 | |
| READY | I2411 | A server whose mesh is enabled is reachable on the tailnet and the LAN, and only by a trusted peer | 0 | p0 | — | 0 of 1 | |
| READY | I2412 | `majordomus init` declares the mesh and enrols this machine's key, so a fresh repository cooperates | 0 | p1 | — | 0 of 1 | |
| READY | I2413 | A linked worktree cooperates through its repository's running server, and a start that cannot ensure one says why | 0 | p1 | — | 0 of 1 | |
| READY | I2414 | mesh.state and mesh.peers answer a filtered summary that fits one tool answer | 0 | p1 | — | 0 of 1 | |
| READY | I2415 | A mesh review request carries a body, can be withdrawn, and expires | 0 | p2 | — | 0 of 1 | |
| DONE | I2416 | The ci verdict asks every selected gate for a receipt, and a gate whose step never ran is red | 0 | p1 | — | 1 of 1 | |
| READY | I2417 | The landing page is a click-through story: an editorial hero and an evidence chain a visitor steps through | 0 | p1 | — | 0 of 1 | |
| DONE | I2460 | The overview asks its sources at once, so it costs its slowest source and not their sum | 0 | p1 | — | 2 of 2 | |
| DONE | I2461 | majordomus ui is served at /ui as its own product, with screens composed from capabilities | 0 | p1 | — | 3 of 3 | |
| DONE | I2462 | The UI has every screen, and its mesh is a graph whose nodes open an inspector | 1 | p1 | — | 2 of 2 | |
| DONE | I2463 | A train of stacked pull requests is a typed object, served everywhere and drawn as a graph | 0 | p2 | — | 2 of 2 | |
| DONE | I2464 | A path that holds a space is one path to the scope doctrine | 0 | p1 | — | 1 of 1 | |
| DONE | I2470 | The pull requests drain in the UI: a queue a reader narrows, inspects and follows to what each depends on | 2 | p1 | — | 2 of 2 | |
| DONE | I2471 | The roadmap opens a milestone: what it holds, what can start, its critical path, and what it waits for | 3 | p1 | — | 2 of 2 | |
| DONE | I2472 | How long CI takes is measured, from when each run started to when it completed, and the CI/CD screen draws it | 4 | p1 | — | 2 of 2 | |
| DONE | I2473 | A pull request shows its trail: what the executor did to it, and the drain what the lane did lately | 3 | p1 | — | 2 of 2 | |
| DONE | I2474 | The drain draws its merge throughput: each day's merges over the fortnight its trail ends on | 4 | p1 | — | 2 of 2 | |
| DONE | I2475 | The issues are browsed: every issue of the plan by status, milestone, priority or text, each a link onward | 4 | p1 | — | 2 of 2 | |
| DONE | I2476 | An intent opens what serves it: its statement, its criteria and their evidence, and the milestones and issues that serve it | 4 | p1 | — | 2 of 2 | |
| DONE | I2477 | A claim opens its proof: what settles it, its last run, what changed since, how to see it again | 2 | p1 | — | 2 of 2 | |
| DONE | I2478 | A rule opens its proof: what it states, the tests that prove it, what is missing, and the rules around it | 2 | p1 | — | 2 of 2 | |
| DONE | I2481 | The UI links every entity it names, and says none where a source has no value | 3 | p1 | — | 1 of 1 | |
| READY | I2482 | Every screen of the UI has a case, and no link on the UI is dead | 4 | p1 | — | 0 of 2 | |
| DONE | I2483 | The UI is published as a snapshot: read once at the published commit and carried by the site at /ui | 2 | p1 | — | 4 of 4 | |
| READY | I2484 | majordomus ui ensures the shared server and opens the UI's dashboard | 1 | p1 | — | 0 of 2 | |
| READY | I2485 | The bench measures the first request after the repository moved, and a budget bounds it | 3 | p2 | — | 0 of 2 | |
| DONE | I2486 | No screen waits for a source: a page shows the latest reading with its age, read again behind the reader | 1 | p0 | — | 4 of 4 | |
| READY | I2487 | A screen is streamed, and one stream tells an open page which readings changed | 2 | p1 | — | 0 of 4 | |
| READY | I2488 | The HTTP stack is chosen by measurement: the same routes and several hundred open streams on tiny_http and on axum | 2 | p1 | — | 0 of 2 | |
| DONE | I2489 | A screen over its budget fails the build: the UI's latency budgets are benchmark policy, and bench --check holds them | 2 | p1 | — | 3 of 3 | |
| DONE | I2491 | A personal layer changes nothing shared: init --personal and install.sh --personal keep the layer one person's own, verify it, and --shared hands it to the team | 0 | p1 | — | 2 of 2 | |
| DONE | I2495 | The Cockpit is published as a snapshot at /cockpit, and the UI's evidence links lead to it | 3 | p0 | — | 3 of 3 | |
| VERIFY | I2601 | majordomus evidence reaches record, stamp and show | 0 | p1 | — | 1 of 1 | |
| READY | I2652 | The UI shows what the knowledge base holds: the candidates awaiting review and whether the deriver still writes, read and never acted on | 2 | p1 | — | 0 of 3 | |
| READY | I2653 | Every diagram on the site is one interactive, linkable viewer whose node links are inferred, and a derived table can be drawn as a chart | 0 | p2 | — | 0 of 3 | |
| BLOCKED | I2654 | A chart is held to its table by a gate, and the tables that are measured series are drawn | 1 | p3 | 0 of 2 | ||
| BLOCKED | I2655 | The homepage decides whether it carries a derived figure, within its declared story and budget | 1 | p3 | 0 of 1 | ||
| BLOCKED | I2656 | The diagram viewer serves the Cockpit and majordomus ui, and a node that is a repository file links to its source | 1 | p3 | 0 of 2 | ||
| READY | I2660 | The site is published as an artifact by the job that built it, so a ready site waits for no second workflow | 0 | p1 | — | 0 of 2 | |
| READY | I2661 | A publication that did not arrive is a finding the next reader meets, never a green step | 0 | p1 | — | 0 of 2 | |
| READY | I2662 | Validation leaves the deployment a runner: a branch's checks never hold the pool a publication or a release record needs | 0 | p1 | — | 0 of 2 | |
| READY | I2663 | The published UI is not read from nothing on every deployment | 3 | p1 | — | 0 of 2 | |
| DONE | I2664 | A run that has already failed is cancelled by itself, and a red on the trunk is fixed before anything else is prepared | 0 | p1 | — | 2 of 2 | |
| READY | I2670 | A build-cache offer is a typed model and its selection is a pure, explained function | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I2671 | A provider offers its cache as a signed, expiring mesh record, and a stopped provider goes stale | 1 | p1 | 0 of 2 | ||
| BLOCKED | I2672 | The offers and the selection are one read, projected to CLI, MCP, HTTP and OpenAPI | 1 | p1 | 0 of 1 | ||
| BLOCKED | I2673 | The sccache client configuration is derived from the selected offer, local disk first | 2 | p1 | 0 of 2 | ||
| BLOCKED | I2674 | A node is provisioned as an S3 cache provider, idempotently, with no secret in the repository | 1 | p1 | 0 of 2 | ||
| BLOCKED | I2675 | Build-cache health, headroom and hit statistics are visible where the mesh is | 2 | p2 | 0 of 2 | ||
| BLOCKED | I2676 | The build cache is verified and validated: failure paths, security and a real second-node hit | 3 | p1 | 0 of 2 | ||
| BLOCKED | I2677 | The build cache is documented, governed by a rule and described on the site and the Pages | 2 | p2 | 0 of 1 | ||
| DONE | I2678 | The public Observatory replays events that were recorded, and says it is a replay | 0 | p2 | — | 1 of 1 | |
| DONE | I2679 | The Observatory follows a stream with a cursor instead of asking for its page again | 0 | p2 | — | 1 of 1 | |
| DONE | I2680 | The Observatory's gates are closed with evidence: screenshots, measured frame rates, a soak, the recovery drills | 0 | p2 | — | 1 of 1 | |
| READY | I2694 | A promoted note resolves in every checkout, not only where it was promoted | 0 | p1 | — | 0 of 1 | |
| READY | I2695 | The Observatory draws the proof, claim, surface, wave and release scenes from the capabilities that already answer them | 0 | p2 | — | 0 of 1 | |
| READY | I2696 | p5 is a built, optional asset of the UI and the page says where it is | 0 | p2 | — | 0 of 1 | |
| READY | I2697 | The public snapshot carries the p5 library, or says which scenes it cannot draw | 0 | p3 | — | 0 of 1 | |
| READY | I2698 | The new scenes have screenshot evidence at 1080p and 4K on a named revision | 0 | p3 | — | 0 of 1 | |
| READY | I2700 | A lease probe asks a cheap liveness route, and a server holding another lease token is not taken for the leaseholder | 1 | p1 | — | 0 of 1 | |
| READY | I2701 | The idle timeout is declared beside the other server timings, and serve --idle overrides the declaration | 1 | p2 | — | 0 of 1 | |
| READY | I2702 | A checkout keeps one address across restarts, because its server binds a port derived from the checkout | 1 | p1 | — | 0 of 1 | |
| BLOCKED | I2703 | The mesh cooperation rule lists the hello checks in the order the code runs them, and a test names that order | 1 | p1 | 0 of 1 | ||
| READY | I2704 | A dialer reads no reply beyond the link bound and no more candidates than the bound, and a refusing peer is retried at a measured, jittered rate | 1 | p1 | — | 0 of 2 | |
| READY | I2705 | A node key can be rotated, peers follow the new key, and the old key is refused | 1 | p0 | — | 0 of 1 | |
| READY | I2706 | An own event whose append failed is never acknowledged as durable, and a journal reload is bounded in size | 1 | p0 | — | 0 of 2 | |
| DONE | I2707 | majordomus doctor reports a stale server, or says plainly that it checks governance only | 1 | p1 | — | 1 of 1 | |
| READY | I2708 | A mesh event field nobody listed fails the mesh check, and no log field or review body carries a credential the redactor knows | 1 | p1 | — | 2 of 2 | |
| READY | I2709 | A red on the trunk has one named carrier, and nobody else may land until it is paid | 1 | p1 | — | 0 of 1 | |
| DONE | I2710 | A release run never waits behind pull-request validates for a job slot | 0 | p0 | — | 1 of 1 | |
| DONE | I2711 | The pages job judges production only after the deployment of its own commit has arrived | 0 | p0 | — | 1 of 1 | |
| DONE | I2712 | release-check treats a tag whose release run is still going as pending, not as a missing record | 1 | p1 | — | 1 of 1 | |
| READY | I2713 | A build never lets idle incremental sessions fill the disk | 0 | p0 | — | 0 of 1 | |
| READY | I2714 | One build directory never serves two worktrees' jobs at once | 0 | p1 | — | 0 of 1 | |
| DONE | I2715 | New public Rust code meets rust-quality before the structure job does | 0 | p1 | — | 1 of 1 | |
| ACTIVE | I2716 | A case derives its budgets and lists from what it tests, never pins them | 0 | p2 | — | 0 of 1 | |
| READY | I2717 | A release record pull request gets a verdict that can pass | 0 | p0 | — | 0 of 1 | |
| READY | I2718 | A linked worktree runs its own hooks, never the primary checkout's | 0 | p0 | — | 0 of 1 | |
| READY | I2720 | majordomus self update re-runs the published installer, and never reimplements it | 0 | p0 | — | 0 of 2 | |
| BLOCKED | I2721 | An enrolled mesh node follows the stable pointer by itself | 1 | p0 | 0 of 2 | ||
| BLOCKED | I2722 | A hub activates a new version under its service manager, checks its health and rolls back by itself | 1 | p0 | 0 of 2 | ||
| READY | I2723 | The mesh shows each node's version and how far a release has rolled out | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I2724 | A node without a route to the site takes the archive from a peer and still verifies it itself | 1 | p1 | 0 of 1 | ||
| READY | I2731 | Every failure class in the published failure table names its test or its stated limitation | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I2733 | A resumed mesh.events walk returns every event exactly once, across partitions | 1 | p2 | 0 of 1 | ||
| READY | I2734 | A session joins the mesh at its start and leaves it at its end | 0 | p0 | — | 0 of 1 | |
| BLOCKED | I2735 | An edit no claim covers is refused | 3 | p0 | 0 of 2 | ||
| READY | I2740 | An issue's delivery is inferred from branches, pull requests, merges, tags and the published site | 0 | p0 | — | 0 of 2 | |
| BLOCKED | I2741 | Merged work the plan has not recorded is drift, and on the trunk past a window it is red | 1 | p0 | 0 of 2 | ||
| READY | I2742 | A milestone's version is inferred from the release that carried it, never typed | 0 | p0 | — | 0 of 1 | |
| BLOCKED | I2743 | The public roadmap draws every milestone in the graph's order, each issue with its inferred delivery | 1 | p0 | 0 of 1 | ||
| BLOCKED | I2744 | The UI roadmap reads delivery and the releases themselves, and its now is where work is | 1 | p0 | 0 of 1 | ||
| VERIFY | I2745 | The landing page states no present it does not read | 0 | p0 | — | 1 of 1 | |
| VERIFY | I2746 | Every published tree draws its diagrams, and every diagram is the interactive viewer | 0 | p0 | — | 1 of 1 | |
| READY | I2747 | Every code block on every surface is highlighted by one engine with one palette | 0 | p1 | — | 0 of 1 | |
| BLOCKED | I2748 | The drift already on the trunk is settled before the gate is made blocking | 2 | p0 | 0 of 1 | ||
| READY | I2760 | A scope entry is one path, and a path context would refuse is refused at start | 0 | p1 | — | 0 of 1 | |
| READY | I2770 | majordomus ui and the Cockpit wear the site's navbar: one renderer, the same styles and scripts, and a browser comparison that refuses a difference | 0 | p1 | — | 0 of 2 | |
| VERIFY | I2780 | The UI has an intent workspace: an intent, its milestones, issues, waves and graph on one screen | 0 | p0 | — | 1 of 1 | |
| READY | I2786 | The published UI reads the evidence CI recorded, and a publication that would show tests as not run is refused | 0 | p0 | — | 0 of 1 | |
| BLOCKED | I2787 | A build never lets the shared build directory's crate artifacts fill the disk | 1 | p0 | 0 of 1 |