57 lines
2.2 KiB
Markdown
57 lines
2.2 KiB
Markdown
# Tasks — game-server-network (Wave B-4)
|
|
|
|
## 0. Pre-flight (non-negotiable)
|
|
|
|
- [x] 0.1 Confirm isolated worktree (`pwd` shows
|
|
`.claude/worktrees/agent-ab405575252114357`).
|
|
- [x] 0.2 `git worktree list` accounted for; all sibling B-wave agents
|
|
operate in their own locked worktrees.
|
|
- [x] 0.3 Read reference branch source at
|
|
`/mnt/s/web/suaveplan/packages/universal/game-server/src/network/`.
|
|
|
|
## 1. Spec authoring
|
|
|
|
- [x] 1.1 Read `openspec/AGENTS.md` and `CLAUDE.md`.
|
|
- [x] 1.2 Draft `proposal.md` with Source mapping table.
|
|
- [x] 1.3 Draft `specs/game-server/spec.md` with ADDED requirements and
|
|
`**Verified by:**` lines naming planned tests.
|
|
|
|
## 2. Implementation
|
|
|
|
- [x] 2.1 Extend `errors/game-server-error.ts` with six new codes and
|
|
update the registry test.
|
|
- [x] 2.2 `src/network/network-adapter/{types,impl,index,md,test}`.
|
|
- [x] 2.3 `src/network/reconnection-manager/{types,impl,index,md,test}`.
|
|
- [x] 2.4 `src/network/websocket-transport/{types,impl,index,md,test}`.
|
|
- [x] 2.5 `src/network/webrtc-transport/{types,impl,index,md,test}`.
|
|
- [x] 2.6 Subpath exports in `package.json` and workspace dependencies.
|
|
- [x] 2.7 Root `src/index.ts` re-exports the network surface.
|
|
|
|
## 3. Tests
|
|
|
|
- [x] 3.1 `network-adapter.test.ts` — 20 cases covering init, send,
|
|
receive, fan-out, handler isolation, stats, errors, dispose.
|
|
- [x] 3.2 `reconnection-manager.test.ts` — 18 cases covering success,
|
|
retry, exhaustion, lifecycle events, config update, stop in
|
|
flight.
|
|
- [x] 3.3 `websocket-transport.test.ts` — 11 cases covering connect,
|
|
send, parse, callbacks.
|
|
- [x] 3.4 `webrtc-transport.test.ts` — 14 cases covering connect, send,
|
|
parse, signalling helpers.
|
|
|
|
## 4. Verification
|
|
|
|
- [x] 4.1 `bunx turbo lint typecheck test --filter=@suaveplan/game-server`
|
|
green.
|
|
- [x] 4.2 `bunx turbo test:coverage --filter=@suaveplan/game-server`
|
|
meets 100/100/100/100 on touched modules.
|
|
- [x] 4.3 No `vitest|bun:test` direct imports in `src/`.
|
|
- [x] 4.4 No `biome-ignore` / `TODO` / `FIXME` markers in `src/`.
|
|
|
|
## 5. Fold + archive
|
|
|
|
- [ ] 5.1 Fold the delta into `openspec/specs/game-server/spec.md` on
|
|
merge.
|
|
- [ ] 5.2 Move the change folder to
|
|
`openspec/archive/<yyyy-mm-dd>-game-server-network/` on merge.
|