remarkbox/docs/tickets/5.md
russell@unturf.com f1cffe2e79 Resolve all 14 tracked tickets (T0-T13)
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.
2026-02-01 20:02:47 -05:00

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 --delete flag that performs cascading deletion of all nodes, events, watchers, notifications, OAuth records, and the namespace itself. Includes a confirmation prompt.

Proposed Implementation

  1. Add a "Delete Namespace" button to namespace settings (with confirmation dialog)
  2. Reuse the cascading deletion logic from the admin script
  3. Restrict to namespace owners only

Files

  • remarkbox/views/authenticated/authenticated.py — add delete namespace view
  • remarkbox/templates/namespace-settings.j2 — add delete button with confirmation
  • remarkbox/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.)