Sanctions Desk gathers and checks the evidence for every sanctions-screening alert and recommends an outcome; a person with the right entitlement approves it. One alert, start to finish · The problem it works on
Recorded runs / ALR-L0001
ALR-L0001: A similar name with a conflicting birth date and another nationality; the note says the account is run for her uncle, Valeriy Igorevich Limarenko
(synthetic), the listed person
What happened: The local screener flagged 2 risk signals in customer.notes (relationship to listed party 0.9, alias or former name 0.5), which blocks a close; the decision step recommended ESCALATE_L2; the critic approved it; the policy guard let it stand. Outcome: Escalate to level 2 (ESCALATE_L2), as the label expects.
Outcomes: CLOSE_FALSE_POSITIVE = close as a false positive · ESCALATE_L2 = escalate to level 2 · NEED_MORE_INFO = ask for more information · RECOMMEND_BLOCK = recommend a block (two people must confirm). Raise-only: the policy guard can make an outcome more cautious, never less.
The free text the screener flagged (synthetic data). Only the characters at each signal's recorded position are shown; the rest of the text stays withheld. A signal marked not grounded is still shown to the reviewer and still blocks a close (policy version 8).
Spans as recorded by the local screener. Their offsets are off, so the desk marked these signals not grounded; ungrounded signals still block a close by design.
- relationship to listed party, confidence 0.9, customer.notes characters 85–115, marked not grounded:
a week: the account is run fo
- alias or former name, confidence 0.5, customer.notes characters 0–14, marked not grounded:
Personal curre
A held-out case (labels written before the run): the structured fields alone would close it, but the local screener found a relationship to the listed person in the customer note, and the case was escalated.
Outcome
- Desk recommendation
- Escalate to level 2 (ESCALATE_L2)
- Label in the case file
- Escalate to level 2 (ESCALATE_L2) (eval/cases/heldout4.json, case HO4-001)
- Compared with the label
- matches the label
- Code's first finding
- Escalate to level 2 (ESCALATE_L2)
- Critic
- 1 round(s), final: approved
- Model calls
- 4 (2 local, 2 cloud); 4 with a signed receipt, all verified
- Run
- heldout4-sys4-routed-20261024T024523Z, policy version 8, 33 steps in 31.7 s
Case note from the case file: The structured fields alone meet the false-positive definition, but the note says the account is run for her uncle, Valeriy Igorevich Limarenko
(synthetic), named in full as the listed person, with the relation word a few words away from the name.
Checks along the way
No close was proposed in this run. What each check said:
- screener (local model, reads the free text on the laptop): 2 risk signal(s), 2 at or above 0.5 (blocking a close), 2 of them not grounded: relationship_to_listed_party 0.9 at customer.notes:85-115 (not grounded); alias_or_former_name 0.5 at customer.notes:0-14 (not grounded); documentary: customer.notes claim (lacks a check reference, a document number, a date); injection not found
- critic (step 30): approved
- policy guard (raise-only rules in code): ESCALATE_L2 stands. Checks that raised or flagged: screener_grounding: flag; screener: flag
Steps in order
Each line is one event from the run's trace (trace.jsonl.gz). The model is the one that served the call, as the signed receipt records it.
| # | Agent | Action | Status | What happened | Model | Receipt | Zetaris read |
|---|---|---|---|---|---|---|---|
| 0 | triage | plan | ok | in: customer alert ALR-L0001 path: customer review; the critic may send the recommendation back up to 3 times | |||
| 1 | evidence | read_semantic_layer | ok | screening_usl v4efa3ddddfbe: 14 tables | |||
| 2 | evidence | find_alert | ok | in: alert_id=ALR-L0001 1 rows | alert, 1 rows0c3b68c7-cb1d-420a-bd6a-6c54ae853f75 | ||
| 3 | evidence | find_customer | ok | in: customer_id=CUST-L0001 1 rows | customer, 1 rowsf6e0aebf-9d4a-4d4c-a81c-f269a9a0c863 | ||
| 4 | evidence | find_customer_identifier | ok | in: customer_id=CUST-L0001 1 rows | customer_identifier, 1 rows0a225345-baeb-438e-815f-005d293d58ed | ||
| 5 | evidence | find_list_entry | ok | in: entry_id=OFAC-41069 1 rows | list_entry, 1 rows10a5e77d-9c7d-4f6a-a232-76d5b061fda6 | ||
| 6 | evidence | find_list_alias | ok | in: entry_id=OFAC-41069 2 rows | list_alias, 2 rowsacc75fdc-f8e3-478f-8aab-41a38f2316c9 | ||
| 7 | evidence | find_list_dob | ok | in: entry_id=OFAC-41069 1 rows | list_dob, 1 rowsa616be4c-49c5-4102-80d4-8a6c243f5411 | ||
| 8 | evidence | find_list_country | ok | in: entry_id=OFAC-41069 4 rows | list_country, 4 rows72546fa5-c6e4-4ed1-a130-840d29eb457e | ||
| 9 | evidence | find_list_identifier | ok | in: entry_id=OFAC-41069 0 rows | list_identifier, 0 rowsb84db872-8063-45b7-9aeb-7224dcc256d2 | ||
| 10 | evidence | find_business_definition | ok | in: status=approved 6 rows | business_definition, 6 rows37ea7ef8-0c3f-4b7e-87ea-a79d95a2a9f2 | ||
| 11 | evidence | definitions | ok | counterparty_match@1, effective_ownership_threshold@1, false_positive@2, strong_identifier@1, true_match@1 | |||
| 12 | evidence | identifier_overlap | ok | no identifier matches | identifier_overlap662e5f97-77ee-447d-976c-b3391602203e | ||
| 13 | evidence | data_quality | ok | in: customer.dob_present_for_individuals for CUST-L0001 record passes this rule | data_quality63e04ba7-043b-4682-81f0-95ff0c04d496 | ||
| 14 | evidence | data_quality | ok | in: customer.nationality_is_iso2 for CUST-L0001 record passes this rule | data_quality57c67393-99e1-4b7d-a4b7-652e35c40a8f | ||
| 15 | policy_guard | model_answer | ok | valid answer on attempt 1 | Nemotron 3.5 Lightning 30B-A3B (Runtime GGUF) (local, Lightning) | rcpt_req_7o7rqxyosignature valid, key pinned | |
| 16 | policy_guard | screen_inbound | ok | in: 5 text field(s) from the data no instruction-like text | |||
| 17 | screener | screen_start | ok | in: 1 free-text field(s) read on the local model: customer.notes (203 characters) | |||
| 18 | screener | model_answer | ok | valid answer on attempt 1 | Nemotron 3.5 Lightning 30B-A3B (Runtime GGUF) (local, Lightning) | rcpt_req_xq59x9r7signature valid, key pinned | |
| 19 | screener | screen_text | blocked | 2 risk signal(s), 2 at or above 0.5 (blocking a close), 2 of them not grounded: relationship_to_listed_party 0.9 at customer.notes:85-115 (not grounded); alias_or_former_name 0.5 at customer.notes:0-14 (not grounded); documentary: customer.notes claim (lacks a check reference, a document number, a date); injection not found | |||
| 20 | matching | compare_party | ok | in: CUST-L0001 vs OFAC-41069 weak: name 0.91 (phonetic) vs primary "Valeriy Igorevich Limarenko"; date of birth: conflict; country: conflict; false positive not met: a risk signal in the free text | |||
| 21 | triage | difficulty | ok | clear (weak; date of birth conflict; country conflict) | |||
| 22 | memory | recall | ok | in: customer CUST-L0001 and OFAC-41069 no earlier decision about this pair | recall7c4f15b1-79bf-4c83-b638-adabb017a4cf | ||
| 23 | triage | path | ok | reason: the structured evidence does not settle it (the match cannot be ruled out with the data available) | |||
| 24 | decision | cloud_payload | ok | sent 17 fields, 7375 characters, hash f32c64d6e164cb27; free text withheld | |||
| 25 | decision | model_answer | ok | valid answer on attempt 1 | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_ru1xrqm4signature valid, key pinned | |
| 26 | decision | recommend | ok | ESCALATE_L2: The customer's date of birth (1991-04-07) conflicts with the listed party's date of birth (1960-10-19) at day precision, and nationality (DE) does not match listed nationality/citizenship (RU). No doc | |||
| 27 | critic | verify_facts | ok | in: 6 cited facts 6 verified, 0 issues | |||
| 28 | critic | cloud_payload | ok | sent 17 fields, 6325 characters, hash fabfe5ed27cf6124; free text withheld | |||
| 29 | critic | model_answer | ok | valid answer on attempt 1 | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_jl1qbqkwsignature valid, key pinned | |
| 30 | critic | judge | ok | approved | |||
| 31 | policy_guard | apply_policy | ok | ESCALATE_L2 stands | |||
| 32 | reporter | seal_record | ok | record rec-eval-heldout4-sys4-routed-HO4-001 sealed |
Model calls and receipts
Each signature was checked when this page was built, with the same code as npm run evidence:verify (Ed25519 over the receipt body in receipts.jsonl.gz); the build stops if one does not verify, is missing, or names a different model from the trace. The Nightshift runtime's receipt key is pinned in config/default.json, so signature valid, key pinned shows the receipt was not changed and that this runtime signed it; a receipt signed by any other key stops the build.
| # | Step | Mode asked for | Model that served it | Receipt | App | Checked now | At run time | Time | Tokens in / out |
|---|---|---|---|---|---|---|---|---|---|
| 15 | policy_guard | meterless/fast | Nemotron 3.5 Lightning 30B-A3B (Runtime GGUF) (local, Lightning) | rcpt_req_7o7rqxyo | sanctions-desk-guard | signature valid, key pinned | valid_pinned | 0.6 s | 511 / 19 |
| 18 | screener | meterless/fast | Nemotron 3.5 Lightning 30B-A3B (Runtime GGUF) (local, Lightning) | rcpt_req_xq59x9r7 | sanctions-desk-guard | signature valid, key pinned | valid_pinned | 2.5 s | 1561 / 220 |
| 25 | decision | meterless/deep | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_ru1xrqm4 | sanctions-desk-reasoning | signature valid, key pinned | valid_pinned | 22.5 s | 6257 / 801 |
| 29 | critic | meterless/judge | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_jl1qbqkw | sanctions-desk-reasoning | signature valid, key pinned | valid_pinned | 2.0 s | 3414 / 194 |
The whole run passes the same check: 56 receipts with valid signatures, 56 model calls in the trace that name a receipt, none missing and none naming a different model from its receipt.
Signing key fingerprint (first 16 hex of SHA-256): 1835d1eab9211f97.
Zetaris queries
This run's export keeps the table, the row count and the Zetaris query id of each read, not the statement text; the statements are not reconstructed here.
| Agent | Table | Rows | Statement | Query id |
|---|---|---|---|---|
| evidence | alert | 1 | not kept in this run's export (step: find_alert, alert_id=ALR-L0001) | 0c3b68c7-cb1d-420a-bd6a-6c54ae853f75 |
| evidence | customer | 1 | not kept in this run's export (step: find_customer, customer_id=CUST-L0001) | f6e0aebf-9d4a-4d4c-a81c-f269a9a0c863 |
| evidence | customer_identifier | 1 | not kept in this run's export (step: find_customer_identifier, customer_id=CUST-L0001) | 0a225345-baeb-438e-815f-005d293d58ed |
| evidence | list_entry | 1 | not kept in this run's export (step: find_list_entry, entry_id=OFAC-41069) | 10a5e77d-9c7d-4f6a-a232-76d5b061fda6 |
| evidence | list_alias | 2 | not kept in this run's export (step: find_list_alias, entry_id=OFAC-41069) | acc75fdc-f8e3-478f-8aab-41a38f2316c9 |
| evidence | list_dob | 1 | not kept in this run's export (step: find_list_dob, entry_id=OFAC-41069) | a616be4c-49c5-4102-80d4-8a6c243f5411 |
| evidence | list_country | 4 | not kept in this run's export (step: find_list_country, entry_id=OFAC-41069) | 72546fa5-c6e4-4ed1-a130-840d29eb457e |
| evidence | list_identifier | 0 | not kept in this run's export (step: find_list_identifier, entry_id=OFAC-41069) | b84db872-8063-45b7-9aeb-7224dcc256d2 |
| evidence | business_definition | 6 | not kept in this run's export (step: find_business_definition, status=approved) | 37ea7ef8-0c3f-4b7e-87ea-a79d95a2a9f2 |
| evidence | identifier_overlap | no identifier matches | not kept in this run's export (step: identifier_overlap) | 662e5f97-77ee-447d-976c-b3391602203e |
| evidence | data_quality | record passes this rule | not kept in this run's export (step: data_quality, customer.dob_present_for_individuals for CUST-L0001) | 63e04ba7-043b-4682-81f0-95ff0c04d496 |
| evidence | data_quality | record passes this rule | not kept in this run's export (step: data_quality, customer.nationality_is_iso2 for CUST-L0001) | 57c67393-99e1-4b7d-a4b7-652e35c40a8f |
| memory | recall | no earlier decision about this pair | not kept in this run's export (step: recall, customer CUST-L0001 and OFAC-41069) | 7c4f15b1-79bf-4c83-b638-adabb017a4cf |
Check it yourself
Clone the repository and run npm run evidence:verify -- eval/runs/heldout4-sys4-routed-20261024T024523Z. What the export left out: tokens, local paths, hostnames and addresses other than the local machine, usernames, e-mail addresses and secret environment values were removed from results.json and trace.jsonl.gz; receipts.jsonl.gz is untouched.