Summary
ResultAggregator가 RunResult, VariationSummary, ScenarioComparison, CumulativeArtifact를 생성·갱신하는 persisted 결과 아티팩트 구조를 정리한다.
Parent Issue
#3
Area
Domain
Target Sprint
Sprint 2
Why Needed
source of truth는 ResultAggregator를 화면용 즉석 계산기가 아니라 persisted artifact 생성/갱신 책임으로 정의한다. ScenarioComparison과 CumulativeArtifact도 화면용 계산 결과가 아니라 저장 가능한 아티팩트여야 한다.
Scope
- RunResult, VariationSummary, ScenarioComparison, CumulativeArtifact 구조를 정리한다.
- ResultAggregator가 run 결과를 상위 persisted artifact로 승격하는 책임을 가진다.
- ArtifactIndex와 canonical export reference 경계를 정리한다.
- comparison/export/recommendation이 ad hoc 계산 대신 persisted artifact를 읽도록 연결한다.
Out of Scope
- application comparison UI 상세
- #29에서 다룸
- 추천 최적화 로직 연구
- #107에서 다룸
Core Design Criteria
- ScenarioComparison은 persisted artifact이며 screen-only delta view가 아니다.
- CumulativeArtifact는 canonical bundle이고 export/recommendation 입력으로 사용한다.
- ResultAggregator는 artifact 생성/갱신 책임을 가진다.
Acceptance Criteria
- ResultAggregator가 persisted artifact 생성/갱신 책임으로 정의된다.
- RunResult / VariationSummary / ScenarioComparison / CumulativeArtifact 경계가 분리된다.
- 후속 comparison/export/recommendation이 persisted artifact를 읽을 수 있다.
Related Docs
- docs/product/Product Backlog - Pathfinder 반영안.md
- docs/architecture/프로젝트 구조.md
- uml/domain-result-artifacts.puml
- uml/application-run-results-workflow.puml
Dependencies / Blockers
Repository Checks
Summary
ResultAggregator가 RunResult, VariationSummary, ScenarioComparison, CumulativeArtifact를 생성·갱신하는 persisted 결과 아티팩트 구조를 정리한다.
Parent Issue
#3
Area
Domain
Target Sprint
Sprint 2
Why Needed
source of truth는 ResultAggregator를 화면용 즉석 계산기가 아니라 persisted artifact 생성/갱신 책임으로 정의한다. ScenarioComparison과 CumulativeArtifact도 화면용 계산 결과가 아니라 저장 가능한 아티팩트여야 한다.
Scope
Out of Scope
Core Design Criteria
Acceptance Criteria
Related Docs
Dependencies / Blockers
Repository Checks