Skip to content

Right to Leave panel: export-and-go + Delete Day (0234 Wave 7) - #300

Merged
crs48 merged 2 commits into
mainfrom
claude/0234-wave7-right-to-leave-panel
Jun 27, 2026
Merged

Right to Leave panel: export-and-go + Delete Day (0234 Wave 7)#300
crs48 merged 2 commits into
mainfrom
claude/0234-wave7-right-to-leave-panel

Conversation

@crs48

@crs48 crs48 commented Jun 27, 2026

Copy link
Copy Markdown
Owner

Surfaces the Right to Leave service (merged in #293) in the app (Charter §Exit) — exploration 0234.

What landed

Settings → Data becomes the "your data & leaving" home:

  • Where your data lives — "This device only" (or "This device + "); the local copy is the master.
  • Leave with everything — one click bundles your whole workspace (a browser-safe IndexedDB dump) + your portable did:key identity + a re-import README into one file, via the merged leaveWithEverything service. "Nothing held back. You don't need our permission to leave."
  • Clear all data — now routed through the tested deleteDay (anonymous account.left signal, no guilt, no nagging).

New modules: apps/web/src/lib/browser-export.ts (browser-safe full export — the Node-only workspace exporter can't run in-browser) and apps/web/src/lib/leave.ts (createLeavePorts, deps-injected so it stays unit-testable + free of build-only imports).

Verification

Verified live in the running app (screenshot below): the Data panel renders the new rows; "Export all" is wired. leave.test.ts (4): identity export, deps routing, dated bundle download. The leave policy (leaveWithEverything/deleteDay) is unit-tested in #293. xnet-web typecheck (39) + eslint + prettier + humane-patterns + fallow audit all pass.

Settings → Data: "Leave with everything — Your whole workspace, your portable identity, and how to re-import — nothing held back. You don't need our permission to leave." → Export all.

Checklist: 15/16 implementation, 6/9 validation. xnet-web is an app (not publishable) — no changeset; changelog fragment included.

🤖 Generated with Claude Code

xNet Test and others added 2 commits June 27, 2026 12:38
… Day

Settings → Data gains a one-click "Leave with everything" that bundles the whole
workspace (browser-safe IndexedDB dump) + portable did:key identity + re-import
README via the merged @xnetjs/plugins leave service; "Clear all data" now routes
through the tested deleteDay (anonymous account.left, no guilt). New browser-safe
exportBrowserWorkspace + createLeavePorts (deps-injected, unit-tested). Charter §Exit.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@crs48
crs48 temporarily deployed to pr-300 June 27, 2026 19:39 — with GitHub Actions Inactive
github-actions Bot added a commit that referenced this pull request Jun 27, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🖼️ UI changes in this PR

Screens

✏️ Settings _(SSIM 0.847)_
before after diff
before after diff

Auto-captured by CI · run. Informational — not a blocking check.

@github-actions

github-actions Bot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

Preview removed for PR #300.

github-actions Bot added a commit that referenced this pull request Jun 27, 2026
@crs48
crs48 merged commit 1715390 into main Jun 27, 2026
14 checks passed
@crs48
crs48 deleted the claude/0234-wave7-right-to-leave-panel branch June 27, 2026 19:45
github-actions Bot added a commit that referenced this pull request Jun 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant