Restrict base/build-base combinations
Metadata
Current evaluation
Closed as outdated on 2026-01-27 after substantial changes to base validation made the original ST119 rework obsolete; no ST119-specific implementation was recorded.
Resolution: closed stale
Reason: Maintainer mr-cal closed the task as outdated, stating that many base-validation changes had landed since it was created. Earlier devel-base fixes in PRs #4523 and #4663 are related, but no PR was cited as the closing resolution.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
Per ST119, bases and build-bases need restrictions including:
1. `base: coreXX build-base: coreYY` is not allowed
2. `base: coreXX build-base: devel` is only allowed when `coreXX` is unstable
3. `base: devel` is not allowed
See the table in ST119 for a full definition of valid and invalid combinations.
The `BASES_` constants and `get_effective_base()` need to be reworked. For example, `devel` is considered a valid base.
### Why it needs to get done
To prevent snaps with undefined build and runtime behavior.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed stale | Closed as outdated on 2026-01-27 after substantial changes to base validation made the original ST119 rework obsolete; no ST119-specific implementation was recorded. | |
| stealth/space-bunny-alpha | — | closed stale | Closed as outdated after maintainer mr-cal noted that base-validation rules had changed substantially since the task was created. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed as outdated: the maintainer reported substantial changes to base validation since creation, making the proposed ST119 restrictions obsolete rather than implementing them directly. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as outdated. The maintainer noted that base validation has since changed significantly, rendering the original restrictions obsolete. The task was superseded by newer validation implementations rather than being directly fixed or merged. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as outdated. The author confirmed that base validation has evolved significantly since creation, rendering the original restriction requirements obsolete and superseding this task. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned as outdated. Base validation has been significantly updated since creation, superseding the original restrictions and code changes. Closed without implementation. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by subsequent base validation updates. The maintainer marked the ticket outdated, noting that base validation logic has evolved significantly since creation, making this task obsolete. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/snapcraft#4663
(confidence 82%)
Commit c492c940b fixed effective-base handling for devel build plans.
-
Related To:
canonical/snapcraft#4523
(confidence 75%)
Commit d75fdaf16 corrected effective-base behavior when using devel as build-base.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #4539 Validate `base` keyword and prohibit `base: devel` | snapcraft | closed | Closed as outdated after base validation evolved substantially; no implementing PR or commit was cited. | |
| #915 Enforce that the build and run base are the same* base | craft-application | open | Maintainer request to reject mismatched build-base/base pairs, with exceptions for bare, development, legacy overrides, and base snaps; still open. |