Use craft-platforms for build plans
Metadata
Current evaluation
Build planning and filtering moved to craft-platforms in merged PR #25 (d9ff004); craft-application adopted the planner through merged PR #666 (621d1a32).
Resolution: closed resolved
Reason: craft-platforms PR #25 merged the upstream planner and filtering logic as commit d9ff004. craft-application PR #666 later merged commit 621d1a32, adding BuildPlanService that delegates exhaustive planning to craft_platforms.get_build_plan.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
1. Move the basic build planner logic from [here](https://github.com/canonical/craft-application/blob/66b6bae2bf194b165a073dbbe8726de2ae3eb23c/craft_application/models/project.py#L152) into [craft-platforms](https://github.com/canonical/craft-platforms)
2. Copy the build plan filterer into craft-platforms
### Why it needs to get done
craft-platforms needs a complete build planner logic.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Build planning and filtering moved to craft-platforms in merged PR #25 (d9ff004); craft-application adopted the planner through merged PR #666 (621d1a32). | |
| stealth/space-bunny-alpha | — | closed resolved | Build planner logic and filtering were upstreamed to craft-platforms via merged PR #25 (commit d9ff004). Downstream consumption was prototyped in craft-application PR #403. | |
| qwen/qwen3.6-35b-a3b | — | — | Build planner logic and filterer were upstreamed to craft-platforms via PR #25. Downstream integration is being prototyped in craft-application. The issue is closed as resolved. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
95
Complexity:
40
Confidence:
90
Support Request:
5
|
close stale | Task to move build planner logic to craft-platforms. A maintainer confirmed the work was upstreamed and downstream consumption was prototyped over a year ago, rendering this tracking issue obsolete. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
95
Complexity:
40
Confidence:
90
Support Request:
10
|
close stale | Task to move build planner logic to craft-platforms. Work has been upstreamed in craft-platforms PR #25, with downstream prototyping underway. Issue is effectively obsolete. |
Update history
| Date | Change |
|---|---|
| closed |
Related work
-
Likely Fixed By:
canonical/craft-platforms#25
(confidence 99%)
Merged upstream build-planner and filter logic in commit d9ff004.
-
Likely Fixed By:
canonical/craft-application#666
(confidence 99%)
Merged BuildPlanService in commit 621d1a32, integrating craft-platforms planning downstream.
-
Related To:
canonical/craft-application#403
(confidence 95%)
Closed prototype of downstream craft-platforms build-planner consumption; superseded by the production integration in #666.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5015 Use craft-platforms for build plans | snapcraft | closed | Snapcraft adopted craft-platforms build plans in merged PR #5111 (commit 7969ee8d5), replacing its custom planning logic. | |
| #698 Use craft-platforms for build plans | rockcraft | closed | Merged PR #715 (516d29e5) replaced Rockcraft's custom build-plan generation with craft-platforms, resolving #698 and aligning plans with downstream consumers. | |
| #1876 Use craft-platforms for build plans | charmcraft | closed | Closed as done: charmcraft PR #1894 (commit f1755e8f) switched build plan generation to craft-platforms via craft-application's BuildPlanService; rockcraft did the same in #715. | |
| #1894 refactor: use craft-platforms for build plans | charmcraft | merged | Merged PR #1894 (commit f1755e8f, +25/-33) replaced Charmcraft's custom build-plan generation for `platforms` charms with craft-platforms, routing exhaustive build plans through craft-application's BuildPlanService. | |
| #83 Support "platforms" for the build plans | craft-application | closed | Platform support for build plans was merged in craft-application#86 (commit e494797a), adding platform-name selection/filtering and closing #83. | |
| #639 Move the build planner logic into craft-platforms | rockcraft | closed | Build planner logic extracted to craft-platforms in merged PR canonical/craft-platforms#25 (commit d9ff004); rockcraft later simplified in commit 5f898b32. Maintainer mr-cal confirmed completion. | |
| #501 feat: use craft-platforms build planning | craft-application | closed | Closed unmerged after team discussion; the redesign was later delivered separately by #666 using craft-platforms, followed by #667 removing BuildPlanner. | |
| #5111 feat: use `craft-platforms` for build plans | snapcraft | merged | Merged in #5111 via commit 7969ee8d5, replacing Snapcraft’s custom build-plan logic with craft-platforms utilities. | |
| #403 [PROTOTYPE] refactor: use craft-platforms | craft-application | closed | Closed unmerged as a prototype; maintainer redirected the craft-platforms build-planner integration to #391, with the build-plan service later landing via #666 (621d1a32). | |
| #326 feat: add Platform model and default BuildPlanner | craft-application | merged | Merged PR #326 as commit 4833c0e9, adding the Platform model and default BuildPlanner; the feature shipped in craft-application 3.0.0. |