diff --git a/recoveries/truncated-identifier-census.md b/recoveries/truncated-identifier-census.md new file mode 100644 index 0000000..02de153 --- /dev/null +++ b/recoveries/truncated-identifier-census.md @@ -0,0 +1,73 @@ +# Q60 — Truncated-identifier census (Zeph lane, 2026-10-25) + +**Head measured:** `783e345` (2026-10-25). **Scope:** whole tracked tree (`git grep`, all refs' working tree at that head). +**Boundary (pinned, from `career-lane/daily-2026-10-25.md` §6.3):** a token counts as truncated when it matches +`[0-9a-f]{8,}` with hyphen groups, immediately followed by `…`, **and** no longer string in the repo begins with that token. +That second condition is the classification test, run per token below — not an eyeball call. + +## Population and reconciliation + +- Population command: `git grep -h -o -E '[0-9a-f]{8,}(-[0-9a-f]{4})*-…'` → **49 occurrences, 16 distinct tokens, 17 files**. +- The same count comes back under Timmy's reply-87 pattern `[0-9a-f]{6,12}(-[0-9a-f]{4})*-…`: **49 occurrences, 16 distinct**. + Q60's text ("31 truncated hex tokens across 11 files" at `c4ea44e`) is therefore **not reproduced as a distinct-token + count at this head** — it was an earlier-tree and/or occurrence read. The figure that travels with this census is + **16 distinct tokens**; occurrence counts per token are in the table. Any future recount must name its head, or it + will drift again the way 31 → 35 → 16 did. +- Files holding truncated tokens (17): `WORK-QUEUE.md`, `career-lane/apply-queue-2026-10-24.md`, + `career-lane/apply-queue-2026-10-25.md`, `career-lane/daily-2026-10-20.md`, `career-lane/daily-2026-10-21.md`, + `career-lane/daily-2026-10-22.md`, `career-lane/daily-2026-10-24.md`, `career-lane/daily-2026-10-25.md`, + `checkins/2026-10-24-zephyrus.md`, `harness-reflections/zeph-interview-2026-10-24.md`, + `replies/2026-09-24-to-zephyrus-05.md`, `replies/2026-10-01-to-zephyrus-22.md`, + `replies/2026-10-13-to-zephyrus-66.md`, `replies/2026-10-24-to-zephyrus-86.md`, + `replies/2026-10-24-to-zephyrus-87.md`, `replies/2026-10-24-to-zephyrus-interview.md`, + `replies/2026-10-25-to-zephyrus-99.md`. + +## Rows — one per token + +Verdict key: **RECOVERABLE** = a longer string beginning with the token exists in the tree (full value cited). +**NO-LONGER-IN-TREE** = no longer string exists in the tree; external recovery is a separate question, stated per row. +**UNRECOVERED (exhausted)** = in-tree and out-of-tree searches both run, nothing found. + +| # | Token as written | Occ. | Truncated at (sample file:line) | Verdict | Full value / searches | +|---|---|---|---|---|---| +| 1 | `beae0b1f-…` | 17 | `WORK-QUEUE.md:10832`, `career-lane/apply-queue-2026-10-24.md:270`, `career-lane/daily-2026-10-24.md:102` | **UNRECOVERED (exhausted)** | Searches: full-history pickaxe `git log --all -S"beae0b1f"` (4 commits, all 2026-10-24, prefix-only, reply 87 §1); Timmy's session store (16 rows, prefix-only); log sweep; this run's tree grep (no longer string). The only longer string in the tree is Timmy's invented placeholder `beae0b1f-0000-0000-0000-000000000000` (`replies/2026-10-24-to-zephyrus-86.md:12`), which proves nothing and is not a recovery. Disposition: dropped, never a verified door, not a role closure. | +| 2 | `3d79ba82-…` | 10 | `career-lane/daily-2026-10-24.md:18`, `replies/2026-10-13-to-zephyrus-66.md:17` | **RECOVERABLE** | Full value at `career-lane/apply-queue-2026-10-13.md:135`: `3d79ba82-926b-48c0-9d15-8791a364ea81` (micro1 item 5). Harmless abbreviation. | +| 3 | `34413f8d-…` | 4 | `career-lane/daily-2026-10-24.md:37`, `career-lane/daily-2026-10-25.md:32` | **RECOVERABLE — repaired this run** | Full value at `WORK-QUEUE.md:11257` and `replies/2026-10-25-to-zephyrus-99.md` §3, and now in `career-lane/daily-2026-10-25.md` (reply-99 corrections log): `34413f8d-26bf-4bbc-8ade-eb309a0e2245` (Ramp, Security Engineer, Cloud). Independently re-fetched this run: board API 200 / 2,836,992 B, 167 jobs, same match. This row **was** a failing identifier-subject row at `a8df683`; it is repaired, not merely reported. | +| 4 | `a92b55d0-…` | 3 | `career-lane/daily-2026-10-20.md:30`, `career-lane/daily-2026-10-21.md:39` | **RECOVERABLE** | Full value at `career-lane/ats-gate-census.md:247`: `a92b55d0-1d36-4884-8e65-f456450b3a74` (Lever Palantir). Harmless abbreviation. | +| 5 | `6b5089a8-…` | 2 | `career-lane/daily-2026-10-24.md:38`, `career-lane/daily-2026-10-25.md:33` | **NO-LONGER-IN-TREE** | Searches this run: tree-wide grep for a longer string → none. External recovery (Lever postings API for the Worldscape probe role) **not run this tick**. Failing identifier-subject row until repaired: the ATS probe row's apply URL is written incompletely. | +| 6 | `3c67f712-…` | 2 | `WORK-QUEUE.md:1429`, `replies/2026-10-01-to-zephyrus-22.md:113` | **RECOVERABLE** | Full value at `WORK-QUEUE.md:1460`: `3c67f712-697d-48d8-b05c-01be896e61da` (OpenAI posting). Harmless abbreviation. | +| 7 | `29ba0d51-…` | 2 | `career-lane/daily-2026-10-22.md:20`, `career-lane/daily-2026-10-24.md:19` | **RECOVERABLE** | Full value at `career-lane/apply-queue-2026-10-22.md:133`: `29ba0d51-2d9f-412e-ad19-5f28a76ca96e` (micro1 item 10). Harmless abbreviation. | +| 8 | `e33f87f8-…` | 1 | `WORK-QUEUE.md:1421` | **RECOVERABLE** | Full value at `career-lane/ats-gate-census.md:212`: `e33f87f8-88ec-4e1a-9a13-df9bbb1d8120` (hCaptcha sitekey). Harmless abbreviation. | +| 9 | `a90cdb7c-…` | 1 | `career-lane/daily-2026-10-22.md:37` | **NO-LONGER-IN-TREE** | Searches this run: tree-wide grep for a longer string → none. External recovery (Ashby OpenAI board API, sample posting "Backend Software Engineer, Gov") **not run this tick**. Quoted sample, not a subject row — report-only until fetched. | +| 10 | `6ec57334-…` | 1 | `replies/2026-09-24-to-zephyrus-05.md:14` | **RECOVERABLE** | Full value at `recoveries/falsification-pass.md:54`: `6ec57334-604d-42b5-a2e7-54662739c504` (Stackchain SJ Lottery guid). Harmless abbreviation. | +| 11 | `6c573a9c-…` | 1 | `replies/2026-09-24-to-zephyrus-05.md:13` | **NO-LONGER-IN-TREE** | Searches this run: tree-wide grep for a longer string → none. External recovery (Stackchain RSS feed, episode "What's the deal?") **not run this tick**. Quoted guid, report-only. | +| 12 | `67cbefc2-…` | 1 | `replies/2026-09-24-to-zephyrus-05.md:15` | **NO-LONGER-IN-TREE** | Searches this run: tree-wide grep for a longer string → none. External recovery (Stackchain RSS feed, episode "1 more Sat") **not run this tick**. Quoted guid, report-only. | +| 13 | `51a65c2c-…` | 1 | `replies/2026-10-24-to-zephyrus-86.md:46` | **RECOVERABLE** | Full value at `career-lane/apply-queue-2026-10-22.md:246`: `51a65c2c-07dd-4307-aba6-f7c4af17311c` (micro1 item 24). Harmless abbreviation. | +| 14 | `20c08939-…` | 1 | `replies/2026-10-24-to-zephyrus-86.md:58` | **RECOVERABLE** | Full value at `WORK-QUEUE.md:10463`: `20c08939-56c2-4351-a47a-efcdf022eca5` (Alignerr N5). Harmless abbreviation. | +| 15 | `18a809aa-…` | 1 | `replies/2026-10-24-to-zephyrus-86.md:45` | **RECOVERABLE** | Full value at `career-lane/apply-queue-2026-10-22.md:154`: `18a809aa-0b7f-4523-ac0e-508c9f0f6f66` (micro1 item 13). Harmless abbreviation. | +| 16 | `10dfc8bc-…` | 1 | `career-lane/daily-2026-10-22.md:35` | **NO-LONGER-IN-TREE** | Searches this run: tree-wide grep for a longer string → none. External recovery (Lever Palantir postings API for the apply-page id) **not run this tick**. Failing identifier-subject row until repaired: the ATS probe row's apply URL is written incompletely. | + +**Totals:** 16 tokens = **10 recoverable in-tree** (rows 2, 3, 4, 6, 7, 8, 10, 13, 14, 15) + **1 unrecovered by exhaustion** +(row 1) + **5 with no longer string in-tree and external search not yet run** (rows 5, 9, 11, 12, 16). + +## Enforcement — what this census does and does not close + +- **Done here (reporting half):** every token classified above, with the full value or the searches listed. +- **Rule enforced where it bites, as far as it goes:** the dead-link row (`beae0b1f-…`) cannot carry its URL, so it + stands graded **Testimony only** at write time and is never repaired by inference — that disposition is the + enforcement for an unfixable row. The Ashby identifier-subject row (`34413f8d-…`) failed at `a8df683` and is + repaired by this run's fold. The two Lever identifier-subject rows (`6b5089a8-…`, `10dfc8bc-…`) **fail under + the rule and are not repaired yet** — their repair is a Lever API lookup, named here, not claimed. +- **Not done, stated plainly:** no script enforces the rule yet. The two-tier check from daily §6.3 — a census + that reports for recoverable abbreviations, a check that **fails** a row whose subject is an identifier and + which writes that identifier incompletely, plus Timmy's reply-99 refinement (flag an identifier written + complete but wrong) — is still to be built. Until it exists, this file is the census, not the gate. + The close call on Q60 is Timmy's. + +## Method note (so the next recount does not drift) + +The earlier counts (31 at `c4ea44e`, 35 by a looser re-grep) are not contradicted as reads of their moment; +they are superseded as *distinct-token* counts because neither named its counting rule (occurrences vs distinct, +and whether "no longer string exists" was tested). This census counts **distinct tokens** under the pinned +boundary and tests the recoverability condition per token. A recount that changes the pattern, the scope, or +the condition must say so beside its number.