feat(sources): Wayback pass, automatic trimming, detention rule, ten cases re-sourced

Second and third rounds on the dossier pipeline, reviewed locally before commit.

Retrieval
- wayback_pass.py: retries every BLOCKED/DEAD/THIN/ERROR linked source through
  the Wayback Machine; blocks carry the snapshot date, archive URL and the live
  verdict. 143 slots retried: 93 fetched, 37 no snapshot, 12 script shells, 1 PDF.
- fetch_sources.py: fetch_wayback() helper.
- add_extra_sources.py: files staged extra_* finds (web search, not on the DB
  record) into the store with a provenance note.
- Cases re-sourced by web search: 248 (Oslo: Document.no, Avisa Oslo, NRK; the
  linked Le Parisien piece is case 242 and is marked OFF-CASE), 258 Kharkiv,
  260 Singapore, 358 Bangkok, 365 Las Vegas, 388 Verneuil-sur-Seine, 390 Zoersel,
  430 Homestead. 341 of 364 cases now hold a fetched article; 11, 66 and 399
  have no public text source (podcast, police video, direct victim report).

Trimming
- auto_trim.py: case-anchored furniture cut for UNTRIMMED blocks. Finds the body
  run that mentions the case, merges across subheadings and short furniture
  gaps, drops teasers, share bars, date/URL/caption lines and subscription
  pitches; refuses pages with no record term or almost no body. 302 blocks
  trimmed; 16 left on auto-trim-review.md (7 OFF-CASE suspects). Every cut is
  labelled AUTO-TRIMMED, UNREVIEWED in the dossier; the full extract stays in
  staging/. Decisions with anchors in trim-decisions-auto.json.
- build_cases.py / verify_all.py: banners for auto-trimmed and archived blocks,
  staged-file check extended to Wayback blocks, flag legend under the record.

Detention rule
- README "Definitions": the DB field `kidnappings` is the DETENTION violence
  type (victim, guard, staff or relative held to force submission or execute
  the theft), distinct from the Kidnapping scenario (taken away and held).
- detention-flag-review.md / detention-flag-corrections.json: 40 records
  reviewed with evidence; 30 set-to-1 proposals accepted by the owner on
  2026-09-06 (listed in corrections-approved.md), 10 still open.
- apply_detention_wording.py: "Violence Used" in the 70 reviewed summaries now
  names detention explicitly (62 of 70 labelled), supported by the summary's
  own text; idempotent; supersedes the batch scripts' wording.

Worklist and docs
- sofia-worklist.md: 248 decisions, detention rule item replacing the old
  "no abduction" item, fresh-search section for the textless cases.
- README-START-HERE.md: progress notes, run commands, next steps.
- Bug fixed in passing: Wayback blocks stored in-memory text with carriage
  returns; now stored as read back from disk.

verify_all.py PASSES (2321 checks).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GZZENdTLzNGsbNy4DyF1yt
This commit is contained in:
StellarCrow
2026-09-06 19:36:45 +02:00
co-authored by Claude Fable 5.1
parent 499fd61f79
commit 439e83a4cb
588 changed files with 24800 additions and 13190 deletions
@@ -0,0 +1,19 @@
Boulogne : les agresseurs ciblent un jeune investisseur en crypto, se trompent dadresse et finissent en garde à vue - Le Parisien
Les agressions à domicile sur fond de crypto se multiplient. Et elles ne sont pas toujours très bien préparées. Quatre jeunes, âgés de 21 à 24 ans, ont été mis en examen le 2 avril dernier à Nanterre (Hauts-de-Seine), pour association de malfaiteurs en vue de la préparation dun crime. Ils sont soupçonnés davoir, le 29 mars 2026 à Boulogne-Billancourt, tenté dattaquer un jeune investisseur en crypto, seulement âgé de 23 ans.
Tout commence dimanche 28, vers 23h45. Lhabitant dune péniche est dérangé par un inconnu qui sonne à sa porte en se faisant passer pour un livreur. Compte tenu de lheure tardive, ce quinquagénaire prudent nouvre pas à cet imposteur qui porte un gilet jaune. Il prévient aussitôt la police. Une patrouille arrive rapidement sur place et repère une Toyota Auris.
Quatre silhouettes sont à bord et les fonctionnaires leur passent les menottes. Dans la voiture, ils découvrent un couteau, plusieurs liens en plastique, des gants, un bonnet et des gilets jaunes neufs, encore sous emballage.
Ces garçons originaires de Brunoy (Essonne) et du VIIe arrondissement de la capitale sont placés en garde à vue à Nanterre avant d’être transférés dans les locaux de la brigade de répression du banditisme de Paris. Lexploitation du contenu dun téléphone est déterminante.
Une photo de leur cible dans un téléphone
Les enquêteurs y ont découvert une photo et une adresse située près du lieu de leur arrestation. « L’équipe sest trompée dadresse et ciblait en fait un jeune étudiant féru de mathématiques qui fait des investissements en cryptomonnaie », explique une source proche de laffaire. Sans surprise, les quatre jeunes gens ont gardé le silence lors de leurs auditions. La suite des investigations doit permettre dy voir plus clair. Il sagit notamment de déterminer sils ont agi sur les ordres dun commanditaire.
«Je nai pas pensé à ce que je risquais»: arrêté sur lA10 près de Paris, il convoyait 1 tonne de fausses cigarettes
Double féminicide de lAveyron : le Portugal refuse de remettre Cédric Prizzon à la France
Manifestations interdites à Paris : la justice valide larrêté contre lultradroite du Comité du 9-Mai et les antifas
+8 -5
View File
@@ -5,11 +5,14 @@
"field": "url",
"url": "https://www.leparisien.fr/faits-divers/boulogne-les-agresseurs-ciblent-jeune-investisseur-en-crypto-se-trompent-dadresse-et-finissent-en-garde-a-vue-07-04-2026-WESX3VDQLNALFLW4UUQRVMVXHU.php",
"host": "leparisien.fr",
"fetched_at": "2026-08-06T13:40:40+00:00",
"verdict": "BLOCKED",
"method": "raw",
"http": 403,
"note": "raw request refused; try the WebFetch path, which is a model transcription and must be labelled as such"
"fetched_at": "2026-09-05T13:22:44+00:00",
"verdict": "FETCHED",
"method": "wayback",
"snapshot": "20260508143702",
"archive_url": "http://web.archive.org/web/20260508143702/https://www.leparisien.fr/faits-divers/boulogne-les-agresseurs-ciblent-jeune-investisseur-en-crypto-se-trompent-dadresse-et-finissent-en-garde-a-vue-07-04-2026-WESX3VDQLNALFLW4UUQRVMVXHU.php",
"chars": 2315,
"sha256": "6ddcf3f6651422eded70650f6e4c9e064d44adb4e801479f12959677ef8023a5",
"live_verdict": "BLOCKED"
},
{
"case": 426,