MVP Readiness Snapshot¶
Snapshot date: 2026-05-22.
This table is an estimated cross-document readiness snapshot for canonical Story, Proposal, and Solution documents.
Scope rules: localized duplicates (*.pl.md), indexes, backlog files, implementation notes, coding guides, and generated registries are excluded. Solution rows use the main NNN-*/NNN-*.md document for each component.
Estimation basis: node/docs/MVP.md defines the hard-MVP story set (story-000, story-002, story-005, story-006, story-008, story-010); doc/project/60-solutions/CAPABILITY-MATRIX.md provides coarse implementation status; each document text is used as fallback when no capability row exists. part of MVP tracks the hard-MVP set; MVP ready may still be true for a post-hard-MVP document when its own MVP slice is implemented. Percentages are engineering estimates, not release-signoff facts.
Change basis: this refresh incorporates the current worktree state on 2026-05-22, including Story 000 and Story 008 operator acceptance coverage, Story 010, Proposals 057-065, Solutions 025-032, the Artifact Delivery / INAC / TLS trust updates, and the related notification, contact, messaging, pseudonym-vault, service-CA, artifact-mailbox, artifact-object-pointer, temporal-storage, bounded-deferred-operation, and local-relationship schemas and trackers.
Recent component deltas:
- Artifact Delivery moved from "MVP transport foundation" to hard-MVP complete: Memarium custody target-space policy, profiling counters, metadata-only observers, Matrix mailbox hardening, and
object-store-indirectfetch/rehydrate throughartifact-object-pointer.v1are now documented and implemented. Lower-level zero-copy and Matrix media variants remain post-MVP optimization layers. - Notifications now have a local durable MVP foundation: schema-gated
notification.create, temporal SQLite event log, derived queue projection, JSONL audit mirror, SSE state ping, operator UI, legacynotify_emitadapter, first daemon-owned actions, profile-aware manifests, and destructive temporal compaction for local notification history. They remain partial because pod-user UX, OS notifications, and cross-node aggregation are later layers. - Contact Catalog hard-MVP is tracker-complete: Proposal 058 and Solution 025 now report the implemented route-set
contact-claim.v1/contact-lookup-result.v1runtime, supervised service, local contact recovery, tombstone/revocation replay, PSI/blinded lookup, provider sync, provider trust controls, and contact-control-vs-identity wording as done for the hard-MVP slice. - Messaging hard-MVP is tracker-complete: Proposal 060 and Solution 027 now report supervised messaging runtime, daemon-mediated contactability provider discovery/challenge/redeem, Contact Catalog lookup/contact-request handoff, classification-bearing private-direct AD/INAC delivery,
messaging.flag.v1read/unread replay, recorded-message lineage plus best-effort encrypted Agora Vault storage, Node UI controls, and Story 010 strictad-smokeas done for the hard-MVP slice. Production privacy/federation expansion, receive-passport restoration matrices beyond the current sealed local recovery path, Maildir body encryption, richer per-recipient vault key wrapping, HTML rendering, group messaging, and live multi-device push remain post-MVP work. - Local Relationship Layer is now an active MVP track rather than only a proposal: Proposal 065 and Solution 032 split the work into M1-M6. M1 contracts and M2 pure core are done. M3 is partial with daemon-owned
LocalRelationshipStore, Pseudonym Vaultlocal-relationshipstartup replay, defaultuntrusted/contacts/friends/trustedseeding when the vault is writable, reserved-class archive rejection, editable reserved-class metadata, SQLite projection (transactions,events,current_*, predicates,predicate_class_ids, decisions), local control API, and guarded host capabilities. Projection JSON cells are now sealed through the daemon sealer AEAD backend underlocal-relationship-projection:v1, and lookup columns use sealer-derived keyed HMAC indexes. M4 is partial with a minimal/admin/local-relationshipsoperator surface for classes, memberships, predicates, evaluation, and decision audit; the surface now usesrequired/class-ids[], validates at least one selected class before daemon submission, visually distinguishes the four reserved tiers, and requires typed secondary confirmation with a bounded modal lifetime before approvingtrustedpredicates. Middleware package manifests can declaretrust_requirements[]; signed package readiness blocks startup until the referenced predicate is approved and links the operator to Local Relationships. M5 is now canonical-only before first release:contact-request.acceptappends canonicalcontactsmembership and pairwise messaging nym binding,messaging-servicereceives the primary operatorowner/ref, reads point membership status throughlocal-relationship.membership.latest, appends canonical membership throughlocal-relationship.membership.append, fails closed without host/owner configuration, and owner-scoped tests prove owner A membership does not satisfy owner B. The pre-releasecontacts_membershipcache, bootstrap migration endpoint, andcontacts.membership-changed.v1compatibility fact have been removed instead of deferred; Story-010 strictad-smokenow passes over this canonical-only path. M6 is partial with a dynamic Artifact Delivery group selector hook and daemon wiring to resolve relationship classes for the primary local operator into ordinary AD recipient selectors when candidates carry AD-routablecontact/refvalues (node:,participant:,routing:), orlocal-contact:records that carry a localrouting-subject/idor participantremote/subject; tests now assert candidate-not-authority and fail-closed unroutable groups, and Story-005ad-smokepasses the current private AD/INAC path. Middleware predicate evaluation returns redacted decision data rather than host-internal candidates. Current hardening adds vault-first endpoint writes with sealed Pseudonym Vault append as the commit point, rebuildablepending-vault-rebuildprojection failure state, vaulted predicate approval/reject audit records,predicate-rejectedreadiness blocking, redacted host predicate evaluation, local binding-store evidence verification, and Story-010 acceptance flags for relationship-group delivery and multi-operator owner-scope checks; the combined variant passes locally. AD config validation permits late-bound group references, so Local Relationship groups do not need static placeholder groups. Remaining MVP work is narrower: wire those new Story-010 variants into CI, deepen the pending/rejected package queue and package-install audit UI, broaden privacy/performance gates, and add remote-disclosed binding import beyond the local verified binding store. Public protocol capability remains post-MVP deferred. - Replay Scheduler M1 is now fully closed for the hard-MVP slice: the generic bounded scheduler, durable launch ledger, host-owned job-source merge, authority gate, cooperative shutdown, Agora projection replay action, and operator status/control surface are all documented as implemented. Richer Agora-domain panels and non-Agora maintenance jobs are post-M1 extensions.
- Agora gained a generic encrypted-artifact Vault surface:
agora-vault-entry.v1exposes only opaque artifact ids, kind, ciphertext, and cryptographic envelope metadata; supervised local routes are client-auth / daemon-dispatch gated, while remote provider deployments bind the same operations to the frozenagora-vault@v1passport profile. - Temporal Storage Convention is now hard-MVP complete: notification-store is the full-compaction-required adopter, while messaging outbox and Seed Directory accepted facts are converged bounded/no-op adopters with manifests, temporal status/feed/replay-check, and explicit
compaction.policy = "bounded-noop"diagnostics. - Bounded Deferred Operations were promoted from Proposal 055 to Solution 029 as a horizontal host control-plane component. The MVP slice is complete: shared wire contracts, host registry, poll/cancel surfaces, JSON-e Flow persisted continuation, Sensorium OS deferred state, operator visibility, and AD consumer integration.
- Sensorium has been promoted to Solution 030 as a constitutional organ. Its MVP slice is implemented for
sensorium-coreobservation admission/query, directive invocation, audit-only outcomes, internal connector dispatch, the supervised Sensorium OS reference connector, action-catalog sidecar authorization, and deferred Sensorium actions. Local Agora observation publication remains partial because runtime support currently exposes topic metadata and read surfaces rather than a complete local subscription bus. - Proposal 054 is hard-MVP complete:
seed-directory-query-attestation.v1is schema-gated, Seed Directory can attach opt-in signed response attestations, daemon can opt into trusted Agora replay foradv,cap, andrevocationslanes, replay follows paginated Agora result pages, replay cursors/status are persisted in the embedded store, projection equivalence tests include revocation effects, and daemon-owned Seed Directory discovery now applies one strict multi-directory policy (preferred-directory,quorum, orweighted-trust) across host queries, AD/capability routing, subject lookup, and Contact Catalog provider discovery, with cross-directory revocation suppression for revoked capability passports./v1/seed-directoryand Node UI expose safe trusted-directory diagnostics, local endorsement/reputation policy inputs, replay state, and skip reasons. - Memarium Proposal 036 and Solution 002 are now implementation-complete for v1: neutral
MemariumObservationbridges post-chain and phase observers without daemon-private runtime dependencies, observe-rule paths are validated with explicit-null extraction semantics, governed community forget accepts explicit governance references, the read sidecar performs startup catch-up while retaining scan fallback, local backup packages can be submitted through operator remote-archivist handoff/retrieval control surfaces over Artifact Delivery, and Story-005 smoke confirms the classification-bearing private AD/INAC path used by Memarium-adjacent archival/export boundaries. Richer Node UI batch UX remains a product layer, not a Proposal 036 blocker.
Stories¶
Proposals¶
Solutions¶
| Document | part of MVP | MVP ready | post-MVP ready | readiness % |
|---|---|---|---|---|
| Orbiplex Node | true |
true |
false |
85 |
| Orbiplex Node UI | true |
false |
false |
82 |
| Orbiplex Memarium | true |
true |
true |
100 |
| Orbiplex Arca | true |
true |
false |
88 |
| Orbiplex Dator | true |
true |
false |
100 |
| Orbiplex Sealer | true |
true |
false |
96 |
| Orbiplex Capability Binding | true |
true |
true |
95 |
| Capability Advertisement | true |
true |
false |
94 |
| Orbiplex Agora | true |
true |
false |
93 |
| Orbiplex Monus | false |
false |
false |
15 |
| Orbiplex Anon | false |
false |
false |
10 |
| Orbiplex Whisper | true |
true |
false |
100 |
| Ferment | false |
false |
false |
15 |
| Raw Signal Access | true |
true |
false |
90 |
| Orbiplex Key Delegation Passports | true |
true |
false |
95 |
| Host-Owned Module Store | true |
true |
false |
90 |
| Bounded Local Server Runtime | true |
true |
false |
90 |
| Inter-Node Artifact Channel (INAC) | true |
true |
false |
88 |
| Classification | true |
false |
false |
76 |
| Middleware | true |
true |
false |
94 |
| Replay Scheduler | true |
true |
false |
100 |
| Solution 021: Agora Authority | false |
false |
false |
77 |
| Orbiplex Semantic Index | false |
false |
false |
15 |
| Artifact Delivery | true |
true |
false |
100 |
| TLS Trust Policy | true |
true |
false |
86 |
| Contact Catalog | true |
true |
false |
100 |
| Pseudonym Vault and Key Roles | false |
true |
false |
90 |
| Messaging Middleware | true |
true |
false |
100 |
| Temporal Storage Convention | false |
true |
false |
100 |
| Bounded Deferred Operations | true |
true |
false |
100 |
| Sensorium | true |
true |
false |
92 |
| Seed Directory | true |
true |
false |
100 |
| Local Relationship Layer | true |
false |
false |
78 |