prometeu-studio/docs/packer/pull-requests/PR-18-legacy-service-retirement-and-regression-hardening.md
2026-03-24 13:42:44 +00:00

67 lines
3.0 KiB
Markdown

# PR-18 Legacy Service Retirement and Regression Hardening
Domain Owner: `docs/packer`
## Briefing
After the active service-only wave is fully running through the runtime path, the repository should not keep duplicated legacy orchestration around as a competing semantic track.
This PR retires the superseded legacy paths and hardens regression coverage around the smaller active service surface.
It also closes the cleanup promise from `PR-12` by ensuring no unused packer capability families survive just because they existed before the runtime service wave.
## Objective
Remove superseded legacy service paths and strengthen regression protection for the runtime-backed service wave.
## Dependencies
- [`./PR-15-snapshot-backed-asset-query-services.md`](./PR-15-snapshot-backed-asset-query-services.md)
- [`./PR-16-write-lane-command-completion-and-used-write-services.md`](./PR-16-write-lane-command-completion-and-used-write-services.md)
- [`./PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md`](./PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md)
## Scope
- retire duplicated filesystem-per-call paths superseded by the active runtime-backed service wave
- remove temporary shims that were tolerated only during the migration window
- harden regression coverage around the remaining active service surface
- remove leftover inactive `doctor`, `build/pack`, and reconcile code that no longer belongs to the service-only wave
- preserve the `prometeu-packer-api` surface as the stable consumer contract while retiring legacy implementation paths in `prometeu-packer-v1`
## Non-Goals
- no doctor reintroduction
- no build/pack reintroduction
- no reconcile observer work
- no new architecture decisions
## Execution Method
1. Remove superseded legacy paths.
2. Remove temporary migration shims once the runtime-backed path is complete.
3. Simplify the active service composition around the runtime boundary.
4. Strengthen regression coverage around the remaining service wave.
5. Verify no split-brain semantics remain between active and legacy paths.
## Acceptance Criteria
- superseded legacy paths are removed
- the active runtime-backed service wave is the only semantic path for the currently used functionality
- regression coverage protects the reduced active surface
- no inactive capability family survives in code solely as speculative future support
## Validation
- full active-service regression suite
- Studio embedding regression suite
- targeted tests proving no disagreement remains between active and legacy paths
## Affected Artifacts
- `prometeu-packer/prometeu-packer-api/src/main/java/p/packer/**`
- `prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/**`
- `prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/**`
- `prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/events/**`
- `prometeu-packer/prometeu-packer-v1/src/test/java/p/packer/services/**`
- `prometeu-packer/prometeu-packer-v1/src/test/java/p/packer/testing/**`
- integration fixtures