50c904c80c
CRITICAL FIX (Option 1 Implementation): 1. Removed WBS_PROGRESS_TRACKER.csv phantom entries ❌ DELETED: PHASE-2-DEPLOYMENT (duplicate of AEG-VS-00-07) ❌ DELETED: PHASE-3-OPERATIONS (duplicate of AEG-VS-00-07) ❌ DELETED: PHASE-4-TECH-DEBT (not in WBS_MASTER.csv) Reason: AGENTS.md v16.0 Necessity principle - all items must be grounded in real requirements, not invented tracking rows. All content already tracked under AEG-VS-00-07 (회귀·관제·Runbook·Rollback 증거). 2. Integrated test files into KArtSell.Integration.Tests ✅ DomainPolicyTests.cs: 18 pure policy tests - Priority ordering tests (3) - Boundary value tests (5) - Monotonicity tests (3) - Forbidden transition tests (4) - Consistency tests (3) - No infrastructure dependency (deterministic only) ✅ PiiRedactionTests.cs: 16 PII redaction tests (fixed xUnit1026 issue) - Chain verification: trace→job→decision→outbox (5 tests) - Sensitive data detection: email/SSN/CC/phone (4 tests) - Correlation logging: CorrelationId/JobRunId/DecisionId/OutboxId (4 tests) - Telegram redaction: customer data vs trace IDs (2 tests) Result: All 34 tests PASSING (18 + 16) 3. Updated WBS_PROGRESS_TRACKER evidence links ✅ AEG-VS-00-03: Evidence = Integration test (18 PASSING) ✅ AEG-X-007: Evidence = Integration test (16 PASSING) 4. Removed duplicate project directories ❌ Deleted: tests/KArtSell.Modules.Host.Tests/ ❌ Deleted: tests/KArtSell.Observability.Tests/ (Test code consolidated into existing KArtSell.Integration.Tests project) Final State: - WBS_PROGRESS_TRACKER.csv: 27 items (3 PHASE items removed) - Tests: 34 new + 142 existing = 176 total PASSING ✅ - Compliance: AGENTS.md v16.0 Necessity principle restored - Artifacts: No orphaned files; all content unified Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
5.3 KiB
5.3 KiB
| 1 | WBS_ID | Sprint | Slice_ID | Task | Status | Completion_Date | Evidence_Link | Owner | Notes |
|---|---|---|---|---|---|---|---|---|---|
| 2 | AEG-X-001 | S0 | Cross | Version Coverage Matrix 고도화 | PLANNED | - | - | PM/Architect | Deferred (Not critical for Gate 5) |
| 3 | AEG-X-002 | S0 | Cross | global.json 고도화 | PLANNED | - | - | DevOps | Deferred |
| 4 | AEG-X-003 | S0 | Cross | Architecture tests 고도화 | PLANNED | - | - | Architect/QA | Deferred |
| 5 | AEG-X-004 | S0 | Cross | DbUp 복구 rehearsal 고도화 | PLANNED | - | - | DBA/BE | Deferred |
| 6 | AEG-X-005 | S0 | Cross | Security auth 고도화 | PLANNED | - | - | Security/BE | Deferred |
| 7 | AEG-X-006 | S0 | Cross | Outbox publisher 고도화 | IN_PROGRESS | 2026-08-04 | docs/operational-runbook.md + src/KArtSell.DbMigrator/0009_CreateInboxTable.sql | BE/SRE | Outbox→Inbox async pipeline verified (Job 976). Inbox table exists, Outbox structure confirmed. |
| 8 | AEG-X-007 | S0 | Cross | Serilog/OTel correlation 고도화 | COMPLETED | 2026-08-04 | tests/KArtSell.Integration.Tests/PiiRedactionTests.cs (16 tests PASSING) | SRE/Security | ✅ PII redaction test VERIFIED: trace→job→decision→outbox chain (5 tests), sensitive data detection (4), correlation logging (4), Telegram redaction (2). All 16 tests PASS. |
| 9 | AEG-X-008 | S0 | Cross | OpenAPI artifact 고도화 | COMPLETED | 2026-08-04 | .gitea/workflows/openapi-gate.yml + docs/api/openapi.json | BE/FE Architect | ✅ OpenAPI diff gate implemented: CI/CD automation detects breaking changes (3 checks: parameter removal, status code removal, field removal), blocks merge without approval, auto-comments on PR |
| 10 | AEG-VS-00-01 | S0 | VS-00 | 정책·범위·실패상태 계약 확정 | COMPLETED | 2026-08-04 | docs/architecture/VS-00_SLICE_SPEC.md + docs/decisions/ADR-PLAT-001.md | PM/Architect | ✅ SLICE_SPEC + ADR produced: VS-00_SLICE_SPEC.md (12 sections, user goal/non-goal/acceptance criteria), ADR-PLAT-001.md (DevelopmentHeader vs FailClosed strategy, all tests documented) |
| 11 | AEG-VS-00-02 | S0 | VS-00 | 데이터 시점·스키마·정합성 계약 | COMPLETED | 2026-08-04 | docs/contracts/data/VS-00_DATA_CONTRACT.md | Data Architect/DBA | ✅ DATA_CONTRACT produced: published_at/revision/valid-time/hash/unit/isolation/replay defined, PIT envelope spec, DQ rules, lineage tracking, examples + tests documented |
| 12 | AEG-VS-00-03 | S0 | VS-00 | 도메인 불변조건·상태전이 구현 | COMPLETED | 2026-08-04 | tests/KArtSell.Integration.Tests/DomainPolicyTests.cs (18 tests PASSING) | BE/Quant Lead | ✅ Pure policy tests VERIFIED: Priority (3), Boundary (5), Monotonicity (3), Forbidden transitions (4), Consistency (3). All 18 tests PASS. No infrastructure dependency. |
| 13 | AEG-VS-00-04 | S0 | VS-00 | Vertical Slice API/Application/SQL 구현 | COMPLETED | 2026-08-04 | src/KArtSell.Host/Features/ShadowRuns + commit f573a1e + Job 976 | BE Lead | WBS Acceptance_Evidence verified: '인증·권한·멱등·트랜잭션·ProblemDetails·낙관적 동시성·correlation이 수용기준과 일치' ✅ (Auth: X-KArtSell-User header; Idempotency: Job 976 replay-safe; Correlation: Job ID tracked; Transaction: OutboxPollerJob; Tests: 176/176 PASS) |
| 14 | AEG-VS-00-05 | S0 | VS-00 | Event/Job/Inbox·재처리 구현 | IN_PROGRESS | 2026-08-04 | Hangfire 8 workers + logs | BE/SRE | OutboxPollerJob + DownstreamConsumerJob registered. Idempotency: Job 976 replay-safe. |
| 15 | AEG-VS-00-06 | S0 | VS-00 | Vue feature·Zod·Query·컴포넌트 구현 | PLANNED | - | - | FE Lead | Blocked: Requires frontend implementation. Depends on AEG-VS-00-04 completion. |
| 16 | AEG-VS-00-07 | S0 | VS-00 | 회귀·관제·Runbook·Rollback 증거 | COMPLETED | 2026-08-04 | docs/operational-runbook.md + PRODUCTION_READINESS.md + scripts/*.ps1 + commit ca2aeae | QA/SRE | Golden/integration/failure/replay/E2E + metric/alert/Owner/Secondary/rollback rehearsal complete (Acceptance_Evidence: '회귀·관제·Runbook·Rollback 증거') - 7 scenarios, 4 scripts, 18 queries verified |
| 17 | AEG-X-009 | S1 | Cross | Source catalog 고도화 | PLANNED | - | - | Data Governance | Deferred to Phase 2 (after Gate 1 completion) |
| 18 | AEG-VS-01-01 | S1 | VS-01 | 정책·범위·실패상태 계약 확정 | PLANNED | - | - | PM/Architect | Blocked: Depends on AEG-X-001. Future sprint. |
| 19 | AEG-VS-02-01 | S1 | VS-02 | 정책·범위·실패상태 계약 확정 | PLANNED | - | - | PM/Architect | Blocked: Depends on AEG-VS-00-02. Future sprint. |
| 20 | AEG-VS-03-01 | S2 | VS-03 | 정책·범위·실패상태 계약 확정 | PLANNED | - | - | PM/Architect | Blocked: Depends on AEG-VS-02-01. Future sprint. |
| 21 | AEG-VS-04-01 | S2 | VS-04 | 정책·범위·실패상태 계약 확정 | PLANNED | - | - | PM/Architect | Blocked: Depends on AEG-VS-03-01. Future sprint. |
| 22 | AEG-VS-05-01 | S3 | VS-05 | 정책·범위·실패상태 계약 확정 | PLANNED | - | - | PM/Architect | Blocked: Depends on Gate 1 (Phase 1). Waiting for Job 976 (~50-90 days). |
| 23 | AEG-X-011 | S4 | Cross | Golden vector 고도화 | BLOCKED | TBD | AGENTS.md: Algorithm changes require Golden data | Quant/QA | Gate 2 prerequisite. Blocked by Phase 1 (Job 976) completion. |
| 24 | AEG-VS-09-01 | S4 | VS-09 | BuildEvidenceSnapshot | BLOCKED | TBD | CLAUDE.md: Evidence requires Phase 1 results | PM/Architect | Gate 2 prerequisite. Blocked by Phase 1. |
| 25 | AEG-VS-10-01 | S4 | VS-10 | GenerateSellDecision | BLOCKED | TBD | CLAUDE.md: Model must pass PBO/DSR validation | PM/Architect | Gate 3 prerequisite. Blocked by Phase 1. |
| 26 | AEG-VS-19-01 | S5 | VS-19 | RunFrozenBacktest | BLOCKED | TBD | CLAUDE.md: Requires evidence from Phase 1-4 | PM/Architect | Gate 3 prerequisite. Blocked by Phase 1. |
| 27 | PHASE-1-SHADOW-RUN | S0-S5 | Cross | 252+ Trading Day Shadow Run | RUNNING | TBD-50-90-days | Job 976 (Hangfire) | BE/SRE | Queued: 2026-08-04. Expected completion: ~2026-10-23 to 2026-11-02. No manual intervention required. |