diff --git a/docs/briefings/hoshe.md b/docs/briefings/hoshe.md index dc0aa0e85..6cc9986f6 100644 --- a/docs/briefings/hoshe.md +++ b/docs/briefings/hoshe.md @@ -15,6 +15,16 @@ Read `decisions/architecture.md` (D-010, D-020, D-030) and `decisions/perception None assigned. ## Current Priorities + +**ATTENTION — Integration tests are landing and coverage matters.** +The client branch just merged into main with a real client-server integration test (#411) — spawns a live server, connects via TCP, validates the full movement and interact pipeline end-to-end. The product is tested when it is tested. Pay close attention to these integration tests: verify they run, verify they pass, verify they cover what they claim. When new integration tests land, that is the ground truth for product quality — not plans, not stubs. + +Comprehensive test coverage is the priority. Push for: +- **Proper test harnesses** — reusable fixtures that spin up server+client pairs, manage lifecycle, and tear down cleanly. Tests should be easy to write so people actually write them. +- **A dedicated client-server test map** — a minimal, purpose-built map designed to exercise routing, pathfinding edge cases, interaction boundaries, visibility transitions, and protocol correctness. This map should NOT depend on content generators or YAML loading — it exists purely to test the mechanical contract between client and server. +- **Edge case coverage over happy-path volume** — test what happens at boundaries: malformed packets, disconnects mid-tick, entities at map edges, interactions at max range, simultaneous inputs, tick desync scenarios. +- **Don't get hung up on content generators** — content loading has its own test surface. Integration tests should isolate the transport and simulation loop from content variability. + **ACTIVATED.** Vertical slice test plan preparation: 1. Write test plans for D-024 (NPC generation — verify 10 axes present, triangles formed) 2. Write test plans for D-025 (template instantiation — verify single-ownership, reference links carry metadata)