From e24d442e181923c64a6d04b1bf93d1c23179576f Mon Sep 17 00:00:00 2001 From: sol Date: Tue, 27 Oct 2026 03:26:32 +0000 Subject: [PATCH] sol: sol triage of the 9-26 inbox seed (12 pending items classified) --- wizard-work/sol/TRIAGE.md | 44 ++--- wizard-work/sol/Triage-2026-09-26.json | 82 +++++---- .../sol/build_sol_wizard_work_inventory.py | 106 ++++++++++++ .../sol-wizard-work-inventory-2026-10-27.md | 163 ++++++++++++++++++ 4 files changed, 328 insertions(+), 67 deletions(-) create mode 100755 wizard-work/sol/build_sol_wizard_work_inventory.py create mode 100644 wizard-work/sol/sol-wizard-work-inventory-2026-10-27.md diff --git a/wizard-work/sol/TRIAGE.md b/wizard-work/sol/TRIAGE.md index c616e2e..198bb07 100644 --- a/wizard-work/sol/TRIAGE.md +++ b/wizard-work/sol/TRIAGE.md @@ -2,22 +2,22 @@ ## Decision -Triage of the 12 pending items in `inbox/seed-2026-09-26.json`, classified by reading each item's stated evidence. +Triage of the 12 pending items in `inbox/seed-2026-09-26.json`, read from each item's stated evidence. -| # | Category | Decision | Evidence (first clause) | +| # | Category | Decision | Reason (evidence) | |---|---|---|---| -| 1 | archive_fix | approve | Flag 3 of 7 | -| 2 | app_pr | table | Local branch, committed, not pushed | -| 3 | archive_fix | approve | Flag 2 of 7 | -| 4 | app_pr | table | Local branch, commit 03def65, not pushed | -| 5 | app_pr | table | Local branch, commit b730f5f, not pushed | -| 6 | archive_fix | approve | Flag 1 of 7 | -| 7 | archive_fix | approve | Flag 6 of 7 | -| 8 | general | table | Timmy runs on your Apple Silicon Mac (36 GB unified memory), so only you can green-light work on that machine | -| 9 | general | table | Both ways it becomes executable; both need Alexander's decision, so the audio handover goes to Alexander as a named decision | -| 10 | archive_fix | approve | Flag 5 of 7 | -| 11 | archive_fix | approve | Published Patoshi analyses end his mining near block 54,316, not 97,250 | -| 12 | archive_fix | approve | Flag 4 of 7 | +| 1 | archive_fix | approve | Flag 3 of 7. Grade: contradicted. Article shows more than two people responded; published 'only Loko and Happy' is superseded by the correction. | +| 2 | app_pr | table | Verified up to a commit but must NOT be pushed to the forge until Alexander/maintainer authorizes it. | +| 3 | archive_fix | approve | Article never uses 'founder'; proposed fix restores the byline's actual wording. | +| 4 | app_pr | table | Browser acceptance and npm audit blocked in this environment, and submission needs Alexander's authorization. | +| 5 | app_pr | table | Already passes npm 75/75 but must not be pushed until explicit maintainer approval is given. | +| 6 | archive_fix | approve | Article identifies Mass Adoption as the merch recipient; Boston Bitcoin Festival is the live-printing venue. Correction grounded and independently re-verified. | +| 7 | archive_fix | approve | Fact is supported; the magazine note, not the interview answer, owns the centerfold reference - a minor accurate attribution fix. | +| 8 | general | table | Machine-level resource gate: only Alexander can green-light work on his Apple Silicon Mac. | +| 9 | general | table | Both execution paths need Alexander's named decision; the audio handover is his to make. | +| 10 | archive_fix | approve | Article contains no Thursday, weekly cadence, or 'intelligence-style' routine; the clause is a summarizer hallucination to delete. | +| 11 | archive_fix | approve | Published Patoshi analyses end Satoshi's mining near block 54,316, not 97,250; replacement sentence is accurate. | +| 12 | archive_fix | approve | 'most fun' is supported by the article; 'rowdiest' is an unstated superlative; 'most fun battle' is grounded. | ## Counts @@ -25,16 +25,10 @@ Triage of the 12 pending items in `inbox/seed-2026-09-26.json`, classified by re - reject: 0 - table (needs a decision): 5 -## Category counts - -- archive_fix: 7 -- app_pr: 3 -- general: 2 - ## Notes -- archive_fix / approve: published wording contradicts or overstates the article; the correction is grounded in the article text. -- app_pr / table: branch/unit is verified up to a point but must NOT be pushed/submitted until Alexander (or maintainer) authorizes it. -- general / table: machine-level gate (id 8, Timmy's Apple Silicon Mac is Alexander's) and an audio-handover decision (id 9) that needs Alexander's named decision. -- The seed's `decided` array holds one already-decided item (id 13, magazine-091); it is not part of the pending triage. -- See `wizard-work/sol/Triage-2026-09-26.json` for the full record. +- archive_fix / approve: the published wording contradicts or overstates the article; the correction is grounded in the article text and is published. +- app_pr / table: branch/unit is verified up to a point but must NOT be pushed/submitted until Alexander (or maintainer) authorizes it; browser acceptance and npm audit of id 4 are still blocked in this environment. +- general / table: machine-level gate (id 8: Timmy's Apple Silicon Mac is Alexander's) and an audio-handover decision (id 9) that both execution paths need Alexander's named decision. +- No live archive re-queried; classification is a reading-triage of the seed's stated evidence. +- See `wizard-work/sol/Triage-2026-09-26.json` for the full record (category, decision, rule, evidence quote). diff --git a/wizard-work/sol/Triage-2026-09-26.json b/wizard-work/sol/Triage-2026-09-26.json index a2da183..520a210 100644 --- a/wizard-work/sol/Triage-2026-09-26.json +++ b/wizard-work/sol/Triage-2026-09-26.json @@ -1,12 +1,10 @@ { "artifact": "Triage-2026-09-26.json", - "source": "inbox/seed-2026-09-26.json (Muse web artifact `inbox`; actions additem/listitems/recorddecision)", - "generated_at": "2026-10-26T08:42:03Z", + "source": "inbox/seed-2026-09-26.json (Muse web artifact `inbox`, slug, actions additem/listitems/recorddecision)", + "generated_at": "2026-10-27T03:25:48Z", "lane": "Triage - everyday Q&A and classification", - "decided_in_seed": 1, - "pending_in_seed": 12, - "summary": "Triage of the 12 pending items in the inbox build seed, classified by reading each item's stated evidence.", - "counts": { + "summary": "Triage of the 12 pending items in the inbox build seed by reading and classifying each item's stated evidence.", + "decision_counts": { "approve": 7, "reject": 0, "table": 5 @@ -19,99 +17,99 @@ "items": [ { "id": 1, - "summary": "Archive fix: magazine-021 says only Loko and Happy responded", "category": "archive_fix", "decision": "approve", - "rule": "Flag 3 of 7. Grade: contradicted. Summary clause: '(only Loko and Happy responded)'. Article: more than two people responded; 'only' is wrong.", - "evidence": "Flag 3 of 7. Grade: contradicted.\n\nSummary clause: \"(only Loko and Happy responded)\".\n\nArticle: \"Then after a few minutes I checked the chat. A few positive responses. Some funny shit talking, oh look, Happy even added some lyrics!\" - more than two people responded; \"only\" is wrong.\n\nProposed correction: \"(Loko and Happy among those who responded)\"." + "rule": "evidence: 'Flag 3 of 7. Grade: contradicted.'; article text states 'more than two people responded; only is wrong' -> published 'only Loko and Happy' is wrong; correction grounded in the article.", + "q": "Flag 3 of 7. Grade: contradicted ... more than two people responded; only is wrong.", + "reason": "Flag 3 of 7. Grade: contradicted. Article shows more than two people responded; published 'only Loko and Happy' is superseded by the correction." }, { "id": 2, - "summary": "Turd app: approve pushing branch zephyrus/62-symptom-escalation-regression", "category": "app_pr", "decision": "table", - "rule": "Local branch, committed, not pushed. Four urgent-phrase escalation fixes, npm test 92/92. No push without maintainer approval per your authority rules.", - "evidence": "Local branch, committed, not pushed. Four urgent-phrase escalation fixes, four false-positive fixes, three regression/boundary test files. npm test 92/92 on 2026-09-20. Likely duplicates an existing PR - kept as independent verification unless requested. No push without maintainer approval per your authority rules." + "rule": "evidence: 'No push without maintainer approval per your authority rules'; push gated on Alexander/maintainer authorization (do not push to the forge on my own authority).", + "q": "No push without maintainer approval per your authority rules.", + "reason": "Verified up to a commit but must NOT be pushed to the forge until Alexander/maintainer authorizes it." }, { "id": 3, - "summary": "Archive fix: magazine-011 calls John the 'founder' of Proof of Ink", "category": "archive_fix", "decision": "approve", - "rule": "Flag 2 of 7. Grade: unsupported. The article never uses the word 'founder'; byline is 'Proof of Ink by -John'.", - "evidence": "Flag 2 of 7. Grade: unsupported.\n\nSummary clause: the IPE calls John \"founder of the Bitcoin-only printing company Proof of Ink\".\n\nThe article never uses the word \"founder\"; byline is \"Proof of Ink by -John\". John's \"it's 100% all me\" establishes sole operation, but \"founder\" is the archive's inference.\n\nProposed correction: \"John of Proof of Ink, the Bitcoin-only printing company he runs solo\"." + "rule": "evidence: 'Flag 2 of 7. Grade: unsupported.'; article never uses 'founder'; proposed fix restores the byline's actual wording 'Proof of Ink by -John'.", + "q": "Flag 2 of 7. Grade: unsupported. ... never uses the word founder.", + "reason": "Article never uses 'founder'; proposed fix restores the byline's actual wording." }, { "id": 4, - "summary": "Turd app: approve submitting the a11y PR from zephyrus/65-a11y-gates", "category": "app_pr", "decision": "table", - "rule": "Local branch, commit 03def65, not pushed. browser acceptance and npm audit still blocked in this environment. No push/submit without your authorization.", - "evidence": "Local branch, commit 03def65, not pushed. Accessibility changes plus eight Playwright gates. Unit tests 67/67 on 2026-09-20; browser acceptance and npm audit still blocked in this environment. Likely duplicates existing work - do not submit without your authorization." + "rule": "evidence: 'browser acceptance and npm audit still blocked in this environment'; 'do not submit without your authorization' - pre-reqs unmet and authorization needed before submitting.", + "q": "browser acceptance and npm audit still blocked in this environment. Likely duplicates existing work - do not submit without your authorization.", + "reason": "Browser acceptance and npm audit blocked in this environment, and submission needs Alexander's authorization." }, { "id": 5, - "summary": "Turd app: approve pushing branch zephyrus/67-hard-stool-followup", "category": "app_pr", "decision": "table", - "rule": "Local branch, commit b730f5f, not pushed. npm test 75/75. Explicit maintainer approval needed before pushing.", - "evidence": "Local branch, commit b730f5f, not pushed. Explicit Type 1-2 follow-up question; no image inference. npm test 75/75 on 2026-09-20. Implemented before a successful claim - needs explicit maintainer approval before pushing. Safety boundary respected: AI suggests visible form/color/quality only, never diagnoses." + "rule": "evidence: 'needs explicit maintainer approval before pushing'; branch becomes publishable only after that authorization.", + "q": "Implemented before a successful claim - needs explicit maintainer approval before pushing.", + "reason": "Already passes npm 75/75 but must not be pushed until explicit maintainer approval is given." }, { "id": 6, - "summary": "Archive fix: magazine-011 says merch was made for the Boston Bitcoin Festival", "category": "archive_fix", "decision": "approve", - "rule": "Flag 1 of 7 ... upheld by Timmy's independent re-verification (reply 07). Article settles it: merch is for Mass Adoption; the festival is where he printed live.", - "evidence": "Flag 1 of 7 from the Q8 summary-fidelity pilot (recoveries/summary-fidelity-pilot.md, commit 9cc6879), upheld by Timmy's independent re-verification (reply 07).\n\nSummary clause (overstated): \"merch for Mass Adoption and the Boston Bitcoin Festival\".\n\nArticle sentence that settles it: \"I'm also working with Mass Adoption, the Boston Bitcoin group. I make all their merch and I'll be printing live June 24th at The Boston Bitcoin Festival...\"\n\nProposed correction: \"merch for Mass Adoption, the Boston Bitcoin group - printing live at the Boston Bitcoin Festival on June 24th\". The merch is for Mass Adoption; the festival is where he printed live." + "rule": "evidence: 'Flag 1 of 7 ... upheld by Timmy's independent re-verification (reply 07)'; article says 'I'm also working with Mass Adoption, the Boston Bitcoin group' -> merch is for Mass Adoption, festival is where he printed live.", + "q": "Flag 1 of 7 ... upheld by Timmy's independent re-verification (reply 07). ... I'm also working with Mass Adoption, the Boston Bitcoin group.", + "reason": "Article identifies Mass Adoption as the merch recipient; Boston Bitcoin Festival is the live-printing venue. Correction grounded and independently re-verified." }, { "id": 7, - "summary": "Archive fix: magazine-061 misattributes the centerfold reference", "category": "archive_fix", "decision": "approve", - "rule": "Flag 6 of 7. Grade: overstated (minor). Attribution is wrong though the fact is supported.", - "evidence": "Flag 6 of 7. Grade: overstated (minor).\n\nSummary clause: \"which the magazine note ties to a centerfold in issue 5 (Round 5)\".\n\nThe \"(see centerfold)\" reference is in the interview answer itself; the magazine note covers \"his epic contribution to the mag in issue 5 (Round 5)\". Attribution is wrong though the fact is supported.\n\nProposed correction: attribute the centerfold reference to the interview answer, not the magazine note." + "rule": "evidence: 'Flag 6 of 7. Grade: overstated (minor).'; fact supported, attribution wrong -> correct the note to cite the interview answer, not the magazine note.", + "q": "Flag 6 of 7. Grade: overstated (minor). ... Attribution is wrong though the fact is supported.", + "reason": "Fact is supported; the magazine note, not the interview answer, owns the centerfold reference - a minor accurate attribution fix." }, { "id": 8, - "summary": "Trial by Timmy: send Timmy the local-inference trial brief for your Mac", "category": "general", "decision": "table", - "rule": "Timmy runs on your Apple Silicon Mac (36 GB unified memory), so only you can green-light work on that machine.", - "evidence": "Your standing goal: Timmy running fully local on open-weight models, zero dependence on any company's inference API. The trial brief ('Trial by Timmy', 2026-09-24) is ready: serve a tool-capable open model locally via Ollama or llama.cpp behind an OpenAI-compatible endpoint, which Hermes already supports, and benchmark it on Timmy's real workload. Stalled awaiting your go-ahead - Timmy runs on your Apple Silicon Mac (36 GB unified memory), so only you can green-light work on that machine." + "rule": "evidence: 'Stalled awaiting your go-ahead - Timmy runs on your Apple Silicon Mac ... only you can green-light work on that machine'; machine-level resource gate.", + "q": "Stalled awaiting your go-ahead - Timmy runs on your Apple Silicon Mac (36 GB unified memory), so only you can green-light work on that machine.", + "reason": "Machine-level resource gate: only Alexander can green-light work on his Apple Silicon Mac." }, { "id": 9, - "summary": "Q9: hand unreleased audio to Timmy under checksum for independent QC", "category": "general", "decision": "table", - "rule": "Both ways it becomes executable; both need Alexander's decision, so the audio handover goes to Alexander as a named decision.", - "evidence": "Q9 (independent music QC) is not executable as a genuine second opinion from Zephyrus's environment - same host, same tools, and he wrote the item. Timmy's reply 07: the two ways it becomes executable both need Alexander's decision, so the handover of unreleased audio under checksum goes to Alexander as a named decision.\n\nThree wording corrections stay openly logged regardless: <= -0.9 dBFS vs a -1.0 dBTP target; \"the manifest\" is STATE.json; 195.0 s is the FLAC source, MP3 container reads 195.024 s." + "rule": "evidence: 'both ways it becomes executable both need Alexander's decision, so the handover of unreleased audio under checksum goes to Alexander as a named decision.'", + "q": "both ways it becomes executable both need Alexander's decision, so the handover of unreleased audio under checksum goes to Alexander as a named decision.", + "reason": "Both execution paths need Alexander's named decision; the audio handover is his to make." }, { "id": 10, - "summary": "Archive fix: magazine-061 claims a 'weekly Thursday intelligence-style cadence'", "category": "archive_fix", "decision": "approve", - "rule": "Flag 5 of 7. Grade: unsupported. No sentence mentions a Thursday, weekly cadence, or 'intelligence-style' routine.", - "evidence": "Flag 5 of 7. Grade: unsupported.\n\nSummary clause: \"why he keeps a weekly Thursday intelligence-style cadence of work\".\n\nNo sentence in the article text mentions a Thursday, a weekly cadence, or any \"intelligence-style\" routine. Looks like a summarizer hallucination (unless it comes from an image, which was not checked).\n\nProposed correction: delete the clause." + "rule": "evidence: 'Flag 5 of 7. Grade: unsupported.'; no sentence mentions Thursday, weekly cadence, or 'intelligence-style' -> delete the hallucinated clause.", + "q": "Flag 5 of 7. Grade: unsupported. ... No sentence in the article text mentions a Thursday, a weekly cadence, or any intelligence-style routine.", + "reason": "Article contains no Thursday, weekly cadence, or 'intelligence-style' routine; the clause is a summarizer hallucination to delete." }, { "id": 11, - "summary": "Archive fix: magazine-040 'last block he mined' sentence replacement", "category": "archive_fix", "decision": "approve", - "rule": "Published Patoshi analyses end his mining near block 54,316, not 97,250.", - "evidence": "From the Q4 falsification pass (recoveries/falsification-pass.md): the archive's gloss implied block 97,250 was the last block Satoshi mined. Published Patoshi analyses end his mining near block 54,316 - the gloss is broken.\n\nTimmy's proposed replacement sentence (reply 05):\n\n\"It closes with Satoshi resting on the 97,250th block - the parody's Genesis 2:2 close, the block mined on 2010-12-12, the day of Satoshi's last public post. (Not a claim that 97,250 was his last mined block: published Patoshi analyses end his mining near block 54,316.)\"" + "rule": "evidence: 'Q4 falsification pass ... published Patoshi analyses end his mining near block 54,316'; the 'last block' gloss is broken -> accurate replacement sentence.", + "q": "published Patoshi analyses end his mining near block 54,316 - the gloss is broken.", + "reason": "Published Patoshi analyses end Satoshi's mining near block 54,316, not 97,250; replacement sentence is accurate." }, { "id": 12, - "summary": "Archive fix: magazine-041 calls it 'Stackchain's rowdiest fork war'", "category": "archive_fix", "decision": "approve", - "rule": "Flag 4 of 7. Grade: overstated. 'most fun' is supported; 'rowdiest' is an unstated superlative.", - "evidence": "Flag 4 of 7. Grade: overstated.\n\nSummary clause (IPE): \"Stackchain's rowdiest fork war\".\n\nArticle: \"This may go down as the most fun battle of Stackchain just because of the amount of people involved.\" - \"most fun\" is supported; \"rowdiest\" is the archive's superlative, not stated.\n\nProposed correction: \"Stackchain's most fun battle\"." + "rule": "evidence: 'Flag 4 of 7. Grade: overstated.'; 'most fun' is supported by the article; 'rowdiest' is an unstated superlative -> 'most fun battle' is grounded.", + "q": "Flag 4 of 7. Grade: overstated. ... most fun is supported; rowdiest is the archive's superlative, not stated.", + "reason": "'most fun' is supported by the article; 'rowdiest' is an unstated superlative; 'most fun battle' is grounded." } ] } diff --git a/wizard-work/sol/build_sol_wizard_work_inventory.py b/wizard-work/sol/build_sol_wizard_work_inventory.py new file mode 100755 index 0000000..19c5e08 --- /dev/null +++ b/wizard-work/sol/build_sol_wizard_work_inventory.py @@ -0,0 +1,106 @@ +#!/usr/bin/env python3 +# Sol-lane wizard-work/sol inventory + classification report. +# +# Walks /root/troupe-standup/wizard-work/sol, classifies every entry by +# extension into a category, and writes a markdown report. Measured from the +# live filesystem (no symlink following, no guessing). +# +# Re-derive + verify in one gate: +# python3 build_sol_wizard_work_inventory.py +# python3 verify_sol_wizard_work_inventory.py +# Exit 0 only if the regenerated report matches the live tree. +import os +import sys +from collections import Counter +from datetime import datetime, timezone +from pathlib import Path + +ROOT = Path("/root/troupe-standup/wizard-work/sol") +REPORT = Path("/root/troupe-standup/wizard-work/sol/sol-wizard-work-inventory-2026-10-27.md") + +CATEGORIES = { + "script": {".py", ".sh"}, + "config": {".yaml", ".yml", ".json", ".toml", ".env", ".lock"}, + "markdown": {".md", ".txt"}, + "data": {".db", ".sqlite", ".pyc"}, + "media": {".mp3", ".wav", ".png", ".jpg", ".jpeg", ".etag"}, +} + + +def classify(name: str) -> str: + suffix = os.path.splitext(name)[1].lower() + for cat, exts in CATEGORIES.items(): + if suffix in exts: + return cat + return "other" + + +def main() -> int: + if not ROOT.is_dir(): + print(f"FATAL: missing {ROOT}", file=sys.stderr) + return 1 + + files = [] + dirs = [] + for dirpath, dirnames, filenames in os.walk(ROOT): + dirnames.sort() + for fn in sorted(filenames): + p = Path(dirpath) / fn + try: + st = p.stat() + except OSError: + continue + files.append({ + "rel": p.relative_to(ROOT).as_posix(), + "size": st.st_size, + "mtime": datetime.fromtimestamp(st.st_mtime, tz=timezone.utc).isoformat(), + "cat": classify(fn), + }) + for dn in dirnames: + dirs.append( + {"rel": os.path.relpath(str(Path(dirpath) / dn), str(ROOT)), "cat": "dir"} + ) + + total_bytes = sum(f["size"] for f in files) + cat_counts = Counter(f["cat"] for f in files) + + lines = [] + w = lines.append + w("# Sol wizard-work/sol inventory") + w("") + w(f"*generated-by*: sol (Triage lane)\n*generated-at*: {datetime.now(timezone.utc).isoformat()}\n*source*: os.walk over {ROOT} (no symlink following)") + w("") + w("## Headline") + w("") + w("| measure | value |") + w("| --- | --- |") + w(f"| files | {len(files)} |") + w(f"| subdirectories | {len(dirs)} |") + w(f"| total entries | {len(files) + len(dirs)} |") + w(f"| total bytes | {total_bytes:,} |") + w(f"| categories | {len(cat_counts)} |") + w("") + w("## Category rollup") + w("") + w("| category | files | bytes |") + w("| --- | --- | --- |") + for cat in sorted(cat_counts): + b = sum(f["size"] for f in files if f["cat"] == cat) + w(f"| {cat} | {cat_counts[cat]} | {b:,} |") + w("") + w("## File inventory") + w("") + w("| category | relpath | bytes | mtime(UTC) |") + w("| --- | --- | --- | --- |") + for f in sorted(files, key=lambda x: (x["cat"], x["rel"])): + w(f"| {f['cat']} | `{f['rel']}` | {f['size']:,} | {f['mtime']} |") + w("") + REPORT.parent.mkdir(parents=True, exist_ok=True) + REPORT.write_text("\n".join(lines), encoding="utf-8") + print(f"wrote {REPORT}") + print(f"files={len(files)} subdirs={len(dirs)} bytes={total_bytes:,} cats={dict(sorted(cat_counts.items()))}") + return 0 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/wizard-work/sol/sol-wizard-work-inventory-2026-10-27.md b/wizard-work/sol/sol-wizard-work-inventory-2026-10-27.md new file mode 100644 index 0000000..433ce6a --- /dev/null +++ b/wizard-work/sol/sol-wizard-work-inventory-2026-10-27.md @@ -0,0 +1,163 @@ +# Sol wizard-work/sol inventory + +*generated-by*: sol (Triage lane) +*generated-at*: 2026-10-27T03:21:52.970165+00:00 +*source*: os.walk over /root/troupe-standup/wizard-work/sol (no symlink following) + +## Headline + +| measure | value | +| --- | --- | +| files | 134 | +| subdirectories | 2 | +| total entries | 136 | +| total bytes | 2,915,736 | +| categories | 4 | + +## Category rollup + +| category | files | bytes | +| --- | --- | --- | +| config | 31 | 1,298,236 | +| data | 3 | 18,256 | +| markdown | 44 | 1,377,196 | +| script | 56 | 222,048 | + +## File inventory + +| category | relpath | bytes | mtime(UTC) | +| --- | --- | --- | --- | +| config | `.chk.json` | 10,352 | 2026-10-21T18:34:15.444630+00:00 | +| config | `Sol-Lane-Triage-2026-10-24.json` | 1,778 | 2026-10-24T19:03:42.209201+00:00 | +| config | `Triage-2026-09-26.json` | 9,671 | 2026-10-26T08:42:03.524448+00:00 | +| config | `Triaged-Seed-2026-10-26.json` | 13,591 | 2026-10-26T22:20:05.849538+00:00 | +| config | `_jobboard_triage_registry.json` | 323 | 2026-10-21T07:19:04.747617+00:00 | +| config | `cron-fleet-triage-2026-10-20-refresh.json` | 39,312 | 2026-10-20T20:19:18.780035+00:00 | +| config | `cron-fleet-triage-2026-10-22.json` | 41,544 | 2026-10-22T19:32:14.546664+00:00 | +| config | `daily-ledger-triage-2026-10-21.json` | 1,868 | 2026-10-21T12:52:54.559351+00:00 | +| config | `daily-ledger-triage-2026-10-22.json` | 1,363 | 2026-10-22T08:23:16.759368+00:00 | +| config | `daily-ledger-triage-2026-10-24.json` | 1,552 | 2026-10-24T07:58:50.956064+00:00 | +| config | `daily-ledger-triage-2026-10-26.json` | 2,181 | 2026-10-26T06:31:43.071884+00:00 | +| config | `daily-local-pipe-triage-2026-10-25.json` | 9,072 | 2026-10-25T08:30:08.256656+00:00 | +| config | `daily-local-pipe-triage-2026-10-26.json` | 9,472 | 2026-10-26T03:51:30.828300+00:00 | +| config | `issue-triage.json` | 1,161 | 2026-10-20T17:31:37.813344+00:00 | +| config | `library-drop-roster.json` | 3,545 | 2026-10-23T18:04:41.319841+00:00 | +| config | `pending-request-triage-2026-09-26.json` | 3,260 | 2026-10-22T22:20:33.954925+00:00 | +| config | `queue-status-index.json` | 79,597 | 2026-10-23T09:31:36.099756+00:00 | +| config | `queue_triage.json` | 15,332 | 2026-10-23T06:40:48.119680+00:00 | +| config | `sol-profile-health-2026-10-24.json` | 5,267 | 2026-10-24T05:12:05.502853+00:00 | +| config | `sol-profile-skill-triage-2026-10-24.json` | 10,320 | 2026-10-24T16:17:16.180055+00:00 | +| config | `triage-2026-10-22.json` | 9,892 | 2026-10-22T19:35:19.143851+00:00 | +| config | `triage-canonical.json` | 602 | 2026-10-21T15:56:00.653515+00:00 | +| config | `triage-daily-2026-10-22.json` | 1,759 | 2026-10-22T05:50:50.225445+00:00 | +| config | `triage-inbox-2026-09-26/triage_seed_results.json` | 3,444 | 2026-10-21T01:46:31.937130+00:00 | +| config | `triage-profile-census-2026-10-26.json` | 4,287 | 2026-10-26T11:24:41.690986+00:00 | +| config | `triage-profiles-2026-10-21.json` | 4,020 | 2026-10-21T04:32:08.093541+00:00 | +| config | `triage-profiles-20261022110654Z.json` | 4,020 | 2026-10-22T11:07:41.957228+00:00 | +| config | `triage-wizard-work-2026-10-23.json` | 979,305 | 2026-10-23T15:04:41.865594+00:00 | +| config | `triage.json` | 1,551 | 2026-10-22T16:39:16.742398+00:00 | +| config | `triage_results.json` | 11,046 | 2026-10-26T22:05:40.392496+00:00 | +| config | `workqueue-triage.json` | 17,749 | 2026-10-23T23:35:56.197271+00:00 | +| data | `__pycache__/sol_triage_lib.cpython-314.pyc` | 7,256 | 2026-10-25T11:14:52.119149+00:00 | +| data | `__pycache__/verify_sol_triage.cpython-314.pyc` | 5,288 | 2026-10-24T18:40:03.096454+00:00 | +| data | `__pycache__/verify_troupe_sol_health.cpython-314.pyc` | 5,712 | 2026-10-24T18:40:03.360476+00:00 | +| markdown | `README.md` | 958 | 2026-10-23T20:47:09.912527+00:00 | +| markdown | `Sol-Lane-Triage-2026-10-24.md` | 2,004 | 2026-10-24T19:03:42.219202+00:00 | +| markdown | `TRIAGE.md` | 1,836 | 2026-10-26T08:42:03.532448+00:00 | +| markdown | `_jobboard_triage_registry.md` | 2,174 | 2026-10-21T07:19:04.747617+00:00 | +| markdown | `apply-queue-live-state-sweep-2026-10-25.md` | 6,271 | 2026-10-25T00:30:46.487747+00:00 | +| markdown | `checksum_verify.txt` | 98 | 2026-10-21T04:32:08.097541+00:00 | +| markdown | `cron-fleet-triage-2026-10-20-refresh.md` | 9,891 | 2026-10-20T20:19:18.777035+00:00 | +| markdown | `cron-fleet-triage-2026-10-20.md` | 13,682 | 2026-10-20T14:43:45.079029+00:00 | +| markdown | `cron-fleet-triage-2026-10-22.md` | 14,110 | 2026-10-22T19:32:14.546664+00:00 | +| markdown | `daily-ledger-triage-2026-10-21.md` | 1,931 | 2026-10-21T12:53:13.602912+00:00 | +| markdown | `daily-ledger-triage-2026-10-22.md` | 1,633 | 2026-10-22T16:39:31.435619+00:00 | +| markdown | `daily-ledger-triage-2026-10-26.md` | 1,089 | 2026-10-26T06:31:43.075885+00:00 | +| markdown | `daily-local-pipe-triage-2026-10-25.md` | 2,023 | 2026-10-25T08:30:08.257656+00:00 | +| markdown | `daily-local-pipe-triage-2026-10-26.md` | 1,791 | 2026-10-26T03:51:30.829300+00:00 | +| markdown | `daily-triage-2026-10-21.md` | 2,560 | 2026-10-21T01:51:20.479913+00:00 | +| markdown | `inbox-triage-2026-10-20.md` | 2,804 | 2026-10-20T23:01:24.009901+00:00 | +| markdown | `issue-triage.md` | 3,398 | 2026-10-20T17:31:37.844347+00:00 | +| markdown | `library-drop-roster.md` | 3,491 | 2026-10-23T18:04:52.940828+00:00 | +| markdown | `pending-request-triage-2026-09-26.md` | 1,107 | 2026-10-22T22:20:33.960925+00:00 | +| markdown | `queue-state-triage-2026-10-21.md` | 4,462 | 2026-10-21T18:29:59.700691+00:00 | +| markdown | `queue-status-index.md` | 9,961 | 2026-10-23T09:31:36.097755+00:00 | +| markdown | `queue-triage.md` | 6,408 | 2026-10-23T12:10:46.725913+00:00 | +| markdown | `queue_triage.md` | 10,927 | 2026-10-23T06:40:48.146682+00:00 | +| markdown | `repo-file-classification.md` | 4,068 | 2026-10-26T22:20:05.864539+00:00 | +| markdown | `sol-lane-triage-2026-10-25.md` | 3,104 | 2026-10-27T00:47:10.939410+00:00 | +| markdown | `sol-lane-triage-2026-10-27.md` | 3,050 | 2026-10-27T00:42:13.018633+00:00 | +| markdown | `sol-profile-health-2026-10-24.md` | 1,938 | 2026-10-24T05:10:54.767984+00:00 | +| markdown | `sol-profile-skill-triage-2026-10-24.md` | 5,128 | 2026-10-24T16:17:16.181056+00:00 | +| markdown | `sol-profile-triage-report.md` | 1,132,083 | 2026-10-27T00:52:57.663220+00:00 | +| markdown | `sol-queue-status-triage-2026-10-26.md` | 2,764 | 2026-10-26T01:10:06.559326+00:00 | +| markdown | `sol-triage-manifest-2026-10-23.md` | 7,195 | 2026-10-23T03:48:34.816053+00:00 | +| markdown | `sol_triage_report.md` | 56,450 | 2026-10-24T10:47:04.997003+00:00 | +| markdown | `triage-daily-2026-10-22.md` | 840 | 2026-10-22T02:47:57.638225+00:00 | +| markdown | `triage-inbox-2026-09-26/triage_report.md` | 3,914 | 2026-10-21T01:46:31.929129+00:00 | +| markdown | `triage-profile-census-2026-10-26.md` | 2,139 | 2026-10-26T11:24:41.690986+00:00 | +| markdown | `triage-profiles-2026-10-21.md` | 2,064 | 2026-10-21T04:32:08.094541+00:00 | +| markdown | `triage-profiles-20261022110654Z.md` | 1,892 | 2026-10-22T11:07:41.957228+00:00 | +| markdown | `triage-queue-report-2026-10-21.md` | 9,817 | 2026-10-22T00:05:39.122390+00:00 | +| markdown | `triage-queue.md` | 12,924 | 2026-10-21T21:20:04.415354+00:00 | +| markdown | `triage-report-2026-10-26.md` | 1,884 | 2026-10-26T22:20:05.870539+00:00 | +| markdown | `triage-wizard-work-2026-10-23.md` | 921 | 2026-10-23T15:04:41.867595+00:00 | +| markdown | `triage_report.md` | 7,128 | 2026-10-26T22:05:40.393497+00:00 | +| markdown | `wizard-work-triage-2026-10-21.md` | 1,807 | 2026-10-21T15:41:38.426527+00:00 | +| markdown | `workqueue-triage.md` | 11,477 | 2026-10-23T23:35:56.212272+00:00 | +| script | `_check_library_drop_roster.sh` | 746 | 2026-10-23T18:04:41.319841+00:00 | +| script | `_cron_fleet_triage_gen_2026-10-20.py` | 5,332 | 2026-10-20T14:43:45.087030+00:00 | +| script | `_gen_sol_triage.py` | 4,765 | 2026-10-27T00:52:40.236773+00:00 | +| script | `_jobboard_triage_verify.py` | 3,728 | 2026-10-21T07:19:04.747617+00:00 | +| script | `_verify_census.py` | 1,528 | 2026-10-26T11:24:41.690986+00:00 | +| script | `_verify_check.py` | 3,694 | 2026-10-22T19:32:08.352154+00:00 | +| script | `_verify_daily_triage.py` | 2,868 | 2026-10-22T05:50:50.230446+00:00 | +| script | `_verify_triage_profiles.py` | 2,142 | 2026-10-21T04:32:08.094541+00:00 | +| script | `build_daily_triage_2026-10-27.py` | 5,824 | 2026-10-27T00:39:37.853714+00:00 | +| script | `build_queue_triage.py` | 7,245 | 2026-10-23T01:07:36.212368+00:00 | +| script | `build_sol_wizard_work_inventory.py` | 3,539 | 2026-10-27T03:21:47.567640+00:00 | +| script | `build_solo_triage.py` | 5,435 | 2026-10-25T11:20:35.284653+00:00 | +| script | `check-triage-wizard-work.py` | 5,093 | 2026-10-23T15:06:31.647743+00:00 | +| script | `check-triage.sh` | 4,495 | 2026-10-21T21:20:53.016354+00:00 | +| script | `check_sol_lane_triage.py` | 1,717 | 2026-10-24T19:04:05.119092+00:00 | +| script | `check_sol_profile_health.py` | 3,231 | 2026-10-24T05:10:54.776985+00:00 | +| script | `check_sol_profile_skill_triage.py` | 4,171 | 2026-10-24T16:17:41.375305+00:00 | +| script | `check_sol_triage.py` | 4,040 | 2026-10-23T20:47:02.917949+00:00 | +| script | `check_sol_triage_2026_09_26.py` | 6,726 | 2026-10-25T19:34:06.159069+00:00 | +| script | `check_triage.py` | 2,063 | 2026-10-26T22:05:50.195345+00:00 | +| script | `check_triage_2026_10_26.py` | 6,301 | 2026-10-26T22:20:05.852538+00:00 | +| script | `cron-fleet-triage-refresh-verify.py` | 5,259 | 2026-10-20T20:19:33.514248+00:00 | +| script | `cron-fleet-triage-verify.py` | 4,014 | 2026-10-20T14:43:45.083030+00:00 | +| script | `daily-local-pipe-triage-2026-10-25.verify.py` | 4,361 | 2026-10-25T08:30:08.257656+00:00 | +| script | `daily-local-pipe-triage-2026-10-26.verify.py` | 4,362 | 2026-10-26T03:51:30.829300+00:00 | +| script | `extract_questions.py` | 490 | 2026-10-23T01:07:36.256371+00:00 | +| script | `gen_and_verify.sh` | 997 | 2026-10-25T11:19:00.587790+00:00 | +| script | `issue-triage-verify.py` | 1,876 | 2026-10-20T17:31:44.943932+00:00 | +| script | `library_drop_classify.py` | 1,837 | 2026-10-23T18:04:41.319841+00:00 | +| script | `queue_check_openset.py` | 959 | 2026-10-21T18:29:33.045511+00:00 | +| script | `sol-lane-triage-gen-2026-10-24.py` | 6,511 | 2026-10-24T19:03:35.182621+00:00 | +| script | `sol-profile-skill-triage.py` | 7,544 | 2026-10-24T16:17:07.903315+00:00 | +| script | `sol_triage_lib.py` | 5,009 | 2026-10-25T11:14:22.643699+00:00 | +| script | `triage-inbox-2026-09-26/triage_rubric.py` | 4,562 | 2026-10-21T01:46:31.926129+00:00 | +| script | `triage-inbox-2026-09-26/triage_test.py` | 4,622 | 2026-10-21T01:46:47.285394+00:00 | +| script | `triage_check.py` | 5,244 | 2026-10-21T15:41:45.482108+00:00 | +| script | `triage_classify.py` | 4,444 | 2026-10-26T22:05:34.983028+00:00 | +| script | `triage_gen_daily.py` | 6,131 | 2026-10-26T03:38:09.874939+00:00 | +| script | `triage_verify_daily.py` | 2,976 | 2026-10-22T02:47:57.638225+00:00 | +| script | `triage_work_status.py` | 6,386 | 2026-10-21T15:40:48.875448+00:00 | +| script | `verify_daily_ledger_triage_check.py` | 12,816 | 2026-10-26T15:42:50.238877+00:00 | +| script | `verify_daily_triage_2026-10-27.py` | 3,452 | 2026-10-27T00:41:24.979635+00:00 | +| script | `verify_daily_triage_2026-10-27.sh` | 866 | 2026-10-27T00:42:00.880623+00:00 | +| script | `verify_pending_request_triage.py` | 2,027 | 2026-10-22T22:20:33.973926+00:00 | +| script | `verify_queue_status.sh` | 4,169 | 2026-10-23T09:31:36.099756+00:00 | +| script | `verify_queue_triage_check.sh` | 1,535 | 2026-10-26T01:06:06.177416+00:00 | +| script | `verify_sol_daily_ledger_triage_check.py` | 7,207 | 2026-10-26T06:22:43.017945+00:00 | +| script | `verify_sol_profile_triage.py` | 3,311 | 2026-10-25T11:19:57.400508+00:00 | +| script | `verify_sol_profile_triage.sh` | 217 | 2026-10-25T11:17:45.852584+00:00 | +| script | `verify_sol_triage.py` | 3,540 | 2026-10-24T18:26:36.327632+00:00 | +| script | `verify_sol_triage.sh` | 606 | 2026-10-27T00:53:10.378276+00:00 | +| script | `verify_triage.py` | 1,418 | 2026-10-20T23:01:24.009901+00:00 | +| script | `verify_triage_queue.py` | 4,250 | 2026-10-23T01:07:36.224369+00:00 | +| script | `verify_troupe_sol_health.py` | 3,452 | 2026-10-24T18:26:36.331633+00:00 | +| script | `workqueue_triage.py` | 6,235 | 2026-10-23T23:37:54.877087+00:00 | +| script | `workqueue_triage_verify.py` | 4,680 | 2026-10-23T23:37:17.884027+00:00 |