71 lines
2.9 KiB
Markdown
71 lines
2.9 KiB
Markdown
# PR-15 Snapshot-Backed Asset Query Services
|
|
|
|
Domain Owner: `docs/packer`
|
|
Cross-Domain Impact: `docs/studio`
|
|
|
|
## Briefing
|
|
|
|
The first functional runtime-backed service wave should focus on queries.
|
|
|
|
This PR moves the asset query surface used by Studio onto the runtime snapshot and defines coherent query behavior without expanding into doctor/build/reconcile.
|
|
|
|
## Objective
|
|
|
|
Deliver snapshot-backed query services for the currently used asset-management surface.
|
|
|
|
## Dependencies
|
|
|
|
- [`./PR-14-project-runtime-core-snapshot-model-and-lifecycle.md`](./PR-14-project-runtime-core-snapshot-model-and-lifecycle.md)
|
|
- [`../specs/2. Workspace, Registry, and Asset Identity Specification.md`](../specs/2.%20Workspace,%20Registry,%20and%20Asset%20Identity%20Specification.md)
|
|
- [`../specs/3. Asset Declaration and Virtual Asset Contract Specification.md`](../specs/3.%20Asset%20Declaration%20and%20Virtual%20Asset%20Contract%20Specification.md)
|
|
- cross-domain reference: [`../../studio/specs/4. Assets Workspace Specification.md`](../../studio/specs/4.%20Assets%20Workspace%20Specification.md)
|
|
|
|
## Scope
|
|
|
|
- migrate `init_workspace`
|
|
- migrate `list_assets`
|
|
- migrate `get_asset_details`
|
|
- keep the query path coherent through the runtime snapshot
|
|
- preserve the packer-owned summary/details contract used by Studio
|
|
- remove leftover query orchestration that only existed to feed inactive `doctor`, `build/pack`, or reconcile flows
|
|
- preserve the modular boundary where `prometeu-studio` consumes only `prometeu-packer-api`
|
|
|
|
## Non-Goals
|
|
|
|
- no command/write lane yet
|
|
- no mutation apply yet
|
|
- no doctor/build/reconcile
|
|
|
|
## Execution Method
|
|
|
|
1. Route the active query APIs through the runtime snapshot.
|
|
2. Preserve coherent results across repeated query use.
|
|
3. Remove repeated recomputation from the active query path.
|
|
4. Remove active query seams that only support deferred capabilities.
|
|
5. Keep Studio-facing response semantics stable.
|
|
|
|
## Acceptance Criteria
|
|
|
|
- active asset queries are served from the runtime snapshot
|
|
- normal query use no longer depends on full filesystem recomputation
|
|
- Studio-facing details/listing semantics remain stable
|
|
- no doctor/build/reconcile behavior is introduced by this PR
|
|
- unused query seams kept only for deferred capabilities are removed from the active path
|
|
|
|
## Validation
|
|
|
|
- regression tests for `init_workspace`
|
|
- regression tests for `list_assets`
|
|
- regression tests for `get_asset_details`
|
|
- Studio smoke validation for list/details loading
|
|
|
|
## Affected Artifacts
|
|
|
|
- `prometeu-packer/prometeu-packer-api/src/main/java/p/packer/**`
|
|
- `prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/**`
|
|
- `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/test/java/p/packer/services/**`
|
|
- `prometeu-packer/prometeu-packer-v1/src/test/java/p/packer/testing/**`
|
|
- `prometeu-studio/**` query adapter coverage
|