- Add _unhandled_key_input to main.gd: M toggles star_map.toggle_visible()
- Remove topology line from info panel (internal data, not player-facing)
- Cast aperture_count to int (was showing decimal point)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Persistent worktrees (server, client, copy, audio, visual, ci, planning,
maintenance) caused agents crossing boundaries, stuck agents leaving
uncommitted work, and index.lock collisions. Replaced with ephemeral
sprint branches (sprint-{N}/{team}) and worktrees created on demand.
Changes:
- New start-sprint script replaces start-session (dynamic tabs per active team)
- Sprint teardown integrated into sprint-start skill (A1c step)
- SR_DB_PATH env var for database access from any directory
- CLAUDE.md team boundaries rewritten (scope-based, not directory-based)
- Agent Rule 0 updated to team scope dirs instead of worktree isolation
- PR review uses git show instead of cross-directory reads
- Briefing template updated for sprint-{N}/{team} branch naming
- Deleted worktree-update skill (obsolete)
- Removed WORKTREE_TEAM env var and cross-directory Read permissions
- All 8 persistent worktrees removed
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Star map (W1-W3, S3):
- _process visibility guard + dirty flag (no redraw when hidden/unchanged)
- _system_hash masked to 31-bit positive range
- Extracted _find_nearest_system() shared helper
game_state.gd (W4):
- Inline load() in apply_snapshot() replaces per-tick overhead; safe at
runtime because script is already in resource cache
Data pipeline (W5-W6):
- Script-relative path resolution via __file__
- --check mode + make check-star-map staleness target
Minor (S1-S2, S5):
- Removed redundant bone_idx assignment
- Simplified double-negative test assertion
- Documented autoload parse-order convention in CLAUDE.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Review fixes:
- corridor-status: INNER JOIN → LEFT JOIN so systems without gate
records are included in counts instead of silently excluded
- corridor-status: output as JSON (serde_json) matching all other
atlas commands, instead of plain-text ASCII table
- generate_body_matrix: emit atmosphere "standard" instead of
"breathable" to match committed-system conventions
- Doc header: add corridor-status usage example
- CHANGELOG: note stale habitable_planet_count in pre-fix systems
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Autoload scripts are parsed before regular scripts, so class_name
types (CharacterVisualDescriptor, TestHarness, YamlParser) are not
available at parse time. Replace type annotations with untyped vars
and use load() for in-body class references. Fixes all 14 headless
parse errors (9 pre-existing + 5 from Sprint 30 changes).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
New StarMapRenderer: 301 systems in concentric hop-rings from player
location, sector-colored, click-to-select with info panel, pan/zoom.
Integrated into HUD (hidden by default), insert state propagation
wired in main.gd. Data enriched from systems.db + star-map.json via
tooling/generate-star-map-data.py regeneration script.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
encode_startup_message() now accepts optional CharacterVisualDescriptor
as third param, serialized via to_dict(). sim_bridge passes the
descriptor from GameState on new game start. apply_snapshot() restores
descriptor from server snapshot on save/load cycle.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Infrastructure for floating UI elements (status indicators, thought
bubbles, alert markers). Marker3D at Vector3(0, 0.3, 0) offset from
Head bone, exposed via get_overhead_anchor() public API.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Documents positional argument syntax and key rules for the ticket
CLI to prevent --title flag misuse and sqlite3 crashes.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sprint 30 showed that grepping source files does not distinguish
committed code from uncommitted agent work. Added mandatory
git status + git diff --stat check from repo root before accepting
"already done" claims, and a warning about CWD path resolution.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
#762: Update habitable_planet_count filter to accept both "breathable"
and "standard" atmosphere values via matches! macro. Previously only
matched "breathable", causing all committed systems to report 0
habitable planets.
#744: Add corridor-status subcommand to atlas CLI. Shows remaining
unfinished systems grouped by geographic_sector and hop_distance,
with plain text table output and totals.
Cargo.lock updated for v0.1.29.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sprint goal: Close Phase 1 wiki quality debt — stereotype correction,
data integrity fixes, and atlas regressions — so the wiki stands
correct before Phase 1 UI work begins.
26 tickets: copy (18), client (5), server (3).
Epics #638, #683, #738 closed. #766 deferred (own sprint).
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
1. GJ 111: spectral_class F5V → F5/F6V to match wiki (subgiant)
2. GJ 3943: spectral_class k-m → K5V+M3V (valid MK notation for binary)
3. GJ 903: write wiki prose — was empty stub with only body tables
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Unsettled systems receive their GJ designation as proper_name, except
GJ 868 which is named "Encontro" per wiki lore (informal Portuguese
corridor name). 24 proposals updated, systems.db fully synced.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
commit-system was inserting bodies/stations but never writing proper_name
to star_systems. Bulk-updated all 276 authored system names. Fixed duplicate
body_id collisions in GJ 1156, GJ 139, GJ 34A, GJ 34B, GJ 661A, GJ 664,
GJ 780 (planet and gas giant sharing same letter suffix).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Helderoog: partnership protocol genetic data — two communities' shared
future from a narrow founder population.
Entremeio: no-inspection provisioning policy after undisclosed incident.
Both headers corrected.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Pedra Seca: sealed water allocation records from fourth-generation drought.
Claraboia: founding cooperative dissolution dispute details.
Both headers corrected (M→K, M→F).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Founding cooperative sale circumstances undisclosed. Profitable
cooperative liquidated to fund deep frontier expedition.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
West_reach charter lapse circumstances undisclosed. Well-funded departure
raises questions the community does not answer.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>