feat(education): establish operational independence contracts
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
# EDU-015 — Operational independence and legacy exit
|
||||
|
||||
- **Status:** blocked
|
||||
- **Status:** implemented-contracts
|
||||
- **Type:** integration and deployment program
|
||||
- **Phase:** 6
|
||||
- **Blockers:** EDU-011, EDU-013, EDU-014 child decisions, all temporary-adapter owners and exit plans
|
||||
- **Blockers:** production deployment evidence and implementation of each future EDU-011 worker/scanner workload
|
||||
|
||||
## Outcome
|
||||
|
||||
@@ -18,6 +18,17 @@ The target backend runs its selected education capabilities without depending on
|
||||
- Reconcile migrated data and operational runbooks.
|
||||
- Prove deployment, startup, Flyway, and core user flows.
|
||||
|
||||
## Delivered contracts
|
||||
|
||||
- `/admin-api/education/operations/health` exposes the runtime dependency registry plus durable Worker/Scanner and open dead-letter summaries.
|
||||
- `JAVA_READ` performs a target-only PostgreSQL schema readiness proof; Scalar is explicitly `NOT_SELECTED` in that mode.
|
||||
- `SCALAR_READ` is marked legacy, required only when selected, uses `FAIL_CLOSED`, and records success/failure telemetry without exposing URL or credentials.
|
||||
- V4170 owns durable `education_operational_component` and tenant-scoped `education_dead_letter` contracts without retaining business payloads.
|
||||
- `EducationTenantContextPropagation` re-establishes and restores tenant context for executor tasks.
|
||||
- `tools/education-target-smoke/java-read-readiness.sh` asserts target-only provider selection against a running target deployment.
|
||||
|
||||
Production migration and deployment evidence remain release activities and are not claimed by this change.
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- [ ] Every temporary legacy dependency has an owner, telemetry, failure policy, and exit date.
|
||||
|
||||
Reference in New Issue
Block a user