← Back to issue list

Skip repacking if artifact contents are unchanged

View original Github issue

Metadata

Project
snapcraft
Number
#6325
Type
issue
State
open
Author
cmatsuoka
Labels
Status: Triaged
Created
Updated
Closed
—

Current evaluation

Conditional repacking is implemented through craft-application PR #1111, integrated and documented in Snapcraft 9.1, but this issue remains open.

Suggested action: close resolved

Reason: craft-application PR #1111 implemented the ST160 API, and Snapcraft 9.1 now documents conditional repacking. Current code sets AppMetadata.always_repack=False, while core24 and core26 spread tests verify that unchanged artifacts produce "Skipping pack" and changed or metadata-updated artifacts are repacked.

Evaluated by: mr-cal-bot

Impact: 55 Quick Win: 34 Complexity: 35 Confidence: 99 Actionability: 96

Issue body

### Check existing issues - [x] I've verified that this request isn't described by any existing issues. ### Request Implement the ST160 craft-application API to avoid repacking an artifact when no changes were made. ### The problem it solves This is a requirement for Test Farm operation.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 55
Quick Win: 34
Complexity: 35
Confidence: 99
Actionability: 96
close resolved Conditional repacking is implemented through craft-application PR #1111, integrated and documented in Snapcraft 9.1, but this issue remains open.
stealth/space-bunny-alpha
Impact: 58
Quick Win: 28
Complexity: 38
Confidence: 96
Actionability: 78
close resolved ST160 conditional repacking is triaged and implemented in craft-application PR #1111, but the Snapcraft tracking issue remains open.
stealth/space-bunny-alpha
Impact: 48
Quick Win: 27
Complexity: 40
Confidence: 96
Actionability: 95
close resolved ST160 conditional repacking was triaged for Test Farm and is already implemented in craft-application via PR #1111; the Snapcraft issue remains open.
qwen3.6-35b-a3b-mtp-q6
Impact: 60
Quick Win: 33
Staleness: 55
Complexity: 45
Confidence: 50
Support Request: 10
keep open Triaged feature request to implement ST160 conditional repacking API; feature appears implemented in craft-application and snapcraft but issue remains open.
qwen/qwen3.6-35b-a3b
Staleness: 25
Complexity: 45
Confidence: 85
Support Request: 5
keep open Feature request to implement ST160 craft-application API to skip repacking unchanged artifacts, required for Test Farm operation. Currently triaged and awaiting implementation.
qwen3.6-35b-a3b-mtp-q6
Staleness: 5
Complexity: 40
Confidence: 90
Support Request: 10
keep open Feature request to skip artifact repacking when contents are unchanged, required for Test Farm operations. Recently triaged by a maintainer and awaiting implementation.

Update history

No update history recorded yet.

Related work

  • Likely Fixed By: craft-application#1111 (confidence 99%)

    Implements the ST160 conditional-repacking API required by the issue.

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.
78%
#6342 skip repacking if snap content not changed snapcraft closed Closed as too complex and superseded by #6349, #6355, #6379, and #6385, which split metadata mediation by file type; snapcraft now defaults to always_repack=False.
74%
#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.
72%
#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.
71%