docs: resolve VS-03/04/12/14 numbering collision (renumber to VS-26/27/28/29)

Renumbers the four 2026-08-07 slices (ApprovalWorkflow, AuditTrail,
TradeExecution, PortfolioReconciliation) to previously-unused VS-26..29,
leaving WBS_MASTER.csv's original VS-03/04/12/14 definitions (IngestMarketDataPIT,
ApplyCorporateActions, RankBuyCandidates, GenerateDailyRecommendations) untouched,
per docs/DECISIONS/ADR-WBS-001-slice-renumbering.md.

While investigating, found two things not yet resolved by this commit:
- DEBT-017 (duplicate ApprovalWorkflow implementation): the tested backend
  (ApprovalWorkflow/) is [DontRegister]'d dead code; the live one
  (Features/ApprovalWorkflow/, wired in Program.cs) has no dedicated tests.
  AEG-VS-26-01 downgraded from COMPLETED to BLOCKED in the tracker pending an
  architect decision on which implementation is canonical.
- Features/MarketData and Features/Portfolio (VS-03/04/05/08 Market Data
  Ingestion Dashboard, Portfolio Rebalance, Risk Metrics, Dashboard) are a
  third, already-implemented-and-tested body of work entirely absent from
  WBS_PROGRESS_TRACKER.csv. Flagged in CURRENT_ROADMAP.md as a follow-up.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-08 12:36:00 +09:00
parent 53be11673c
commit cedc8d79ee
10 changed files with 159 additions and 61 deletions
@@ -1,10 +1,10 @@
# VS-12: Trade Execution System (KIS Integration)
# VS-28: Trade Execution System (KIS Integration)
## Overview
VS-12 implements automated trade execution through Korea Investment & Securities (KIS) API. This vertical slice handles order submission, status polling, settlement confirmation, and reconciliation for approved sell decisions.
VS-28 implements automated trade execution through Korea Investment & Securities (KIS) API. This vertical slice handles order submission, status polling, settlement confirmation, and reconciliation for approved sell decisions.
**Depends On:** VS-10 (sell decisions) → VS-03 (approval) → VS-12 (execution) → VS-14 (reconciliation)
**Depends On:** VS-10 (sell decisions) → VS-26 (approval) → VS-28 (execution) → VS-29 (reconciliation)
## Architecture
@@ -21,7 +21,7 @@ PARTIAL_FILLED / FULLY_FILLED (execution progress)
CONFIRMED (settlement confirmed)
RECONCILED (cost basis updated by VS-14)
RECONCILED (cost basis updated by VS-29)
```
### Components
@@ -158,12 +158,12 @@ CREATE TABLE model_operations.trade_status_history (
### Incoming
- **VS-10 (Sell Decision):** Creates TradeSubmitted event → triggers SubmitTradeHandler
- **VS-03 (Approval):** Approval pre-requisite checked before trade submission
- **VS-26 (Approval):** Approval pre-requisite checked before trade submission
### Outgoing
- **TradeSubmittedEvent:** KIS order ID, quantity, sell decision ID
- **TradeFilledEvent:** Executed quantity, unit price, trade ID
- **TradeSettledEvent:** Net proceeds, trade ID → consumed by VS-14
- **TradeSettledEvent:** Net proceeds, trade ID → consumed by VS-29
### External (KIS API)
- **Order submission:** POST /v1/orders
@@ -182,10 +182,10 @@ CREATE TABLE model_operations.trade_status_history (
### Audit Trail
- ✅ INSERT-only trades & trade_status_history tables
- ✅ All state transitions logged with timestamps
- ✅ VS-04 audit trail integration
- ✅ VS-27 audit trail integration
### RBAC
- ✅ System role: Submit trades (via VS-03 approval)
- ✅ System role: Submit trades (via VS-26 approval)
- ✅ Operations: View & monitor execution
- ✅ Audit: Query immutable trail
@@ -196,7 +196,7 @@ CREATE TABLE model_operations.trade_status_history (
- [ ] HTTP client timeout configured (30 seconds default)
- [ ] Circuit breaker SLA validated (< 1% error rate)
- [ ] Hangfire jobs q-evaluation queue ready
- [ ] VS-04 audit trail integration verified
- [ ] VS-27 audit trail integration verified
- [ ] Logs & alerts configured for transient/permanent/liquidity errors
## Performance Considerations
@@ -216,9 +216,9 @@ CREATE TABLE model_operations.trade_status_history (
## Related Documentation
- **VS-10:** Sell Decision Engine (PLANNED)
- **VS-03:** Approval Workflow (MERGED, PR #23)
- **VS-04:** Audit Trail (MERGED, PR #24)
- **VS-14:** Portfolio Reconciliation (PLANNED)
- **VS-26:** Approval Workflow (MERGED, PR #23)
- **VS-27:** Audit Trail (MERGED, PR #24)
- **VS-29:** Portfolio Reconciliation (PLANNED)
- **CLAUDE.md:** KIS API reference, error handling patterns
---