Zum Hauptinhalt springen

Was der Betreiber sehen kann — und was ihn daran hindert, mehr zu tun.

Transparency cuts both ways — what the operator can see and do, and the guarantees that limit it.

Vier harte Garantien

Code-enforced

Env-pinned admin gate

One environment variable, ADMIN_USER_ID — no is_admin column, no role table, nothing to escalate.

404, not 403

Non-admins get a generic 404 from any /admin/* path — the routes don't disclose their own existence.

Append-only audit

Every admin write is logged to audit_log — no UPDATE or DELETE handler exists, so entries can't be erased.

No write without consent

Cron jobs that mutate user data run behind a Bearer token known only to Vercel Cron — never exposed in any UI.

Was die Admin-Sidebar zeigt

admin-only — non-admins 404

Observe

  • DB Observation Read row counts and live queries — no writes.
  • Analytics Aggregate dashboards over the retention window. No raw IPs.
  • Audit Log Read every admin write that has ever happened. Append-only.
  • Feedback Read submissions and update their status (new / read / archived).

Manage

  • Users View and ban accounts. Cannot read passwords (Argon2 hashed).
  • Feature Flags Toggle features for rollout / kill-switch.

Content

  • Posts Create, edit, and publish posts.
  • Tags Manage taxonomy.

System

  • Jobs Inspect cron history; manually re-run a job.
  • Notifications Configure email / Telegram / Discord channels.
  • AI Models, usage, nRAG pipeline, and chatbot tools.
  • Cache Inspect Redis state; flush stale keys.

Geht dieses Pattern noch besser? Sag uns, wie.

Feedback geben