Added 8 integration tests for identity manager covering create, sign/verify, list, delete, default management, and Nostr key gen. Documented DWN deprioritization decision. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1.5 KiB
1.5 KiB
ADR-011: DWN Deprioritization
Status
Accepted
Context
TBD/Block shut down in November 2024, donating Web5 code to the Decentralized Identity Foundation (DIF). The DWN (Decentralized Web Node) specification was heavily backed by TBD — without their engineering team, the spec has lost momentum:
- No maintained Rust DWN SDK exists (the
dwncrate by unavi-xyz is v0.4.0 with 323 downloads) - TBD's reference implementation was TypeScript-only
- DIF has not allocated resources to continue DWN development
- The spec itself is complex (personal data stores with protocol-based access control)
Meanwhile, Archipelago's federation over Tor + Nostr relays already serves the core peer data sync use case that DWN was intended for.
Decision
- Keep existing DWN store code in
core/archipelago/src/network/dwn_store.rs— it works for peer file catalogs and federation state - Stop calling it "Web5 DWN" in user-facing text — it's our custom implementation, not a full DWN spec implementation
- Do not invest in DWN spec compliance — the spec is stalled and may not stabilize
- Prioritize Nostr + federation for peer discovery and data exchange
- Re-evaluate if DIF produces a viable Rust SDK or the spec gains new maintainers
Consequences
- DWN functionality remains available but is not actively developed
- Peer sync uses federation + Nostr instead of DWN protocols
- Reduces maintenance burden — no need to track a stalled spec
- If DWN resurfaces with strong tooling, we can adopt it later