Skip to content

[Domain] Add occupant source authoring and scheduled spawning#249

Merged
learncold merged 3 commits into
mainfrom
codex/add-occupant-source-tool
May 16, 2026
Merged

[Domain] Add occupant source authoring and scheduled spawning#249
learncold merged 3 commits into
mainfrom
codex/add-occupant-source-tool

Conversation

@muzygosu
Copy link
Copy Markdown
Collaborator

Summary

  • Scenario Authoring Workspace에 Add Occupant Source 도구를 추가했습니다.
  • Source 배치 전에 설정 창을 띄워 다음 값을 입력할 수 있게 했습니다.
  • 한 번에 생성할 인원 수, 생성 간격(초), 생성 지속 시간(분)을 설정할 수 있습니다.
  • 프로젝트 저장/불러오기 이후에도 occupant source 설정이 유지되도록 했습니다.
  • Authoring, Run, Result, Batch Result 화면에서 occupant source가 다시 복원되도록 연결했습니다.
  • 시뮬레이션 중 정해진 스케줄에 따라 source가 agent를 생성하도록 domain 로직을 추가했습니다.
  • 아직 생성 예정인 source agent가 있을 때 시뮬레이션이 조기 완료되지 않도록 했고, 시나리오 제한 시간은 그대로 우선 적용되게 했습니다.
  • 여러 명을 일정 간격으로 생성하는 source 동작을 검증하는 테스트를 추가했습니다.

Related Issue

Area

  • Engine
  • Domain
  • Application
  • Docs
  • Build
  • Analysis
  • Chore

Architecture Check

  • I kept the dependency direction application -> domain -> engine.
  • I did not add Qt UI code to src/domain.
  • I did not add domain or application dependencies to src/engine.
  • I used src/ as the include root.

Verification

  • cmake --preset windows-debug
  • cmake --build --preset build-debug --target safecrowd_app -- /m:1
  • cmake --build --preset build-debug --target safecrowd_tests -- /m:1
  • ctest --preset test-debug
  • Not run (reason below)

Risks / Follow-up

  • Occupant source는 현재 한 지점에서 agent를 생성하므로, 설정을 과하게 잡으면 source 주변에 초기 밀집이 생길 수 있습니다.
  • UI에서는 현재 한 번에 생성할 인원 수, 생성 간격, 지속 시간만 설정합니다. 시작 시간은 domain 모델에는 있지만 아직 UI 설정창에는 노출하지 않았습니다.
  • 실수로 너무 큰 시뮬레이션이 만들어지지 않도록 UI에서 source 총 생성 수를 제한했습니다.

@muzygosu muzygosu changed the title [Application] Add occupant source authoring and scheduled spawning [Domain] Add occupant source authoring and scheduled spawning May 15, 2026
@learncold learncold marked this pull request as ready for review May 16, 2026 14:53
@learncold learncold self-requested a review as a code owner May 16, 2026 14:53
@learncold learncold merged commit b930b46 into main May 16, 2026
4 checks passed
@learncold learncold deleted the codex/add-occupant-source-tool branch May 16, 2026 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Task-Occupant Source 동적 유입 구현

2 participants