Parent: #115 (Ph 1.x knowledge-base / data pipeline)
Context
Ross flagged that Chainalysis / OFAC recently added new crypto-related sanctions and that we should refresh our bundled lists. Trigger action:
- 2026-08-07 OFAC — Shelbit / SHPS Shelbit / Siavash Kayvanpour network + Aban Tether (OFAC recent actions, Treasury PR)
- Public identifiers include Digital Currency Address entries (BTC / ETH / TRX / SOL). Aban Tether has entity-level designation with no published wallet IDs — screeners still need the entity name on file for non-address matching / docs, but ETH hit coverage comes from the Shelbit-network addresses.
- Source UI: OFAC Sanctions List Search (CSV download; columns must be mapped into our normalized schema / FTM ingest).
Current Skillware gap (as of bundled data)
| Dataset |
Notes |
entities.ftm.json |
OpenSanctions-style FTM dump; datasets: il_mod_crypto only; last_seen max 2025-07-22 — pre-dates 2026 OFAC waves |
ETH publicKey in FTM |
Very few ETH keys (~14); Shelbit ETH (0xe05f…, 0x6b69…) not present |
normalized_* (FBI / NBCTF / Uniswap-TRM) |
Stamped 2025-07-22 / static TRM export |
malicious_scs_2025.json |
Tiny mixer/scam contract set |
So this is not a one-off Shelbit patch — the whole Ph 1 refresh is overdue for Aug 2026.
Goal
Bring finance/wallet_screening bundled sanctions + high-risk wallet/contract lists current as of Aug 2026, with a repeatable normalize → commit → version-bump path (extend maintenance/, do not one-off edit JSON by hand if avoidable).
Scope
A. OFAC digital-currency refresh (priority)
- Export from Sanctions List Search / OFAC SDN (CSV or advanced XML) filtering Digital Currency Address identifiers.
- Add
normalize_ofac_sdn_csv (or refresh OpenSanctions FTM crypto slice) in skills/finance/wallet_screening/maintenance/.
- Map into our record shape used by
_build_sanctions_index / additional datasets:
address, network (ETH/BTC/TRX/SOL/…), label, source (OFAC SDN), source_url, reason / program tags (SDGT, IRAN-EO13902, etc.), jurisdiction, extra (UID, entity name, listing date).
- For ETH: ensure lowercase
0x keys land in the sanctions index (non-ETH can be stored for future multi-chain; document current ETH-only screening limit).
- Include Aug 7 2026 Shelbit-network ETH addresses at minimum; ideally full delta since last bundle (
last_seen 2025-07-22 → now).
- Note Aban Tether: no wallet IDs in designation — document limitation (address screen alone will not catch Aban Tether counterparties unless addresses are later published or inferred from other lists).
B. Aug 2026 peer-list sweep (wallets + contracts)
Sweep / re-ingest public lists we already claim or that are adjacent to Ph 1.x in #115:
Must refresh (already in skill / RFC)
Strongly recommended 2026 deltas (public, high signal for ETH wallets/contracts)
Out of scope for this sub-issue (already tracked elsewhere in #115)
- Live Chainalysis / TRM API (Ph 2.3)
- Schema v2 /
risk_level (Ph 3)
- Etherscan
tokentx / txlistinternal (Ph 2.2b remainder)
Deliverables
- New/updated normalized JSON under
skills/finance/wallet_screening/data/ + maintenance scripts/docs for re-run.
- Short changelog note: source dates, entry counts, ETH unique delta, known gaps (Aban Tether, non-ETH chains).
- Tests: at least one fixture asserting Shelbit (or other new) ETH address →
sanctioned_entity_match.
- Docs: fix stale “880+ lists” / Architecture counts in
docs/skills/wallet_screening.md if still wrong after refresh.
- Version bump for the skill package (patch) when data ships.
Acceptance
References
Parent: #115 (Ph 1.x knowledge-base / data pipeline)
Context
Ross flagged that Chainalysis / OFAC recently added new crypto-related sanctions and that we should refresh our bundled lists. Trigger action:
Current Skillware gap (as of bundled data)
entities.ftm.jsondatasets: il_mod_cryptoonly;last_seenmax 2025-07-22 — pre-dates 2026 OFAC wavespublicKeyin FTM0xe05f…,0x6b69…) not presentnormalized_*(FBI / NBCTF / Uniswap-TRM)malicious_scs_2025.jsonSo this is not a one-off Shelbit patch — the whole Ph 1 refresh is overdue for Aug 2026.
Goal
Bring
finance/wallet_screeningbundled sanctions + high-risk wallet/contract lists current as of Aug 2026, with a repeatable normalize → commit → version-bump path (extendmaintenance/, do not one-off edit JSON by hand if avoidable).Scope
A. OFAC digital-currency refresh (priority)
normalize_ofac_sdn_csv(or refresh OpenSanctions FTM crypto slice) inskills/finance/wallet_screening/maintenance/._build_sanctions_index/ additional datasets:address,network(ETH/BTC/TRX/SOL/…),label,source(OFAC SDN),source_url,reason/ program tags (SDGT,IRAN-EO13902, etc.),jurisdiction,extra(UID, entity name, listing date).0xkeys land in the sanctions index (non-ETH can be stored for future multi-chain; document current ETH-only screening limit).last_seen2025-07-22 → now).B. Aug 2026 peer-list sweep (wallets + contracts)
Sweep / re-ingest public lists we already claim or that are adjacent to Ph 1.x in #115:
Must refresh (already in skill / RFC)
il_mod_crypto(or broadersanctionscrypto wallets) — replace staleentities.ftm.jsonnormalize_israel_nbctf_csvnormalize_fbi_lazarus_csvnormalize_uniswap_trm.pymalicious_scs_2025.json— dedupe mixers + expand from current public mixer / scam-contract research sources (also closes the duplicate-addr cleanup quick win)Strongly recommended 2026 deltas (public, high signal for ETH wallets/contracts)
Out of scope for this sub-issue (already tracked elsewhere in #115)
risk_level(Ph 3)tokentx/txlistinternal(Ph 2.2b remainder)Deliverables
skills/finance/wallet_screening/data/+ maintenance scripts/docs for re-run.sanctioned_entity_match.docs/skills/wallet_screening.mdif still wrong after refresh.Acceptance
screen_wallet.References