feat: add pydantic models for all sources
Metadata
Current evaluation
Merged PR #776 added Pydantic models for every source, enabling whole-part JSON schema generation and building on prerequisite PR #775.
Resolution: closed resolved
Reason: PR #776 was merged after approval, adding Pydantic models for all sources. It built on prerequisite PR #775, merged as commit 029f1ad6.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Requires #775
This makes all sources have pydantic models. This does very little on its own, but it is critical for creating JSON schemas for parts as a whole.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #776 added Pydantic models for every source, enabling whole-part JSON schema generation and building on prerequisite PR #775. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR adding Pydantic models for all Charmcraft sources, preparing whole-part JSON schema generation after PR #775. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged to add Pydantic models for all sources, enabling JSON schema generation for parts. Approved by two reviewers, depends on #775, and updates 16 files with a net reduction of 103 lines. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged feature adding Pydantic models for all sources, enabling JSON schema generation for parts. Depends on PR #775. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/craft-parts#775
(confidence 100%)
Required model restructuring merged as commit 029f1ad6 before PR #776.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #781 feat: JSON schema generation for parts | craft-parts | merged | Merged JSON Schema generation for parts in commit 09a99811, adding Pydantic-based schemas and tests after prerequisite #778. | |
| #708 `source-*` pydantic models | craft-parts | closed | Closed as done: maintainer lengau linked merged PR canonical/craft-parts#776 (commit 3d880869), which added pydantic models for every source type and their tagged union, built on prerequisite PR #775. | |
| #1330 Improve Pydantic schema for parts | craft-parts | open | Triaged enhancement to model source, override, build/stage package, and snap properties directly in the Pydantic part schema; the raw-dictionary workaround remains in the codebase. | |
| #774 feat!: rework part models for pydantic 2 | craft-parts | closed | Draft PR #774 to rework part models for Pydantic 2 was closed unmerged after being broken into smaller PRs; the lift-and-shift landed in #771, followed by #775, #776 and #778. |