docs: add dotnet migration execution plan
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 16s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled

This commit is contained in:
2026-07-12 23:59:24 +09:00
parent e926a7af75
commit 445715ded3
3 changed files with 100 additions and 0 deletions
+1
View File
@@ -98,6 +98,7 @@
- `docs/ROADMAP_WBS.md`의 WBS-8.2: `run_kis_data_collection_v1.py``validate_platform_transition_wbs_v1.py``validate_snapshot_admin_web_v1.py`. - `docs/ROADMAP_WBS.md`의 WBS-8.2: `run_kis_data_collection_v1.py``validate_platform_transition_wbs_v1.py``validate_snapshot_admin_web_v1.py`.
- `docs/WBS_10_DOTNET_MIGRATION_ROADMAP.yaml`: `.NET 엔진 고도화` 상세 WBS와 각 WBS별 성공 데이터 가이드. - `docs/WBS_10_DOTNET_MIGRATION_ROADMAP.yaml`: `.NET 엔진 고도화` 상세 WBS와 각 WBS별 성공 데이터 가이드.
- `docs/WBS_10_DOTNET_MIGRATION_INVENTORY.yaml`: WBS-10 전환 우선순위용 실행 경로 인벤토리. - `docs/WBS_10_DOTNET_MIGRATION_INVENTORY.yaml`: WBS-10 전환 우선순위용 실행 경로 인벤토리.
- `docs/WBS_10_DOTNET_MIGRATION_EXECUTION_PLAN.yaml`: WBS-10 착수용 실행 분해 계획.
- `tools/validate_dotnet_migration_roadmap_v1.py`: WBS-10 상세 로드맵 YAML validator. - `tools/validate_dotnet_migration_roadmap_v1.py`: WBS-10 상세 로드맵 YAML validator.
- `Temp/snapshot_admin_approval_packet_v1.json`: snapshot admin approval packet export. - `Temp/snapshot_admin_approval_packet_v1.json`: snapshot admin approval packet export.
- `Temp/snapshot_admin_approval_packet_v1.md`: snapshot admin approval packet summary. - `Temp/snapshot_admin_approval_packet_v1.md`: snapshot admin approval packet summary.
+1
View File
@@ -1466,6 +1466,7 @@ WBS-8.8 (KIS 리팩터) — 독립적 (원격 병행)
> 상세 작업 가이드(YAML): [WBS_10_DOTNET_MIGRATION_ROADMAP.yaml](./WBS_10_DOTNET_MIGRATION_ROADMAP.yaml) > 상세 작업 가이드(YAML): [WBS_10_DOTNET_MIGRATION_ROADMAP.yaml](./WBS_10_DOTNET_MIGRATION_ROADMAP.yaml)
> 실행 경로 인벤토리: [WBS_10_DOTNET_MIGRATION_INVENTORY.yaml](./WBS_10_DOTNET_MIGRATION_INVENTORY.yaml) > 실행 경로 인벤토리: [WBS_10_DOTNET_MIGRATION_INVENTORY.yaml](./WBS_10_DOTNET_MIGRATION_INVENTORY.yaml)
> 실행 분해 계획: [WBS_10_DOTNET_MIGRATION_EXECUTION_PLAN.yaml](./WBS_10_DOTNET_MIGRATION_EXECUTION_PLAN.yaml)
> 현황 진단(2026-06-26): .NET 프로젝트는 Python 엔진(41 모듈, 14,500 LOC) 대비 5~10%(~1,400 LOC) 수준. > 현황 진단(2026-06-26): .NET 프로젝트는 Python 엔진(41 모듈, 14,500 LOC) 대비 5~10%(~1,400 LOC) 수준.
> Domain 계산기 6개·데이터 모델 8개·KIS/Naver/Yahoo 클라이언트·PostgreSQL 마이그레이션·Razor Pages 어드민 대시보드 기본 구현 완료. > Domain 계산기 6개·데이터 모델 8개·KIS/Naver/Yahoo 클라이언트·PostgreSQL 마이그레이션·Razor Pages 어드민 대시보드 기본 구현 완료.
@@ -0,0 +1,98 @@
formula_id: WBS_10_DOTNET_MIGRATION_EXECUTION_PLAN_V1
owner: QuantEngine
status: draft
source_of_truth:
- docs/WBS_10_DOTNET_MIGRATION_ROADMAP.yaml
- docs/WBS_10_DOTNET_MIGRATION_INVENTORY.yaml
goal: ".NET 엔진 고도화를 실제 작업 순서로 착수 가능한 수준까지 분해한다."
work_packages:
- wp_id: WBS-10-WP1
title: "운영 경로 분해 및 전환 경계 확정"
objective: "Python harness / .NET domain / .NET application / .NET web / read model 경계를 고정한다."
depends_on:
- WBS-10-A1
inputs:
- docs/WBS_10_DOTNET_MIGRATION_INVENTORY.yaml
- docs/WBS_10_DOTNET_MIGRATION_ROADMAP.yaml
outputs:
- docs/WBS_10_DOTNET_MIGRATION_INVENTORY.yaml
- docs/WBS_10_DOTNET_MIGRATION_EXECUTION_PLAN.yaml
success_data:
schema: yaml
fields:
- route_id
- classification
- keep_or_migrate
- owner_file
- note
pass_condition: "migrate 대상과 keep 대상이 혼동 없이 분리됨"
- wp_id: WBS-10-WP2
title: "Domain parity 우선순위 확정"
objective: "핵심 계산기와 하네스 parity 대상을 먼저 고정한다."
depends_on:
- WBS-10-WP1
inputs:
- src/dotnet/QuantEngine.Core/Domain/FormulaEngine.cs
- src/dotnet/QuantEngine.Core/Domain/FactorCalculator.cs
- src/dotnet/QuantEngine.Core.Tests/FormulaEngineTests.cs
outputs:
- Temp/wbs10_domain_parity_backlog.json
success_data:
schema: json
fields:
- formula_id
- parity_targets
- tolerance
- coverage_min
pass_condition: "핵심 계산기 parity 대상이 누락 없이 나열됨"
- wp_id: WBS-10-WP3
title: "스케줄러 서비스 수준 강화 착수"
objective: "SchedulerService를 상태/의존성/재시도/감사 추적 서비스로 진화시킨다."
depends_on:
- WBS-10-WP1
inputs:
- src/dotnet/QuantEngine.Web/Services/SchedulerService.cs
- spec/41_release_dag.yaml
outputs:
- Temp/wbs10_scheduler_service_backlog.yaml
success_data:
schema: yaml
fields:
- state_machine
- dependency_edges
- retry_policy
- audit_fields
pass_condition: "현재 cron형 호출과 서비스 수준 제어면의 차이가 정의됨"
- wp_id: WBS-10-WP4
title: "read model 분리 착수"
objective: "운영 조회를 원장/집계와 분리한다."
depends_on:
- WBS-10-WP1
inputs:
- src/dotnet/QuantEngine.Web/Pages/Admin/Dashboard/Index.cshtml.cs
- src/dotnet/QuantEngine.Web/Pages/Admin/Collection/Index.cshtml.cs
outputs:
- Temp/wbs10_read_model_boundary.yaml
success_data:
schema: yaml
fields:
- projection
- source_of_truth
- refresh_mode
- staleness_budget
pass_condition: "조회 모델과 원장 모델의 경계가 설명됨"
execution_order:
- WBS-10-WP1
- WBS-10-WP2
- WBS-10-WP3
- WBS-10-WP4
notes:
- "이 문서는 실행 가능한 작업 분해용이며, 권위는 roadmap/inventory에 남긴다."
- "모든 success_data는 하네스가 아닌 착수 기준으로 사용한다."