chore(meta): release v0.1.31
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,51 @@
|
||||
# Sprint 31: Bedrock — Retrospective
|
||||
|
||||
**Period:** 2026-04-05 (single day)
|
||||
**Velocity:** 9/9 tickets completed (100%)
|
||||
**PRs:** 4 merged (#110 copy, #111 server, #112 ci, #113 client)
|
||||
|
||||
## What Shipped
|
||||
|
||||
- **#766** Cultural diversity sweep — 10 systems enriched across 3 corridors, Afrikaans/Dutch subversions, per-body GTTR depth
|
||||
- **#782** Per-body GTTR entries for 25 moons and stations at hub systems
|
||||
- **#774** Nova Estrada and Entremeio enriched to batch standard
|
||||
- **#773** D-168 Iserlohn IP evaluation — retained with documented rationale and Altena alternative on record
|
||||
- **#780** Star map click-through popup with GTTR excerpt, edge-only-on-selected visibility rule
|
||||
- **#775** main.gd decomposed from 28KB/644 lines to 13.4KB/322 lines (SnapshotConsumers, DialogueCoordinator, SnapshotHandler extracted)
|
||||
- **#783** All 354 gdlint warnings resolved — zero warnings policy achieved
|
||||
- **#776** atlas.rs split from 2119-line monolith into 8 focused modules
|
||||
- **#777** Shared Python DB module (common.py), ruff linting, pre-push integration
|
||||
|
||||
## What Went Well
|
||||
|
||||
- **First sprint on ephemeral branches** — `start-sprint.sh` created worktrees, opened tabs, auto-ran `/sprint-start`. No cross-boundary issues, no stuck agents with uncommitted work, no stale index.lock collisions. The worktree migration paid off immediately.
|
||||
- **Zero warnings achieved** — gdlint went from 354 warnings to 0, ruff is clean, clippy is clean. Pre-push now catches all three. Quality baseline established.
|
||||
- **4 teams in parallel, same day** — copy, server, ci, client all delivered PRs within hours. The ephemeral branch model handled parallel execution cleanly.
|
||||
- **Review cycles were fast** — server needed 2 rounds (changelog fix), ci and copy merged on first review, client merged on first review. No busywork rounds.
|
||||
- **Process improvements shipped inline** — sprint-start process fix (team branches must not run pr-review) came in with the copy PR and merged naturally. Auto-unassign on sprint close fixed a recurring bookkeeping issue.
|
||||
|
||||
## What Hurt
|
||||
|
||||
- **SI agent died during sprint planning** — had to redo planning manually. The agent's death left a stale index.lock on main, which was the exact problem the worktree migration was designed to prevent. Root cause: SI was spawned in the main worktree, not an isolated one. Planning agents should use `isolation: "worktree"` in future.
|
||||
- **Ptyxis tab placement** — first `start-sprint.sh` run opened 3 windows instead of tabs in the current window. Fixed quickly (switched `--new-window` to `--tab`), but the initial experience was messy.
|
||||
- **Cargo.lock conflicts on merge** — server branch had a stale Cargo.lock from pre-v0.1.30. Required manual `git checkout` before merge. This will recur until sprint branches are created after the version bump.
|
||||
|
||||
## What We Learned
|
||||
|
||||
- **The cascade is load-bearing** — redirecting Sprint 31 from tycoon/character work back to Phase 1 wiki completion was the right call. The star map popup only works because 301 systems have GTTR content. Skipping ahead would have produced empty popups.
|
||||
- **God object decomposition is safe in GDScript** — the autoload parse-order constraint was the main risk. The `load()` inline pattern works, and non-autoload classes can use `class_name` freely. Documented as convention in CLAUDE.md.
|
||||
- **Copy PR review scope rule continues to work** — Paula's Fragua warning and Miri's GJ-1111 sync issue were correctly classified as content tickets, not PR blockers. Zero scope creep on copy reviews.
|
||||
|
||||
## Carry-Over
|
||||
|
||||
(none — 100% completion)
|
||||
|
||||
## Action Items
|
||||
|
||||
1. **Done:** Auto-unassign on sprint close added to `tooling/db/sprint stop` (committed)
|
||||
2. **Done:** Zero-warnings policy added to pr-push and pr-review skills
|
||||
3. **Done:** `start-sprint.sh` fixed to open tabs in current window
|
||||
4. **Backlog:** Panel height bug in star map popup for hub systems (cosmetic — Hoshe flagged)
|
||||
5. **Backlog:** `show.rs` SQL duplication maintenance trap (Tyre flagged — ticket-worthy)
|
||||
6. **Backlog:** qdrant/audio connectors still have local `load_config()` — incomplete shared module adoption
|
||||
7. **Future:** Planning agents should spawn with `isolation: "worktree"` to avoid main index.lock
|
||||
Reference in New Issue
Block a user