Files
settled-reach/docs/sprints/sprint-31/server.md
T
jpmschweitzerandClaude Opus 4.6 822cf34bbc chore(meta): plan Sprint 31: Bedrock
Phase 1 wiki completion (cultural sweep, GTTR depth, star map popups)
+ infrastructure refactors (atlas.rs, main.gd, Python tooling).

8 tickets: copy (4), client (2), server (1), ci (1).
Cascade dependencies locked: Phase 1→2→3→4→5→6.
#693 cancelled (superseded by #704 compositor).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 08:17:28 +02:00

58 lines
1.9 KiB
Markdown

# Sprint 31: Bedrock — Server Tasks
**Goal:** Complete Phase 1 wiki content (cultural sweep, GTTR depth, star map popups) and refactor accumulated complexity in atlas.rs, main.gd, and Python tooling.
**Branch:** `sprint-31/server`
**Agents:** Dudley (simulation), Tyre (architecture), Hoshe (QA)
## New Tickets
| # | Title | Blocked by |
|---|-------|------------|
| #776 | Split atlas.rs subcommands into modules | — |
Use `tooling/db/ticket show <id>` for full details.
## Key Decisions
- `decisions/architecture.md` — D-010 (server-authoritative), D-020 (Rust/bevy_ecs)
## Notes
### #776 Split atlas.rs subcommands into modules (refactor)
`server/src/bin/atlas.rs` is 2000+ lines containing all CLI subcommands in one
file. Each subcommand (author, commit-system, corridor-status, list-systems,
verify, next, show-system, etc.) should be extracted into its own module.
**Approach:**
- Create `server/src/bin/atlas/` module directory
- Move `atlas.rs``server/src/bin/atlas/main.rs` (thin dispatch)
- Extract each `cmd_*` function into its own file:
- `author.rs``cmd_author`, `generate_body_matrix`
- `commit.rs``cmd_commit_system`
- `corridor_status.rs``cmd_corridor_status`
- `list.rs``cmd_list_systems`, `cmd_next`, `cmd_unfinished`
- `show.rs``cmd_show_system`
- `verify.rs``cmd_verify`
- Shared types/helpers stay in `main.rs` or a `common.rs`
**Key file:** `server/src/bin/atlas.rs` (~2000 lines)
**Verify:** `cargo build --bin atlas` must compile. `cargo test` must pass.
Run `tooling/atlas stats` and `tooling/atlas corridor-status` to verify CLI
still works after the split.
## Dependency Chain
```
#776 (atlas split) → standalone
```
## PR Workflow
```bash
tea pr create --repo jpmschweitzer/settled-reach --login schweitz \
--title "refactor(simulation): Sprint 31 — split atlas.rs into modules" \
--description "body" --base main --head sprint-31/server
```