docs: formalize wbs success data schema
This commit is contained in:
@@ -56,6 +56,17 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "전환 우선순위 표"
|
- "전환 우선순위 표"
|
||||||
- "운영 경로 / 보조 경로 분리 결과"
|
- "운영 경로 / 보조 경로 분리 결과"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: markdown
|
||||||
|
fields:
|
||||||
|
- route
|
||||||
|
- owner
|
||||||
|
- runtime
|
||||||
|
- keep_or_migrate
|
||||||
|
- notes
|
||||||
|
failure_conditions:
|
||||||
|
- "운영 경로와 보조 경로가 섞여 있으면 FAIL"
|
||||||
|
- "Python 운영 경로가 누락 없이 남아 있지 않으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -80,6 +91,19 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "동일 입력에 대한 .NET 결과"
|
- "동일 입력에 대한 .NET 결과"
|
||||||
- "Python 대비 parity diff 0 또는 허용오차 내"
|
- "Python 대비 parity diff 0 또는 허용오차 내"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: json
|
||||||
|
fields:
|
||||||
|
- formula_id
|
||||||
|
- input_digest
|
||||||
|
- python_output
|
||||||
|
- dotnet_output
|
||||||
|
- diff
|
||||||
|
- tolerance
|
||||||
|
- gate
|
||||||
|
failure_conditions:
|
||||||
|
- "diff가 tolerance를 초과하면 FAIL"
|
||||||
|
- "입력 digest가 없으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "dotnet test src/dotnet/QuantEngine.Core.Tests/QuantEngine.Core.Tests.csproj -c Release"
|
- "dotnet test src/dotnet/QuantEngine.Core.Tests/QuantEngine.Core.Tests.csproj -c Release"
|
||||||
- "python tools/verify_wbs_task_v1.py --task WBS-10-A2"
|
- "python tools/verify_wbs_task_v1.py --task WBS-10-A2"
|
||||||
@@ -104,6 +128,15 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "운영용 thin wrapper만 남김"
|
- "운영용 thin wrapper만 남김"
|
||||||
- "직접 운영 경로 금지 목록"
|
- "직접 운영 경로 금지 목록"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- wrapper_path
|
||||||
|
- purpose
|
||||||
|
- runtime_usage
|
||||||
|
- allowed_or_disallowed
|
||||||
|
failure_conditions:
|
||||||
|
- "운영용으로 직접 호출 가능한 Python entrypoint가 남아 있으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -130,6 +163,17 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "canonical normalized schema"
|
- "canonical normalized schema"
|
||||||
- "table ownership map"
|
- "table ownership map"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- table
|
||||||
|
- keys
|
||||||
|
- cardinality
|
||||||
|
- owner
|
||||||
|
- write_path
|
||||||
|
failure_conditions:
|
||||||
|
- "canonical table이 둘 이상이면 FAIL"
|
||||||
|
- "정규화 대상과 읽기 모델이 혼동되면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -152,6 +196,17 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "읽기 전용 denormalized projection"
|
- "읽기 전용 denormalized projection"
|
||||||
- "refresh/update strategy"
|
- "refresh/update strategy"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- projection_name
|
||||||
|
- source_tables
|
||||||
|
- refresh_mode
|
||||||
|
- staleness_budget
|
||||||
|
- consumers
|
||||||
|
failure_conditions:
|
||||||
|
- "읽기 모델이 원천 원장과 직접 동일하면 FAIL"
|
||||||
|
- "staleness_budget 미정이면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -176,6 +231,16 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "파생 데이터 허용 규칙"
|
- "파생 데이터 허용 규칙"
|
||||||
- "canonical source 정의"
|
- "canonical source 정의"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- source_of_truth
|
||||||
|
- derived_table
|
||||||
|
- allowed_reason
|
||||||
|
- forbidden_reason
|
||||||
|
failure_conditions:
|
||||||
|
- "source_of_truth가 명시되지 않으면 FAIL"
|
||||||
|
- "금지 사유가 없는 중복이면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -202,6 +267,17 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "pending/running/succeeded/failed/retrying/blocked 상태 정의"
|
- "pending/running/succeeded/failed/retrying/blocked 상태 정의"
|
||||||
- "audit trail schema"
|
- "audit trail schema"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- state
|
||||||
|
- allowed_transitions
|
||||||
|
- lease_owner
|
||||||
|
- timeout_policy
|
||||||
|
- audit_fields
|
||||||
|
failure_conditions:
|
||||||
|
- "상태 전이표가 없으면 FAIL"
|
||||||
|
- "lease_owner 또는 timeout_policy가 없으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -224,6 +300,16 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "중복 적재 방지"
|
- "중복 적재 방지"
|
||||||
- "자원별 lock/lease 정책"
|
- "자원별 lock/lease 정책"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- resource
|
||||||
|
- lock_key
|
||||||
|
- idempotency_key
|
||||||
|
- retry_policy
|
||||||
|
failure_conditions:
|
||||||
|
- "idempotency_key가 없으면 FAIL"
|
||||||
|
- "동시 실행 금지 자원 목록이 비어 있으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
@@ -248,6 +334,16 @@ roadmap:
|
|||||||
expected_outputs:
|
expected_outputs:
|
||||||
- "ci -> prepare-release -> deploy-prod 순차 게이트"
|
- "ci -> prepare-release -> deploy-prod 순차 게이트"
|
||||||
- "transient failure만 재시도"
|
- "transient failure만 재시도"
|
||||||
|
expected_artifact_schema:
|
||||||
|
format: yaml
|
||||||
|
fields:
|
||||||
|
- upstream_workflow
|
||||||
|
- downstream_workflow
|
||||||
|
- retryable_errors
|
||||||
|
- health_checks
|
||||||
|
failure_conditions:
|
||||||
|
- "순차 게이트가 아닌 병렬 실행이면 FAIL"
|
||||||
|
- "retryable_errors가 비어 있으면 FAIL"
|
||||||
verification_commands:
|
verification_commands:
|
||||||
- "python tools/validate_quant_engine_wbs_v1.py"
|
- "python tools/validate_quant_engine_wbs_v1.py"
|
||||||
evidence_artifacts:
|
evidence_artifacts:
|
||||||
|
|||||||
Reference in New Issue
Block a user