# Hand-Refine Log — Ticket #849 # Core-world atlas cohesion pass (Sprint 36) Analyst: paula Date: 2026-04-19 --- ## Analysis infrastructure Created `tooling/planet-gen/atlas_cohesion_audit.py` — reusable SQL audit script for the atlas_* tables. Checks: empty/single-char names, generic/lazy outputs (% Fork, % Run, etc.), cardinal direction density, earth-echo concentration, same-body cross-feature stem duplicates, cross-body stem duplicates within a system. Accepts `--system`, `--body`, `--db` flags. Created `tooling/planet-gen/apply_name_fixes.py` — applies curated name replacement tables to markers.json files (name fields only; geometry preserved). `--dry-run` supported. After running, caller must sync DB via `generate_atlas.py --body `. --- ## Bodies touched ### GJ 144 — Ran system #### GJ144d — Kallast (2B pop, urban_concentrated, ocean world) **Priority reason:** Highest-population body in the Ran system; repeated player destination. Prior naming pass had done good Nordic groundwork (Rán's Landing, Seterfjellet, Rán's Run/Ranfall Beck cross-reference arc) but left residual generic oceans and one cross-system stem collision. **Changes:** | Feature type | Old name | New name | Reason | |---|---|---|---| | river | Aldren Pass | Randalfoss | "Aldren" stem collides with Lendel (GJ380c) capital + river "The Aldren" — cross-system noise | | ocean | Boulder Bluff | Keldmere | Generic; "Boulder Bluff" is a geographic descriptor for a landform, not a sea | | ocean | High Mesa | Seterfjord | "High Mesa" is nonsensical for an ocean; renamed to cross-ref mountain "Seterfjellet" | | poi | Summit Point | Kallast Gate Terminal | Generic; terminal should reference the capital city name | **Cross-reference arcs post-fix:** - Rán-: Rán's Landing (city), Rán's Run (river), Randalfoss (river), Ranfall Beck (river), Rán Sea (ocean) - Seter-: Seterfjellet (mountain), Seterfjord (ocean) - Keld-: Keldmere (ocean), Timber Keld (river) **DB sync:** `generate_atlas.py --body GJ144d` ✓ --- #### GJ144e — Vethis (1.2B pop, agricultural, dispersed_rural) **Priority reason:** Second-most-populated Ran body; the rural agricultural contrast to Kallast. Prior naming pass was partial — extensive cardinals (West Bend), earth-echoes (Blue Ridge), overused stems (Ash-: 3 features; Iron-: 2 features), and many pure generics (Golden Valley, Broad Fork, Stone Point). **Changes:** | Feature type | Old name | New name | Reason | |---|---|---|---| | river | West Bend | Greywash Fork | Cardinal → cross-refs Greywash river (shared Grey- stem arc) | | river | Blue Ridge | Ashvale Beck | Earth-echo → cross-refs Ashvale city (shared Ash- stem arc) | | river | Stone Point | Thornrun | Generic → cross-refs Thorncrests mountain (shared Thorn- arc) | | river | Ironside Run | Kelside Run | Iron- overuse → cross-refs Kelbridge city (shared Kel- arc) | | ocean | Ashbluff Sea | Veth Mere | Ash- overuse (3 Ash- names) → cross-refs Veth Delta river (shared Veth- arc) | | mountain | Golden Valley | Greymoor Range | Generic → extends Grey- arc | | mountain | Broad Fork | Keld Spur | Generic → Nordic compound (keld = spring/source) | | mountain | Ashstone Ridge | Greystone Ridge | Ash- overuse → extends Grey- arc | | poi | Ridge Crossing | Vethis Gate Terminal | Generic → terminal named for the planet | **Cross-reference arcs post-fix:** - Grey-: Greywash (river), Greywash Fork (river), Greymoor Range (mountain), Greystone Ridge (mountain) - Thorn-: Thorncrests (mountain), Thornrun (river) - Kel-: Kelbridge (city), Kelside Run (river), Keld Spur (mountain) - Veth-: Vethis (planet), Veth Delta (river), Veth Mere (ocean) - Ash-: Ashvale (city), Ashvale Beck (river) ← 2 names, was 3 before fix **DB sync:** `generate_atlas.py --body GJ144e` ✓ --- ### GJ 71 — Tau Ceti system #### GJ71c — Threshold (600M pop, agricultural, urban_concentrated) **Priority reason:** Tau Ceti's primary inhabited body; high player footfall. All six rivers were named after the original Commission survey team — a strong narrative hook ("Latin personal names = founding scientists"). "Aethelred" broke the pattern (Anglo-Saxon, wrong naming tradition). **Changes:** | Feature type | Old name | New name | Reason | |---|---|---|---| | river | Aethelred | Gaius | Anglo-Saxon name breaks all-Latin river pattern (Octavius, Septimus, Quintus, Valeria, Marcus, Gaius) | **DB sync:** `generate_atlas.py --body GJ71c` ✓ --- #### GJ71d — Arden (500M pop, agricultural, dispersed_rural) **Priority reason:** Tau Ceti's sister body; shares corridor with GJ71c, so cross-body stem duplicates matter most here. Two collisions found: exact POI name match + ocean/city stem match. **Changes:** | Feature type | Old name | New name | Reason | |---|---|---|---| | city | Concordia Hall | The Praxis | "Concordia" = GJ71c ocean name; cross-body stem collision within same system/corridor | | river | Basilica Nova | Via Principia | Exact name match with GJ71c POI "Basilica Nova"; direct duplicate across bodies | **DB sync:** `generate_atlas.py --body GJ71d` ✓ --- #### GJ71d-1 — Verantis (20M pop, transit moon) **No changes.** Discovered that Verantis was already updated in a prior sprint pass — mountains renamed to unique Latin institutional names (The Lateranum, The Curia Magna, The Exedra, The Aedes Sacra, The Macellum, The Oracle, The Comitium, Moeribee), capital updated to "Praetorium". DB was stale relative to markers.json; synced only. **DB sync:** `generate_atlas.py --body GJ71d-1` ✓ --- ## Systems NOT yet touched ### Sol (GJ 0) — BLOCKED Body directories do not exist. `wiki/star-systems/GJ-0/bodies/` has no subdirectories for Earth (GJ0d), Luna (GJ0d-1), Mars (GJ0e), or other inhabited bodies. `sol_import.py` must be run first to create body directories and initial markers.json from the real-world geographic data in `tooling/planet-gen/sol_markers/`. Flagged to team-lead. ### Barnard's Star (GJ 699) — FLAGGED, not yet addressed Audit revealed significant cross-body naming issues on Verada (1.9B pop), a hop-0 system: - "Central District" appears as BOTH a GJ699b ocean and GJ699b-1 mountain (exact duplicate) - "Capitol Heights" appears as GJ699b city and GJ699b-1 mountain - "Liberty" stem hits 3 separate bodies - "Meridian" stem hits 3 separate bodies - "Zenith" stem hits 3 separate bodies - Predominantly civic/Earth-style naming (Liberty Plaza, Meridian City, Zenith Station) without system-internal cross-referencing Not addressed yet — flagged to team-lead to decide if within #849 scope or a separate ticket. ### Proxima (GJ 551) — FLAGGED, not yet addressed Cross-body stem duplicates found: Basilica, Pantheon, Senate appear on multiple Ancora sibling bodies. Not addressed — flagged to team-lead. --- ## Audit metrics (before/after comparison) Run `python3 tooling/planet-gen/atlas_cohesion_audit.py --system "GJ 144"` to verify Ran improvement. Run `--system "GJ 71"` for Tau Ceti. Baseline run captured issues above; post-fix re-run showed all named changes reflected in DB correctly. Spot-check verification queries: ```bash SR_DB_PATH="$(pwd)/server/data/systems.db" tooling/db/sqlite-query \ "SELECT local_id, name FROM atlas_rivers WHERE body_id = 'GJ144d'" # Should show "Randalfoss" not "Aldren Pass" SR_DB_PATH="$(pwd)/server/data/systems.db" tooling/db/sqlite-query \ "SELECT local_id, name FROM atlas_cities WHERE body_id = 'GJ71d'" # Should show "The Praxis" not "Concordia Hall" ``` --- ## Files changed - `tooling/planet-gen/atlas_cohesion_audit.py` (new) - `tooling/planet-gen/apply_name_fixes.py` (new) - `tooling/planet-gen/refine_log_849.md` (this file) - `wiki/star-systems/GJ-144/bodies/GJ144d/markers.json` (4 name edits) - `wiki/star-systems/GJ-144/bodies/GJ144e/markers.json` (9 name edits) - `wiki/star-systems/GJ-71/bodies/GJ71c/markers.json` (1 name edit) - `wiki/star-systems/GJ-71/bodies/GJ71d/markers.json` (2 name edits) - `server/data/systems.db` (synced: GJ144d, GJ144e, GJ71c, GJ71d, GJ71d-1)