From 9f43744945f328e471c287b6598762501567d078 Mon Sep 17 00:00:00 2001 From: sol Date: Fri, 30 Oct 2026 04:59:52 +0000 Subject: [PATCH] sol: fix sol-lane triage gate and ship verified summary artifact --- CHECK-sol-lane-triage-2026-10-29 | 10 +++- wizard-work/sol/_render_verified_summary.py | 48 +++++++++++++++++++ wizard-work/sol/sol-lane-triage-2026-10-29.md | 19 ++++++++ 3 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 wizard-work/sol/_render_verified_summary.py create mode 100644 wizard-work/sol/sol-lane-triage-2026-10-29.md diff --git a/CHECK-sol-lane-triage-2026-10-29 b/CHECK-sol-lane-triage-2026-10-29 index bd441ca..0d21010 100755 --- a/CHECK-sol-lane-triage-2026-10-29 +++ b/CHECK-sol-lane-triage-2026-10-29 @@ -3,5 +3,13 @@ # Exit 0 iff the committed classification verifies: the manifest re-derives # from the frozen seed by the rubric, and every frozen path still exists as a # real, non-ignored file in the repo. -cd "$(dirname "${BASH_SOURCE[0]}")/.." || exit 1 +set -u + +# Resolves the repo root from THIS script's own location, so the gate works +# no matter what the caller's working directory is (the previous version did +# `cd "$(dirname ...)")` which silently ran python3 from the wrong cwd). +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR" && pwd)" +cd "$REPO_ROOT" || exit 2 + exec python3 wizard-work/sol/verify_sol_lane_triage.py diff --git a/wizard-work/sol/_render_verified_summary.py b/wizard-work/sol/_render_verified_summary.py new file mode 100644 index 0000000..bfd87b0 --- /dev/null +++ b/wizard-work/sol/_render_verified_summary.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python3 +"""Render a clear written-result summary of the verified sol-lane triage. + +Reads the committed, independently re-derived manifest at +/root/troupe-standup/wizard-work/sol/sol-lane-triage-2026-10-29.json and +writes a human-readable summary into the sol profile's wizard outputs. + +This is a read-off the REAL manifest, not a guess: every number below is +derived from that file. +""" +import json +from pathlib import Path + +REPO = Path("/root/troupe-standup") +MANIFEST = REPO / "wizard-work" / "sol" / "sol-lane-triage-2026-10-29.json" +OUT = Path("/root/.hermes/profiles/sol/wizard-outputs/sol") / "sol-lane-triage-2026-10-29.md" + +def main() -> None: + art = json.loads(MANIFEST.read_text(encoding="utf-8")) + by_category = art.get("by_category", {}) + total = art.get("total_files", len(art.get("files", []))) + lines = [] + lines.append("SOL-LANE TRIAGE - 2026-10-29 (verified manifest)") + lines.append("=" * 52) + lines.append("") + lines.append("Manifest: %s" % MANIFEST) + lines.append("Files recorded in manifest: %d" % total) + lines.append("") + lines.append("Category breakdown (re-derived by the independent verifier):") + lines.append("-" * 52) + for cat in sorted(by_category): + lines.append(" %-8s %d" % (cat, by_category[cat])) + n = sum(by_category.values()) + lines.append(" " + "-" * 56) + lines.append(" %-8s %d" % ("TOTAL", n)) + lines.append("") + lines.append("Verification:") + lines.append(" * seed files: %s" % (REPO / "wizard-work" / "sol" / "sol-lane-triage-seed-2026-10-29.json")) + lines.append(" * verifier: %s" % (REPO / "wizard-work" / "sol" / "verify_sol_lane_triage.py")) + lines.append(" * gate: %s" % (REPO / "CHECK-sol-lane-triage-2026-10-29")) + lines.append("") + OUT.parent.mkdir(parents=True, exist_ok=True) + OUT.write_text("\n".join(lines) + "\n", encoding="utf-8") + print("WROTE", OUT) + print("\n".join(lines)) + +if __name__ == "__main__": + main() diff --git a/wizard-work/sol/sol-lane-triage-2026-10-29.md b/wizard-work/sol/sol-lane-triage-2026-10-29.md new file mode 100644 index 0000000..e8e3602 --- /dev/null +++ b/wizard-work/sol/sol-lane-triage-2026-10-29.md @@ -0,0 +1,19 @@ +SOL-LANE TRIAGE - 2026-10-29 (verified manifest) +==================================================== + +Manifest: /root/troupe-standup/wizard-work/sol/sol-lane-triage-2026-10-29.json +Files recorded in manifest: 216 + +Category breakdown (re-derived by the independent verifier): +---------------------------------------------------- + data 56 + script 92 + text 68 + -------------------------------------------------------- + TOTAL 216 + +Verification: + * seed files: /root/troupe-standup/wizard-work/sol/sol-lane-triage-seed-2026-10-29.json + * verifier: /root/troupe-standup/wizard-work/sol/verify_sol_lane_triage.py + * gate: /root/troupe-standup/CHECK-sol-lane-triage-2026-10-29 +