feat(sources): fetch linked URLs for the 252 spreadsheet-only cases

Until now only cases 357+ (plus a few older ones) had their linked URLs
fetched; the other 252 dossiers held just the text pasted into the
spreadsheet, often only the lede. This pass fetches every linked URL for
those cases so the full text is on file before link rot takes it.

- stage_all.py: new --include-sheet-cases flag that lifts the skip on
  cases holding spreadsheet articles. Resumable as before.
- staging/: raw extracts and index.json for the 252 cases.
- sourced-articles.json, case-files-manifest.json: 188 new UNTRIMMED
  blocks. 179 cases gained at least one fetched article; 73 got none
  (49 BLOCKED, 18 THIN, 9 DEAD, 4 video/social, 3 ERROR).
- sources/*.txt: rebuilt with build_cases.py --all. Sheet pastes are
  kept; fetched blocks sit beside them under the NOT YET TRIMMED banner.
  Files previously committed with CRLF are now LF.
- wayback-availability.json: Wayback snapshots exist for 73 of the 98
  failed URL slots; input for an archive-fetch pass.
- README-START-HERE.md: progress note and next step.

verify_all.py PASSES (1836 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-05 15:02:39 +02:00
co-authored by Claude Fable 5.1
parent ba7529ea50
commit 499fd61f79
785 changed files with 69932 additions and 16771 deletions
+37
View File
@@ -0,0 +1,37 @@
19-year-old Winnipeg man held at gunpoint, assaulted, tied up during Bitcoin transaction | CBC News
19-year-old Winnipeg man held at gunpoint, assaulted, tied up during Bitcoin transaction | CBC News Loaded
19-year-old Winnipeg man held at gunpoint, assaulted, tied up during Bitcoin transaction
A 19-year-old man was held at gunpoint, assaulted and tied up during what was supposed to be a Bitcoin transaction on Monday evening, police say.
Man arranged transaction with someone from social media, police say
CBC News · Posted: Sep 14, 2022 3:32 PM EDT | Last Updated: September 14, 2022
The audio version of this article is generated by AI-based technology. Mispronunciations can occur. We are working with our partners to continually review and improve the results.
A 19-year-old man was held at gunpoint, assaulted and tied up during what was supposed to be a Bitcoin transaction on Monday evening, police said in a news release Wednesday.
Police met with the man around 5 p.m. Monday at a hospital where he went to have his injuries treated.
The 19-year-old told police he arranged to meet someone from social media in the parking lot of a Winnipeg high school with the intention of exchanging his money for Bitcoin.
When he got into the person's car, he was immediately held at gunpoint, assaulted, tied up and driven around by a man who demanded his money, Winnipeg police public information officer Const. Dani McKinnon said.
When the vehicle eventually stopped, he escaped and ran for help. He was treated for his injuries and released from the hospital.
Later that evening, police arrested a 22-year-old Winnipeg man on Broadway near the Manitoba legislature.
The suspect is charged with armed robbery using a firearm, pointing a firearm, two counts of assault with a weapon, forcible confinement, uttering threats to kill, failure to comply with an undertaking and two counts of possession of a firearm or restricted weapon.
Manitoba's largest hospital struggling to provide care for most ill in 'unprecedented crisis': doctors
Family angry late loved one's abuse allegations not included in charges against care home staff
Nearly a quarter of Winnipeg care home residents given antipsychotic drugs with no diagnosis
CBC's Journalistic Standards and Practices·About CBC News
Corrections and clarifications·Submit a news tip·
+16
View File
@@ -0,0 +1,16 @@
[
{
"case": 137,
"n": 1,
"field": "url",
"url": "https://www.cbc.ca/news/canada/manitoba/bitcoin-robbery-winnipeg-1.6582916",
"host": "cbc.ca",
"fetched_at": "2026-09-05T12:51:52+00:00",
"verdict": "FETCHED",
"method": "raw",
"http": 200,
"chars": 2353,
"sha256": "ea2fade2d166c3ec4a58c8ef740b0fa53458812fb66aeb60665e9e2a3a061321",
"final_url": null
}
]