diff --git a/CLAUDE.md b/CLAUDE.md index 51d53e08..869093d5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -86,6 +86,8 @@ devplace game steals prune # delete Code Farm raid records older than the raid- devplace game era status # show the current Code Farm Era devplace game era start [--days N] # start a Code Farm Era (default 28 days) devplace game era end # end the running Code Farm Era (ranks, awards Stars, records results) +devplace accounts pending # list deleted accounts awaiting their purge +devplace accounts prune # permanently purge accounts past the deletion grace window (--dry-run to preview) devplace backups list # list recorded backups devplace backups run # enqueue a backup (processed by the running server) devplace backups prune # remove backup records whose archive file is missing @@ -138,6 +140,7 @@ Nested `CLAUDE.md` files (loaded automatically by Claude Code only when a file i | `devplacepy/services/devii/CLAUDE.md` | Devii assistant: sessions/channels, scheduler, virtual tools, self-configured behavior, client browser tools | | `devplacepy/services/openai_gateway/CLAUDE.md` | AI gateway: `/openai/v1/*`, usage ledger, provider/model routing | | `devplacepy/services/jobs/CLAUDE.md` | Async job services: zip, fork, SEO diagnostics, SEO metadata, DeepSearch, AI Usage Analyzer | +| `devplacepy/services/moderation/CLAUDE.md` | Trust and safety: the reportable-target registry, the content filter and its five choke points, the report queue and its atomic resolution, enforcement, consent, maturity, account deletion | | `devplacepy/services/audit/CLAUDE.md` | Audit log: recorders, categories, retention | | `devplacepy/services/backup/CLAUDE.md` | Backup service: targets, worker, schedules, primary-admin-only download | | `devplacepy/services/telegram/CLAUDE.md` | Telegram bot bridge | @@ -195,6 +198,7 @@ Routers in `devplacepy/routers/` are organised as a **directory tree that mirror | `/api` | devrant/ package - see `routers/devrant/CLAUDE.md` | | `/dbapi` | dbapi/ package, **primary-administrator-only, strictly READ-ONLY** - see `services/dbapi/CLAUDE.md` | | `/game` | game/ package - see `services/game/CLAUDE.md` | +| `/reports`, `/admin/moderation`, `/workspaces` | reports.py, admin/moderation.py, workspaces.py - see `services/moderation/CLAUDE.md` | | `/quizzes` | quizzes/ package - see `services/quiz/CLAUDE.md` | | (none) | push.py (web push/PWA), docs.py (see `routers/docs/CLAUDE.md`) | | `/pubsub` | pubsub.py - see `services/pubsub/CLAUDE.md` | @@ -272,11 +276,17 @@ Devii is also reachable over **Telegram** (one supervised long-poller subprocess - **All dates shown to users are DD/MM/YYYY** (European), rendered in the viewer's own timezone client-side. Timestamps are stored/emitted as UTC ISO. Use the `local_dt(iso, mode)`/`dt_ago(iso)` Jinja globals for any user-facing instant - they emit `