Problem
The merged v4 ordinal reader reuses topology/uuid-membership/manifest.json, but the existing v3 manifest is the live UUID-membership authority for both nodes and edges. The v4 schema is node-only. Replacing v3 would break edge membership and existing consumers; treating a v3 body as v4 authority also conflates independent hashes and domains.
This is a verified blocker discovered while implementing #969. It corrects #970's reader contract without expanding construction scope.
Objective
Separate the existing UUID-membership facet from the node ordinal-identity facet while pinning both to the same topology generation.
Requirements
- Preserve v3
topology/uuid-membership/manifest.json as node+edge UUID-membership and UUID-to-surrogate authority.
- Place node ordinal v4 at a distinct canonical manifest/receipt/lock path.
- Bind
V4OrdinalIdentityAuthority.manifest_sha256 only to the authenticated ordinal manifest digest supplied by the selected project-generation receipt.
- Separate ordinal-facet discovery/classification from authenticated open.
- Valid current v3 with absent ordinal v4 returns a typed rebuild-required disposition.
- Present malformed/corrupt ordinal v4 fails closed and never falls back to v3.
- Keep existing v3 node+edge consumers unchanged.
- Make orphan/reference discovery authenticate selected-generation receipt provenance and retain the union of both facets.
- Document the two generation-coupled authority facets explicitly.
Acceptance Criteria
Non-Goals
Relationships
Problem
The merged v4 ordinal reader reuses
topology/uuid-membership/manifest.json, but the existing v3 manifest is the live UUID-membership authority for both nodes and edges. The v4 schema is node-only. Replacing v3 would break edge membership and existing consumers; treating a v3 body as v4 authority also conflates independent hashes and domains.This is a verified blocker discovered while implementing #969. It corrects #970's reader contract without expanding construction scope.
Objective
Separate the existing UUID-membership facet from the node ordinal-identity facet while pinning both to the same topology generation.
Requirements
topology/uuid-membership/manifest.jsonas node+edge UUID-membership and UUID-to-surrogate authority.V4OrdinalIdentityAuthority.manifest_sha256only to the authenticated ordinal manifest digest supplied by the selected project-generation receipt.Acceptance Criteria
Non-Goals
Relationships