Nothing leaves psyc to an authority destination without a human signing off. Routing builds the payload, freezes it here, and waits. You approve — Courier dispatches and the Ledger records. You reject — nothing leaves, and the rejection is recorded too.
How to use. Each row is a payload waiting on you. Click the case to inspect it before deciding. Approve sends it now; Reject blocks it forever (the case can still be re-submitted later from CLI if appropriate).
What you're seeing. Pending submissions for destinations marked requires_approval=True — CERT-Bund by default, or all destinations when PSYC_REQUIRE_APPROVAL=1.
Why it matters. The dossier mandates a human gate before evidence reaches real authority systems. This is that gate. The frozen payload guarantees the reviewer approves exactly what gets sent — not a re-derived version that might have drifted.
Queue is clear. Either nothing is pending, or no destination on the current cases requires approval. Set PSYC_REQUIRE_APPROVAL=1 to force every routable submission through this gate.
| # | Created | Case | Destination | Payload | TLP | Hash | Status | Action |
|---|---|---|---|---|---|---|---|---|
| #{{ p.id }} | {{ p.created_at.strftime('%Y-%m-%d %H:%M:%S') }} | {{ p.case_id }} | {{ p.destination_name }} | {{ p.payload_kind }} | {{ p.tlp.value }} | {{ p.payload_hash[:12] }}… | {{ p.status.value }} | {% if p.status.value == 'pending' %} {% else %} {{ p.reviewer or '—' }}{% if p.reason %} · {{ p.reason }}{% endif %} {% endif %} |