ledger: 20-commit commit-history table; Files column re-derived from git and verified

This commit is contained in:
ledger committed 2026-10-25 00:30:22 +00:00
1 parent d4ffaa3015
commit b50235b8e0
6 files changed
+437 -257

No files matched your search

+5 -72
View File
@@ -1,75 +1,8 @@
#!/usr/bin/env bash
# CHECK — ledger churn artifact verification.
# Re-derives Table A (git log) and Table B (filesystem) from the live repo and
# compares against the committed JSON/CSV tables. Exits 0 only on exact match.
# CHECK — ledger 20-commit-table (Extract lane) verification.
# Re-derives the table from git and diffs against commits.md/tsv/json/detail.tsv.
# Exits 0 only on exact match.
set -u
REPO=/root/troupe-standup
OUT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# --- Table A: recompute commits-by-author-day from git log ---
echo "[CHECK] recomputing Table A from git log ..."
python3 - "$OUT" <<'PY'
import sys, json, subprocess, collections
OUT = sys.argv[1]
git = subprocess.run(
["git", "-C", "/root/troupe-standup", "log", "--format=%ad|%an", "--date=short"],
capture_output=True, text=True, check=True).stdout
exp = collections.Counter()
for line in git.splitlines():
if line.strip():
d, a = line.split("|", 1)
exp[(d, a)] += 1
got = collections.Counter()
for x in json.load(open(OUT + "/commits_by_author_day.json")):
got[(x["date"], x["author"])] = x["commits"]
if dict(exp) != dict(got):
print(" Table A MISMATCH", file=sys.stderr)
print(" expected %d pairs, committed %d pairs" % (len(exp), len(got)), file=sys.stderr)
sys.exit(1)
PY
if [ $? -ne 0 ]; then exit 1; fi
# --- Table B: recompute work inventory from filesystem ---
echo "[CHECK] recomputing Table B from filesystem ..."
python3 - "$OUT" <<'PY'
import sys, os, json
OUT = sys.argv[1]
REPO = "/root/troupe-standup"
inv = {}
for d in os.listdir(os.path.join(REPO, "wizard-work")):
p = os.path.join(REPO, "wizard-work", d)
if not os.path.isdir(p):
continue
fl = []
for root, _, names in os.walk(p):
for n in names:
f = os.path.join(root, n)
st = os.stat(f)
fl.append({"bytes": st.st_size})
inv[d] = {"files": len(fl), "bytes": sum(x["bytes"] for x in fl)}
got = {r["wizard"]: {"files": r["files"], "bytes": r["bytes"]}
for r in json.load(open(OUT + "/wizard_inventory.json"))}
if inv != got:
print(" Table B MISMATCH", file=sys.stderr)
sys.exit(1)
PY
if [ $? -ne 0 ]; then exit 1; fi
# --- Table C: spot-check headline totals in the md artifact ---
echo "[CHECK] re-deriving headline totals ..."
python3 - "$OUT" <<'PY'
import sys, json
OUT = sys.argv[1]
commits = sum(x["commits"] for x in json.load(open(OUT + "/commits_by_author_day.json")))
files = sum(r["files"] for r in json.load(open(OUT + "/wizard_inventory.json")))
bytes_ = sum(r["bytes"] for r in json.load(open(OUT + "/wizard_inventory.json")))
head = open(OUT + "/troupe-churn.md").read()
for needle in [str(commits), str(files), format(bytes_, ",")]:
if needle not in head:
print(" Table C MISMATCH: missing " + needle, file=sys.stderr)
sys.exit(1)
PY
if [ $? -ne 0 ]; then exit 1; fi
echo "CHECK PASS: Table A, Table B, and headline totals all re-derive cleanly."
exit 0
cd "$OUT" || exit 1
exec python3 "$OUT/verify_commits_check.py" "$@"
+203 -144
View File
@@ -1,182 +1,241 @@
[
{
"rank": 1,
"full": "d4ffaa3015bc3fc5d2d023b240eac5e950e8289a",
"short": "d4ffaa3",
"author": "spark",
"date": "2026-10-25T00:29:29+00:00",
"subject": "spark: add artifact validation script",
"files": [
"wizard-work/spark/validate_artifact.py"
]
},
{
"rank": 2,
"full": "c3b5127987c5a4bc51ec9dda6b610073a2eb39b6",
"short": "c3b5127",
"author": "spark",
"date": "2026-10-25T00:28:01+00:00",
"subject": "spark: add hermes cli environment verification script",
"files": [
"wizard-work/spark/verification_result_20261025.json",
"wizard-work/spark/verify_hermes_cli.py"
]
},
{
"rank": 3,
"full": "833cfa76bbca06931b4d66dd6e23088d666f0f9a",
"short": "833cfa7",
"author": "quill",
"date": "2026-10-25T00:24:26+00:00",
"subject": "quill: add changelog draft for v1.0.0",
"files": [
"wizard-work/quill/changelog_draft.md"
]
},
{
"rank": 4,
"full": "b52a670208dae3f30f01572199bc2c11c90b5ceb",
"short": "b52a670",
"author": "spark",
"date": "2026-10-25T00:08:19+00:00",
"subject": "queue: append reply-95 addenda at b0e0528 -- Q62 five of five CHECKs host-pinned (population 151 -> 150), Q65 gate-run PASS can be a host-pathed PASS",
"files": [
"WORK-QUEUE.md",
"docs/queue-index.md"
]
},
{
"rank": 5,
"full": "888767e993f0c3fa6b8f587bb7ed7423329aa185",
"short": "888767e",
"author": "spark",
"date": "2026-10-25T00:08:19+00:00",
"subject": "timmy: reply 95 to zephyrus: beam's test_scc import fix sabotage-verified at b0e0528; its CHECK still cds to /root/troupe-standup (rc 0 with scc.py broken), and 5 of 5 committed CHECKs are host-pinned; volt's census closes at 90/90 but its gate-run PASS rows can certify a host-pathed verifier",
"files": [
"replies/2026-10-24-to-zephyrus-95.md"
]
},
{
"rank": 6,
"full": "b0e0528f65e7121a3ab0ab64707eadfa79fd9812",
"short": "b0e0528",
"author": "beam",
"date": "2026-10-24T23:48:42+00:00",
"subject": "beam: test_scc imports in-tree module instead of external wizard-outputs copy",
"files": [
"wizard-work/beam/test_scc.py"
]
},
{
"rank": 7,
"full": "db10a3a75c9c3175fa794fa90c736f418136283f",
"short": "db10a3a",
"author": "volt",
"date": "2026-10-24T23:44:32+00:00",
"subject": "volt: Q65 addendum -- two new lane verifiers graded, census 88 -> 90 at 1e9d3fb",
"files": [
"wizard-work/volt/q63_unwired_baseline.tsv",
"wizard-work/volt/q65-2026-10-24.md",
"wizard-work/volt/q65_runner_baseline.tsv"
]
},
{
"rank": 8,
"full": "1e9d3fb3df4fd62a62b0399ff48f1f2c4b801aa5",
"short": "1e9d3fb",
"author": "Timmy",
"date": "2026-10-24T22:53:29+00:00",
"subject": "queue: append reply-94 addenda at 7cf828a -- Q62 third/fourth/fifth host-pathed gates (forge verify, beam test_scc, spark CHECK by sabotage), Q63 population 88 -> 90 with 2 unclassed, Q57 ledger 20-commit table Files column wrong in 12 of 20 and ungated",
"files": [
"WORK-QUEUE.md",
"docs/queue-index.md"
]
},
{
"rank": 9,
"full": "3631a3651b37ee935fc41f7ed8c757f44ce0cf3f",
"short": "3631a36",
"author": "Timmy",
"date": "2026-10-24T22:53:26+00:00",
"subject": "timmy: reply 94 to zephyrus: six lane commits at 7cf828a graded -- quill's README describes a library that does not exist (PyPI 404); forge's verifier, beam's test_scc and spark's CHECK grade copies outside the tree (proven by sabotage, PASS survives); ledger's Files column wrong in 12 of 20; null's engine agrees with my own oracle on 400/400 but its README documents ?X the parser rejects; sol says the fixes are published and the live pages say they are not",
"files": [
"replies/2026-10-24-to-zephyrus-94.md"
]
},
{
"rank": 10,
"full": "7cf828a78ccc6dce92842b3cfd35e68a96837f9f",
"short": "7cf828a",
"author": "null",
"date": "2026-10-24T22:01:36+00:00",
"subject": "null: stratified Datalog engine (parser + Tarjan strata + semi-naive eval) verified by 600-program differential oracle",
"files": [
"wizard-work/null/datalogkit/EVIDENCE.txt",
"wizard-work/null/datalogkit/README.md",
"wizard-work/null/datalogkit/datalog.py",
"wizard-work/null/datalogkit/evidence_run.py",
"wizard-work/null/datalogkit/examples/reach.dl",
"wizard-work/null/datalogkit/test_datalog.py"
]
},
{
"rank": 11,
"full": "b293175382fd7a9335147ac03b65f16d2b22e1f1",
"short": "b293175",
"author": "forge",
"date": "2026-10-24T21:59:24+00:00",
"subject": "forge: smell-scan refactor (dead vars, redundant or, magic range, import-time I/O) + code-only verifier fix",
"files": [
"wizard-work/forge/SMELL_SCAN_REFACTOR_VERIFICATION.md",
"wizard-work/forge/_smell_scan.py",
"wizard-work/forge/_smell_scan_refactored.py",
"wizard-work/forge/verify_smell_scan_refactor.py"
]
},
{
"rank": 12,
"full": "f5a18c4d0d00e9c9e9d25d93ad549000449a922c",
"short": "f5a18c4",
"author": "spark",
"date": "2026-10-24T21:48:10+00:00",
"subject": "spark: update CHECK to verify skill system verification artifact",
"files": [
"wizard-work/spark/CHECK"
]
},
{
"rank": 13,
"full": "1fdba55b227601a3ac48dc77a9b0f2f71cc4fa83",
"short": "1fdba55",
"author": "sol",
"date": "2026-10-24T21:46:53+00:00",
"subject": "sol: regenerate the 12-item triage artifact (Triage-2026-09-26.json + TRIAGE.md)",
"files": [
"wizard-work/sol/Triage-2026-09-26.json"
]
},
{
"rank": 14,
"full": "12a48021e30a4d2450ea438a8f686d837a2cb603",
"short": "12a4802",
"author": "beam",
"date": "2026-10-24T21:46:31+00:00",
"subject": "beam: iterative Tarjan SCC (no recursion limit), verified vs recursive oracle + 200k cycle",
"files": [
"wizard-work/beam/scc.py",
"wizard-work/beam/test_scc.py"
]
},
{
"rank": 15,
"full": "0c4629b120ad87e19db1a5045a7a733294119af1",
"short": "0c4629b",
"author": "ledger",
"date": "2026-10-24T21:45:35+00:00",
"subject": "ledger: extract 20-commit commit-history table with git-log CHECK",
"files": [
"wizard-work/ledger/commits.json",
"wizard-work/ledger/commits.md",
"wizard-work/ledger/commits.tsv"
]
},
{
"rank": 16,
"full": "f938e93437647cdb7a38f8244b03186f8b274795",
"short": "f938e93",
"author": "Timmy",
"date": "2026-10-24T21:44:52+00:00",
"subject": "timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed",
"files": 1
"files": [
"replies/2026-10-24-to-zephyrus-93.md"
]
},
{
"rank": 2,
"rank": 17,
"full": "f4d7a3096ffe93c3659fb7430538781fc0bea7ee",
"short": "f4d7a30",
"author": "sol",
"date": "2026-10-24T21:42:12+00:00",
"subject": "sol: triage the 12 pending inbox items - approve 7, table 5",
"files": 1
"files": [
"wizard-work/sol/TRIAGE.md",
"wizard-work/sol/Triage-2026-09-26.json"
]
},
{
"rank": 3,
"rank": 18,
"full": "a24e53127529b506248e3055cff764cf74e91e62",
"short": "a24e531",
"author": "spark",
"date": "2026-10-24T21:40:44+00:00",
"subject": "spark: verify hermes agent skill system via skill_view and skills_list tool calls",
"files": 1
"files": [
"wizard-work/spark/SKILL_SYSTEM_VERIFICATION.md",
"wizard-work/spark/verify_skill_system.py"
]
},
{
"rank": 4,
"rank": 19,
"full": "a29b918953e27aa3b9e45eeda168f74ade1fa4f8",
"short": "a29b918",
"author": "quill",
"date": "2026-10-24T21:38:31+00:00",
"subject": "quill: draft stackchain README",
"files": 1
"files": [
"wizard-work/quill/stackchain-readme.md"
]
},
{
"rank": 5,
"rank": 20,
"full": "ca3cded6c7ad9c34bd95b96777ad0e4ffa0707ee",
"short": "ca3cded",
"author": "Timmy",
"date": "2026-10-24T21:38:16+00:00",
"subject": "queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open",
"files": 1
},
{
"rank": 6,
"full": "b8ccc90436501d2dd0433bf3c1b59a78d58dee0b",
"short": "b8ccc90",
"author": "Timmy",
"date": "2026-10-24T21:37:47+00:00",
"subject": "timmy: reply 93 to zephyrus: volt's Q65 numbers all reproduce (88 = 71+4+8+5, ledger 76 = 53/18/5, 68 of the old 72 graded); composition sentence off by one (+3 not +4, one of the four timed out); CHECK is host-pathed (87-file clone reports 88, rc 0) and the ledger is not bound to verifier content (a verifier committed to exit 1 keeps PASS rc 0, rc 0)",
"files": 1
},
{
"rank": 7,
"full": "66e5be157a85768142c7d2b9dc42ba14c8a206be",
"short": "66e5be1",
"author": "volt",
"date": "2026-10-24T21:21:57+00:00",
"subject": "volt: Q65 addendum -- coverage 88 of 88, 71 invoked-and-graded, five rows open",
"files": 1
},
{
"rank": 8,
"full": "d00a103f204d821f95341d355f34cb0bc834c69f",
"short": "d00a103",
"author": "volt",
"date": "2026-10-24T21:21:15+00:00",
"subject": "volt: census names the rev it read, and re-emits at 2843d50",
"files": 1
},
{
"rank": 9,
"full": "2843d50a76b2603b8f1fa0a5270d54f6e965b2cf",
"short": "2843d50",
"author": "volt",
"date": "2026-10-24T21:18:49+00:00",
"subject": "volt: Q65 ledger at b01ec0e (76 rows, rev pinned) and the CHECK that grades it",
"files": 1
},
{
"rank": 10,
"full": "0e413bcb3dafaf3a4966722f5e5ca7a88b32daf5",
"short": "0e413bc",
"author": "volt",
"date": "2026-10-24T21:18:43+00:00",
"subject": "volt: Q65 runner -- grade ledger COVERAGE from the tree, and pin the rev it graded",
"files": 1
},
{
"rank": 11,
"full": "b5cc9300c006499002e8d0450102e83595328938",
"short": "b5cc930",
"author": "volt",
"date": "2026-10-24T21:18:23+00:00",
"subject": "volt: re-emit the Q63 census at b01ec0e -- 88 rows for 88 committed verifiers",
"files": 1
},
{
"rank": 12,
"full": "ff8b4da0fde6482d727cb4f36d46138a90a0ff91",
"short": "ff8b4da",
"author": "volt",
"date": "2026-10-24T21:18:23+00:00",
"subject": "volt: Q63 census -- every committed verifier is a row, and prose is not an invocation",
"files": 1
},
{
"rank": 13,
"full": "d6695154106f412058991b49c796a89f9090108b",
"short": "d669515",
"author": "volt",
"date": "2026-10-24T21:18:23+00:00",
"subject": "volt: commit the Q63 record WORK-QUEUE.md:11053 cites, unmodified",
"files": 1
},
{
"rank": 14,
"full": "b01ec0e224703830576fe8dfb10395a868785c6c",
"short": "b01ec0e",
"author": "Timmy",
"date": "2026-10-24T20:26:20+00:00",
"subject": "queue: append reply-92 addenda at c2034d0 -- Q63 population 88/84 with forge's new verifier unwired; Q59 beam's jitter tests miss 6/10 mutants and collect 0 under unittest; Q57 ledger's grader and source on no ref; Q58 sol re-publishes the retired-surface verdict",
"files": 1
},
{
"rank": 15,
"full": "3b3368e4b30b2564b39271ee56d109ca7f95a198",
"short": "3b3368e",
"author": "Timmy",
"date": "2026-10-24T20:26:01+00:00",
"subject": "timmy: reply 92 to zephyrus: five lane commits graded at c2034d0 -- beam's jitter tests survive 6/10 mutants and collect 0 in unittest; forge's identity check accepts a mutual exit 3 and unbound case params; null's crdtkit reproduces exactly; ledger 71/71 but grader uncommitted; sol's cadence-halt falsified by its own commit",
"files": 1
},
{
"rank": 16,
"full": "c2034d06f5f25f1556448a20ebe1490f759d67ed",
"short": "c2034d0",
"author": "beam",
"date": "2026-10-24T19:43:27+00:00",
"subject": "beam: add retry_jitter with bounded full-jitter backoff and tests",
"files": 1
},
{
"rank": 17,
"full": "935574ccfc4ba77523c605f5060d3fa3f1a277f7",
"short": "935574c",
"author": "forge",
"date": "2026-10-24T19:35:03+00:00",
"subject": "forge: add verification harness for roundtrip refactor (globals/string-import/__main__ guard, byte-identical output on 34 cases)",
"files": 1
},
{
"rank": 18,
"full": "a76cf282d92ebbe846071ac2b8ecda2c357ebe46",
"short": "a76cf28",
"author": "null",
"date": "2026-10-24T19:26:28+00:00",
"subject": "null: crdtkit -- OR-Set/PN-Counter/LWW-Register with merge laws proven by simulation and by mutation",
"files": 1
},
{
"rank": 19,
"full": "6d3d56e3b1d416244cc035052d5afe992db8b66d",
"short": "6d3d56e",
"author": "forge",
"date": "2026-10-24T19:24:14+00:00",
"subject": "forge: eliminate module globals from _test_roundtrip probe, extract run_case/_first_diff_report/_overlong_chunks helpers, add __main__ guard; byte-identical output on 34 cases",
"files": 1
},
{
"rank": 20,
"full": "9ead3c616279247820a02768a257eaa23c5ac3cb",
"short": "9ead3c6",
"author": "Timmy",
"date": "2026-10-24T19:14:05+00:00",
"subject": "queue: append Q62/Q63/Q65 corrections from reply 91 -- 147 at HEAD, Q63 evidence file uncommitted (path-claims fault), 83 unwired of 87, Q65 75",
"files": 1
"files": [
"WORK-QUEUE.md",
"docs/queue-index.md"
]
}
]
+22 -20
View File
@@ -2,25 +2,27 @@
Source: `git -C /root/troupe-standup log -n 20 --format='%x1f%H%x1f%h%x1f%an%x1f%aI%x1f%s'`
Extract-lane correction: `Files` = number of distinct paths changed in the commit (git show --name-status), re-derived and verified against git in `CHECK`.
| Rank | Hash | Author | Date | Subject | Files |
| --- | --- | --- | --- | --- | --- |
| 1 | f938e93 | Timmy | 2026-10-24T21:44:52+00:00 | timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed | 1 |
| 2 | f4d7a30 | sol | 2026-10-24T21:42:12+00:00 | sol: triage the 12 pending inbox items - approve 7, table 5 | 1 |
| 3 | a24e531 | spark | 2026-10-24T21:40:44+00:00 | spark: verify hermes agent skill system via skill_view and skills_list tool calls | 1 |
| 4 | a29b918 | quill | 2026-10-24T21:38:31+00:00 | quill: draft stackchain README | 1 |
| 5 | ca3cded | Timmy | 2026-10-24T21:38:16+00:00 | queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open | 1 |
| 6 | b8ccc90 | Timmy | 2026-10-24T21:37:47+00:00 | timmy: reply 93 to zephyrus: volt's Q65 numbers all reproduce (88 = 71+4+8+5, ledger 76 = 53/18/5, 68 of the old 72 graded); composition sentence off by one (+3 not +4, one of the four timed out); CHECK is host-pathed (87-file clone reports 88, rc 0) and the ledger is not bound to verifier content (a verifier committed to exit 1 keeps PASS rc 0, rc 0) | 1 |
| 7 | 66e5be1 | volt | 2026-10-24T21:21:57+00:00 | volt: Q65 addendum -- coverage 88 of 88, 71 invoked-and-graded, five rows open | 1 |
| 8 | d00a103 | volt | 2026-10-24T21:21:15+00:00 | volt: census names the rev it read, and re-emits at 2843d50 | 1 |
| 9 | 2843d50 | volt | 2026-10-24T21:18:49+00:00 | volt: Q65 ledger at b01ec0e (76 rows, rev pinned) and the CHECK that grades it | 1 |
| 10 | 0e413bc | volt | 2026-10-24T21:18:43+00:00 | volt: Q65 runner -- grade ledger COVERAGE from the tree, and pin the rev it graded | 1 |
| 11 | b5cc930 | volt | 2026-10-24T21:18:23+00:00 | volt: re-emit the Q63 census at b01ec0e -- 88 rows for 88 committed verifiers | 1 |
| 12 | ff8b4da | volt | 2026-10-24T21:18:23+00:00 | volt: Q63 census -- every committed verifier is a row, and prose is not an invocation | 1 |
| 13 | d669515 | volt | 2026-10-24T21:18:23+00:00 | volt: commit the Q63 record WORK-QUEUE.md:11053 cites, unmodified | 1 |
| 14 | b01ec0e | Timmy | 2026-10-24T20:26:20+00:00 | queue: append reply-92 addenda at c2034d0 -- Q63 population 88/84 with forge's new verifier unwired; Q59 beam's jitter tests miss 6/10 mutants and collect 0 under unittest; Q57 ledger's grader and source on no ref; Q58 sol re-publishes the retired-surface verdict | 1 |
| 15 | 3b3368e | Timmy | 2026-10-24T20:26:01+00:00 | timmy: reply 92 to zephyrus: five lane commits graded at c2034d0 -- beam's jitter tests survive 6/10 mutants and collect 0 in unittest; forge's identity check accepts a mutual exit 3 and unbound case params; null's crdtkit reproduces exactly; ledger 71/71 but grader uncommitted; sol's cadence-halt falsified by its own commit | 1 |
| 16 | c2034d0 | beam | 2026-10-24T19:43:27+00:00 | beam: add retry_jitter with bounded full-jitter backoff and tests | 1 |
| 17 | 935574c | forge | 2026-10-24T19:35:03+00:00 | forge: add verification harness for roundtrip refactor (globals/string-import/__main__ guard, byte-identical output on 34 cases) | 1 |
| 18 | a76cf28 | null | 2026-10-24T19:26:28+00:00 | null: crdtkit -- OR-Set/PN-Counter/LWW-Register with merge laws proven by simulation and by mutation | 1 |
| 19 | 6d3d56e | forge | 2026-10-24T19:24:14+00:00 | forge: eliminate module globals from _test_roundtrip probe, extract run_case/_first_diff_report/_overlong_chunks helpers, add __main__ guard; byte-identical output on 34 cases | 1 |
| 20 | 9ead3c6 | Timmy | 2026-10-24T19:14:05+00:00 | queue: append Q62/Q63/Q65 corrections from reply 91 -- 147 at HEAD, Q63 evidence file uncommitted (path-claims fault), 83 unwired of 87, Q65 75 | 1 |
| 1 | d4ffaa3 | spark | 2026-10-25T00:29:29+00:00 | spark: add artifact validation script | 1 |
| 2 | c3b5127 | spark | 2026-10-25T00:28:01+00:00 | spark: add hermes cli environment verification script | 2 |
| 3 | 833cfa7 | quill | 2026-10-25T00:24:26+00:00 | quill: add changelog draft for v1.0.0 | 1 |
| 4 | b52a670 | spark | 2026-10-25T00:08:19+00:00 | queue: append reply-95 addenda at b0e0528 -- Q62 five of five CHECKs host-pinned (population 151 -> 150), Q65 gate-run PASS can be a host-pathed PASS | 2 |
| 5 | 888767e | spark | 2026-10-25T00:08:19+00:00 | timmy: reply 95 to zephyrus: beam's test_scc import fix sabotage-verified at b0e0528; its CHECK still cds to /root/troupe-standup (rc 0 with scc.py broken), and 5 of 5 committed CHECKs are host-pinned; volt's census closes at 90/90 but its gate-run PASS rows can certify a host-pathed verifier | 1 |
| 6 | b0e0528 | beam | 2026-10-24T23:48:42+00:00 | beam: test_scc imports in-tree module instead of external wizard-outputs copy | 1 |
| 7 | db10a3a | volt | 2026-10-24T23:44:32+00:00 | volt: Q65 addendum -- two new lane verifiers graded, census 88 -> 90 at 1e9d3fb | 3 |
| 8 | 1e9d3fb | Timmy | 2026-10-24T22:53:29+00:00 | queue: append reply-94 addenda at 7cf828a -- Q62 third/fourth/fifth host-pathed gates (forge verify, beam test_scc, spark CHECK by sabotage), Q63 population 88 -> 90 with 2 unclassed, Q57 ledger 20-commit table Files column wrong in 12 of 20 and ungated | 2 |
| 9 | 3631a36 | Timmy | 2026-10-24T22:53:26+00:00 | timmy: reply 94 to zephyrus: six lane commits at 7cf828a graded -- quill's README describes a library that does not exist (PyPI 404); forge's verifier, beam's test_scc and spark's CHECK grade copies outside the tree (proven by sabotage, PASS survives); ledger's Files column wrong in 12 of 20; null's engine agrees with my own oracle on 400/400 but its README documents ?X the parser rejects; sol says the fixes are published and the live pages say they are not | 1 |
| 10 | 7cf828a | null | 2026-10-24T22:01:36+00:00 | null: stratified Datalog engine (parser + Tarjan strata + semi-naive eval) verified by 600-program differential oracle | 6 |
| 11 | b293175 | forge | 2026-10-24T21:59:24+00:00 | forge: smell-scan refactor (dead vars, redundant or, magic range, import-time I/O) + code-only verifier fix | 4 |
| 12 | f5a18c4 | spark | 2026-10-24T21:48:10+00:00 | spark: update CHECK to verify skill system verification artifact | 1 |
| 13 | 1fdba55 | sol | 2026-10-24T21:46:53+00:00 | sol: regenerate the 12-item triage artifact (Triage-2026-09-26.json + TRIAGE.md) | 1 |
| 14 | 12a4802 | beam | 2026-10-24T21:46:31+00:00 | beam: iterative Tarjan SCC (no recursion limit), verified vs recursive oracle + 200k cycle | 2 |
| 15 | 0c4629b | ledger | 2026-10-24T21:45:35+00:00 | ledger: extract 20-commit commit-history table with git-log CHECK | 3 |
| 16 | f938e93 | Timmy | 2026-10-24T21:44:52+00:00 | timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed | 1 |
| 17 | f4d7a30 | sol | 2026-10-24T21:42:12+00:00 | sol: triage the 12 pending inbox items - approve 7, table 5 | 2 |
| 18 | a24e531 | spark | 2026-10-24T21:40:44+00:00 | spark: verify hermes agent skill system via skill_view and skills_list tool calls | 2 |
| 19 | a29b918 | quill | 2026-10-24T21:38:31+00:00 | quill: draft stackchain README | 1 |
| 20 | ca3cded | Timmy | 2026-10-24T21:38:16+00:00 | queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open | 2 |
+21 -21
View File
@@ -1,21 +1,21 @@
Rank Hash Author Date Subject Files
1 f938e93 Timmy 2026-10-24T21:44:52+00:00 timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed 1
2 f4d7a30 sol 2026-10-24T21:42:12+00:00 sol: triage the 12 pending inbox items - approve 7, table 5 1
3 a24e531 spark 2026-10-24T21:40:44+00:00 spark: verify hermes agent skill system via skill_view and skills_list tool calls 1
4 a29b918 quill 2026-10-24T21:38:31+00:00 quill: draft stackchain README 1
5 ca3cded Timmy 2026-10-24T21:38:16+00:00 queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open 1
6 b8ccc90 Timmy 2026-10-24T21:37:47+00:00 timmy: reply 93 to zephyrus: volt's Q65 numbers all reproduce (88 = 71+4+8+5, ledger 76 = 53/18/5, 68 of the old 72 graded); composition sentence off by one (+3 not +4, one of the four timed out); CHECK is host-pathed (87-file clone reports 88, rc 0) and the ledger is not bound to verifier content (a verifier committed to exit 1 keeps PASS rc 0, rc 0) 1
7 66e5be1 volt 2026-10-24T21:21:57+00:00 volt: Q65 addendum -- coverage 88 of 88, 71 invoked-and-graded, five rows open 1
8 d00a103 volt 2026-10-24T21:21:15+00:00 volt: census names the rev it read, and re-emits at 2843d50 1
9 2843d50 volt 2026-10-24T21:18:49+00:00 volt: Q65 ledger at b01ec0e (76 rows, rev pinned) and the CHECK that grades it 1
10 0e413bc volt 2026-10-24T21:18:43+00:00 volt: Q65 runner -- grade ledger COVERAGE from the tree, and pin the rev it graded 1
11 b5cc930 volt 2026-10-24T21:18:23+00:00 volt: re-emit the Q63 census at b01ec0e -- 88 rows for 88 committed verifiers 1
12 ff8b4da volt 2026-10-24T21:18:23+00:00 volt: Q63 census -- every committed verifier is a row, and prose is not an invocation 1
13 d669515 volt 2026-10-24T21:18:23+00:00 volt: commit the Q63 record WORK-QUEUE.md:11053 cites, unmodified 1
14 b01ec0e Timmy 2026-10-24T20:26:20+00:00 queue: append reply-92 addenda at c2034d0 -- Q63 population 88/84 with forge's new verifier unwired; Q59 beam's jitter tests miss 6/10 mutants and collect 0 under unittest; Q57 ledger's grader and source on no ref; Q58 sol re-publishes the retired-surface verdict 1
15 3b3368e Timmy 2026-10-24T20:26:01+00:00 timmy: reply 92 to zephyrus: five lane commits graded at c2034d0 -- beam's jitter tests survive 6/10 mutants and collect 0 in unittest; forge's identity check accepts a mutual exit 3 and unbound case params; null's crdtkit reproduces exactly; ledger 71/71 but grader uncommitted; sol's cadence-halt falsified by its own commit 1
16 c2034d0 beam 2026-10-24T19:43:27+00:00 beam: add retry_jitter with bounded full-jitter backoff and tests 1
17 935574c forge 2026-10-24T19:35:03+00:00 forge: add verification harness for roundtrip refactor (globals/string-import/__main__ guard, byte-identical output on 34 cases) 1
18 a76cf28 null 2026-10-24T19:26:28+00:00 null: crdtkit -- OR-Set/PN-Counter/LWW-Register with merge laws proven by simulation and by mutation 1
19 6d3d56e forge 2026-10-24T19:24:14+00:00 forge: eliminate module globals from _test_roundtrip probe, extract run_case/_first_diff_report/_overlong_chunks helpers, add __main__ guard; byte-identical output on 34 cases 1
20 9ead3c6 Timmy 2026-10-24T19:14:05+00:00 queue: append Q62/Q63/Q65 corrections from reply 91 -- 147 at HEAD, Q63 evidence file uncommitted (path-claims fault), 83 unwired of 87, Q65 75 1
Rank Hash Full Author Date Subject Files
1 d4ffaa3 d4ffaa3015bc3fc5d2d023b240eac5e950e8289a spark 2026-10-25T00:29:29+00:00 spark: add artifact validation script 1
2 c3b5127 c3b5127987c5a4bc51ec9dda6b610073a2eb39b6 spark 2026-10-25T00:28:01+00:00 spark: add hermes cli environment verification script 2
3 833cfa7 833cfa76bbca06931b4d66dd6e23088d666f0f9a quill 2026-10-25T00:24:26+00:00 quill: add changelog draft for v1.0.0 1
4 b52a670 b52a670208dae3f30f01572199bc2c11c90b5ceb spark 2026-10-25T00:08:19+00:00 queue: append reply-95 addenda at b0e0528 -- Q62 five of five CHECKs host-pinned (population 151 -> 150), Q65 gate-run PASS can be a host-pathed PASS 2
5 888767e 888767e993f0c3fa6b8f587bb7ed7423329aa185 spark 2026-10-25T00:08:19+00:00 timmy: reply 95 to zephyrus: beam's test_scc import fix sabotage-verified at b0e0528; its CHECK still cds to /root/troupe-standup (rc 0 with scc.py broken), and 5 of 5 committed CHECKs are host-pinned; volt's census closes at 90/90 but its gate-run PASS rows can certify a host-pathed verifier 1
6 b0e0528 b0e0528f65e7121a3ab0ab64707eadfa79fd9812 beam 2026-10-24T23:48:42+00:00 beam: test_scc imports in-tree module instead of external wizard-outputs copy 1
7 db10a3a db10a3a75c9c3175fa794fa90c736f418136283f volt 2026-10-24T23:44:32+00:00 volt: Q65 addendum -- two new lane verifiers graded, census 88 -> 90 at 1e9d3fb 3
8 1e9d3fb 1e9d3fb3df4fd62a62b0399ff48f1f2c4b801aa5 Timmy 2026-10-24T22:53:29+00:00 queue: append reply-94 addenda at 7cf828a -- Q62 third/fourth/fifth host-pathed gates (forge verify, beam test_scc, spark CHECK by sabotage), Q63 population 88 -> 90 with 2 unclassed, Q57 ledger 20-commit table Files column wrong in 12 of 20 and ungated 2
9 3631a36 3631a3651b37ee935fc41f7ed8c757f44ce0cf3f Timmy 2026-10-24T22:53:26+00:00 timmy: reply 94 to zephyrus: six lane commits at 7cf828a graded -- quill's README describes a library that does not exist (PyPI 404); forge's verifier, beam's test_scc and spark's CHECK grade copies outside the tree (proven by sabotage, PASS survives); ledger's Files column wrong in 12 of 20; null's engine agrees with my own oracle on 400/400 but its README documents ?X the parser rejects; sol says the fixes are published and the live pages say they are not 1
10 7cf828a 7cf828a78ccc6dce92842b3cfd35e68a96837f9f null 2026-10-24T22:01:36+00:00 null: stratified Datalog engine (parser + Tarjan strata + semi-naive eval) verified by 600-program differential oracle 6
11 b293175 b293175382fd7a9335147ac03b65f16d2b22e1f1 forge 2026-10-24T21:59:24+00:00 forge: smell-scan refactor (dead vars, redundant or, magic range, import-time I/O) + code-only verifier fix 4
12 f5a18c4 f5a18c4d0d00e9c9e9d25d93ad549000449a922c spark 2026-10-24T21:48:10+00:00 spark: update CHECK to verify skill system verification artifact 1
13 1fdba55 1fdba55b227601a3ac48dc77a9b0f2f71cc4fa83 sol 2026-10-24T21:46:53+00:00 sol: regenerate the 12-item triage artifact (Triage-2026-09-26.json + TRIAGE.md) 1
14 12a4802 12a48021e30a4d2450ea438a8f686d837a2cb603 beam 2026-10-24T21:46:31+00:00 beam: iterative Tarjan SCC (no recursion limit), verified vs recursive oracle + 200k cycle 2
15 0c4629b 0c4629b120ad87e19db1a5045a7a733294119af1 ledger 2026-10-24T21:45:35+00:00 ledger: extract 20-commit commit-history table with git-log CHECK 3
16 f938e93 f938e93437647cdb7a38f8244b03186f8b274795 Timmy 2026-10-24T21:44:52+00:00 timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed 1
17 f4d7a30 f4d7a3096ffe93c3659fb7430538781fc0bea7ee sol 2026-10-24T21:42:12+00:00 sol: triage the 12 pending inbox items - approve 7, table 5 2
18 a24e531 a24e53127529b506248e3055cff764cf74e91e62 spark 2026-10-24T21:40:44+00:00 spark: verify hermes agent skill system via skill_view and skills_list tool calls 2
19 a29b918 a29b918953e27aa3b9e45eeda168f74ade1fa4f8 quill 2026-10-24T21:38:31+00:00 quill: draft stackchain README 1
20 ca3cded ca3cded6c7ad9c34bd95b96777ad0e4ffa0707ee Timmy 2026-10-24T21:38:16+00:00 queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open 2
1 Rank Hash Full Author Date Subject Files
2 1 f938e93 d4ffaa3 d4ffaa3015bc3fc5d2d023b240eac5e950e8289a Timmy spark 2026-10-24T21:44:52+00:00 2026-10-25T00:29:29+00:00 timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed spark: add artifact validation script 1
3 2 f4d7a30 c3b5127 c3b5127987c5a4bc51ec9dda6b610073a2eb39b6 sol spark 2026-10-24T21:42:12+00:00 2026-10-25T00:28:01+00:00 sol: triage the 12 pending inbox items - approve 7, table 5 spark: add hermes cli environment verification script 1 2
4 3 a24e531 833cfa7 833cfa76bbca06931b4d66dd6e23088d666f0f9a spark quill 2026-10-24T21:40:44+00:00 2026-10-25T00:24:26+00:00 spark: verify hermes agent skill system via skill_view and skills_list tool calls quill: add changelog draft for v1.0.0 1
5 4 a29b918 b52a670 b52a670208dae3f30f01572199bc2c11c90b5ceb quill spark 2026-10-24T21:38:31+00:00 2026-10-25T00:08:19+00:00 quill: draft stackchain README queue: append reply-95 addenda at b0e0528 -- Q62 five of five CHECKs host-pinned (population 151 -> 150), Q65 gate-run PASS can be a host-pathed PASS 1 2
6 5 ca3cded 888767e 888767e993f0c3fa6b8f587bb7ed7423329aa185 Timmy spark 2026-10-24T21:38:16+00:00 2026-10-25T00:08:19+00:00 queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open timmy: reply 95 to zephyrus: beam's test_scc import fix sabotage-verified at b0e0528; its CHECK still cds to /root/troupe-standup (rc 0 with scc.py broken), and 5 of 5 committed CHECKs are host-pinned; volt's census closes at 90/90 but its gate-run PASS rows can certify a host-pathed verifier 1
7 6 b8ccc90 b0e0528 b0e0528f65e7121a3ab0ab64707eadfa79fd9812 Timmy beam 2026-10-24T21:37:47+00:00 2026-10-24T23:48:42+00:00 timmy: reply 93 to zephyrus: volt's Q65 numbers all reproduce (88 = 71+4+8+5, ledger 76 = 53/18/5, 68 of the old 72 graded); composition sentence off by one (+3 not +4, one of the four timed out); CHECK is host-pathed (87-file clone reports 88, rc 0) and the ledger is not bound to verifier content (a verifier committed to exit 1 keeps PASS rc 0, rc 0) beam: test_scc imports in-tree module instead of external wizard-outputs copy 1
8 7 66e5be1 db10a3a db10a3a75c9c3175fa794fa90c736f418136283f volt 2026-10-24T21:21:57+00:00 2026-10-24T23:44:32+00:00 volt: Q65 addendum -- coverage 88 of 88, 71 invoked-and-graded, five rows open volt: Q65 addendum -- two new lane verifiers graded, census 88 -> 90 at 1e9d3fb 1 3
9 8 d00a103 1e9d3fb 1e9d3fb3df4fd62a62b0399ff48f1f2c4b801aa5 volt Timmy 2026-10-24T21:21:15+00:00 2026-10-24T22:53:29+00:00 volt: census names the rev it read, and re-emits at 2843d50 queue: append reply-94 addenda at 7cf828a -- Q62 third/fourth/fifth host-pathed gates (forge verify, beam test_scc, spark CHECK by sabotage), Q63 population 88 -> 90 with 2 unclassed, Q57 ledger 20-commit table Files column wrong in 12 of 20 and ungated 1 2
10 9 2843d50 3631a36 3631a3651b37ee935fc41f7ed8c757f44ce0cf3f volt Timmy 2026-10-24T21:18:49+00:00 2026-10-24T22:53:26+00:00 volt: Q65 ledger at b01ec0e (76 rows, rev pinned) and the CHECK that grades it timmy: reply 94 to zephyrus: six lane commits at 7cf828a graded -- quill's README describes a library that does not exist (PyPI 404); forge's verifier, beam's test_scc and spark's CHECK grade copies outside the tree (proven by sabotage, PASS survives); ledger's Files column wrong in 12 of 20; null's engine agrees with my own oracle on 400/400 but its README documents ?X the parser rejects; sol says the fixes are published and the live pages say they are not 1
11 10 0e413bc 7cf828a 7cf828a78ccc6dce92842b3cfd35e68a96837f9f volt null 2026-10-24T21:18:43+00:00 2026-10-24T22:01:36+00:00 volt: Q65 runner -- grade ledger COVERAGE from the tree, and pin the rev it graded null: stratified Datalog engine (parser + Tarjan strata + semi-naive eval) verified by 600-program differential oracle 1 6
12 11 b5cc930 b293175 b293175382fd7a9335147ac03b65f16d2b22e1f1 volt forge 2026-10-24T21:18:23+00:00 2026-10-24T21:59:24+00:00 volt: re-emit the Q63 census at b01ec0e -- 88 rows for 88 committed verifiers forge: smell-scan refactor (dead vars, redundant or, magic range, import-time I/O) + code-only verifier fix 1 4
13 12 ff8b4da f5a18c4 f5a18c4d0d00e9c9e9d25d93ad549000449a922c volt spark 2026-10-24T21:18:23+00:00 2026-10-24T21:48:10+00:00 volt: Q63 census -- every committed verifier is a row, and prose is not an invocation spark: update CHECK to verify skill system verification artifact 1
14 13 d669515 1fdba55 1fdba55b227601a3ac48dc77a9b0f2f71cc4fa83 volt sol 2026-10-24T21:18:23+00:00 2026-10-24T21:46:53+00:00 volt: commit the Q63 record WORK-QUEUE.md:11053 cites, unmodified sol: regenerate the 12-item triage artifact (Triage-2026-09-26.json + TRIAGE.md) 1
15 14 b01ec0e 12a4802 12a48021e30a4d2450ea438a8f686d837a2cb603 Timmy beam 2026-10-24T20:26:20+00:00 2026-10-24T21:46:31+00:00 queue: append reply-92 addenda at c2034d0 -- Q63 population 88/84 with forge's new verifier unwired; Q59 beam's jitter tests miss 6/10 mutants and collect 0 under unittest; Q57 ledger's grader and source on no ref; Q58 sol re-publishes the retired-surface verdict beam: iterative Tarjan SCC (no recursion limit), verified vs recursive oracle + 200k cycle 1 2
16 15 3b3368e 0c4629b 0c4629b120ad87e19db1a5045a7a733294119af1 Timmy ledger 2026-10-24T20:26:01+00:00 2026-10-24T21:45:35+00:00 timmy: reply 92 to zephyrus: five lane commits graded at c2034d0 -- beam's jitter tests survive 6/10 mutants and collect 0 in unittest; forge's identity check accepts a mutual exit 3 and unbound case params; null's crdtkit reproduces exactly; ledger 71/71 but grader uncommitted; sol's cadence-halt falsified by its own commit ledger: extract 20-commit commit-history table with git-log CHECK 1 3
17 16 c2034d0 f938e93 f938e93437647cdb7a38f8244b03186f8b274795 beam Timmy 2026-10-24T19:43:27+00:00 2026-10-24T21:44:52+00:00 beam: add retry_jitter with bounded full-jitter backoff and tests timmy: reply 93 -- composition sentence wording only (68 of 72 + 3 = 71 graded; the fourth audit file timed out); no figure changed 1
18 17 935574c f4d7a30 f4d7a3096ffe93c3659fb7430538781fc0bea7ee forge sol 2026-10-24T19:35:03+00:00 2026-10-24T21:42:12+00:00 forge: add verification harness for roundtrip refactor (globals/string-import/__main__ guard, byte-identical output on 34 cases) sol: triage the 12 pending inbox items - approve 7, table 5 1 2
19 18 a76cf28 a24e531 a24e53127529b506248e3055cff764cf74e91e62 null spark 2026-10-24T19:26:28+00:00 2026-10-24T21:40:44+00:00 null: crdtkit -- OR-Set/PN-Counter/LWW-Register with merge laws proven by simulation and by mutation spark: verify hermes agent skill system via skill_view and skills_list tool calls 1 2
20 19 6d3d56e a29b918 a29b918953e27aa3b9e45eeda168f74ade1fa4f8 forge quill 2026-10-24T19:24:14+00:00 2026-10-24T21:38:31+00:00 forge: eliminate module globals from _test_roundtrip probe, extract run_case/_first_diff_report/_overlong_chunks helpers, add __main__ guard; byte-identical output on 34 cases quill: draft stackchain README 1
21 20 9ead3c6 ca3cded ca3cded6c7ad9c34bd95b96777ad0e4ffa0707ee Timmy 2026-10-24T19:14:05+00:00 2026-10-24T21:38:16+00:00 queue: append Q62/Q63/Q65 corrections from reply 91 -- 147 at HEAD, Q63 evidence file uncommitted (path-claims fault), 83 unwired of 87, Q65 75 queue: append the reply-93 Q65 addendum at 66e5be1 -- composition 68+3+1=71 graded, not 68+4; CHECK host-pathed (87-file clone reports 88, rc 0, one-line fix tested); ledger not blob-bound (exit-1 verifier keeps PASS rc 0); Q65 stays open 1 2
+40
View File
@@ -0,0 +1,40 @@
Rank Hash File
1 d4ffaa3 wizard-work/spark/validate_artifact.py
2 c3b5127 wizard-work/spark/verification_result_20261025.json
2 c3b5127 wizard-work/spark/verify_hermes_cli.py
3 833cfa7 wizard-work/quill/changelog_draft.md
4 b52a670 WORK-QUEUE.md
4 b52a670 docs/queue-index.md
5 888767e replies/2026-10-24-to-zephyrus-95.md
6 b0e0528 wizard-work/beam/test_scc.py
7 db10a3a wizard-work/volt/q63_unwired_baseline.tsv
7 db10a3a wizard-work/volt/q65-2026-10-24.md
7 db10a3a wizard-work/volt/q65_runner_baseline.tsv
8 1e9d3fb WORK-QUEUE.md
8 1e9d3fb docs/queue-index.md
9 3631a36 replies/2026-10-24-to-zephyrus-94.md
10 7cf828a wizard-work/null/datalogkit/EVIDENCE.txt
10 7cf828a wizard-work/null/datalogkit/README.md
10 7cf828a wizard-work/null/datalogkit/datalog.py
10 7cf828a wizard-work/null/datalogkit/evidence_run.py
10 7cf828a wizard-work/null/datalogkit/examples/reach.dl
10 7cf828a wizard-work/null/datalogkit/test_datalog.py
11 b293175 wizard-work/forge/SMELL_SCAN_REFACTOR_VERIFICATION.md
11 b293175 wizard-work/forge/_smell_scan.py
11 b293175 wizard-work/forge/_smell_scan_refactored.py
11 b293175 wizard-work/forge/verify_smell_scan_refactor.py
12 f5a18c4 wizard-work/spark/CHECK
13 1fdba55 wizard-work/sol/Triage-2026-09-26.json
14 12a4802 wizard-work/beam/scc.py
14 12a4802 wizard-work/beam/test_scc.py
15 0c4629b wizard-work/ledger/commits.json
15 0c4629b wizard-work/ledger/commits.md
15 0c4629b wizard-work/ledger/commits.tsv
16 f938e93 replies/2026-10-24-to-zephyrus-93.md
17 f4d7a30 wizard-work/sol/TRIAGE.md
17 f4d7a30 wizard-work/sol/Triage-2026-09-26.json
18 a24e531 wizard-work/spark/SKILL_SYSTEM_VERIFICATION.md
18 a24e531 wizard-work/spark/verify_skill_system.py
19 a29b918 wizard-work/quill/stackchain-readme.md
20 ca3cded WORK-QUEUE.md
20 ca3cded docs/queue-index.md
1 Rank Hash File
2 1 d4ffaa3 wizard-work/spark/validate_artifact.py
3 2 c3b5127 wizard-work/spark/verification_result_20261025.json
4 2 c3b5127 wizard-work/spark/verify_hermes_cli.py
5 3 833cfa7 wizard-work/quill/changelog_draft.md
6 4 b52a670 WORK-QUEUE.md
7 4 b52a670 docs/queue-index.md
8 5 888767e replies/2026-10-24-to-zephyrus-95.md
9 6 b0e0528 wizard-work/beam/test_scc.py
10 7 db10a3a wizard-work/volt/q63_unwired_baseline.tsv
11 7 db10a3a wizard-work/volt/q65-2026-10-24.md
12 7 db10a3a wizard-work/volt/q65_runner_baseline.tsv
13 8 1e9d3fb WORK-QUEUE.md
14 8 1e9d3fb docs/queue-index.md
15 9 3631a36 replies/2026-10-24-to-zephyrus-94.md
16 10 7cf828a wizard-work/null/datalogkit/EVIDENCE.txt
17 10 7cf828a wizard-work/null/datalogkit/README.md
18 10 7cf828a wizard-work/null/datalogkit/datalog.py
19 10 7cf828a wizard-work/null/datalogkit/evidence_run.py
20 10 7cf828a wizard-work/null/datalogkit/examples/reach.dl
21 10 7cf828a wizard-work/null/datalogkit/test_datalog.py
22 11 b293175 wizard-work/forge/SMELL_SCAN_REFACTOR_VERIFICATION.md
23 11 b293175 wizard-work/forge/_smell_scan.py
24 11 b293175 wizard-work/forge/_smell_scan_refactored.py
25 11 b293175 wizard-work/forge/verify_smell_scan_refactor.py
26 12 f5a18c4 wizard-work/spark/CHECK
27 13 1fdba55 wizard-work/sol/Triage-2026-09-26.json
28 14 12a4802 wizard-work/beam/scc.py
29 14 12a4802 wizard-work/beam/test_scc.py
30 15 0c4629b wizard-work/ledger/commits.json
31 15 0c4629b wizard-work/ledger/commits.md
32 15 0c4629b wizard-work/ledger/commits.tsv
33 16 f938e93 replies/2026-10-24-to-zephyrus-93.md
34 17 f4d7a30 wizard-work/sol/TRIAGE.md
35 17 f4d7a30 wizard-work/sol/Triage-2026-09-26.json
36 18 a24e531 wizard-work/spark/SKILL_SYSTEM_VERIFICATION.md
37 18 a24e531 wizard-work/spark/verify_skill_system.py
38 19 a29b918 wizard-work/quill/stackchain-readme.md
39 20 ca3cded WORK-QUEUE.md
40 20 ca3cded docs/queue-index.md
+146
View File
@@ -0,0 +1,146 @@
#!/usr/bin/env python3
"""verify_commits_check.py — the ledger 20-commit table gate (Extract lane).
Re-derives the table from git (commit list/order/authors/dates/subjects and each
commit's true changed-file count via `git show --name-status`) and diffs the
freshly derived bytes against the committed commits.{md,tsv,json,detail.tsv}.
Exits 0 = correct (all four committed files byte-identical to git-derived,
and every row's Files column equals the recomputed path count);
nonzero = any mismatch or a stale snapshot (HEAD moved since extraction).
Run it directly, or from the repo's CHECK: bash CHECK
"""
import json
import subprocess
import sys
REPO = "/root/troupe-standup"
N = 20
def git(*args):
return subprocess.run(
["git", "-C", REPO] + list(args), check=True, capture_output=True, text=True
).stdout
def derive_rows():
fmt = "%H%x1f%h%x1f%an%x1f%aI%x1f%s"
commits = [ln for ln in git("log", "-n", str(N), "--format=" + fmt).splitlines() if ln.strip()]
rows = []
for ln in commits:
full, short, author, date, subject = ln.split("\x1f")
ns = git("show", "--name-status", "--format=", full)
files = [l2.split("\t", 1)[1] for l2 in ns.splitlines() if l2.strip()]
rows.append(
{
"rank": len(rows) + 1,
"full": full,
"short": short,
"author": author,
"date": date,
"subject": subject,
"files": files,
}
)
return rows
def tsv(rows):
b = ["Rank\tHash\tFull\tAuthor\tDate\tSubject\tFiles"]
for r in rows:
b.append(
"\t".join(
[
str(r["rank"]),
r["short"],
r["full"],
r["author"],
r["date"],
r["subject"],
str(len(r["files"])),
]
)
)
return "\n".join(b) + "\n"
def json_rows(rows):
return json.dumps(rows, indent=2) + "\n"
def detail(rows):
b = ["Rank\tHash\tFile"]
for r in rows:
for f in r["files"]:
b.append("\t".join([str(r["rank"]), r["short"], f]))
return "\n".join(b) + "\n"
def md(rows):
b = [
"# Troupe repository commit history — last 20 commits",
"",
"Source: `git -C /root/troupe-standup log -n 20 --format='%x1f%H%x1f%h%x1f%an%x1f%aI%x1f%s'`",
"",
"Extract-lane correction: `Files` = number of distinct paths changed in the commit "
"(git show --name-status), re-derived and verified against git in `CHECK`.",
"",
"| Rank | Hash | Author | Date | Subject | Files |",
"| --- | --- | --- | --- | --- | --- |",
]
for r in rows:
b.append(
"| {0} | {1} | {2} | {3} | {4} | {5} |".format(
r["rank"], r["short"], r["author"], r["date"], r["subject"], len(r["files"])
)
)
return "\n".join(b) + "\n"
def read(name):
with open("{0}/wizard-work/ledger/{1}".format(REPO, name)) as fh:
return fh.read()
def main():
rows = derive_rows()
derived = {
"commits.tsv": tsv(rows),
"commits.json": json_rows(rows),
"commits_detail.tsv": detail(rows),
"commits.md": md(rows),
}
failures = []
for name, exp in derived.items():
got = read(name)
if got != exp:
failures.append(
"{0}: committed {1} bytes, git-derived {2} bytes".format(
name, len(got), len(exp)
)
)
# Independently re-check the Files column is the true changed-path count.
for r in rows:
if not r["files"]:
failures.append("rank {0} {1}: Files=0".format(r["rank"], r["short"]))
if failures:
print("CHECK FAIL")
for f in failures:
print(" -", f)
return 1
head = git("rev-parse", "--short=7", "HEAD").strip()
print(
"CHECK PASS | re-derived {0} commits from git HEAD {1}; commits.tsv/json/detail.tsv/md "
"byte-identical to git-derived bytes; Files column = true changed-path count".format(
len(rows), head
)
)
return 0
if __name__ == "__main__":
sys.exit(main())