`reach wiki stats` and `reach wiki gttr-hook` replace tooling/db/wiki_sync.py
and populate_gttr_hook.py. Both are output-identical to the originals:
`stats` byte-for-byte, and all 301 extracted GTTR hooks line-for-line.
wiki_sync.py moved whole, but generate_wiki() and import_from_wiki() are NOT
verbs. Before porting, the old `--generate` was run against a clean tree to get
a parity baseline. It changed all 301 system pages, +940 / -10,761, and was
reverted at once. It deletes the Celestial Bodies / Stations blocks (owned by
the Rust atlas sync, which it does not know about), deletes the
Industries / Exports / Imports rows (nothing writes those any more), and
rewrites star types where systems.db and the pages disagree. D-262, CLAUDE.md
and the wiki skill all described it as the routine, prose-preserving render.
CLAUDE.md and the skill now say not to run it; D-262 needs amending — T-1292.
Provenance moves to tooling/archive/, with a README naming what each script
did and why it is not run:
- pql-migrate/ (the T-1271 ruling)
- wiki-bootstrap/: assign-astro-ids + its catalog, migrate-s-to-gj,
patch-core-sector (hardcodes a dead path), fill-missing-globes,
generate-stubs and find-stubs (finds 0 stubs — Phase 1 is done),
backfill_cultural_corridor (a raw systems.db patch script, outside D-262),
and process-wiki-system-changes, whose last step is the destructive render
Also:
- stats() printed "run import first" and exited 0 when a table was missing;
it now fails with a remedy. generate_wiki() counted created pages after
writing them, so `created` was always 0.
- tooling/godot-cold-parse and godot-parse-sweep were never retired after
T-1283, and the pr-process skill still told agents to run them. Removed;
the skill and parse_sweep.gd now name the reach verbs.
- systems.db re-stamped: schema comments changed, and the stamp records the
schema file's SHA for tamper detection.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>