docs(decisions): add Q-018 through Q-023 from architecture audit

Six new open questions identified by the Tyre/Troblum architecture
review: shadowcasting algorithm selection, entity ID stability,
multi-entity collision resolution, tick budget overflow policy,
pathfinding cache eviction, and debug visualization scope.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-11 21:35:56 +01:00
co-authored by Claude Opus 4.6
parent af928d74cf
commit e1a3913060
+43 -1
View File
@@ -88,6 +88,48 @@ Tracked questions awaiting discussion or resolution.
- **Assigned to:** Gestalt, Paula
- **Source:** Content Gap Analysis Workshop (Gestalt R2)
### Q-018: Shadowcasting algorithm selection
- **Status:** Open
- **Question:** Which line-of-sight algorithm should be used? Symmetric shadowcasting (Albert Ford) vs recursive shadowcasting. Both are proven but differ in symmetry properties (symmetric: if A sees B, then B sees A) and implementation complexity. Requires benchmarking at 150x150 map scale with 30 entities to validate performance within 100ms tick budget.
- **Context:** D-011 mandates LOS shadowcasting for fog of perception. Architecture review identified this as unspecified (audit section 2.2). Critical for Sprint 2 perception pipeline.
- **Assigned to:** Tyre, Dudley
- **Source:** Architecture Review Audit 2026-02-11
### Q-019: Entity ID stability strategy
- **Status:** Open
- **Question:** How are stable `entity_id: u64` values generated from bevy_ecs `Entity` handles? Must IDs be stable across save/load cycles? How does the client map entity IDs to scene nodes for entity lifecycle management (creation, updates, despawning)?
- **Context:** `VisibleEntity.entity_id` is a `u64` in the protocol (server/src/bridge/types.rs). bevy_ecs `Entity` is a generational index that may not be stable. Architecture review flagged this as MEDIUM severity gap (audit section 2.2).
- **Assigned to:** Tyre, Dudley
- **Source:** Architecture Review Audit 2026-02-11
### Q-020: Multi-entity collision resolution
- **Status:** Open
- **Question:** When two NPCs attempt to move to the same tile on the same tick, what is the resolution policy? Options: first-write-wins (deterministic with system ordering), both fail (conservative), priority-based (e.g., player > NPC, Active tier > Background tier).
- **Context:** D-012 defines tile collision. WalkabilityMap exists (server/src/simulation/movement.rs) but handles single-entity validation. Architecture review identified multi-entity collision as unspecified.
- **Assigned to:** Gestalt, Dudley
- **Source:** Architecture Review Audit 2026-02-11
### Q-021: Tick budget overflow policy
- **Status:** Open
- **Question:** When a simulation tick exceeds the 100ms budget, what happens? Options: (1) slow down real-time and preserve determinism (tick completes fully before next), (2) skip ticks and break determinism, (3) cap work per tick and defer to next tick. Must align with D-010 principle 4 (deterministic simulation).
- **Context:** D-026 defines 100ms tick budget for Active tier at 10 tps. Architecture review consensus recommendation proposes "slow real-time, don't skip ticks." Needs formal decision.
- **Assigned to:** Tyre, Dudley
- **Source:** Architecture Review Audit 2026-02-11
### Q-022: NPC pathfinding cache eviction
- **Status:** Open
- **Question:** With 80 Active-tier NPCs each caching ~3 pathfinding routes, the cache holds ~240 paths. What is the eviction policy? LRU? Time-based expiration? Fixed size per NPC? How are paths invalidated when walkability changes (doors lock, areas become restricted)?
- **Context:** Architecture review identified pathfinding as MEDIUM gap (audit section 2.2). Cache management needs specification regardless of algorithm choice.
- **Assigned to:** Tyre, Dudley
- **Source:** Architecture Review Audit 2026-02-11
### Q-023: Debug visualization scope
- **Status:** Open
- **Question:** What information should the debug overlay display? Candidates: LOS rays, pathfinding waypoints, vision cones, information boundary tags (who knows what), tick timing breakdown, spatial partition grid cells. Dev-only tool, or accessible for mod development?
- **Context:** Architecture review (Troblum) identifies debug visualization as missing operational infrastructure. Needed for debugging perception system, information boundaries, and performance issues.
- **Assigned to:** Tyre, Stig
- **Source:** Architecture Review Audit 2026-02-11
---
*17 questions (3 resolved, 2 partially resolved, 12 open). Last updated: 2026-02-11*
*23 questions (3 resolved, 2 partially resolved, 18 open). Last updated: 2026-02-11*