fix: delay enabling the overlay feature
Metadata
Current evaluation
Merged fix for #585 that delays overlay feature enablement from module import to Project object creation. Approved by two reviewers, passed CI, and updated six files.
Suggested action: —
No scores available.
Issue body
Previously, the craft-parts Feature creation was happening as soon as the lifecycle_service module was imported (as top-level code). This was an erroneous attempt to address the fact that the feature has to be enabled by the time the Application loads the project *but also* in tests.
Instead, just enable the feature when creating the Project object, regardless of "origin". This way we can ensure the Project itself is doing the right thing, without special test setup that might not reflect production "reality".
Fixes #585
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged fix for #585 that delays overlay feature enablement from module import to Project object creation. Approved by two reviewers, passed CI, and updated six files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged a fix delaying overlay feature enablement from module import to Project instantiation. This ensures consistent behavior across production and tests without special setup, resolving issue #585. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged a fix delaying overlay feature enablement until Project instantiation, replacing premature module-level initialization. This ensures consistent behavior across production and tests, resolving #585. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #602 fix: enable overlays in _enable_craft_parts_features() | rockcraft | merged | Merged a fix enabling overlays in _enable_craft_parts_features(). Approved by two reviewers with passing CI checks. A minor testing note was dismissed when the reviewer used the correct environment. The change was successfully integrated. | |
| #1472 feat: add override-overlay | craft-parts | merged | Merged the override-overlay feature. Approved by two reviewers with 180 additions and 35 deletions across 10 files. Passed required CI checks and was successfully integrated into the codebase. | |
| #110 feat: Support overlay | imagecraft | merged | Merged to enable the overlay feature, provide a bare base, and add spread tests. Approved by two reviewers with passing CI checks. Resolves #98 and CRAFT-4269 across 18 files. | |
| #407 features: reorganize overlay feature tests | craft-parts | merged | Merged changes reorganizing overlay feature tests to run with the feature enabled and disabled. Fixes part environment setup to only set CRAFT_OVERLAY when active. Approved by reviewer and passed CI. | |
| #299 feat: enable override-overlay | imagecraft | merged | Merged following approval from two reviewers and passing CI checks. Updated craft-parts to ~2.30 to enable override-overlay support and added a corresponding spread test. | |
| #1190 fix(overlay): detect conflicts between overlay and install | craft-parts | merged | Merged fix enhancing Stage step collision detection to account for overlay contents, preventing conflicts with install directories. Includes integration tests, passed all CI checks, and received approval from three reviewers. | |
| #297 overlay: only refresh overlay packages if necessary | craft-parts | merged | Merged an optimization that skips mounting and refreshing the overlay package cache unless a part uses overlay-packages, avoiding unnecessary expensive operations. Approved, passed CI, and changed three files. |