diff --git a/docs/SMOKE_TEST.md b/docs/SMOKE_TEST.md index d5e8c09..6a0cc87 100644 --- a/docs/SMOKE_TEST.md +++ b/docs/SMOKE_TEST.md @@ -1060,6 +1060,9 @@ and at least one entity tagged on Device A. | 7.1 | Open any article via the toolbar icon → reader opens, capture is cached | ✅ | | 7.2 | Close the reader, navigate away, then re-capture the original URL | ✅ the reader's archive banner offers the cached copy | | 7.3 | DevTools → Application → IndexedDB → `xray-archive` → `articles` | ✅ entry exists for the URL hash | +| 7.3a | On an open capture with claims, click the 🗑 header button (S4) | ✅ the confirm names the article, counts prior versions, and states what is KEPT (claims/audits by count, published relay events, source bytes) — never a bare "are you sure" | +| 7.3b | Confirm 7.3a's delete, then re-run 7.3 and re-capture the URL | ✅ the IndexedDB row is gone; claims still list in the reader for the URL; the fresh re-capture starts a NEW row with no prior versions | +| 7.3c | Options → Advanced → "Clear all X-Ray storage" | ✅ the confirm says SETTINGS only and points at "Start fresh workspace" for content — after confirming, entities/claims/archives are intact, relays/signing key are gone | ### Paywall fallback diff --git a/src/options/index.js b/src/options/index.js index 00b9edb..a437c3d 100644 --- a/src/options/index.js +++ b/src/options/index.js @@ -946,7 +946,17 @@ async function clearLlmKey() { } async function clearAll() { - if (!confirm('Erase all X-Ray settings, entities, the keypair registry, and the local signing key? This cannot be undone.')) return; + // The confirm must promise exactly what storageClearExtension + // delivers. The old text claimed "entities, the keypair registry" + // — but those keys (publications/people/organizations/ + // keypair_registry) are the LEGACY userscript stores; the modern + // workspace (entities, local_keys, claims, the archives) lives + // elsewhere and is untouched here. That is what "Start fresh + // workspace" (above, Advanced) is for — say so. + if (!confirm('Erase X-Ray SETTINGS: relays, preferences, the local signing key, ' + + 'the LLM API key, feature flags, and legacy userscript-era stores. ' + + 'Your workspace CONTENT (entities, claims, captured articles, archives) is NOT touched — ' + + 'use "Start fresh workspace" for that. This cannot be undone. Continue?')) return; await storageClearExtension(); // Reset experimental flags too — otherwise a wipe leaves the // public judgment-publishing path enabled. diff --git a/src/reader/index.html b/src/reader/index.html index 8a9d288..c1fc8ff 100644 --- a/src/reader/index.html +++ b/src/reader/index.html @@ -33,6 +33,7 @@ +