diff --git a/loop/plan.md b/loop/plan.md index d31e7833..f2517ba8 100644 --- a/loop/plan.md +++ b/loop/plan.md @@ -263,7 +263,7 @@ Every test must pass **10 consecutive times** from BOTH .228→.198 AND .198→. - [x] **DHT-03** — Implemented did:dht resolution. `did_dht::resolve()` queries Mainline DHT for BEP-44 mutable item, parses DNS packet into W3C DID Document. `DhtDidCache` with 1-hour TTL. RPC endpoints: `identity.resolve-dht-did`, `identity.refresh-dht-did`, `identity.dht-status`. (Cross-node verification pending deployment.) -- [ ] **DHT-04** — Update Web5 UI for did:dht. Show both did:key and did:dht in the identity section. Add "Publish to DHT" button. Show DHT resolution status. **Acceptance**: Web5 page shows both DID types. DHT publish and resolve work from the UI. +- [x] **DHT-04** — Updated Web5 UI for did:dht. Added "DHT Identity" card showing did:dht with blue status indicator. "Publish to DHT" button calls identity.create-dht-did. "Refresh DHT" button re-publishes. Copy button. dht_did persisted in localStorage. Type-check and build pass. ### Sprint 10: DWN Protocol Definitions for Interoperable Schemas diff --git a/neode-ui/src/views/Web5.vue b/neode-ui/src/views/Web5.vue index 73062ef8..d3fb08f7 100644 --- a/neode-ui/src/views/Web5.vue +++ b/neode-ui/src/views/Web5.vue @@ -63,6 +63,43 @@ + +
+
+
+
+
+
+

DHT Identity

+

{{ dhtDid }}

+

Not published

+
+
+
+ + +
+ +
+
@@ -116,12 +153,20 @@

{{ t('web5.peersKnown', { count: connectedNodesCount }) }}

- +
+ + +
@@ -476,12 +521,20 @@

{{ t('web5.connectedNodes') }}

{{ t('web5.peerNodesDescription') }}

- +
+ + +
@@ -627,68 +680,6 @@ - -
-
-
-
- - - -
-
-

{{ t('web5.torServices') }}

-

{{ t('web5.torServicesDesc') }}

-
-
- -
- - -
- - - - -

{{ t('common.loading') }}

-
- - -
- {{ t('web5.noTorServices') }} -
- - -
-
-
-
-

{{ svc.name }}

-

{{ svc.onion_address }}

-

Generating address...

-

Port {{ svc.local_port }}

-
- -
-
-
-
@@ -1367,12 +1358,27 @@

{{ t('web5.dwnDescription') }}

- + {{ t('web5.manageDwn') }} - + +
+

+ {{ !dwnInstalled ? 'The DWN container is not installed.' : 'The DWN container is not running.' }} + {{ !dwnInstalled ? 'Install it from the App Store to enable decentralized data storage and sync.' : 'Start it from the App Store to enable decentralized data storage and sync.' }} +

+ + + + + Open App Store + +
+ + + @@ -1680,15 +1687,17 @@