feat: implement metadata mediation for manifest.yaml
Metadata
Current evaluation
Implements metadata mediation for manifest.yaml using craft-application packaging API. Has 2 approvals but 3 unresolved review comments and some failing CI tests.
Suggested action: needs review
Reason: The PR has 2 reviewer approvals but 3 unresolved review comments and 2 failing CI checks (snap-store-tests, snap-tests on ubuntu-25.10 and 20.04). Maintainer review is needed to address the unresolved comments and CI failures before merging.
Impact:
55
Quick Win:
30.25
Staleness:
10
Complexity:
45
Confidence:
75
Issue body
Use the craft-application packaging API to mediate the creation of the
`manifest.yaml` metadata file.
---
CHARMCRAFT-724
- [ ] I've followed the [contribution guidelines](https://github.com/canonical/charmcraft/blob/main/CONTRIBUTING.md).
- [ ] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [ ] I've successfully run `make lint && make test`.
- [ ] I've added or updated any relevant documentation.
- [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing.
- [ ] I've updated the relevant release notes.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
30.25
Staleness:
10
Complexity:
45
Confidence:
75
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Has 2 approvals but 3 unresolved review comments and some failing CI tests. | |
| qwen/qwen3.6-35b-a3b |
Impact:
45
Quick Win:
29.25
Staleness:
0
Complexity:
35
Confidence:
75
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Has 1 approval, 1 unresolved review comment, and most CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Impact:
50
Quick Win:
32.5
Staleness:
0
Complexity:
35
Confidence:
75
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Fresh PR with 0 reviewers, pending review. | |
| qwen/qwen3.6-35b-a3b |
Impact:
45
Quick Win:
29.25
Staleness:
0
Complexity:
35
Confidence:
75
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Fresh PR with passing initial CI checks, pending full test suite, no reviews yet. | |
| qwen/qwen3.6-35b-a3b |
Impact:
50
Quick Win:
27.5
Staleness:
5
Complexity:
45
Confidence:
75
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Fresh PR with failing lint CI and 1 unresolved review comment. | |
| qwen/qwen3.6-35b-a3b |
Impact:
50
Quick Win:
32.5
Staleness:
5
Complexity:
35
Confidence:
70
|
needs review | Implements metadata mediation for manifest.yaml using craft-application packaging API. Fresh PR with 2 unresolved review comments and a failing lint check. |
Update history
| Date | Change |
|---|---|
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| created |
Related work
-
Related To:
charmcraft#2857
(confidence 95%)
The originating issue for this PR, requesting metadata mediation for manifest.yaml.
-
Related To:
charmcraft#2856
(confidence 80%)
Related issue for metadata.yaml mediation that was closed without resolution; this PR implements similar mediation for manifest.yaml.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2874 feat: mediate creation of metadata.yaml | charmcraft | merged | Merged after two approvals. Implements craft-application's package service API to mediate metadata.yaml creation. Integrated into main despite some failing CI tests on specific Ubuntu versions, altering three files. | |
| #2857 Implement metadata mediation for manifest.yaml | charmcraft | open | Feature request to implement metadata mediation for manifest.yaml, similar to metadata.yaml mediation in #2856. Triaged and created by maintainer 8 days ago. | |
| #6355 feat: mediate creation of component.yaml | snapcraft | merged | Merged after two approvals. Implements craft-application metadata mediation to generate component.yaml for each component artifact, resolving #6360 and CRAFT-1376. CI passed and conflicts were resolved prior to merge. | |
| #6349 feat: implement metadata mediation for snap.yaml | snapcraft | merged | Merged. Implements metadata mediation for snap.yaml via a new packaging API to skip repacking when contents match. Other files handled separately. Approved by two reviewers and passed CI. | |
| #481 feat: create the final craft manifest | craft-application | merged | Merged the final craft manifest feature, generating a metadata file with artifact and dependency details from the fetch-service integration. Approved by two reviewers and passed CI checks. | |
| #6379 feat: mediate creation of hooks and gui assets | snapcraft | merged | Merged pull request implementing the Craft Application metadata mediation API for copying hooks and GUI assets to snap artifacts. Approved by two reviewers and passed most CI checks, despite one failing store test. | |
| #473 feat: models for the craft manifest | craft-application | merged | Merged three new models for craft manifest metadata: ProjectManifest, SessionArtifactManifest, and CraftManifest. Approved by two reviewers, passed CI checks, and added 439 lines across seven files. |