~bigbes/game-prototype-ftl

32728014343650c10e124df06fecb28884db0128 — Eugene Blikh a month ago c71f238
docs(skeleton): record review conclusion
1 files changed, 15 insertions(+), 0 deletions(-)

M docs/tasks/skeleton.md
M docs/tasks/skeleton.md => docs/tasks/skeleton.md +15 -0
@@ 136,3 136,18 @@ Invariants:
- `TilePx` references confined to `render.go` — pixel conversion happens only at render time
- No external asset files (png/jpg/wav/ttf/otf) anywhere in the repo
- `git status` clean after `make build` + `make build-wasm` — `.gitignore` correctly excludes all artifacts

## Conclusion

Outcome: skeleton milestone delivered — native window and browser WASM both render the 5-room placeholder ship at `c71f238`.

Invariants:
- All drawing uses virtual 640×360 — `TilePx` references confined to `render.go`.
- Single codebase for native + WASM — no `//go:build`, no platform-suffixed files; `GOOS=js GOARCH=wasm go build` passes.
- Tile-unit storage, render-time pixel conversion — `Room` fields are pure ints; conversion in `drawRoom` only.
- No external asset files — repo contains no image/audio/font binaries.
- `ship.go` free of Ebitengine imports — verified by grep.

Future work:
- Design prose mentions `text/v2` for labels while Plan + code use `ebitenutil.DebugPrintAt`; harmless doc drift, reviewer flagged sub-threshold. Justification: Plan was the contract and was approved with the `DebugPrintAt` choice; swap to `text/v2` + real face is a polish-milestone concern, not skeleton.
- Git init was done inline before Phase 1 (task file predates any branch/worktree workflow); future milestones should set `**Branch:**` / `**Worktree:**` headers up front.