L2 — Decision engine
Status: stub. Day 4 deliverable.
Two-phase decomposition (Blueprint v4.0 §4):
- Synchronous fast path — deterministic rule evaluation only. Workers Bundled plan, p95 ≤ 10 ms, p99 ≤ 30 ms, CPU ≤ 40 ms. LLM calls are forbidden by doctrine.
- Asynchronous deep path — Cloudflare Queue → Workers Unbound consumer (30 s CPU). Vector RAG, LLM calls, Durable Object tenant state, then the Decision Aggregator → Integrity Plane → webhook.
Sync returns one of PASS, REJECT, ESCALATE_TO_QUEUE. The latter
hands work off to the async path.