Files
felhom.eu/documentation/audits/catalog-sweep-2026-10-24/tools/letters_to_ids.py
T
admin 67053335d1
gates / gates (push) Successful in 13m17s
Catalog sweep 2026-10-24: all 65 catalog apps on a fresh box (52 work, 10 with a problem, 0 broken); register 208 -> 217 (R-1269..R-1277 opened; notes on R-739, R-1267); STATUS + D46; map B1 re-checked; evidence
Every catalog app installed, used, backed up, removed keeping data, reinstalled, restored and removed with data on a
fresh box from the public ISO (demo-hp VM 9360, Tester4), endpoint-level. Worst: a reinstall's capture rewrites the
kept unit so its restore breaks the app (R-1269, P2), the restore still reports success (R-1270, P2), and „use my kept
data" loaded another box's future-dated database (R-1271, P2). Drill catalog fixes for the morning list (n8n usage
data; OpenGist 256M, proven by a cgroup probe). VM 9360 and LXC 9361 destroyed; hub host Tester4-aa9466 left for the
operator. REPORT-catalog-sweep-2026-10-24.md.
2026-10-25 00:13:05 +02:00

14 lines
703 B
Python

#!/usr/bin/env python3
"""letters_to_ids.py '<json map from file_rows.py>' — replace „row A", „row A, B" with the filed R-numbers in the
README and in table.py (the drafts used letters because the IDs are taken only after the last pull)."""
import json, os, re, sys
EV = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
ids = json.loads(sys.argv[1])
rx = re.compile(r"\brows? ([A-I](?:, [A-I])*)\b")
for p in (os.path.join(EV, "README.md"), os.path.join(EV, "tools", "table.py")):
s = open(p).read()
s2 = rx.sub(lambda m: ", ".join(ids[x] for x in m.group(1).split(", ")), s)
open(p, "w").write(s2)
print(p, "replaced", len(rx.findall(s)), "left", len(rx.findall(s2)))