feat: skip repack if project files are unchanged
Metadata
Current evaluation
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.
Resolution: closed resolved
Reason: The PR itself was merged into main after maintainer review, implementing craft-application's metadata mediation API plus an `_app_needs_repack()` secondary check. A bot-reported blocker about stale images in managed mode was retracted by the same reviewer after `PackCommand._run`/`_run_real` was shown to handle the decision.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Implement the craft-application metadata mediation API to prevent
unnecessary repacking of images.
---
- [ ] I've followed the [contribution guidelines](https://github.com/canonical/imagecraft/blob/main/CONTRIBUTING.md).
- [ ] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [ ] I've successfully run `make lint && make test`.
- [ ] I've added or updated any relevant documentation.
- [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | 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. | |
| qwen/qwen3.8-27b | — | closed resolved | Merged PR implementing craft-application's metadata mediation API so imagecraft skips repacking images when project files are unchanged. An AI review blocker about managed-mode stale images was raised then retracted as incorrect. | |
| qwen/qwen3.8-27b |
Impact:
50
Quick Win:
14
Complexity:
55
Confidence:
75
Actionability:
60
|
needs review | Adds craft-application metadata mediation so `imagecraft pack` skips repacking when project files are unchanged. +788/-57 across 9 files; CI green except OSV-scanner; AI review blocker retracted; 3 unresolved comments; awaiting maintainer review. | |
| qwen/qwen3.8-27b |
Impact:
55
Quick Win:
13
Complexity:
60
Confidence:
78
Actionability:
58
|
needs review | Implements craft-application metadata mediation API in imagecraft's pack service so unchanged projects skip repacking disk images. +788/-57 across 9 files. CI green except OSV-scanner; 3 unresolved review comments; author awaiting maintainer re-review. | |
| qwen/qwen3.8-27b |
Impact:
55
Quick Win:
16
Complexity:
50
Confidence:
75
Actionability:
60
|
needs review | Adds craft-application package_file metadata mediation so imagecraft skips repacking images when project files are unchanged. +788/-57 across 9 files. Author says code issues addressed; awaiting maintainer review and commit-message cleanup before landing. | |
| stealth/space-bunny-alpha |
Impact:
52
Quick Win:
13
Complexity:
58
Confidence:
72
Actionability:
58
|
needs review | Maintainer PR implementing craft-application's mediation API in Imagecraft so unchanged projects skip repacking; mirrors merged rockcraft#1357. All tests/lint green, OSV-scanner failing, build/snap-builds pending, 5 unresolved comments. | |
| stealth/space-bunny-alpha |
Impact:
52
Quick Win:
14
Complexity:
60
Confidence:
68
Actionability:
68
|
needs review | Adds craft-application package mediation so Imagecraft skips repacking unchanged projects (+724/-60, 10 files). Approved by 1 reviewer; 1 comment unresolved and most test/lint CI still pending. | |
| stealth/space-bunny-alpha |
Impact:
54
Quick Win:
21
Complexity:
48
Confidence:
89
Actionability:
76
|
needs review | Adds Imagecraft metadata mediation to avoid image repacking when project files are unchanged. Approved with all reported CI checks green; three spread suites remain pending and one review comment is unresolved. | |
| stealth/space-bunny-alpha |
Impact:
48
Quick Win:
15
Complexity:
52
Confidence:
91
Actionability:
64
|
needs review | Adds craft-application metadata mediation to skip image repacking when project files are unchanged. Approved with all CI green; three review comments remain unresolved pending re-review. | |
| qwen/qwen3.6-35b-a3b |
Impact:
50
Quick Win:
22
Staleness:
0
Complexity:
55
Confidence:
60
|
needs review | New PR implementing craft-application metadata mediation API to skip unnecessary image repacking when project files are unchanged. 0 days old, pending review with 1 unresolved comment and some failing CI tests. | |
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
30
Staleness:
5
Complexity:
45
Confidence:
75
|
needs review | New PR implementing craft-application metadata mediation API to skip unnecessary repacking. 0 reviewers, 1 unresolved comment, some test-requires-root CI checks failing. | |
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
30
Staleness:
0
Complexity:
45
Confidence:
75
|
needs review | Implements craft-application metadata mediation API to skip unnecessary repacking when project files are unchanged. New PR awaiting maintainer review with CI pending. | |
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
30
Staleness:
0
Complexity:
45
Confidence:
65
|
needs review | Implements craft-application metadata mediation API to skip unnecessary repacking when project files are unchanged. Fresh PR with unresolved review comments and some failing CI tests. | |
| qwen/qwen3.6-35b-a3b |
Impact:
50
Quick Win:
25
Staleness:
0
Complexity:
50
Confidence:
70
|
needs review | Port of rockcraft#1357 implementing craft-application metadata mediation API to skip repacking when project files are unchanged. New PR awaiting review with some CI failures. | |
| qwen/qwen3.6-35b-a3b |
Impact:
40
Quick Win:
22
Staleness:
5
Complexity:
45
Confidence:
70
|
needs review | New PR implementing skip-repack optimization when project files are unchanged, porting a feature from rockcraft. Pending maintainer review with some CI failures on test-requires-root jobs. |
Update history
| Date | Change |
|---|---|
| merged | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| created |
Related work
-
Related To:
canonical/imagecraft#442
(confidence 95%)
The tracking issue requesting skip-repacking of unchanged projects; remains open pending broader testing-workflow requirements.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #442 Skip repacking when project files are not changed | imagecraft | open | Maintainer request to adopt craft-application's package mediation API so imagecraft skips repacking unchanged projects; implementation merged in PR #444, but issue stays open/triaged pending the wider testing-workflow requirement. | |
| #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. | |
| #1357 feat: skip repacking if project is unchanged | rockcraft | closed | PR #1357 by cmatsuoka merged as commit 0b6ba8bd, adopting the craft-application mediation API so Rockcraft skips repacking output artifacts when the project is unchanged. All checks passed. | |
| #1111 feat: add conditional repacking support | craft-application | merged | Merged PR #1111 (commit 1dfae607) added metadata mediators for conditional repacking under ST160 and released it in craft-application 7.1.0. | |
| #6325 Skip repacking if artifact contents are unchanged | snapcraft | open | Conditional repacking is implemented through craft-application PR #1111, integrated and documented in Snapcraft 9.1, but this issue remains open. |