POST /queue
Receives a signed SafeTx proposal from the client. The server hard-validates it (signature recovery against the recorded owner set, threshold arithmetic, nonce/hash consistency), mirrors it to the Safe Transaction Service — so it appears in app.safe.global at 1 of 2 — then runsanalyzeRisk() inline.
- Screening on:
- APPROVE (< 40): the agent confirms via the service and relays
execTransaction - REVIEW (40–70): queued for Telegram review, returns
idandverdict - BLOCK (> 70): rejected with alert — the pre-signed same-nonce cancel consumes the nonce
- APPROVE (< 40): the agent confirms via the service and relays
- Screening off (
screeningDisabled: true): queue-only — the server never analyzes, and the agent never signs. If the user signatures already meet the threshold, the client calls/execute(relay-only). Below threshold, the row waits for the backup key’s co-signature.
Proposals with
screeningDisabled below the threshold are rejected outright for wallets whose own keys can never meet it (guarded wallets) — screening cannot be disabled there. Legacy v1 accounts without a backup key are exempt.