Owner decomposition (2026-08-02, refined third review) on branch feat/t8-concept-definition-app. Spec: §6.0 C2, §8.3 (as amended in 6ef2325).
The FastAPI service is the conformance oracle: stateless — a model instance (Turtle) in, a conformance verdict + granular tri-severity findings (named rule, focus node, authored message) out, for remediation. Verification only ("build it right", machine); validation stays with the human K2 gate.
Traceability:
- Surface is exactly
POST /verify, GET /rules, GET /healthz → tests/unit/test_oracle_api.py::test_surface_is_exactly_three_routes
- Granular remediation findings →
test_granular_findings_for_remediation; parse errors → 400 with reason
- Committed byte-identical OpenAPI
docs/services/openapi-oracle.json → test_committed_openapi_is_current
- Consumed in-process via the
cds.contracts.ConformanceOracle seam (InProcessOracle); HTTP client impl deferred (spec §11 D8)
Closes only when feat/t8-concept-definition-app merges to main.
Owner decomposition (2026-08-02, refined third review) on branch
feat/t8-concept-definition-app. Spec: §6.0 C2, §8.3 (as amended in 6ef2325).The FastAPI service is the conformance oracle: stateless — a model instance (Turtle) in, a conformance verdict + granular tri-severity findings (named
rule,focusnode, authoredmessage) out, for remediation. Verification only ("build it right", machine); validation stays with the human K2 gate.Traceability:
POST /verify,GET /rules,GET /healthz→tests/unit/test_oracle_api.py::test_surface_is_exactly_three_routestest_granular_findings_for_remediation; parse errors → 400 with reasondocs/services/openapi-oracle.json→test_committed_openapi_is_currentcds.contracts.ConformanceOracleseam (InProcessOracle); HTTP client impl deferred (spec §11 D8)Closes only when
feat/t8-concept-definition-appmerges tomain.