Files
troupe-standup/recoveries/named-source-liveness.md

16 KiB
Raw Permalink Blame History

Named-source liveness — Q22

Q21 established that the archive names sources in its own prose without anchoring them: 39 rows — @handle tokens and bare URLs printed in an entry's prose sections (What happened, In plain English, Contributor, Provenance, Uncertainty), never inside the From the sources blockquotes, which are verbatim third-party text. This census takes every distinct source in that list and fetches it, so a name the archive prints without a link stops being invisible.

Population, re-derived this run rather than copied from Q21. named.py over the 121 live entry pages (https://alexanderwhitestone.com/stackchain/blocks/, HTTP 200 / 34,488 B / sha256 4f764ef4dfb9c08b2654ff0783550d20ad1bb7a31cb0c32070974a5fe451557e, 2026-10-10T15:38:02Z; 121/121 entry pages HTTP 200 on the first attempt, 2026-10-10T15:38:02–15:38:13Z):

  • 39 prose rows = 37 @handle rows + 1 bare URL + 1 row for a handle named without an @.
  • 25 distinct @handles after case-insensitive dedupe (@HappyClownTime and @happyclowntime are one account: both fetched profiles return Bob (@happyclowntime) / X).
  • 1 handle named without an @ — StackchainQuant in event-2022-08-18's summary, hand-checked (carried from Q21 finding 3; a bare word cannot be found by a token rule).
  • 1 bare URL — the Wayback capture of the genesis tweet, named in block-5's Provenance prose.
  • 27 distinct sources → 28 fetches. 26 X accounts + 1 archive URL. @HappyClownTime and @happyclowntime are one account, fetched under both spellings as the archive prints them, so the full table below carries 28 rows for 27 sources. (The queue's Status line counts 26 fetch targets because it excludes StackchainQuant, which Q21 had already measured; this run re-fetched it so the census is complete on its own evidence.)

The reading rule. Anchored means an href on the page whose last path segment is the handle exactly, on x.com/twitter.com. Q21's rule was a suffix match, and it was defective: the article permalink https://www.stackchainmagazine.net/rest-in-paradise-staceski/ ends with staceski, so @staceski read as anchored and was omitted from Q21's 38-row list. Two rows recovered that way. An email or Lightning address is not a handle: the token rule uses a negative lookbehind for [A-Za-z0-9_.@-], which is why bitcoinbekka@getalby.com in magazine-024 is not a row here.

The verdict classes. resolve (HTTP 200 with a real profile), resolve-moved (the handle answers but the account itself names a different handle as its home), suspended (HTTP 200 carrying the suspension page), 404 (HTTP 404 carrying X's "User Profile Not Found"). A 301 to a different owner would be its own class; none occurred.

Result

27 distinct sources: 20 resolve (19 X accounts + the 1 archive URL), 1 resolve-moved, 2 suspended, 3 404. Over the 28 fetches the split is 22 / 1 / 2 / 3, because @HappyClownTime and @happyclowntime are the same account fetched under both spellings.

Every X byte size and sha256 below is a dated reading: the X pages carry a per-request <meta property="csp-nonce">, so the two 404 pages at 37,702 B are byte-different from each other and the two suspended pages at 40,800/40,839 B are likewise not identifiers. The clock is the evidence; the hash pins what this host read.

The six entries whose named source does not resolve

source entry/entries naming it verdict URL byte size sha256 clock
overflow_ magazine-020 (What happened) 404 — title "User Profile Not Found - X | 404 Error"; description "The user profile you're looking for could not be found." https://x.com/overflow_ 37678 6b05f29fef55d421813c08bec0c5e6d117ae511b19c6539e2e5a95f9aa076b74 2026-10-10T15:39:17Z
humblebitcoiner magazine-051 (Contributor); magazine-051 (What happened) 404 — title "User Profile Not Found - X | 404 Error"; description "The user profile you're looking for could not be found." https://x.com/humblebitcoiner 37702 f28a6675624ee6c1d6e8c94e7738a6dd2da77914206d8a19a4146988ca65fdbf 2026-10-10T15:39:33Z
BTC_Freeborn magazine-035 (Contributor) suspended — title "Profile / X"; body

Account suspended

- "X suspends accounts which violate the X Rules"
https://x.com/BTC_Freeborn 40800 36d526cdf90b655874f6f73c5158a952e9033e1853ff734720b434d4c1898687 2026-10-10T15:39:21Z
RedTailHawk1923 magazine-056 (Contributor) suspended — title "Profile / X"; body

Account suspended

- "X suspends accounts which violate the X Rules"
https://x.com/RedTailHawk1923 40839 0bf960adefead1e37bf4ac5dd7a5e20cbcc1d6a53fb44355116073dcd414ca85 2026-10-10T15:39:33Z
captainsiddh magazine-039 (What happened) resolve-moved — live profile, but its own description reads "Now at @captainsidd" - the handle still answers, the person has moved https://x.com/captainsiddh 68579 d2dfc77ad5c01e4bad7554add5ceae3b1e7c037ee994c635d1650bc7af25633d 2026-10-10T15:39:22Z
StackchainQuant event-2022-08-18-the-bitcoin-beach-campaign-closes-and-hodlon (What happened - named without @, x2) 404 — title "User Profile Not Found - X | 404 Error"; description "The user profile you're looking for could not be found." https://x.com/StackchainQuant 37702 47f73c39ebdbe437559c9532aa1cceeaf69dc3724670f6f3b4ce756f9ec76bf3 2026-10-10T15:39:39Z

Remedy takes three shapes, and every one is a live-page edit and therefore Alexander's through Q13:

  • Anchor it. event-2022-08-18, magazine-035, magazine-039, magazine-056: the name is defensible and the only defect is that no link backs it.
  • Strike or mark it. magazine-020 (@_overflow__) and magazine-051 (@humblebitcoiner, named twice — as Contributor and in What happened) name handles that answer 404 today, so the prose currently rests on an unreachable source. StackchainQuant is the case Q12 already returned and this census closes: 404 at https://x.com/StackchainQuant / 37,702 B / sha256 47f73c39ebdbe437559c9532aa1cceeaf69dc3724670f6f3b4ce756f9ec76bf3 / 2026-10-10T15:39:39Z, <title>User Profile Not Found - X | 404 Error</title>, and the entry's own badge is still earned by the post text and the tx it does link.
  • @captainsiddh is the third shape and it needs neither: the handle answers (200 / 68,579 B / sha256 d2dfc77ad5c01e4bad7554add5ceae3b1e7c037ee994c635d1650bc7af25633d / 2026-10-10T15:39:22Z, Sidd (@captainsiddh) / X) but its own description reads "Now at @captainsidd", and that handle resolves — Evan (Captain Sidd) (@CaptainSidd) / X, 200 / 159,957 B / sha256 38e0e29618a8b0ef599ede39f1396f0e5af6040b8143d13d236f7003437b0e27 / 2026-10-10T15:40:39Z. The prose is not wrong, it is one handle behind.

The full census — all 27 sources, 28 rows

Fixed column order: source | entry/entries naming it | verdict | URL | byte size | sha256 | clock. 28 rows for 27 sources: @HappyClownTime and @happyclowntime are the same account under the two spellings the archive prints, and both fetches are recorded.

| HappyClownTime | event-2022-07-18-the-5-invitation-becomes-a-chain (What happened); event-2022-07-18-the-5-invitation-becomes-a-chain (In plain English); magazine-019 (What happened) | resolve | https://x.com/HappyClownTime | 145323 | 111c098b205bbfcb247407fa8af5c299a1b42b813acf207905edbd9bb0acc97b | 2026-10-10T15:39:07Z | | happyclowntime | event-2022-07-18-the-5-invitation-becomes-a-chain (What happened); event-2022-07-18-the-5-invitation-becomes-a-chain (In plain English); magazine-019 (What happened) | resolve | https://x.com/happyclowntime | 146235 | fd31ec3b8d706bca33ce78f1084d7dfce4a2fda231ade9e080a781df8f58cdcc | 2026-10-10T15:39:16Z | | caroghero | event-2022-08-28-the-fork-of-1492 (What happened); event-2022-08-28-the-fork-of-1492 (In plain English); magazine-041 (What happened) | resolve | https://x.com/caroghero | 133265 | fa961e95041c6463f8786893144b49f0424f0848287fa2e7fb08a58a5e5aff79 | 2026-10-10T15:39:07Z | | sathoarder | event-2022-08-28-the-fork-of-1492 (What happened); event-2022-08-28-the-fork-of-1492 (In plain English) | resolve | https://x.com/sathoarder | 151154 | 8d51f39c0c7b662c3a06763d8f461cfc0ba7abcab08b47cef57be114402cfc48 | 2026-10-10T15:39:09Z | | StackchainMag | magazine-001 (What happened) | resolve | https://x.com/StackchainMag | 184770 | 01ddebe94beb705dbc0816bc1c634f9ed5655cefd9053652053d2e59311f4ce3 | 2026-10-10T15:39:11Z | | staceski | magazine-003 (What happened); magazine-003 (In plain English) | resolve | https://x.com/staceski | 58628 | 54367e6a1b643d13277bd28a6fd1e2bf82112bec32402261d9dddf6fc3a1e7c5 | 2026-10-10T15:39:13Z | | DerekMRoss | magazine-018 (What happened); magazine-018 (In plain English) | resolve | https://x.com/DerekMRoss | 143538 | 70083ab521af07cc7bfded4ce31bb378fe3b7c832a69a0568010a46718a18636 | 2026-10-10T15:39:14Z | | overflow_ | magazine-020 (What happened) | 404 | https://x.com/overflow_ | 37678 | 6b05f29fef55d421813c08bec0c5e6d117ae511b19c6539e2e5a95f9aa076b74 | 2026-10-10T15:39:17Z | | waldovision3 | magazine-025 (What happened) | resolve | https://x.com/waldovision3 | 152526 | 4cc25229e0b4fbfe2186d8da744d843f71f2e6cdcf05b05fa50c4cd39d28cf3f | 2026-10-10T15:39:17Z | | a_koby | magazine-026 (What happened) | resolve | https://x.com/a_koby | 149401 | c6ab960fac77673a987c8755e0a7f2282633ef74c932161405220fb2f0abd81c | 2026-10-10T15:39:19Z | | laurenoflight_ | magazine-031 (What happened) | resolve | https://x.com/laurenoflight_ | 141357 | d1ffd6aef1fa764562096a60969d107f0c0e361e492aab5e949e7cd199037a44 | 2026-10-10T15:39:20Z | | parman_the | magazine-032 (What happened); magazine-048 (What happened) | resolve | https://x.com/parman_the | 163583 | f93993f6f8764011c975c2b3fc509185d6c2da4257ea1890c1011699f9e6772e | 2026-10-10T15:39:20Z | | AnthonyDessauer | magazine-035 (Contributor); magazine-044 (What happened) | resolve | https://x.com/AnthonyDessauer | 163531 | 96e30545fb550c3226407530c992448fc67427324d8ae2035f503d0f8ad09727 | 2026-10-10T15:39:21Z | | BTC_Freeborn | magazine-035 (Contributor) | suspended | https://x.com/BTC_Freeborn | 40800 | 36d526cdf90b655874f6f73c5158a952e9033e1853ff734720b434d4c1898687 | 2026-10-10T15:39:21Z | | captainsiddh | magazine-039 (What happened) | resolve-moved | https://x.com/captainsiddh | 68579 | d2dfc77ad5c01e4bad7554add5ceae3b1e7c037ee994c635d1650bc7af25633d | 2026-10-10T15:39:22Z | | jerimican5445 | magazine-040 (Contributor) | resolve | https://x.com/jerimican5445 | 176644 | 293973be40142b6ee0d4222f7267b95e52457c47a2d7d5e039150f8e8dadd55b | 2026-10-10T15:39:23Z | | LoKoBTC | magazine-041 (What happened) | resolve | https://x.com/LoKoBTC | 167688 | 6935cb456bce29f0f2a76955f27782a7a238ec6dc651a0f5305f52544f52b478 | 2026-10-10T15:39:25Z | | fiatforassets | magazine-041 (What happened) | resolve | https://x.com/fiatforassets | 157186 | 057daf95fe2a060e8f44054e6ef30bb7280dd633d385c94a659fdfe3ee88bee5 | 2026-10-10T15:39:29Z | | DecrimNat | magazine-045 (What happened) | resolve | https://x.com/DecrimNat | 152742 | 6a8a0e019a89f0f147e1136ea7578300ae0861705e9faab65c544180277da041 | 2026-10-10T15:39:32Z | | humblebitcoiner | magazine-051 (Contributor); magazine-051 (What happened) | 404 | https://x.com/humblebitcoiner | 37702 | f28a6675624ee6c1d6e8c94e7738a6dd2da77914206d8a19a4146988ca65fdbf | 2026-10-10T15:39:33Z | | RedTailHawk1923 | magazine-056 (Contributor) | suspended | https://x.com/RedTailHawk1923 | 40839 | 0bf960adefead1e37bf4ac5dd7a5e20cbcc1d6a53fb44355116073dcd414ca85 | 2026-10-10T15:39:33Z | | SPACEBULL | magazine-061 (Contributor); magazine-061 (What happened) | resolve | https://x.com/SPACEBULL | 155409 | 82f563d5b5470247f7aa763e6c2d0ae1167e6ac6dda4f43654208a74af3ea26b | 2026-10-10T15:39:34Z | | tim_niemeyer_ | magazine-062 (Contributor); magazine-062 (What happened) | resolve | https://x.com/tim_niemeyer_ | 174674 | 022aa3721cf411303122980fecf87b605b166cabf769d772b8165af637744612 | 2026-10-10T15:39:34Z | | SatoshiDeniz | magazine-064 (Contributor) | resolve | https://x.com/SatoshiDeniz | 154542 | 4ee7d09fa8097765a0461576e1961485b766255f2f4c0caa009f0c3816f3790a | 2026-10-10T15:39:35Z | | BTCTimescom | magazine-064 (What happened) | resolve | https://x.com/BTCTimescom | 152642 | d0290d8e0f2db5f7abe77f19a2a1fc0d73407ef1965a10126aec863c228c78a3 | 2026-10-10T15:39:36Z | | MidyReyes | magazine-070 (Contributor); magazine-070 (What happened) | resolve | https://x.com/MidyReyes | 157001 | faf37e7a9307527ffde283456856433f3ea31fa6a74a1398e6c40e873fe44381 | 2026-10-10T15:39:38Z | | StackchainQuant | event-2022-08-18-the-bitcoin-beach-campaign-closes-and-hodlon (What happened - named without @, x2) | 404 | https://x.com/StackchainQuant | 37702 | 47f73c39ebdbe437559c9532aa1cceeaf69dc3724670f6f3b4ce756f9ec76bf3 | 2026-10-10T15:39:39Z | | archive-ari-genesis | block-5 (Provenance) | resolve | https://web.archive.org/web/20220718230820/https://twitter.com/AriZonanHODL/status/1549169119924080640 | 64518 | 5ca88e586bfc6b026ff027d1cdf1887e24686ac0d71e2f5fc3237bfd51c8716c | 2026-10-10T15:39:40Z |

Findings

  1. Three of 26 named X handles do not resolve, and one of them is named in prose as a source of record. @_overflow__ (404), @humblebitcoiner (404), StackchainQuant (404). None is anchored, so a reader cannot tell from the page whether the name is live. StackchainQuant is the worst case: event-2022-08-18's summary asserts what the account "reports" — a claim whose only named warrant is a handle that 404s.
  2. Two more are suspended, and both sit in the Contributor field. @BTC_Freeborn (magazine-035) and @RedTailHawk1923 (magazine-056) both return HTTP 200 with <title>Profile / X</title> and <h2>Account suspended</h2> — "X suspends accounts which violate the X Rules". A naive status-code check would grade both resolve; the body is what settles it.
  3. One handle is live but its owner has moved. @captainsiddh answers, and its own description points at @captainsidd. The archive names the old handle.
  4. The dedupe is real, not cosmetic. event-2022-07-18 prints @HappyClownTime and magazine-019 prints @happyclowntime; both resolve to Bob (@happyclowntime) / X. Two spellings, one account, and a reader following either gets the same person.
  5. The one bare URL in the list is the best-behaved source on the page. block-5 names the Wayback capture …/web/20220718230820/https://twitter.com/AriZonanHODL/status/1549169119924080640 in its Provenance prose without linking it; fetched with -L, HTTP 200 / 64,518 B / sha256 5ca88e586bfc6b026ff027d1cdf1887e24686ac0d71e2f5fc3237bfd51c8716c / 2026-10-10T15:39:40Z, <title>AriZonan HODL on Twitter: "Even on days when I'm broke as hell I still stack. Feel free to join me." / Twitter</title> — the live-404 genesis tweet, held by the capture. The archive already knows the wayback route for a dead X source and uses it in prose without a link.

Method and limits

  • Scripts, all re-runnable, working tree /root/crucible/q22/: fetch_all.py (index + 121 entry pages), named.py (the named-source rule and its output), fetch_targets.py (28 fetches), classify.py (verdict class per response), verify.py (the exact evidence strings for every non-resolving row), rename.py (handle-in-description scan), emit.py (this file). Every fetched body is kept under pages/ and targets/.
  • Invocations. curl -sS -o <path> -w '%{http_code} %{size_download} %{redirect_url}' --max-time 60 <url> without -L, so a 3xx would report its own code and Location rather than being silently followed; the archive URL used -L with %{url_effective} %{num_redirects} and reported 0 redirects.
  • Clock. All fetches from this host, 2026-10-10T15:38–15:41Z. Entry pages are dated readings, not identifiers.
  • What this does not test. Whether the named source actually supports the claim made beside it (that is Q8/Q10/Q20's lane); whether the anchored sources resolve (Q3 and Q21); the summaries' content. A 404 on a handle says the name is unreachable today, not that the person never existed — @_overflow__, @humblebitcoiner and StackchainQuant may all have been renamed or deleted rather than never-lived, and nothing here distinguishes those cases.
  • Nothing executed on any live page, blocks.json, another party's file, or decisions/.

— Merlin, 2026-10-10