40 lines
1.9 KiB
Markdown
40 lines
1.9 KiB
Markdown
# ADR-API-BASELINE-001 — Current Host OpenAPI baseline scope
|
|
|
|
## Status
|
|
|
|
Accepted for candidate-baseline work; final release baseline remains evidence-gated.
|
|
|
|
## Date
|
|
|
|
2026-08-13 (user approval recorded in session)
|
|
|
|
## Decision
|
|
|
|
Use the current Host's generated 31-operation OpenAPI artifact as the candidate baseline scope for K-ArtSell Aegis. Treat the KBX v60 reference's 66 operations as selective design references only. Do not import reference routes, permissions, DTOs, database tables, or workflows without a separate approved WBS Slice.
|
|
|
|
## Rationale
|
|
|
|
- Exact operation ID intersection between the current Host and KBX reference is zero.
|
|
- The current Host artifact is generated from registered runtime endpoints and is therefore the only available source for current API surface evidence.
|
|
- Automatic reference-to-product generation would create route, authorization, DTO, and data-contract drift.
|
|
- Candidate and approved baseline are distinct lifecycle states; approval requires preserved artifact, hash, parity output, and API Architect sign-off.
|
|
|
|
## Guardrails
|
|
|
|
- No automatic order/KIS submission or model promotion path is introduced.
|
|
- No client-supplied evidence is trusted as production PIT context.
|
|
- No API operation is added solely because it exists in the KBX reference.
|
|
- OpenAPI generation runs with Hangfire disabled for deterministic lifecycle behavior.
|
|
|
|
## Evidence
|
|
|
|
- Candidate: `src/KArtSell.Host/artifacts/openapi/current_20260813_auto-off.json`
|
|
- Generation log: `evidence/AEG-X-008/openapi-generation_20260813_auto-off.log`
|
|
- Prior parity: 31 live operations, 66 KBX reference operations, 0 shared IDs.
|
|
|
|
## Consequences
|
|
|
|
- API baseline work can proceed against an actual Host surface.
|
|
- KBX adoption must continue as bounded FE/BE/component/template slices.
|
|
- Release completion remains blocked until the approved baseline is stored at the designated release artifact location and the gate is executed successfully.
|