/* ===================================================================== audit.js — Aktivitätsprotokoll WICHTIG: Codes dürfen hier NIEMALS im Klartext (oder auch nur teilweise) auftauchen. `detail` ist für zusätzlichen, unkritischen Kontext gedacht (z.B. "role: rechte-hand"), niemals für Geheimnisse. ===================================================================== */ import { nowIso } from "./crypto.js"; export async function logAction(env, actor, action, target, detail) { await env.DB.prepare( `INSERT INTO audit_log (actor, action, target, detail, created_at) VALUES (?, ?, ?, ?, ?)` ) .bind(actor, action, target || null, detail ? JSON.stringify(detail) : null, nowIso()) .run(); }