You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add a named v2 hazard influence profile for Fire/Smoke with severity-based radius, speed penalty, avoidance strength, route-cost weight, and exposure weight.
Connect active same-floor Fire/Smoke hazards to simulation movement as a position-based influence field.
Add hazard-aware route cost/replanning so agents prefer safer available routes around active hazards.
Track hazard exposure summaries by hazard and kind, including exposed agents, total exposure time, max individual exposure time, and peak context.
Show Fire/Smoke markers, active state, and influence radius in run/result views.
Harden door/exit closure runtime behavior as a hard route constraint via ControlPlan.connectionBlocks.
Centralize connection-block active semantics: empty intervals mean always closed, finite intervals use [start, end], and endSeconds <= startSeconds means closed from start onward.
Replan when a currently planned route contains a closed downstream connection, and retry route planning when a previously closed connection reopens.
Show active and inactive/future/expired door closure state in run/result replay without adding a new result artifact schema.
Keep v2 explicitly scoped as a simplified scenario influence/control model, not fire spread, smoke concentration, FED, or FDS.
Acceptance Criteria
Fire/Smoke hazards can be authored, persisted, diffed, and then used by v2 runtime interaction.
Fire/Smoke hazards affect speed/avoidance and route choice only while active and on the same floor.
Smoke remains tied to reduced visibility concepts through speed/path-cost/exposure behavior.
Result artifacts include hazard exposure summary data usable by UI and future reports.
Closed door/exit connections are treated as impassable route constraints while active.
Agents replan around a closed downstream connection when an alternate route exists.
Agents can recover from a no-exit route state after the only viable closed connection reopens.
Door closure replay UI distinguishes active closures from inactive/future/expired schedules.
Existing no-hazard and no-block scenarios remain within existing behavior tolerances.
UI copy clearly labels the interaction as a simplified v2 influence/control model requiring later refinement.
Architecture / Dependency Check
Keep simulation behavior in src/domain and UI rendering in src/application.
Do not add Qt dependencies to domain or engine code.
Keep engine independent of domain/application concepts.
Use existing ScenarioDraft, ScenarioSimulationRunner, ControlPlan, and result artifact boundaries instead of adding UI-owned runtime state.
Do not introduce FDS/FED/fire-spread/smoke-concentration models in this issue.
Verification Plan
Add authoring persistence/diff tests for Fire/Smoke hazards.
Add or update motion-system unit tests for active, inactive, different-floor, overlapping, and severity-radius hazards.
Add route-choice tests where Fire/Smoke route cost changes the selected route when a safer alternate exists.
Add exposure-summary tests for Fire and Smoke.
Add connection-block active-semantics tests for always, finite, and indefinite schedules.
Add route/replanning tests for downstream closed connections, alternate route selection, and reopening recovery.
Run cmake --build --preset build-no-app-debug and ctest --preset test-no-app-debug.
If application rendering changes are included, also run cmake --build --preset build-debug and ctest --preset test-debug.
The current local branch codex/hazards-v2-simulation-interactions contains working implementation pieces and should be rebased/recomposed against the revised issue split.
Do not create the integrated v2 PR until the implementation has been evaluated locally.
Repository Checks
I checked for an existing related issue or epic before creating this task.
I will keep the issue title aligned with the repository naming convention.
Summary
Fire/Smoke hazard authoring/data foundation부터 v2 simulation interaction, door/exit closure runtime response, replay/result visualization까지 하나의 scenario runtime interaction 흐름으로 정리합니다. v2 범위는 단순화된 planning influence/control model이며, commercial fire physics, fire spread, smoke concentration, FED, FDS coupling은 포함하지 않습니다.
Parent Issue
#5
Area
Domain / Application
Target Sprint
Sprint 3
Scope
EnvironmentState.hazards, persistence, scenario diff, authoring UI, and canvas markers.ControlPlan.connectionBlocks.[start, end], andendSeconds <= startSecondsmeans closed from start onward.Acceptance Criteria
Architecture / Dependency Check
src/domainand UI rendering insrc/application.ScenarioDraft,ScenarioSimulationRunner,ControlPlan, and result artifact boundaries instead of adding UI-owned runtime state.Verification Plan
cmake --build --preset build-no-app-debugandctest --preset test-no-app-debug.cmake --build --preset build-debugandctest --preset test-debug.Dependencies / Blockers
codex/hazards-v2-simulation-interactionscontains working implementation pieces and should be rebased/recomposed against the revised issue split.Repository Checks