← Back to issue list

Configuration models need some typing cleanup

View original Github issue

Metadata

Project
charmcraft
Number
#1118
Type
issue
State
open
Author
lengau
Labels
Status: Triaged Type: Bug
Created
Updated
Closed

Current evaluation

Code-quality task to clean up typing in charmcraft configuration models (pydantic StrictStr usage, overrides, abstract classes), per a PR #1117 review comment. Triaged and synced to internal Jira; the criticized pattern still exists in the models.

Suggested action: keep open

Reason: The issue carries the 'Status: Triaged' label, was filed by a maintainer, and was synced to internal Jira (CHARMCRAFT-715) 47 days ago, so it is acknowledged and tracked. The criticized pattern is still present in the code (e.g. pydantic.StrictStr fields and '# type: ignore[assignment]' overrides in charmcraft/models/metadata.py), so it remains valid and not stale-irrelevant; it is a low-impact refactor rather than a user-facing bug.

Impact: 15 Quick Win: 8.25 Staleness: 65 Complexity: 45 Confidence: 80 Support Request: 0

Issue body

### What needs to get done The strict strings and similar that we have should use best practices around abstract classes, overrides, etc. https://github.com/canonical/charmcraft/pull/1117/files#r1213462775 ### Why it needs to get done Code quality! Or more specifically, matching industry standards so our code is accessible to developers outside the team

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.8-27b
Impact: 15
Quick Win: 8.25
Staleness: 65
Complexity: 45
Confidence: 80
Support Request: 0
keep open Code-quality task to clean up typing in charmcraft configuration models (pydantic StrictStr usage, overrides, abstract classes), per a PR #1117 review comment. Triaged and synced to internal Jira; the criticized pattern still exists in the models.
qwen/qwen3.6-35b-a3b
Staleness: 70
Complexity: 20
Confidence: 85
Support Request: 0
keep open Maintenance task to improve typing practices in configuration models using abstract classes and overrides. Triaged and awaiting implementation.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 25
Confidence: 85
Support Request: 0
needs triage Unaddressed request to refactor configuration model typing to follow Python best practices like abstract classes and overrides. Open for ~3 years with no maintainer response or labels.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 15
Confidence: 80
Support Request: 0
close stale Requests refactoring configuration model typing to follow Python best practices like abstract classes and overrides. No maintainer response or activity in over 3 years.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 40
Confidence: 85
Support Request: 5
close stale Refactor configuration models to follow Python typing best practices including abstract classes and overrides. Open and inactive for over three years with no comments or labels, requiring triage and assignment.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/charmcraft#1117 (confidence 75%)

    The review comment that spawned this issue (r1213462775) is on PR #1117, which moved the pydantic models and metafiles.

Related issues

No related issues found above the similarity threshold.