refactor(tooling): T-1293 — atlas map, and the generator that must not run

The star-map family was the last unported part of the tree, and it never had
a ticket. Two of its scripts become `reach atlas map` verbs, nested under
atlas like planet (D-243: the Reach map is the ladder's top rung):

- `reach atlas map data [--check]` regenerates client/data/star_map_data.json.
  The regenerated file differs by one line: `_meta.note`, which named the
  old script's path.
- `reach atlas map svg` renders the concentric SVG (+ PNG), byte-identical
  to the old script's output on the same data.

make check-star-map and star-map-data stay as one-line delegates, because
pre-pr-client and pre-pr-validate depend on check-star-map.

generate-star-map.py, its seed, sculpt-star-map.py and tune-star-map-topology.py
are archived, not ported. The generator rewrites docs/design/star-map.json
unconditionally from an S-NNN-keyed seed, so re-running it would erase the GJ
migration and every hand edit since; sculpt and tune only understand S-NNN
edges. .claude/rules/diagrams.md was telling agents to "edit the generator
and re-run it". It now distinguishes the live concentric render, the seven
frozen S-keyed sector .d2 files (T-1294), and the two SVGs that never had a
generator in the repo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-23 20:00:05 +02:00
co-authored by Claude Opus 5.5
parent 26cc8de7f3
commit 59b3fc4caa
18 changed files with 548 additions and 437 deletions
+9 -9
View File
@@ -517,16 +517,16 @@ audit:
deny:
cd server && cargo deny check
check-star-map:
@python3 tooling/generate-star-map-data.py --check
# Both delegate to `reach atlas map data` in one line and say so (D-263):
# check-star-map is a dependency of pre-pr-client / pre-pr-validate, which is
# orchestration, and star-map-data is named in the help. Regenerate after any
# systems.db change (e.g. terrain_reference, #839) so the atlas viewer picks up
# the new fields; the pre-pr targets fail on a stale file.
check-star-map: ## = reach atlas map data --check
@reach atlas map data --check
# Regenerate client/data/star_map_data.json from systems.db + wiki. Depends on
# nothing — call this after any systems.db change (e.g. the server atlas
# pipeline populating terrain_reference in #839) so the atlas viewer picks up
# the new fields. pre-pr-client / pre-pr-validate assert staleness via
# check-star-map and will fail if this step is skipped.
star-map-data:
@python3 tooling/generate-star-map-data.py
star-map-data: ## = reach atlas map data
@reach atlas map data
perf-baseline:
@reach dev perf