Simulate gateway evaluation against the alignment card
Pure-sync simulation: calls @mnemom/policy-engine twice (once with context: "gateway", once with context: "observer") using dryRun: true against the agent's current composed alignment card. Returns {allowed, conditions, suggestions, gateway_decision, observer_assessment}. Never crosses worker boundaries — no real gateway / observer state change.
The tools evaluated are the CALLER-supplied identifiers only — the union of candidate_tool_call.tool_name and every candidate_input.messages[].toolUses[].name, deduped. They are never read off the card (MNE-5820).
If that union is EMPTY, the request still returns 200 (unlike explain, which 400s), but it FAILS CLOSED: allowed is "false" with a no_tool_named: entry in conditions. The engine emits findings per tool, so a zero-length tool list would otherwise produce verdict pass with no violations — a green that checked nothing.
Note that gateway_decision.verdict and observer_assessment.verdict are the RAW engine output. On the zero-tool path they read "pass" with no violations, because the engine evaluated nothing. allowed — not the sub-verdicts — is this endpoint's decision field; read it.
Request
- Base URL: https://api.mnemom.ai/v1
- URL: https://api.mnemom.ai/v1/alignment/agent/{agent_id}/simulate
- Auth: one of:
- HTTP bearer
- API key in header X-Mnemom-Api-Key
- API key in cookie mnemom_session
Path parameters
Agent identifier (e.g. smolt-abc123)
Request body
Response
Simulation result.
Changes
No recorded changes to this operation across all 1 revision of this API.