Deliver the unified identity, addressing, and provenance infrastructure for SEA-Forge™, including:
ifl:hash / ifl:token)This plan consolidates the former P008 (Provenance and Ledger) and P016 (Identity and Addressing) into a single coherent implementation plan. The underlying specifications have been unified into SDS-050 (Semantic Identity & Provenance Infrastructure).
| ADR ID | Decision Title | Impact on This Plan |
|---|---|---|
| ADR-011 | Internal Federated Ledger (IFL) | Establishes ledger-backed identity and provenance substrate. |
| ADR-003 | Foundational Isomorphic Architecture | Identity must preserve meaning across all projections. |
| PRD ID | Requirement Title | Satisfied By (SDS) | Acceptance Criteria |
|---|---|---|---|
| PRD-003 | Internal Federated Ledger + Identity Tokens | SDS-050, SDS-018 | Deterministic pre-mint; attested minting; verifiable proofs |
| SDS ID | Service/Component | Bounded Context | SEA-DSL Spec File | Implementation Status |
|---|---|---|---|---|
| SDS-050 | Semantic Identity & Provenance Infrastructure | shared |
N/A | Draft |
| SDS-018 | Canonical Normalizer | shared |
N/A | Designed |
| SDS-031 | Authority & Ownership Boundaries | shared |
N/A | Draft |
The following specs have been consolidated into SDS-050 and should no longer be referenced:
| Old SDS | Title | Superseded By |
|---|---|---|
| SDS-017 | Identity & Addressing Scheme | SDS-050 |
| SDS-034 | IFL Federated Ledger | SDS-050 |
graph TD
ADR11[ADR-011: IFL] --> PRD3[PRD-003: IFL + Identity Tokens]
ADR03[ADR-003: Isomorphic Architecture] --> PRD3
PRD3 --> SDS050[SDS-050: Semantic Identity & Provenance]
PRD3 --> SDS018[SDS-018: Canonical Normalizer]
SDS050 --> SDS031[SDS-031: Authority Boundaries]
| Dependency | Type | Version | Package | Justification | SDS Reference |
|---|---|---|---|---|---|
| libsodium | Node/Python | 0.7.x |
libsodium-wrappers / pynacl |
Ed25519 signing for identity attestation | SDS-050 |
| crypto | Node Built-in | N/A | crypto |
SHA-256 artifact hashing | SDS-050 |
| hashlib | Python Built-in | N/A | hashlib |
SHA-256 hashing for IFL | SDS-050 |
| merkletreejs | Node Library | 0.4.x |
merkletreejs |
Merkle trees for lineage proofs | SDS-050 |
| pymerkle | Python Library | 6.x |
pymerkle |
Python Merkle tree implementation | SDS-050 |
| Dependency | Type | Version | Package | Justification | SDS Reference |
|---|---|---|---|---|---|
| immudb | Immutable DB | 1.x |
immudb-node / immudb-py |
Tamper-evident event history | SDS-050 |
| protobuf | Serialization | 28.x |
protobufjs / protobuf |
Binary encoding for ledger events | SDS-050 |
1
2
3
4
5
# Node.js dependencies
pnpm add libsodium-wrappers merkletreejs protobufjs immudb-node
# Python dependencies
pip install pynacl pymerkle protobuf immudb-py
1
2
3
4
5
6
/
├── docs/specs/shared/prd/003-internal-federated-ledger.md
├── docs/specs/shared/adr/011-internal-federated-ledger.md
├── docs/specs/shared/sds/050-semantic-identity-provenance.md
├── docs/specs/shared/sds/018-canonical-normalizer.md
└── docs/specs/shared/sds/031-authority-ownership-boundaries.md
| Cycle | Branch | Wave | Files Modified | Files Created | Specs Implemented |
|---|---|---|---|---|---|
| C1A | cycle/p008-c1a-identity-scheme |
1 | SDS-050 | — | Dual-state identity + binding records |
| C1B | cycle/p008-c1b-normalizer |
1 | SDS-018 | — | Canonicalization + hash stability |
| C2A | cycle/p008-c2a-ledger-proofs |
2 | SDS-050 | — | Proof formats + verification algorithms |
| C2B | cycle/p008-c2b-governance-hooks |
2 | SDS-031 | — | Key custody, SoD, break-glass audit |
ifl:hash / ifl:token formats, URI addressing, state transitionsdocs/specs/shared/sds/050-semantic-identity-provenance.mddocs/specs/shared/sds/018-canonical-normalizer.mddocs/specs/shared/sds/050-semantic-identity-provenance.mddocs/specs/shared/sds/031-authority-ownership-boundaries.mdifl:hash) computed without network accesssequenceNumber by exactly 1| Risk | Likelihood | Impact | Mitigation Strategy |
|---|---|---|---|
| Hash drift due to normalization changes | Medium | High | SDS-018 test vectors + deterministic serialization. |
| Ledger unavailability blocks builds | Low | High | Always allow ifl:hash mode; attest asynchronously. |
| Privileged actions without audit | Low | Critical | Enforce signed envelopes + mandatory audit events. |
ifl:hash mode only while ledger service is stabilized.| Type | ID | Document |
|---|---|---|
| ADR | ADR-011 | docs/specs/shared/adr/011-internal-federated-ledger.md |
| ADR | ADR-003 | docs/specs/shared/adr/003-foundational-isomorphic-architecture.md |
| PRD | PRD-003 | docs/specs/shared/prd/003-internal-federated-ledger.md |
| SDS | SDS-050 | docs/specs/shared/sds/050-semantic-identity-provenance.md |
| SDS | SDS-018 | docs/specs/shared/sds/018-canonical-normalizer.md |
| SDS | SDS-031 | docs/specs/shared/sds/031-authority-ownership-boundaries.md |