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,43 @@
4 Africans rob three women of Dhs350,000 in a fake Bitcoin deal
Picture used for illustrative purpose only.
The Dubai Criminal Court has sentenced a gang of 4 Africans, including a fugitive to one year in prison and ordered them to pay jointly a fine of Dhs342,000 over the charges of robbery under knife-point.
All of them will be deported after serving their jail term.
The details of the cases dates back to when the convicts lured the victims (three women) to a fake deal to sell “Bitcoin.”
Earlier in last August, three women lodged a complaint stating that they had been subjected to robbery under knifepoint by African persons.
One of the victims said in the investigations that an African man offered her to buy cryptocurrency for Dhs300,000, and she accepted the offer and agreed to meet in Al Nahda, Dubai, she added, noting that she accompanied by two of her friends reached the specified location in time.
After waiting for few minutes in a car owned by one of them, the women were surprised by four persons threatening them with blunt objects, ordering them to hand over the money they brought for the cryptocurrency deal.
They gangsters were able to snatch the bag that contained Dhs300,000, in addition to another containing Dhs63,000, other valuable items and their passports as well.
The driver of one of the three women stated in his testimony that he was waiting inside one of the womens vehicles after they reached the scene, where he heard screaming and saw two Africans threatening the three women, stealing bags and items and fleeing the place in another vehicle.
The driver was able to write down the plate number of the vehicle in which they ran away.
An investigation team managed to identify one of the suspects, as his photo was shown to the victims, who recognised him.
He was arrested and admitted to his presence at the crime scene at the request of one of his friends who asked to drop him to Al Nahda area to complete a “Bitcoin deal.”
They went to the same location at the specified time, as they committed the crime and were able to steal the value of the fake deal, he added.
He also informed the the police about the location of his partners, so two others were arrested, and referred to the Court, where they have been sentenced to one year in jail with a fine equal to the stolen money, in addition to deportation after serving the term.
UAE Crimes
Bitcoin
Dubai Police
Dubai Court
+8 -5
View File
@@ -5,10 +5,13 @@
"field": "url",
"url": "https://www.gulftoday.ae/news/2022/02/14/4-steal-dhs350000-through-fake-bitcoin-deal",
"host": "gulftoday.ae",
"fetched_at": "2026-09-05T12:44:44+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:26:34+00:00",
"verdict": "FETCHED",
"method": "wayback",
"snapshot": "20260411005115",
"archive_url": "http://web.archive.org/web/20260411005115/https://www.gulftoday.ae/News/2022/02/14/4-steal-Dhs350000-through-fake-Bitcoin-deal",
"chars": 2457,
"sha256": "7f3becf36e22b8ac4f7bc4260aaf6d2787863b89993dd0d6a66fefe535a77b28",
"live_verdict": "BLOCKED"
}
]