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-0004
ALR-0004: Spelling variant of the name, different person
What happened: The decision step proposed a close once; the critic approved it; the policy guard let it stand. Outcome: Close as a false positive (CLOSE_FALSE_POSITIVE), 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.
A close: a spelling variant of a listed name with a different date of birth and nationality; the critic approved it, the challenger found no credible argument against it, and the guard let it stand for a person to confirm.
Outcome
- Desk recommendation
- Close as a false positive (CLOSE_FALSE_POSITIVE)
- Label in the case file
- Close as a false positive (CLOSE_FALSE_POSITIVE) (eval/cases/exam.json, case EX-004)
- Compared with the label
- matches the label
- Code's first finding
- Close as a false positive (CLOSE_FALSE_POSITIVE)
- Critic
- 1 round(s), final: approved
- Model calls
- 4 (1 local, 3 cloud); 4 with a signed receipt, all verified
- Run
- sys2b-routed-20261023T195504Z, policy version 6, 36 steps in 73.1 s
Case note from the case file: Similar name, but the date of birth conflicts and the nationality differs; no document matches.
Why the close stood
No check stopped this close. It is still only a recommendation: a person confirms or changes it. What each check said:
- critic (step 29): approved
- challenger: no credible argument: While the name similarity is high (0.965) and 'Endrew' could be a transliteration variant of 'Andrew', the customer's date of birth (1956-12-27) conflicts with the listed party's date of birth (1969-09-22) at day precision, and the customer's nationality (CH) does not match the
- policy guard (raise-only rules in code): CLOSE_FALSE_POSITIVE stands
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-0004 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-0004 1 rows | alert, 1 rows1ef14aa9-2aab-4c99-93a7-dfc4a3481dda | ||
| 3 | evidence | find_customer | ok | in: customer_id=CUST-0004 1 rows | customer, 1 rowsb231701a-8c7e-49bf-88f8-75804e7b3a67 | ||
| 4 | evidence | find_customer_identifier | ok | in: customer_id=CUST-0004 0 rows | customer_identifier, 0 rows602bc1ef-dd0f-4ae1-bba3-bbc590e374a6 | ||
| 5 | evidence | find_list_entry | ok | in: entry_id=OFAC-30966 1 rows | list_entry, 1 rows9b3b5e59-e4e2-4d6d-b00b-83b1621f6c12 | ||
| 6 | evidence | find_list_alias | ok | in: entry_id=OFAC-30966 4 rows | list_alias, 4 rowsf19d09c8-b4ac-49f3-9dee-32ecde6dc2f4 | ||
| 7 | evidence | find_list_dob | ok | in: entry_id=OFAC-30966 1 rows | list_dob, 1 rows1243e2b4-88eb-4157-8797-2e9d59f59686 | ||
| 8 | evidence | find_list_country | ok | in: entry_id=OFAC-30966 3 rows | list_country, 3 rows03575692-ec28-468a-8ecb-77b1c5fc9e13 | ||
| 9 | evidence | find_list_identifier | ok | in: entry_id=OFAC-30966 1 rows | list_identifier, 1 rowsafab93e7-c3a2-49f9-95a4-a57f115a73c6 | ||
| 10 | evidence | find_business_definition | ok | in: status=approved 6 rows | business_definition, 6 rowsa3602491-fe20-4909-a7de-6875cc04aee6 | ||
| 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_overlap6cd0fa5a-9aee-41ed-8707-4d25f21c49bb | ||
| 13 | evidence | data_quality | ok | in: customer.dob_present_for_individuals for CUST-0004 record passes this rule | data_qualitydc3f03d0-647e-4fac-887f-51cf063228da | ||
| 14 | evidence | data_quality | ok | in: customer.nationality_is_iso2 for CUST-0004 record passes this rule | data_qualityd789c010-a35d-425d-8d57-561d26d1d9d3 | ||
| 15 | policy_guard | model_answer | ok | valid answer on attempt 1 | Nemotron 3.5 Lightning 30B-A3B (Runtime GGUF) (local, Lightning) | rcpt_req_mnq5frzisignature valid, key pinned | |
| 16 | policy_guard | screen_inbound | ok | in: 6 text field(s) from the data no instruction-like text | |||
| 17 | screener | screen_text | skipped | no customer note, payment reference or list remark to read | |||
| 18 | matching | compare_party | ok | in: CUST-0004 vs OFAC-30966 weak: name 0.96 (phonetic) vs primary "Andrew Kan"; date of birth: conflict; country: conflict | |||
| 19 | triage | difficulty | ok | clear (weak; date of birth conflict; country conflict) | |||
| 20 | memory | recall | ok | in: customer CUST-0004 and OFAC-30966 no earlier decision about this pair | recalle036cd02-c277-4fa2-ac42-bf6873a80dce | ||
| 21 | triage | path | ok | confirm: the structured evidence settles it (the approved definition of a false positive is met and no identifier matches) | |||
| 22 | triage | route | ok | earlier clearance still valid: fast path, no reasoning | |||
| 23 | decision | cloud_payload | ok | sent 17 fields, 5417 characters, hash dba6a84dc83c651b; free text withheld | |||
| 24 | decision | model_answer | ok | valid answer on attempt 1 | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_juqym0slsignature valid, key pinned | |
| 25 | decision | recommend | ok | CLOSE_FALSE_POSITIVE: The customer's date of birth (1956-12-27) conflicts with the listed party's date of birth (1969-09-22) at day precision. The customer's nationality (CH) does not match the listed party's nationality ( | |||
| 26 | critic | verify_facts | ok | in: 6 cited facts 6 verified, 0 issues | |||
| 27 | critic | cloud_payload | ok | sent 17 fields, 5542 characters, hash 551528f6d18ee4ff; free text withheld | |||
| 28 | critic | model_answer | ok | valid answer on attempt 1 | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_uvhh194dsignature valid, key pinned | |
| 29 | critic | judge | ok | approved | |||
| 30 | challenger | challenge_start | ok | challenging a close: the name similarity 0.965 is at least 0.95 | |||
| 31 | challenger | cloud_payload | ok | sent 16 fields, 5264 characters, hash 6bc2a33b05959fcf; free text withheld | |||
| 32 | challenger | model_answer | ok | valid answer on attempt 1 | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_vknucllnsignature valid, key pinned | |
| 33 | challenger | challenge_result | ok | no credible argument: While the name similarity is high (0.965) and 'Endrew' could be a transliteration variant of 'Andrew', the customer's date of birth (1956-12-27) conflicts with the listed party's date of birth (1969-09-22) at day precision, and the customer's nationality (CH) does not match the | |||
| 34 | policy_guard | apply_policy | ok | CLOSE_FALSE_POSITIVE stands | |||
| 35 | reporter | seal_record | ok | record rec-eval-sys2b-routed-EX-004 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_mnq5frzi | sanctions-desk-guard | signature valid, key pinned | valid_pinned | 0.5 s | 459 / 19 |
| 24 | decision | meterless/deep | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_juqym0sl | sanctions-desk-reasoning | signature valid, key pinned | valid_pinned | 22.4 s | 4879 / 535 |
| 28 | critic | meterless/judge | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_uvhh194d | sanctions-desk-reasoning | signature valid, key pinned | valid_pinned | 23.4 s | 3683 / 151 |
| 32 | challenger | meterless/deep | Nemotron 3 Ultra 550B A55B (cloud, Ultra) | rcpt_req_vknuclln | sanctions-desk-reasoning | signature valid, key pinned | valid_pinned | 24.5 s | 3263 / 437 |
The whole run passes the same check: 305 receipts with valid signatures, 305 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-0004) | 1ef14aa9-2aab-4c99-93a7-dfc4a3481dda |
| evidence | customer | 1 | not kept in this run's export (step: find_customer, customer_id=CUST-0004) | b231701a-8c7e-49bf-88f8-75804e7b3a67 |
| evidence | customer_identifier | 0 | not kept in this run's export (step: find_customer_identifier, customer_id=CUST-0004) | 602bc1ef-dd0f-4ae1-bba3-bbc590e374a6 |
| evidence | list_entry | 1 | not kept in this run's export (step: find_list_entry, entry_id=OFAC-30966) | 9b3b5e59-e4e2-4d6d-b00b-83b1621f6c12 |
| evidence | list_alias | 4 | not kept in this run's export (step: find_list_alias, entry_id=OFAC-30966) | f19d09c8-b4ac-49f3-9dee-32ecde6dc2f4 |
| evidence | list_dob | 1 | not kept in this run's export (step: find_list_dob, entry_id=OFAC-30966) | 1243e2b4-88eb-4157-8797-2e9d59f59686 |
| evidence | list_country | 3 | not kept in this run's export (step: find_list_country, entry_id=OFAC-30966) | 03575692-ec28-468a-8ecb-77b1c5fc9e13 |
| evidence | list_identifier | 1 | not kept in this run's export (step: find_list_identifier, entry_id=OFAC-30966) | afab93e7-c3a2-49f9-95a4-a57f115a73c6 |
| evidence | business_definition | 6 | not kept in this run's export (step: find_business_definition, status=approved) | a3602491-fe20-4909-a7de-6875cc04aee6 |
| evidence | identifier_overlap | no identifier matches | not kept in this run's export (step: identifier_overlap) | 6cd0fa5a-9aee-41ed-8707-4d25f21c49bb |
| evidence | data_quality | record passes this rule | not kept in this run's export (step: data_quality, customer.dob_present_for_individuals for CUST-0004) | dc3f03d0-647e-4fac-887f-51cf063228da |
| evidence | data_quality | record passes this rule | not kept in this run's export (step: data_quality, customer.nationality_is_iso2 for CUST-0004) | d789c010-a35d-425d-8d57-561d26d1d9d3 |
| memory | recall | no earlier decision about this pair | not kept in this run's export (step: recall, customer CUST-0004 and OFAC-30966) | e036cd02-c277-4fa2-ac42-bf6873a80dce |
Check it yourself
Clone the repository and run npm run evidence:verify -- eval/runs/sys2b-routed-20261023T195504Z. 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.