feat: add conditional repacking support
Metadata
Current evaluation
Merged PR #1111 (commit 1dfae607) added metadata mediators for conditional repacking under ST160 and released it in craft-application 7.1.0.
Resolution: closed resolved
Reason: PR #1111 merged as commit 1dfae607, implementing post-prime metadata management and conditional artifact repacking while preserving the existing packaging API.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Add metadata creation mediators to signal the package service that
metadata has been changed and regeneration of the packaged artifact
is required. This removes the existing (but non-functional) state-based
mechanism and implements ST160 for post-prime metadata management.
The previous packaging API is preserved and applications using it should
be unaffected.
Fixes #1097
- [ ] Have you followed the guidelines for contributing?
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you successfully run `make lint && make test`?
- [ ] Have you added an entry to the changelog (`docs/reference/changelog.rst`)?
---
CRAFT-5232
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1111 (commit 1dfae607) added metadata mediators for conditional repacking under ST160 and released it in craft-application 7.1.0. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1111 (commit 1dfae607) adds metadata mediators to the package service so artifacts are only repacked when lifecycle/metadata files change (ST160 post-prime metadata). Closes issue #1097; released in craft-application 7.1.0. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in canonical/craft-application#1111 (commit 1dfae607), adding metadata mediators for conditional artifact repacking under ST160; released in 7.1.0. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged conditional repacking support adding metadata mediators to trigger artifact regeneration. Replaces a non-functional state-based mechanism with ST160 post-prime metadata management. Fixes #1097. Approved by two reviewers. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
10
Complexity:
45
Confidence:
90
|
needs review | Adds metadata creation mediators to trigger artifact regeneration, replacing a non-functional mechanism and implementing ST160. Preserves existing API. Fixes #1097. Currently awaiting maintainer review. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
5
Complexity:
65
Confidence:
85
|
needs review | Adds conditional repacking support by implementing metadata creation mediators for artifact regeneration, replacing a non-functional state-based mechanism. Currently open, awaiting review and CI checks. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/craft-application#1097
(confidence 100%)
PR #1111 explicitly fixes issue #1097 with the metadata mediator implementation.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1097 Implement metadata mediator | craft-application | closed | Implemented ST160 post-prime metadata mediation and conditional artifact repacking in merged PR #1111 (commit 1dfae607); released in craft-application 7.1.0. | |
| #5612 feat: only create packages if necessary | snapcraft | closed | Closed unmerged; conditional repacking was moved behind opt-in support in canonical/craft-application#829 and deferred until ST160. | |
| #2890 feat: skip repacking if project is not changed | charmcraft | merged | Merged PR implementing metadata mediation for config.yaml and actions.yaml so charmcraft skips repacking unchanged projects; fixes #2858 and canonical/craft-application#821. | |
| #444 feat: skip repack if project files are unchanged | imagecraft | merged | PR #444 merged: adopts craft-application's metadata mediation API so imagecraft skips repacking when project files are unchanged (+788/-57, 9 files). Implements issue #442; an AI reviewer's managed-mode blocker was retracted. |