refactor: split _check_for_stage_collisions_per_partition
Metadata
Current evaluation
Squash merged after approvals and passing CI. Refactors _check_for_stage_collisions_per_partition by separating file gathering from conflict checking, enabling future overlay conflict resolution without altering current behavior.
Suggested action: —
No scores available.
Issue body
The function did both a) gather the files and permissions per part and b) check the sets of files for each part for conflicts. Split the first bit into a separate function, with no behavior changes, so that we can next include the overlay in conflict resolution.
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you added an entry to the changelog (`docs/reference/changelog.rst`)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Squash merged after approvals and passing CI. Refactors _check_for_stage_collisions_per_partition by separating file gathering from conflict checking, enabling future overlay conflict resolution without altering current behavior. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged via squash commit. Refactored _check_for_stage_collisions_per_partition by separating file gathering from conflict checking. No behavioral changes were introduced, preparing the codebase for future overlay conflict resolution. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1186 refactor: split _check_for_stage_collisions_per_partition | craft-parts | closed | Abandoned and closed without merging due to failing CI tests across multiple environments. The refactor split a collision-checking function to prepare for overlay conflict resolution but received no reviewer feedback. | |
| #662 feat(executor): check for stage file collisions in each partition | craft-parts | merged | Merged. Adds stage file collision checks per partition to fix issue #633. Includes refactored unit tests and new integration tests. Approved by reviewers and passed CI. | |
| #633 Check for staged file collisions in each partition | craft-parts | closed | Extended check_for_stage_collisions() to verify file collisions across all partitions rather than just the default. Resolved and merged via pull request #662. | |
| #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. | |
| #834 fix: use partitions for stage-packages tracking | craft-parts | merged | Merged to fix issue #804. The change updates stage-package tracking to scan primed files per partition, resolving failures in common partitioned setups. Multi-partition tracking still requires deeper refactoring. Approved by three reviewers and passed CI. |