feat(backend): add deprecation middleware and API versioning support
- Add deprecation middleware for warning headers on sunset endpoints - Add jails_v2 router for API v2 migration path - Update CI workflow with new test coverage - Update API versioning documentation - Remove completed tasks from Tasks.md
This commit is contained in:
@@ -1,30 +1,3 @@
|
||||
### Issue #55: MEDIUM - Correlation ID Scope Is Module-Level (Resets on HMR)
|
||||
|
||||
**Where found**:
|
||||
- `frontend/src/api/client.ts:26-39` – `sessionCorrelationId` stored as a module variable
|
||||
|
||||
**Why this is needed**:
|
||||
Hot Module Replacement (HMR) re-evaluates modules, generating a new correlation ID mid-session. Distributed traces lose continuity, making it impossible to correlate logs from the same user session.
|
||||
|
||||
**Goal**:
|
||||
Persist the correlation ID across module re-evaluations for the lifetime of the browser tab.
|
||||
|
||||
**What to do**:
|
||||
1. Store the correlation ID in `sessionStorage` on first generation; read from there on subsequent module evaluations.
|
||||
2. Clear it on logout.
|
||||
|
||||
**Possible traps and issues**:
|
||||
- `sessionStorage` is tab-local, which is the desired scope.
|
||||
- Ensure the ID is not leaked in URLs or logs.
|
||||
|
||||
**Docs changes needed**:
|
||||
- Add comment explaining the persistence strategy in `client.ts`.
|
||||
|
||||
**Doc references**:
|
||||
- `frontend/src/api/client.ts` – `getSessionCorrelationId()`
|
||||
|
||||
---
|
||||
|
||||
### Issue #56: MEDIUM - No API Versioning or Deprecation Strategy
|
||||
|
||||
**Where found**:
|
||||
|
||||
Reference in New Issue
Block a user