eb59cae8e3
Blocks submit, status, cancel, and settlement before HTTP or database writes and removes the KIS polling recurring job. Evidence: concrete adapter test 1/1 passed with zero HTTP calls. WBS remains IN_PROGRESS pending endpoint/startup override evidence.
2.1 KiB
2.1 KiB
AEG-X-016 — KIS order-submission hard-off
Scope
- WBS ID:
AEG-X-016; Requirement / API / DB / Job / UI / Test:REQ-KIS-OFF/Cross/Cross/Cross/Cross/Cross. - Dependency / Gate:
AEG-X-005(completed) /ALL. - Acceptance: zero external KIS order calls; capability override audit and kill switch pass.
Source / Assumption / Unknown / Decision Required
- Source:
AGENTS.mdhard prohibition on automatic orders/KIS submission;CapabilityOptionsstartup validation;TradeEndpoints,TradeHandlers,KisTradeExecutionService,TradeStatusPollingJob, and Program recurring-job registration. - Assumption: the user's instruction is an unconditional hard-off, not a feature flag. Buy, sell, poll, and settlement calls must remain blocked even if an environment value attempts to enable a capability.
- Unknown: there is no approved release that authorizes re-enabling KIS. This change supplies no activation path.
- Decision Required: a future enablement would require a separately approved release, complete capability/kill-switch audit, and revised WBS evidence; it is out of scope.
Actual evidence and remaining acceptance
dotnet test tests/KArtSell.Integration.Tests/KArtSell.Integration.Tests.csproj -c Release --filter FullyQualifiedName~KisTradingHardOffTests --logger "trx;LogFileName=KisTradingHardOffTests_20260809.trx" --results-directory evidence/AEG-X-016- Result: passed
1/1; artifact:evidence/AEG-X-016/KisTradingHardOffTests_20260809.trx; SHA-256:F41D1DF823F91705D322A629B08ADF0BBA03EA1BEFA01DEF47E00C9DAFF2470D. - The test invokes submit, status, cancel, and settlement on the concrete KIS adapter and asserts that every call throws the hard-off exception before its HTTP handler is called (zero external calls).
- The submit/poll/settlement handlers guard before any database write or adapter access, and Program removes the historic
trade-status-pollingrecurring job. - Not complete: endpoint-level disabled response and a startup configuration-override audit remain to be executed before the full WBS acceptance is claimed.