# Exploitation evidence ## What this pack lets workers do A collection of nouns and verbs for spotting exploitation and scams in synthetic cases, never accusing anyone. Workers read a synthetic bundle of ads, chats, contracts, receipts, payslips and payment records against each other. They record risk indicators tied to evidence ids, recompute the money, check documents against dated rule cards, weigh a harm reading against an honest look-alike, and recommend one of four routes: clear, verify, hold or refer. A different worker reviews the summary, and a person decides every hold and referral. ## Never accusing anyone Every output is a risk indicator tied to evidence ids, never an accusation. No output calls a party a criminal, trafficker, scammer or fraudster, or says a party is guilty or acted illegally; at most, a document or term conflicts with a named rule section. The wording rules hold the full list and a deterministic check the verbs rerun. A route says what a person should look at next, never what anyone did. Workers contact no one. ## Nouns | Noun | What it holds | | --- | --- | | Method | Rules first, both readings of every case, evidence ids on every claim, people on holds and referrals | | Wording rules | The banned labels and phrases for parties, the "conflicts with" form and the check | | Material boundaries | Synthetic marks, excluded material refused before any work, nobody contacted | | Harm areas (10) | 27 scheme families with honest look-alikes, settings, 47 pattern rules and when to refer | | Rule cards (27) and their index | Dated, sourced rule summaries in nine jurisdictions; 6 verified and 21 flagged. The 8 with no effective date are marked incomplete and cannot support a dated citation; the frozen set cites 3 of them | | Pattern rule language | How a pattern rule matches evidence and what a hit means | | Money-flow checks | Nine recomputations, from fees against wages to loan rates, deposits and payee changes | | Routing rules | The fixed order that picks clear, verify, hold or refer, and the review rules | | Case generation | Templates, plans, legitimate twins, thin cases, dials and the review checklist | | Tool cards (6) | Tested code in this pack's [code](code/README.md) folder, pinned by the code folder's digest: pattern rules, money-flow checks, router, wording check, case generator, scorer | | Evaluation (4) | The plan and arms, the committed pass marks, the frozen 72-case set and the record of two stopped attempts. No score exists | | Development cases | Twenty synthetic bundles with known routes, in the code folder, for trying the verbs, never for measuring them | | Templates (12) and a toy template | One per verb output, plus the case template format with two public toy templates | ## Verbs | Verb | Who | What happens | | --- | --- | --- | | index-evidence | agent | Checks the bundle is synthetic and gives every passage an evidence id | | triage | agent | Picks the harm area, families, setting, applicable cards and missing documents | | frame-hypotheses | agent | A harm reading and a legitimate one, each with the check that would disprove it | | extract-indicators | agent | Pattern rules first, then reading; every indicator cites evidence ids | | check-money-flows | agent | Exact recomputation against the limits applicable rule cards set | | map-to-cards | agent | Which documents or terms may conflict with which named sections, with dates | | write-evidence-summary | agent | Claims, conflicts, missing documents and the recommended route | | review-summary | different agent | Reruns the checks, then approves or dissents under the review rules | | decide-route | person | Decides the route; holds and referrals are never an agent's decision | | recheck-card | agent | Rereads a card's primary source and proposes a new version if it changed | | generate-cases | agent | Makes staged synthetic cases from reviewed templates with the pinned generator | Each verb can also end with `no_change`, `unknown` or `blocked`, and can propose follow-up verbs, such as a card recheck. The evaluation-design pack's verbs can run and score the frozen set. No score exists. ## Planned and real - Real: the harm areas, pattern rules and rule cards, and the tested code in the code folder, which moved here from an earlier project without behavior changes. Its tests run in this library's CI. - Real but not here: the frozen 72-case synthetic set, recorded by digest; it has not been scored. - Planned, never built: reading images and audio, screening files for hidden instructions, model steps in indexing, triage and framing, full statute texts for one arm, an open-weights arm, and model grading of explanations with a person checking 20 grades. - Everything here is a proposal: nothing is imported, admitted or activated, and no worker has run these verbs. ## Evaluation A scored evaluation on the frozen set was attempted twice and stopped. The first attempt was interrupted. In the second, all 94 model answers that came back were cut off at the run's 800-output-token cap. No score exists. The evaluation nouns record the plan, the pass marks committed beforehand and these facts. This pack does not restart or repair that evaluation and claims nothing about how well any method works. ## How to use it Write a synthetic bundle noun that pins its files by digest. Write the nouns in [nouns.json](nouns.json) create-only with a key scoped to your team's surface, then fill a template from [verbs.json](verbs.json) with `scripts/build_packs.py --instantiate