Use craft-platforms for build plans
Metadata
Current evaluation
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.
Resolution: closed resolved
Reason: Merged PR canonical/charmcraft#1894 (commit f1755e8f, +25/-33) removed Charmcraft's bespoke build-plan logic and delegated exhaustive plans to craft-platforms through craft-application's BuildPlanService, as seen in charmcraft/services/buildplan.py. The equivalent Rockcraft adoption landed in canonical/rockcraft#715 (commit 516d29e5), and the shared planner API was delivered in craft-platforms#148. The issue was closed once both crafters shared one planning implementation, matching the dedup/consistency goal.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | 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. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR canonical/rockcraft#715 adopted craft-platforms for build plans, replacing Rockcraft-specific planning logic with a shared implementation to deduplicate logic and improve consistency. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without resolution. The proposal to use craft-platforms for build plans to deduplicate logic and ensure consistency was not implemented or superseded. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed and abandoned. The request was migrated to internal Jira ticket CRAFT-3324 with no further implementation or resolution. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The request to use craft-platforms for build plans was abandoned on GitHub and tracked internally via Jira ticket CRAFT-3324. No implementation occurred. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Abandoned. The request to use craft-platforms for build plans to deduplicate logic and ensure consistency was closed without implementation or follow-up pull requests. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/charmcraft#1894
(confidence 97%)
Merged PR titled 'refactor: use craft-platforms for build plans' (commit f1755e8f) directly implements this issue in Charmcraft.
-
Related To:
canonical/rockcraft#715
(confidence 88%)
Parallel adoption of craft-platforms for Rockcraft build plans (commit 516d29e5), which closed alongside this issue.
-
Likely Fixed By:
craft-platforms#148
(confidence 85%)
Delivered the shared build planner API in craft-platforms (tracked by craft-platforms#3), the prerequisite both crafters consume.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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. | |
| #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. | |
| #391 Use craft-platforms for build plans | craft-application | closed | Build planning and filtering moved to craft-platforms in merged PR #25 (d9ff004); craft-application adopted the planner through merged PR #666 (621d1a32). | |
| #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. | |
| #715 refactor: use craft-platform for the build plans | rockcraft | merged | Merged PR #715 (516d29e5) replaced Rockcraft’s custom build-plan generation with craft-platform, creating one shared source for Rockcraft and remote builds; fixes #698. | |
| #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. | |
| #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. | |
| #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. | |
| #633 fix: improve `platforms.<platform>.build-on` validation | rockcraft | closed | Closed unmerged as redundant: PR canonical/rockcraft#567 had already improved build-on validation by adopting craft-application's default BuildPlanner. | |
| #4 feat: add charmcraft build plans | craft-platforms | merged | Merged charmcraft build-plan support and supporting build-plan utilities in canonical/craft-platforms#4 via commit efa325b. |