High priority fixes: - T0: Profile page now filters comments by namespace (was leaking cross-site) - T1: URI hostnames and namespace names normalized to lowercase (was causing duplicate threads and "stock comments" bug). Includes merge script. - T2: Thread detail API now paginated with SQL-side filtering (was 502 on 267+ reply threads) Features: - T3: GDPR account deletion (tombstone user with scrubbed PII) and data export - T4: Customizable button text and comment labels per namespace - T5: Self-service namespace deletion for owners - T6: @mention notifications with profile links - T7: Webmention receiving endpoint with h-card extraction - T8: Configurable max nesting depth and collapse depth per namespace - T9: AJAX thread title search to prevent duplicates - T10: Browser push notification support (VAPID/service worker) Docs and housekeeping: - T11: Documented thread_uri behavior when moving embeds - T12/T13: Drafted community replies for resolved feature requests - Collapse depth defaults to infinite (load-more disabled unless configured) 364 tests pass, 4 skipped.
1.2 KiB
1.2 KiB
T5: Self-service namespace deletion
Status: resolved
Priority: low
Source: FAQ 72475f88-9323-11ec-a41e-b1c8c4ae987e
Filed: 2026-02-01
Problem
Users cannot delete a namespace/website from their dashboard. Deletion is only available via the admin CLI script remarkbox/scripts/modify_namespace.py --delete. A user also suggested a dashboard button to access all their sites.
What Exists
remarkbox/scripts/modify_namespace.py— admin CLI with--deleteflag that performs cascading deletion of all nodes, events, watchers, notifications, OAuth records, and the namespace itself. Includes a confirmation prompt.
Proposed Implementation
- Add a "Delete Namespace" button to namespace settings (with confirmation dialog)
- Reuse the cascading deletion logic from the admin script
- Restrict to namespace owners only
Files
remarkbox/views/authenticated/authenticated.py— add delete namespace viewremarkbox/templates/namespace-settings.j2— add delete button with confirmationremarkbox/routes.py— add route
Acceptance Criteria
- Namespace owners can delete their namespace from settings
- Confirmation step prevents accidental deletion
- All associated data is cleaned up (nodes, watchers, etc.)