← Back to issue list

Multiple platforms with `build-for: all` might need to be considered an error

View original Github issue

Metadata

Project
craft-platforms
Number
#125
Type
issue
State
open
Author
lengau
Labels
Created
Updated
Closed

Current evaluation

Design discussion on whether multiple platforms with build-for: all should be an error in craft-platforms validation logic.

Suggested action: keep open

Reason: The issue involves an unresolved architectural decision about where validation for build-for: all should live (craft-platforms vs. pydantic models in consuming apps). Maintainers @mr-cal and @lengau have engaged in discussion, with @mr-cal leaning toward moving validation to pydantic models and @lengau noting Launchpad may still need this as an error. The validation logic still exists in craft_platforms/_platforms.py's _validate_build_for_all function, and the design decision remains open.

Impact: 60 Quick Win: 27.0 Staleness: 75 Complexity: 55 Confidence: 65 Support Request: 0

Issue body

This was found by @alvaro-crespo: ```python ( "unified multiple build-for all platforms", { "bases": None, "base": "ubuntu@20.04", "platforms": { "ubuntu-amd64": { "build-on": ["amd64"], "build-for": ["all"], }, "ubuntu-arm64": { "build-on": ["arm64"], "build-for": ["all"], }, }, "expected": [("20.04", "amd64"), ("20.04", "arm64")], }, ), ``` This is probably a bug, but I'd like to discuss it with @mr-cal and @cmatsuoka before saying for sure. 1. This is almost certainly a bug if it's accepted for snapcraft and charmcraft. 2. I am unsure how the generic planner should behave in this case.

Evaluation history

Date Model Scores Action Summary
qwen3.6-35b-a3b-mtp-q6
Impact: 60
Quick Win: 27.0
Staleness: 75
Complexity: 55
Confidence: 65
Support Request: 0
keep open Design discussion on whether multiple platforms with build-for: all should be an error in craft-platforms validation logic.
qwen/qwen3.6-35b-a3b
Staleness: 90
Complexity: 65
Confidence: 80
Support Request: 15
close stale Design discussion on whether multiple platforms with build-for: all should trigger an error, focusing on validation placement between craft-platforms and pydantic models.
qwen3.6-35b-a3b-mtp-q6
Staleness: 85
Complexity: 45
Confidence: 65
Support Request: 10
needs triage Stalled discussion on whether multiple platforms using build-for: all should trigger an error, with maintainers debating validation placement between pydantic and craft-platforms.
qwen3.6-35b-a3b-mtp-q6
Staleness: 80
Complexity: 70
Confidence: 75
Support Request: 10
keep open Architectural discussion on whether multiple platforms with build-for: all should trigger an error, involving validation responsibility. Currently stalled with maintainer comments but lacks labels or assignee.

Update history

No update history recorded yet.

Related issues

No related issues found above the similarity threshold.