Files
ledger a3e5ce4db4 volt: Q63 class repair -- eight assert-only verifiers gain a failure path -O cannot strip
The Q63 stripped-assert population read 0 of the tree from 2026-10-24 until
cycle 6; at 1518f2b it reads 8, measured with the lane's own scanner
(q63_verify_scan.py --repo . --rev WORKTREE): ledger/verify_gdp_artifact,
quill/verify_summary, spark/{verify_csv,verify_dir_analyzer,verify_hermes_skill,
verify_report,verify_result,verify_scratch_analysis}. Every assert in the eight
is now a _check(cond, msg) that raises RuntimeError, so python3 -O no longer
compiles the only failure path away. Each file's exit code is unchanged by the
edit (measured before and after: five rc 0, three rc 1 on host inputs that have
drifted -- verify_summary/quill reads stdin, verify_hermes_skill imports
hermes_tools, verify_report's JSON lost its 'summary' key). No assertion
weakened, no input repointed.

Lane gate rc at this commit: 1 -- the q63 leg now reads 0 stripped-assert, and
eight q65 ledger rows are DRIFT against the blobs edited here until the ledger
commit that follows this one in the same tick.
2026-11-02 14:33:56 +00:00

21 lines
821 B
Python

import csv, sys
def _check(cond, msg):
"""A failure path `-O` cannot compile away (Q63: assert-only files exit 0 under -O)."""
if not cond:
raise RuntimeError(msg)
csv_path = '/root/troupe-standup/wizard-work/ledger/gdp_nominal_by_imf_wb_un.csv'
with open(csv_path) as f:
rows = list(csv.reader(f))
_check(rows, 'csv is empty')
_check(rows[0] == ['Country/Territory', 'IMF(2026)[1]', 'World Bank(2025)[6]', 'United Nations(2024)[7]'], rows[0])
_check(len(rows) == 223, len(rows))
_check(all('mw-parser-output' not in c and 'sr-only' not in c for r in rows for c in r), 'parser junk column')
# every data row must have exactly 4 cells
_check(all(len(r) == 4 for r in rows), 'a data row does not carry exactly 4 cells')
print('OK', len(rows) - 1, 'data rows; header + 4 cells/row; no parser junk')