ledger: recovery-registry extract + CHECK (recoveries/ 64 files, size, sha256, q_hits)
This commit is contained in:
1 parent
6b3e7625c0
commit
69a07baaf2
5 files changed
+457
No files matched your search
+134
@@ -0,0 +1,134 @@
|
||||
#!/usr/bin/env python3
|
||||
"""CHECK — recovery-registry extract (Extract lane, 2026-10-28).
|
||||
|
||||
Independent verification: re-derives the registry straight from the source
|
||||
(recoveries/ + WORK-QUEUE.md), without importing the extractor, and diffs it
|
||||
against the committed recoveries-registry.tsv. Exits 0 only if every check
|
||||
passes. (No fallback arms; a failing check produces a nonzero exit.)
|
||||
"""
|
||||
import hashlib
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
REPO_ROOT = os.path.abspath(os.path.join(HERE, "..", "..", ".."))
|
||||
RECOVERIES_DIR = os.path.join(REPO_ROOT, "recoveries")
|
||||
QUEUE_FILE = os.path.join(REPO_ROOT, "WORK-QUEUE.md")
|
||||
TSV_FILE = os.path.join(HERE, "recoveries-registry.tsv")
|
||||
MD_FILE = os.path.join(HERE, "recoveries-registry.md")
|
||||
MANIFEST_FILE = os.path.join(HERE, "manifest.json")
|
||||
|
||||
fails = []
|
||||
checked = 0
|
||||
|
||||
|
||||
def check(name, cond, detail=""):
|
||||
global checked
|
||||
checked += 1
|
||||
if cond:
|
||||
print("PASS", name)
|
||||
else:
|
||||
print("FAIL", name, detail)
|
||||
fails.append(name)
|
||||
|
||||
|
||||
def own_extract():
|
||||
"""Independent re-implementation of the extraction rules."""
|
||||
rows = []
|
||||
for dirpath, _d, files in os.walk(RECOVERIES_DIR):
|
||||
for name in sorted(files):
|
||||
full = os.path.join(dirpath, name)
|
||||
if not os.path.isfile(full):
|
||||
continue
|
||||
rel = os.path.relpath(full, RECOVERIES_DIR)
|
||||
h = hashlib.sha256()
|
||||
with open(full, "rb") as fh:
|
||||
for chunk in iter(lambda: fh.read(1024 * 1024), b""):
|
||||
h.update(chunk)
|
||||
with open(QUEUE_FILE, "r", encoding="utf-8") as fh:
|
||||
txt = fh.read()
|
||||
rows.append({
|
||||
"rel_path": rel,
|
||||
"size_bytes": os.path.getsize(full),
|
||||
"sha256": h.hexdigest(),
|
||||
"q_hits": txt.count(rel),
|
||||
})
|
||||
rows.sort(key=lambda r: r["rel_path"])
|
||||
return rows
|
||||
|
||||
|
||||
def read_tsv():
|
||||
with open(TSV_FILE, "r", encoding="utf-8") as fh:
|
||||
lines = fh.read().splitlines()
|
||||
header = lines[0].split("\t")
|
||||
assert header == ["path", "size_bytes", "sha256", "mtime_utc", "q_hits"], header
|
||||
out = []
|
||||
for ln in lines[1:]:
|
||||
p, s, h, m, q = ln.split("\t")
|
||||
out.append({"path": p, "size_bytes": int(s), "sha256": h,
|
||||
"mtime_utc": m, "q_hits": int(q)})
|
||||
return out
|
||||
|
||||
|
||||
def read_manifest():
|
||||
with open(MANIFEST_FILE, "r", encoding="utf-8") as fh:
|
||||
return json.load(fh)
|
||||
|
||||
|
||||
def read_md():
|
||||
with open(MD_FILE, "r", encoding="utf-8") as fh:
|
||||
return fh.read()
|
||||
|
||||
|
||||
def main():
|
||||
own = own_extract()
|
||||
committed = read_tsv()
|
||||
|
||||
# 1) Fresh extraction must equal the committed TSV, row for row.
|
||||
ok = len(own) == len(committed)
|
||||
if ok:
|
||||
for a, b in zip(own, committed):
|
||||
if (a["rel_path"], a["size_bytes"], a["sha256"], a["q_hits"]) != (
|
||||
b["path"], b["size_bytes"], b["sha256"], b["q_hits"]):
|
||||
ok = False
|
||||
break
|
||||
check("fresh extraction matches committed TSV (row order + values)",
|
||||
ok, "rows=%d committed=%d" % (len(own), len(committed)))
|
||||
|
||||
# 2) Committed MD must contain a table with the same row count.
|
||||
md = read_md()
|
||||
check("committed MD exists and is non-empty", len(md) > 0)
|
||||
check("committed MD header row present",
|
||||
"| path | size_bytes | sha256 | mtime_utc | q_hits |" in md)
|
||||
data_rows = [ln for ln in md.splitlines() if ln.startswith("| `")]
|
||||
check("committed MD data-row count matches TSV",
|
||||
len(data_rows) == len(committed),
|
||||
"md_data_rows=%d tsv_rows=%d" % (len(data_rows), len(committed)))
|
||||
|
||||
# 3) Manifest totals must agree with a direct directory walk.
|
||||
man = read_manifest()
|
||||
total = 0
|
||||
for dirpath, _d, files in os.walk(RECOVERIES_DIR):
|
||||
for name in files:
|
||||
total += os.path.getsize(os.path.join(dirpath, name))
|
||||
check("manifest.file_count == directory file count",
|
||||
man.get("file_count") == len(committed) == len(own))
|
||||
check("manifest.total_bytes == direct byte sum",
|
||||
man.get("total_bytes") == total, "manifest=%s direct=%d" % (man.get("total_bytes"), total))
|
||||
check("manifest.files_with_q_hits == recomputed",
|
||||
man.get("files_with_q_hits") == sum(1 for r in own if r["q_hits"] > 0))
|
||||
check("manifest.top_referenced == recomputed top 8",
|
||||
[r["rel_path"] for r in sorted(own, key=lambda x: -x["q_hits"])[:8]] ==
|
||||
[t["path"] for t in man.get("top_referenced", [])])
|
||||
|
||||
print("----")
|
||||
if fails:
|
||||
print("CHECKS FAILED:", len(fails), fails)
|
||||
sys.exit(1)
|
||||
print("ALL CHECKS PASSED (%d checks)" % checked)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,141 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Extract the recovery-registry artifact (Extract lane, 2026-10-28).
|
||||
|
||||
Source:
|
||||
- /root/troupe-standup/recoveries/ (directory inventory)
|
||||
- /root/troupe-standup/WORK-QUEUE.md (queue prose; each reference)
|
||||
|
||||
Output (all relative to this script's directory):
|
||||
- recoveries-registry.tsv : path, size_bytes, sha256, mtime_utc, q_hits
|
||||
- recoveries-registry.md : human-readable markdown table
|
||||
- manifest.json : self-reported statistics
|
||||
"""
|
||||
import hashlib
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
from datetime import datetime, timezone
|
||||
|
||||
REPO_ROOT = "/root/troupe-standup"
|
||||
RECOVERIES_DIR = os.path.join(REPO_ROOT, "recoveries")
|
||||
QUEUE_FILE = os.path.join(REPO_ROOT, "WORK-QUEUE.md")
|
||||
|
||||
TSV_NAME = "recoveries-registry.tsv"
|
||||
MD_NAME = "recoveries-registry.md"
|
||||
MANIFEST_NAME = "manifest.json"
|
||||
|
||||
|
||||
def sha256_of(path):
|
||||
h = hashlib.sha256()
|
||||
with open(path, "rb") as fh:
|
||||
for chunk in iter(lambda: fh.read(1024 * 1024), b""):
|
||||
h.update(chunk)
|
||||
return h.hexdigest()
|
||||
|
||||
|
||||
def collect():
|
||||
"""Return a list of row dicts, one per file under RECOVERIES_DIR."""
|
||||
rows = []
|
||||
for dirpath, _dirnames, filenames in os.walk(RECOVERIES_DIR):
|
||||
for name in sorted(filenames):
|
||||
full = os.path.join(dirpath, name)
|
||||
if not os.path.isfile(full):
|
||||
continue
|
||||
rel = os.path.relpath(full, RECOVERIES_DIR)
|
||||
rows.append({
|
||||
"rel_path": rel,
|
||||
"size_bytes": os.path.getsize(full),
|
||||
"sha256": sha256_of(full),
|
||||
"mtime_utc": datetime.fromtimestamp(
|
||||
os.path.getmtime(full), tz=timezone.utc
|
||||
).isoformat(),
|
||||
})
|
||||
rows.sort(key=lambda r: r["rel_path"])
|
||||
return rows
|
||||
|
||||
|
||||
def queue_hits(rows):
|
||||
"""Count occurrences of each recovery path in WORK-QUEUE.md prose."""
|
||||
with open(QUEUE_FILE, "r", encoding="utf-8") as fh:
|
||||
text = fh.read()
|
||||
for row in rows:
|
||||
row["q_hits"] = text.count(row["rel_path"])
|
||||
return rows
|
||||
|
||||
|
||||
def build():
|
||||
rows = queue_hits(collect())
|
||||
return rows
|
||||
|
||||
|
||||
def write_tsv(rows, path):
|
||||
lines = ["path\tsize_bytes\tsha256\tmtime_utc\tq_hits"]
|
||||
for r in rows:
|
||||
lines.append(
|
||||
"\t".join([
|
||||
r["rel_path"],
|
||||
str(r["size_bytes"]),
|
||||
r["sha256"],
|
||||
r["mtime_utc"],
|
||||
str(r["q_hits"]),
|
||||
])
|
||||
)
|
||||
with open(path, "w", encoding="utf-8", newline="\n") as fh:
|
||||
fh.write("\n".join(lines) + "\n")
|
||||
|
||||
|
||||
def write_md(rows, path):
|
||||
lines = [
|
||||
"# Recovery registry",
|
||||
"",
|
||||
"Extraction artifact, lane **Extract**. One row per file under `recoveries/`,",
|
||||
"with byte size, SHA-256, UTC mtime, and the number of times its path appears",
|
||||
"in `WORK-QUEUE.md` prose.",
|
||||
"",
|
||||
"| path | size_bytes | sha256 | mtime_utc | q_hits |",
|
||||
"|---|---|---|---|---|",
|
||||
]
|
||||
for r in rows:
|
||||
lines.append(
|
||||
"| `{}` | {} | `{}` | {} | {} |".format(
|
||||
r["rel_path"], r["size_bytes"], r["sha256"], r["mtime_utc"], r["q_hits"]
|
||||
)
|
||||
)
|
||||
lines += ["", "Total files: **{}** | Total bytes: **{}**".format(
|
||||
len(rows), sum(r["size_bytes"] for r in rows)), ""]
|
||||
with open(path, "w", encoding="utf-8", newline="\n") as fh:
|
||||
fh.write("\n".join(lines))
|
||||
|
||||
|
||||
def write_manifest(rows, path):
|
||||
manifest = {
|
||||
"lane": "extract",
|
||||
"artifact": "recoveries-registry",
|
||||
"source": "WORK-QUEUE.md + recoveries/ tree",
|
||||
"file_count": len(rows),
|
||||
"total_bytes": sum(r["size_bytes"] for r in rows),
|
||||
"files_with_q_hits": sum(1 for r in rows if r["q_hits"] > 0),
|
||||
"max_q_hits": max((r["q_hits"] for r in rows), default=0),
|
||||
"top_referenced": [
|
||||
{"path": r["rel_path"], "q_hits": r["q_hits"]}
|
||||
for r in sorted(rows, key=lambda x: -x["q_hits"])[:8]
|
||||
],
|
||||
}
|
||||
with open(path, "w", encoding="utf-8", newline="\n") as fh:
|
||||
json.dump(manifest, fh, indent=2)
|
||||
fh.write("\n")
|
||||
|
||||
|
||||
def main():
|
||||
rows = build()
|
||||
here = os.path.dirname(os.path.abspath(__file__))
|
||||
write_tsv(rows, os.path.join(here, TSV_NAME))
|
||||
write_md(rows, os.path.join(here, MD_NAME))
|
||||
write_manifest(rows, os.path.join(here, MANIFEST_NAME))
|
||||
print("wrote", TSV_NAME, "with", len(rows), "rows")
|
||||
print("wrote", MD_NAME)
|
||||
print("wrote", MANIFEST_NAME)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"lane": "extract",
|
||||
"artifact": "recoveries-registry",
|
||||
"source": "WORK-QUEUE.md + recoveries/ tree",
|
||||
"file_count": 64,
|
||||
"total_bytes": 1384931,
|
||||
"files_with_q_hits": 63,
|
||||
"max_q_hits": 22,
|
||||
"top_referenced": [
|
||||
{
|
||||
"path": "summary-fidelity-full-clauses.md",
|
||||
"q_hits": 22
|
||||
},
|
||||
{
|
||||
"path": "helm-discovery-channel-seed.md",
|
||||
"q_hits": 18
|
||||
},
|
||||
{
|
||||
"path": "excerpt-binding-audit.md",
|
||||
"q_hits": 11
|
||||
},
|
||||
{
|
||||
"path": "helm-collector-run.md",
|
||||
"q_hits": 10
|
||||
},
|
||||
{
|
||||
"path": "summary-fidelity-nonmagazine.md",
|
||||
"q_hits": 9
|
||||
},
|
||||
{
|
||||
"path": "excerpt-placement-audit.md",
|
||||
"q_hits": 8
|
||||
},
|
||||
{
|
||||
"path": "summary-fidelity-pilot.md",
|
||||
"q_hits": 7
|
||||
},
|
||||
{
|
||||
"path": "evidence-tier-audit.md",
|
||||
"q_hits": 6
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
# Recovery registry
|
||||
|
||||
Extraction artifact, lane **Extract**. One row per file under `recoveries/`,
|
||||
with byte size, SHA-256, UTC mtime, and the number of times its path appears
|
||||
in `WORK-QUEUE.md` prose.
|
||||
|
||||
| path | size_bytes | sha256 | mtime_utc | q_hits |
|
||||
|---|---|---|---|---|
|
||||
| `apply-queue-status-2026-10-25.md` | 6271 | `12da1c5ef134a2f3976d8f76cc1a2b87851e8dcb1f5f732f8cfa56927166d1b5` | 2026-10-28T13:33:43.140822+00:00 | 0 |
|
||||
| `dead-link.md` | 3134 | `9b49e424ec981ad014431b979fa8251ca9301ffc80da67327594a0bfe8d48ecd` | 2026-09-24T20:27:23.832450+00:00 | 1 |
|
||||
| `evidence-tier-audit.md` | 19516 | `625bfb1e9afd9ba3541dc83c09fab39032c7e77095dea616dea60fa70c4ca1dd` | 2026-10-10T09:07:44.555549+00:00 | 6 |
|
||||
| `excerpt-binding-audit.md` | 110696 | `47ff51b0eb7bfe22235ed980fe103572c8534c53669f7030d6c23e77a1b5e66e` | 2026-10-10T13:34:28.608890+00:00 | 11 |
|
||||
| `excerpt-placement-audit-zephyrus-sample.md` | 13368 | `f8cda6cd2c707038bc342238652699aa14be7477bc48d9fd36de59e2033806d2` | 2026-10-12T13:16:09.003821+00:00 | 2 |
|
||||
| `excerpt-placement-audit.md` | 14045 | `4b1052df4530342a36540ebbdd4550f32c30fef04a11ea576eb556084831cd45` | 2026-10-12T04:51:30.993999+00:00 | 8 |
|
||||
| `excerpt-placement-nonmagazine-zephyrus-recompute.md` | 24613 | `8e6726cb7b2a60458d65b350373cd03d282585e777c59ad6112d513bb9b88604` | 2026-10-15T13:16:41.464012+00:00 | 4 |
|
||||
| `excerpt-placement-nonmagazine.md` | 38817 | `815222254935f2f7cc449e3fd3e619f32c915d79571df64643c3746cca3edf29` | 2026-10-12T16:07:11.000508+00:00 | 4 |
|
||||
| `excerpt-placement-rows.md` | 74561 | `880223f35f9b660e54df9fe21f3de372468fc610fb7d19cf7b820d82935c7123` | 2026-10-12T04:49:04.686720+00:00 | 4 |
|
||||
| `falsification-pass.md` | 8065 | `e111e9e4cd6fbcacf3993c981e9fcddda13f94d65aab70e8fbcf3879ad63398a` | 2026-09-24T20:27:23.832450+00:00 | 2 |
|
||||
| `helm-adoption-rehearsal.md` | 12914 | `b31466d2e77451f47e6ae10a5314fbc96ec2d151151aa3ba5912d3aa72648490` | 2026-10-15T13:51:24.080434+00:00 | 1 |
|
||||
| `helm-adoption-sequence-readiness.md` | 12450 | `263610ab3e861bf656c85a54ed8b950d434e5cade108134997097420ab9324b0` | 2026-10-14T23:04:15.638536+00:00 | 2 |
|
||||
| `helm-behavioural-guard.md` | 10232 | `69e72474c103c727c11408aca34a666309b740db66f0cd476bc13e1772d56db9` | 2026-10-12T07:05:00.757147+00:00 | 2 |
|
||||
| `helm-cli-entry-point.md` | 5887 | `dca2fe53fa41a6d0d9eafe3133af13bb2185848f55f76fae8c23aeba921cc9ad` | 2026-10-11T11:15:21.670438+00:00 | 3 |
|
||||
| `helm-collector-run.md` | 19380 | `a74c395ee5eb5e90a38cae0744c6989dea6b604d4466175ba920afcf0396c0a5` | 2026-10-11T15:39:31.141312+00:00 | 10 |
|
||||
| `helm-deployed-gate-admission.md` | 5633 | `5bdd2e7503cced8eee5b31a0256500aaa8eda9f8e3adbb80d3702eeb5e8df61a` | 2026-10-12T11:37:49.562949+00:00 | 3 |
|
||||
| `helm-deployed-page-generation.md` | 9953 | `bdd5fa1c03586c28bd5e33a35ab4615a16a3e49d20c04bf8d25f492c5965eef2` | 2026-10-14T13:24:57.090995+00:00 | 2 |
|
||||
| `helm-deployed-pill-guard.md` | 11418 | `b7137bc469ee9cd8d07f85822cdd24bdbab44edbf496a2c85a32b73ff6d88d82` | 2026-10-15T01:21:21.925581+00:00 | 1 |
|
||||
| `helm-destination-guard-fix.md` | 12253 | `56e25f160b8019d44d9b293d07ada642006bb51dacc726aece7481163294c42e` | 2026-10-12T09:30:03.418321+00:00 | 2 |
|
||||
| `helm-discovery-channel-seed.md` | 22650 | `35bdeec27f617cf1d6c50c94b902b0f944d1e32e32c1a99f5a498ece9bdb9ce8` | 2026-10-14T08:39:19.253591+00:00 | 18 |
|
||||
| `helm-g8-scrub.md` | 9517 | `50defb09faabdde43a7ff0b085646f0bd8d101e8a73d2f7bccbde81b5d6a50e7` | 2026-10-11T22:18:12.501765+00:00 | 4 |
|
||||
| `helm-hash-line-qualifier.md` | 13678 | `d92f5b7ce9fab458fa8d8ef275d04d2a2d7a2a7d78d7e91ca2dc6feeaa9eb543` | 2026-10-15T08:38:57.573602+00:00 | 1 |
|
||||
| `helm-home-channel-guard.md` | 34311 | `4ba00ce427b85079adedf34524c8334a92e949b205efcc682c8cdd47a99a1cd7` | 2026-10-13T20:49:23.319738+00:00 | 5 |
|
||||
| `helm-leg-sandbox.md` | 13561 | `7c5111aa064e85247007a8ce1ca7a20e0d82d64db45eae0edcef62b9e78eec28` | 2026-10-12T18:31:27.568825+00:00 | 2 |
|
||||
| `helm-null-gate.md` | 9924 | `84b1e714bfad1c0be948845f0f0a9f92a739ce5b64b68a197523bbb7c0808a58` | 2026-10-12T00:27:58.308032+00:00 | 2 |
|
||||
| `helm-parse-guard.md` | 12284 | `19fa3ff6d25c85ce4ae5dfbde5af00b832651f76ca17ca42d3eadf17731f3eba` | 2026-10-13T01:36:45.457449+00:00 | 3 |
|
||||
| `helm-pill-both-directions.md` | 13535 | `8536781b5566390db74d3e3497260dd14e2e2bd958c97795b38a71d12bbb47d1` | 2026-10-15T06:11:09.116136+00:00 | 1 |
|
||||
| `helm-pill-ground-truth.md` | 14419 | `d6600fd195e4b11c937b6512366242c92269243293c84a28e56c0d51d54b38bb` | 2026-10-15T03:53:29.970866+00:00 | 1 |
|
||||
| `helm-pin-hash-convention.md` | 15109 | `b84391af977218c832d7bba1c6f457d0a4e2a8e463fa609b62b676bfcf5392dc` | 2026-10-15T18:49:37.803962+00:00 | 4 |
|
||||
| `helm-pin-pill-staleness.md` | 20989 | `d4f686ebaeed51cfcb3d20be1e989e8e9918c438e7e2e6635774393ad3c48a1d` | 2026-10-14T18:33:05.780643+00:00 | 5 |
|
||||
| `helm-pointer-split.md` | 13828 | `9a85184a18d5264ba26faaa15dda46dfe7c317dfe2915df1f2e53b6efcf22e35` | 2026-10-11T22:18:49.313832+00:00 | 1 |
|
||||
| `helm-precondition-gate.md` | 8261 | `a5d3ad6af205f3c1c8caf4f4baa2ee01548b5a89697ff5478e3fc52a9a61656b` | 2026-10-12T02:36:31.775141+00:00 | 4 |
|
||||
| `helm-probe-spawn-env.md` | 15287 | `4b557db28dbaad1b5758cd3c136fded70f415cec725f282d877937014bcb4ff5` | 2026-10-13T11:25:35.388798+00:00 | 3 |
|
||||
| `helm-pwdir-channel-refusal.md` | 20820 | `8d67248fd9acb73cb5cb0c39a5fb774232c02730f97e998a5f3292d54efbbcc1` | 2026-10-14T03:37:21.165505+00:00 | 4 |
|
||||
| `helm-read-path-guard.md` | 12821 | `5bf9ba115071a97f07a4d6e09bd4d4add78646680724ff63e32f2d101cdc1516` | 2026-10-13T03:52:02.873410+00:00 | 4 |
|
||||
| `helm-render-aging.md` | 9349 | `fb6bc7c9a6933c0f4e6f0b54e130b0a50281fe47b4c08d72cd77296d47641781` | 2026-10-11T09:07:49.370878+00:00 | 2 |
|
||||
| `helm-resolved-redirect.md` | 22619 | `0e3d8fd9a5851b05769258dc05ab1343e35efc0bd56665555ea17e3f0544d7f8` | 2026-10-12T23:20:16.004555+00:00 | 3 |
|
||||
| `helm-resolved-root-live-path.md` | 15759 | `729471cd79a0d769cbe3f05503ac1ea1d7e8641da052f4c17aafe7217c3f4919` | 2026-10-13T09:07:08.630294+00:00 | 3 |
|
||||
| `helm-root-redirect.md` | 12811 | `e68be4cdd5a535e22eae87f5ffbf9cb6841ea3d8a044ae34c13e74f86460568b` | 2026-10-12T20:50:26.224823+00:00 | 3 |
|
||||
| `helm-runtime-redirect.md` | 14030 | `8da99a7994c7b8fb78d3c452dfb9d2971cf51acaf6a328b0e591e9ba19701f5f` | 2026-10-13T06:42:16.451130+00:00 | 5 |
|
||||
| `helm-runwide-census-hoist.md` | 12041 | `0ab0cc10829e14823b76267b6438392fcaca78884d0b404d2f764069f88904a8` | 2026-10-13T13:39:09.328751+00:00 | 2 |
|
||||
| `ledger-audit-pass1.md` | 7638 | `81f3489fbe75bb7917837452b1849456c6b8fdbf9b02ee4b7c7c501435aa2534` | 2026-09-24T20:27:23.832450+00:00 | 1 |
|
||||
| `ledger-audit-pass2.md` | 15795 | `0f39926d463768e770dc8a8929e7f0a3cbf229a1a0dfee9b2cac5e61c1fe8a38` | 2026-09-24T20:27:23.833450+00:00 | 6 |
|
||||
| `ledger-date-closure.md` | 16510 | `a3d022d3bb30ebc44ca2330684f4ec9ec43df7be57f991f6c61a27a4763b0857` | 2026-10-09T09:09:13.923936+00:00 | 4 |
|
||||
| `ledger-link-inventory.md` | 25510 | `eab36efcf379d177b7d8cb04813e15f9e40e0291408a6e4d1b30bdb7ebfd9603` | 2026-09-24T20:27:23.833450+00:00 | 1 |
|
||||
| `magazine-article-map.md` | 15440 | `9ef3bf9baa27ce86e5b0d382ec08b2ddd76d6a7b9e34f4fc0abd7711ad4fee05` | 2026-09-24T20:27:23.833450+00:00 | 2 |
|
||||
| `monitor-identity-census.md` | 5144 | `0c04b700c1eda1d4be97164e711d008850956038209d5d54c9f73220136f223d` | 2026-10-12T09:49:37.878256+00:00 | 3 |
|
||||
| `music-master-verification.md` | 6807 | `62fcd10b0676d710ae014749627055fbfe90b8a5b87c94fe2410da905ace28ed` | 2026-09-24T20:32:33.132975+00:00 | 1 |
|
||||
| `named-source-liveness-unlinked.md` | 10493 | `8a28efe9d84f222593473ea38b69a57cbacf624c4311bfdb06d69aaa6dca58d2` | 2026-10-10T17:50:50.217292+00:00 | 5 |
|
||||
| `named-source-liveness.md` | 16731 | `f12b8a42595a6fd9ba2ebeafc15d4f9cee8631cb2a5725e2cb37ac0a3e04d69a` | 2026-10-10T15:44:49.783216+00:00 | 5 |
|
||||
| `prose-anchor-convention.md` | 16728 | `f029000f01d13452b86d4bfc11eec436fe6a788b78c8c12570e6b5b442b71c80` | 2026-10-10T22:16:34.154470+00:00 | 4 |
|
||||
| `prose-anchor-hardening.md` | 15250 | `607b29403e61db44f15657386531ef11d009f964b90b1a4a5a25542612325108` | 2026-10-11T00:24:04.307601+00:00 | 5 |
|
||||
| `queue-hygiene-census.md` | 10123 | `eb0e1b4f5fa8733fb12eba758d9543a60eb85b8f12f5f7fc79b9908300d2405d` | 2026-10-15T11:00:49.102231+00:00 | 1 |
|
||||
| `quote-fidelity-live.md` | 4074 | `90774cd4b84b7b084554f3c92ae0f67a8edb0663773bd4174260ed8f263ff34b` | 2026-09-24T20:27:23.833450+00:00 | 5 |
|
||||
| `render-site-channels.md` | 16456 | `ea4b5e988a065dfd0bbc06f735cf7aead88e30030dfd9af4bcfdf5c05ec4c1bc` | 2026-10-11T04:39:45.117135+00:00 | 5 |
|
||||
| `render-site-coverage.md` | 20865 | `34716145492bd265cceb9cded8363f0a59a057862e1c90f74625e93b39d51ac1` | 2026-10-11T02:31:45.406739+00:00 | 5 |
|
||||
| `render-site-guards.md` | 16728 | `906753079a020c1475a38df1c4ccbb233ba8b2da5d523492635a1ec7de4722eb` | 2026-10-11T06:50:32.194852+00:00 | 4 |
|
||||
| `silent-rooms-enrichment.md` | 6417 | `8e4d1d6c5a784bda866f5b539c212a8cbff17c2bb3543d596c904f39bd4a45c1` | 2026-09-24T20:27:23.834450+00:00 | 1 |
|
||||
| `silent-rooms.md` | 5289 | `0ee9a7eab44b02a45108ede17af315d6784743b896cac4a6943550689849e951` | 2026-09-24T20:27:23.834450+00:00 | 2 |
|
||||
| `summary-fidelity-full-clauses.md` | 311090 | `e3267b6a01a08385caa7f059685e92bafd024ae7ef4e7cdd008c81e44d2bd022` | 2026-10-07T13:16:05.109015+00:00 | 22 |
|
||||
| `summary-fidelity-nonmagazine-pilot.md` | 7308 | `b595708a40940e6f234a499dd9ed9fe37bd733d0a6b061000bfbed36ffc797a6` | 2026-10-08T13:12:48.603151+00:00 | 3 |
|
||||
| `summary-fidelity-nonmagazine.md` | 65970 | `8331124d36b833d2ee5ab5597bb8ee1699d119d6bb28bbd0549ea33da494c0a2` | 2026-10-10T13:27:29.854277+00:00 | 9 |
|
||||
| `summary-fidelity-pilot.md` | 5313 | `2d7d61344590a41bf8d996b80d76eb60a410156cca215199a46602f03dbf4323` | 2026-09-26T13:39:22.687296+00:00 | 7 |
|
||||
| `truncated-identifier-census.md` | 12443 | `f04520dfee745fab93059f073b94853da1c5515b6768901bf6439d5ad59f2fcf` | 2026-10-26T13:34:26.439261+00:00 | 5 |
|
||||
|
||||
Total files: **64** | Total bytes: **1384931**
|
||||
@@ -0,0 +1,65 @@
|
||||
path size_bytes sha256 mtime_utc q_hits
|
||||
apply-queue-status-2026-10-25.md 6271 12da1c5ef134a2f3976d8f76cc1a2b87851e8dcb1f5f732f8cfa56927166d1b5 2026-10-28T13:33:43.140822+00:00 0
|
||||
dead-link.md 3134 9b49e424ec981ad014431b979fa8251ca9301ffc80da67327594a0bfe8d48ecd 2026-09-24T20:27:23.832450+00:00 1
|
||||
evidence-tier-audit.md 19516 625bfb1e9afd9ba3541dc83c09fab39032c7e77095dea616dea60fa70c4ca1dd 2026-10-10T09:07:44.555549+00:00 6
|
||||
excerpt-binding-audit.md 110696 47ff51b0eb7bfe22235ed980fe103572c8534c53669f7030d6c23e77a1b5e66e 2026-10-10T13:34:28.608890+00:00 11
|
||||
excerpt-placement-audit-zephyrus-sample.md 13368 f8cda6cd2c707038bc342238652699aa14be7477bc48d9fd36de59e2033806d2 2026-10-12T13:16:09.003821+00:00 2
|
||||
excerpt-placement-audit.md 14045 4b1052df4530342a36540ebbdd4550f32c30fef04a11ea576eb556084831cd45 2026-10-12T04:51:30.993999+00:00 8
|
||||
excerpt-placement-nonmagazine-zephyrus-recompute.md 24613 8e6726cb7b2a60458d65b350373cd03d282585e777c59ad6112d513bb9b88604 2026-10-15T13:16:41.464012+00:00 4
|
||||
excerpt-placement-nonmagazine.md 38817 815222254935f2f7cc449e3fd3e619f32c915d79571df64643c3746cca3edf29 2026-10-12T16:07:11.000508+00:00 4
|
||||
excerpt-placement-rows.md 74561 880223f35f9b660e54df9fe21f3de372468fc610fb7d19cf7b820d82935c7123 2026-10-12T04:49:04.686720+00:00 4
|
||||
falsification-pass.md 8065 e111e9e4cd6fbcacf3993c981e9fcddda13f94d65aab70e8fbcf3879ad63398a 2026-09-24T20:27:23.832450+00:00 2
|
||||
helm-adoption-rehearsal.md 12914 b31466d2e77451f47e6ae10a5314fbc96ec2d151151aa3ba5912d3aa72648490 2026-10-15T13:51:24.080434+00:00 1
|
||||
helm-adoption-sequence-readiness.md 12450 263610ab3e861bf656c85a54ed8b950d434e5cade108134997097420ab9324b0 2026-10-14T23:04:15.638536+00:00 2
|
||||
helm-behavioural-guard.md 10232 69e72474c103c727c11408aca34a666309b740db66f0cd476bc13e1772d56db9 2026-10-12T07:05:00.757147+00:00 2
|
||||
helm-cli-entry-point.md 5887 dca2fe53fa41a6d0d9eafe3133af13bb2185848f55f76fae8c23aeba921cc9ad 2026-10-11T11:15:21.670438+00:00 3
|
||||
helm-collector-run.md 19380 a74c395ee5eb5e90a38cae0744c6989dea6b604d4466175ba920afcf0396c0a5 2026-10-11T15:39:31.141312+00:00 10
|
||||
helm-deployed-gate-admission.md 5633 5bdd2e7503cced8eee5b31a0256500aaa8eda9f8e3adbb80d3702eeb5e8df61a 2026-10-12T11:37:49.562949+00:00 3
|
||||
helm-deployed-page-generation.md 9953 bdd5fa1c03586c28bd5e33a35ab4615a16a3e49d20c04bf8d25f492c5965eef2 2026-10-14T13:24:57.090995+00:00 2
|
||||
helm-deployed-pill-guard.md 11418 b7137bc469ee9cd8d07f85822cdd24bdbab44edbf496a2c85a32b73ff6d88d82 2026-10-15T01:21:21.925581+00:00 1
|
||||
helm-destination-guard-fix.md 12253 56e25f160b8019d44d9b293d07ada642006bb51dacc726aece7481163294c42e 2026-10-12T09:30:03.418321+00:00 2
|
||||
helm-discovery-channel-seed.md 22650 35bdeec27f617cf1d6c50c94b902b0f944d1e32e32c1a99f5a498ece9bdb9ce8 2026-10-14T08:39:19.253591+00:00 18
|
||||
helm-g8-scrub.md 9517 50defb09faabdde43a7ff0b085646f0bd8d101e8a73d2f7bccbde81b5d6a50e7 2026-10-11T22:18:12.501765+00:00 4
|
||||
helm-hash-line-qualifier.md 13678 d92f5b7ce9fab458fa8d8ef275d04d2a2d7a2a7d78d7e91ca2dc6feeaa9eb543 2026-10-15T08:38:57.573602+00:00 1
|
||||
helm-home-channel-guard.md 34311 4ba00ce427b85079adedf34524c8334a92e949b205efcc682c8cdd47a99a1cd7 2026-10-13T20:49:23.319738+00:00 5
|
||||
helm-leg-sandbox.md 13561 7c5111aa064e85247007a8ce1ca7a20e0d82d64db45eae0edcef62b9e78eec28 2026-10-12T18:31:27.568825+00:00 2
|
||||
helm-null-gate.md 9924 84b1e714bfad1c0be948845f0f0a9f92a739ce5b64b68a197523bbb7c0808a58 2026-10-12T00:27:58.308032+00:00 2
|
||||
helm-parse-guard.md 12284 19fa3ff6d25c85ce4ae5dfbde5af00b832651f76ca17ca42d3eadf17731f3eba 2026-10-13T01:36:45.457449+00:00 3
|
||||
helm-pill-both-directions.md 13535 8536781b5566390db74d3e3497260dd14e2e2bd958c97795b38a71d12bbb47d1 2026-10-15T06:11:09.116136+00:00 1
|
||||
helm-pill-ground-truth.md 14419 d6600fd195e4b11c937b6512366242c92269243293c84a28e56c0d51d54b38bb 2026-10-15T03:53:29.970866+00:00 1
|
||||
helm-pin-hash-convention.md 15109 b84391af977218c832d7bba1c6f457d0a4e2a8e463fa609b62b676bfcf5392dc 2026-10-15T18:49:37.803962+00:00 4
|
||||
helm-pin-pill-staleness.md 20989 d4f686ebaeed51cfcb3d20be1e989e8e9918c438e7e2e6635774393ad3c48a1d 2026-10-14T18:33:05.780643+00:00 5
|
||||
helm-pointer-split.md 13828 9a85184a18d5264ba26faaa15dda46dfe7c317dfe2915df1f2e53b6efcf22e35 2026-10-11T22:18:49.313832+00:00 1
|
||||
helm-precondition-gate.md 8261 a5d3ad6af205f3c1c8caf4f4baa2ee01548b5a89697ff5478e3fc52a9a61656b 2026-10-12T02:36:31.775141+00:00 4
|
||||
helm-probe-spawn-env.md 15287 4b557db28dbaad1b5758cd3c136fded70f415cec725f282d877937014bcb4ff5 2026-10-13T11:25:35.388798+00:00 3
|
||||
helm-pwdir-channel-refusal.md 20820 8d67248fd9acb73cb5cb0c39a5fb774232c02730f97e998a5f3292d54efbbcc1 2026-10-14T03:37:21.165505+00:00 4
|
||||
helm-read-path-guard.md 12821 5bf9ba115071a97f07a4d6e09bd4d4add78646680724ff63e32f2d101cdc1516 2026-10-13T03:52:02.873410+00:00 4
|
||||
helm-render-aging.md 9349 fb6bc7c9a6933c0f4e6f0b54e130b0a50281fe47b4c08d72cd77296d47641781 2026-10-11T09:07:49.370878+00:00 2
|
||||
helm-resolved-redirect.md 22619 0e3d8fd9a5851b05769258dc05ab1343e35efc0bd56665555ea17e3f0544d7f8 2026-10-12T23:20:16.004555+00:00 3
|
||||
helm-resolved-root-live-path.md 15759 729471cd79a0d769cbe3f05503ac1ea1d7e8641da052f4c17aafe7217c3f4919 2026-10-13T09:07:08.630294+00:00 3
|
||||
helm-root-redirect.md 12811 e68be4cdd5a535e22eae87f5ffbf9cb6841ea3d8a044ae34c13e74f86460568b 2026-10-12T20:50:26.224823+00:00 3
|
||||
helm-runtime-redirect.md 14030 8da99a7994c7b8fb78d3c452dfb9d2971cf51acaf6a328b0e591e9ba19701f5f 2026-10-13T06:42:16.451130+00:00 5
|
||||
helm-runwide-census-hoist.md 12041 0ab0cc10829e14823b76267b6438392fcaca78884d0b404d2f764069f88904a8 2026-10-13T13:39:09.328751+00:00 2
|
||||
ledger-audit-pass1.md 7638 81f3489fbe75bb7917837452b1849456c6b8fdbf9b02ee4b7c7c501435aa2534 2026-09-24T20:27:23.832450+00:00 1
|
||||
ledger-audit-pass2.md 15795 0f39926d463768e770dc8a8929e7f0a3cbf229a1a0dfee9b2cac5e61c1fe8a38 2026-09-24T20:27:23.833450+00:00 6
|
||||
ledger-date-closure.md 16510 a3d022d3bb30ebc44ca2330684f4ec9ec43df7be57f991f6c61a27a4763b0857 2026-10-09T09:09:13.923936+00:00 4
|
||||
ledger-link-inventory.md 25510 eab36efcf379d177b7d8cb04813e15f9e40e0291408a6e4d1b30bdb7ebfd9603 2026-09-24T20:27:23.833450+00:00 1
|
||||
magazine-article-map.md 15440 9ef3bf9baa27ce86e5b0d382ec08b2ddd76d6a7b9e34f4fc0abd7711ad4fee05 2026-09-24T20:27:23.833450+00:00 2
|
||||
monitor-identity-census.md 5144 0c04b700c1eda1d4be97164e711d008850956038209d5d54c9f73220136f223d 2026-10-12T09:49:37.878256+00:00 3
|
||||
music-master-verification.md 6807 62fcd10b0676d710ae014749627055fbfe90b8a5b87c94fe2410da905ace28ed 2026-09-24T20:32:33.132975+00:00 1
|
||||
named-source-liveness-unlinked.md 10493 8a28efe9d84f222593473ea38b69a57cbacf624c4311bfdb06d69aaa6dca58d2 2026-10-10T17:50:50.217292+00:00 5
|
||||
named-source-liveness.md 16731 f12b8a42595a6fd9ba2ebeafc15d4f9cee8631cb2a5725e2cb37ac0a3e04d69a 2026-10-10T15:44:49.783216+00:00 5
|
||||
prose-anchor-convention.md 16728 f029000f01d13452b86d4bfc11eec436fe6a788b78c8c12570e6b5b442b71c80 2026-10-10T22:16:34.154470+00:00 4
|
||||
prose-anchor-hardening.md 15250 607b29403e61db44f15657386531ef11d009f964b90b1a4a5a25542612325108 2026-10-11T00:24:04.307601+00:00 5
|
||||
queue-hygiene-census.md 10123 eb0e1b4f5fa8733fb12eba758d9543a60eb85b8f12f5f7fc79b9908300d2405d 2026-10-15T11:00:49.102231+00:00 1
|
||||
quote-fidelity-live.md 4074 90774cd4b84b7b084554f3c92ae0f67a8edb0663773bd4174260ed8f263ff34b 2026-09-24T20:27:23.833450+00:00 5
|
||||
render-site-channels.md 16456 ea4b5e988a065dfd0bbc06f735cf7aead88e30030dfd9af4bcfdf5c05ec4c1bc 2026-10-11T04:39:45.117135+00:00 5
|
||||
render-site-coverage.md 20865 34716145492bd265cceb9cded8363f0a59a057862e1c90f74625e93b39d51ac1 2026-10-11T02:31:45.406739+00:00 5
|
||||
render-site-guards.md 16728 906753079a020c1475a38df1c4ccbb233ba8b2da5d523492635a1ec7de4722eb 2026-10-11T06:50:32.194852+00:00 4
|
||||
silent-rooms-enrichment.md 6417 8e4d1d6c5a784bda866f5b539c212a8cbff17c2bb3543d596c904f39bd4a45c1 2026-09-24T20:27:23.834450+00:00 1
|
||||
silent-rooms.md 5289 0ee9a7eab44b02a45108ede17af315d6784743b896cac4a6943550689849e951 2026-09-24T20:27:23.834450+00:00 2
|
||||
summary-fidelity-full-clauses.md 311090 e3267b6a01a08385caa7f059685e92bafd024ae7ef4e7cdd008c81e44d2bd022 2026-10-07T13:16:05.109015+00:00 22
|
||||
summary-fidelity-nonmagazine-pilot.md 7308 b595708a40940e6f234a499dd9ed9fe37bd733d0a6b061000bfbed36ffc797a6 2026-10-08T13:12:48.603151+00:00 3
|
||||
summary-fidelity-nonmagazine.md 65970 8331124d36b833d2ee5ab5597bb8ee1699d119d6bb28bbd0549ea33da494c0a2 2026-10-10T13:27:29.854277+00:00 9
|
||||
summary-fidelity-pilot.md 5313 2d7d61344590a41bf8d996b80d76eb60a410156cca215199a46602f03dbf4323 2026-09-26T13:39:22.687296+00:00 7
|
||||
truncated-identifier-census.md 12443 f04520dfee745fab93059f073b94853da1c5515b6768901bf6439d5ad59f2fcf 2026-10-26T13:34:26.439261+00:00 5
|
||||
|
Reference in new issue
Block a user