GET /me/export (zip), POST /me/import (restore into new trees, non-destructive), DELETE /me (email-guarded). Settings page wires all three. No migration. 52 tests pass.
GET /me/export (zip), POST /me/import (restore into new trees, non-destructive), DELETE /me (email-guarded). Settings page wires all three. No migration. 52 tests pass.
New account_service + endpoints under /users/me:
- GET /me/export — zip of every owned tree (account.json + media blobs).
- POST /me/import — restore a backup into NEW trees (ids remapped, media
re-uploaded); non-destructive, never touches existing data.
- DELETE /me — soft-delete the user, their owned trees, and revoke sessions;
guarded by retyping the account email.
Settings page wires all three (export download, restore upload, delete with
typed-email confirmation). No migration — uses existing tables + soft-delete.
52 backend tests pass (export→restore round-trip + delete guards); frontend builds.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
justin
merged commit 9b04bcefba into main2026-06-07 11:26:06 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
GET /me/export (zip), POST /me/import (restore into new trees, non-destructive), DELETE /me (email-guarded). Settings page wires all three. No migration. 52 tests pass.