perf: lazy-load extension framework modules
Metadata
Current evaluation
Lazy-loads extension framework modules to avoid eager imports of all six frameworks; CI green, awaiting maintainer review.
Suggested action: needs review
Reason: All CI checks are passing, there are no unresolved review comments, and the author checked the contribution guidelines, CLA, and lint/test boxes; only the release notes checkbox remains unchecked. The change is a clean performance optimization and is ready for maintainer review.
Evaluated by: mr-cal-bot
Impact:
40
Quick Win:
16
Complexity:
45
Confidence:
62
Actionability:
72
Issue body
just an idea.
the extensions package eagerly imported all six framework modules at import time. for most `rockcraft ...` calls its not needed. i've changed the extensions to be lazy loaded (ahead of https://peps.python.org/pep-0810/ landing in 3.15)
---
- [x] I've followed the [contribution guidelines](https://github.com/canonical/rockcraft/blob/main/CONTRIBUTING.md).
- [x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [x] I've successfully run `make lint && make test`.
- [x] I've added or updated any relevant documentation.
- [x] 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 |
|---|---|---|---|---|
| ~deepseek/deepseek-pro-latest |
Impact:
40
Quick Win:
16
Complexity:
45
Confidence:
62
Actionability:
72
|
needs review | Lazy-loads extension framework modules to avoid eager imports of all six frameworks; CI green, awaiting maintainer review. | |
| ~deepseek/deepseek-pro-latest |
Impact:
35
Quick Win:
13
Complexity:
50
Confidence:
60
Actionability:
75
|
needs review | Lazy-loads extension framework modules to avoid importing all six at import time; CI passing, no reviewers, awaiting maintainer review. | |
| qwen/qwen3.6-35b-a3b |
Impact:
35
Quick Win:
21
Complexity:
15
Confidence:
75
Actionability:
70
|
keep open | Lazy-loads extension framework modules to avoid importing all six at import time. PR is 127 days old, all CI passing, awaiting maintainer review. | |
| qwen/qwen3.8-27b |
Impact:
35
Quick Win:
19
Staleness:
58
Complexity:
45
Confidence:
80
|
needs review | Makes rockcraft's extensions package lazy-load its six framework modules instead of importing them eagerly at import time, to speed up CLI startup. CI fully green, zero maintainer review; target file still eagerly imports, so the change is still applicable. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
60
Complexity:
20
Confidence:
85
|
needs review | Optimizes startup performance by lazy-loading extension framework modules instead of eager imports. All CI checks pass, but the PR has received zero reviewer comments and has been inactive for 69 days. | |
| qwen3.6-35b-moe-q4 |
Staleness:
65
Complexity:
20
Confidence:
75
|
needs review | Changes extension framework modules to lazy-load instead of eager-load to improve startup performance. Currently awaiting maintainer review with no comments or updates in 54 days. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
55
Complexity:
15
Confidence:
80
|
needs review | Replaces eager imports of six extension framework modules with lazy loading to improve startup performance. Passes lint and tests but has zero maintainer feedback after 51 days. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/rockcraft#1259
(confidence 50%)
Merged PR #1259 added V2 framework dispatch in the same extension modules, so this PR may need rebasing against those later changes.
Related issues
No related issues found above the similarity threshold.