← Back to issue list

feat: align 12-factor Ubuntu 26.04 contracts

View original Github issue

Metadata

Project
charmcraft
Number
#2906
Type
pull request
State
merged
Author
alithethird
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR aligning Ubuntu 26.04 12-factor contracts: V2 profiles now generate only paas-charm>=2.0.dev1,<3; legacy OAuth/OpenFGA/tracing/Redis deps removed; Spring Boot marked experimental on 24.04; docs and tests updated.

Resolution: closed resolved

Reason: PR #2906 was merged after approval from 4 reviewers. It updates generated V2 dependency sets, removes legacy Charmhub libraries from V2 expansion, and adjusts Spring Boot experimental status while preserving V1 output.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Align the Ubuntu 26.04 12-factor generated contract and extension status: - generate only the `paas-charm>=2.0.dev1,<3` project dependency in all six V2 profiles; OAuth, OpenFGA, and tracing interface packages remain transitive dependencies owned by paas-charm - stop fetching the corresponding legacy OAuth, OpenFGA, and tracing libraries from Charmhub in V2 expansion while preserving V1 output - remove the obsolete Redis relation and Charmhub library from V2 generation while retaining Valkey - mark Charmcraft's Spring Boot extension experimental on Ubuntu 24.04, matching Rockcraft, while preserving stable 24.04 behavior for the other frameworks - add Spring Boot gate, extension-listing, and generated-profile coverage and update its tutorial to enable both tools with canonical `=1` flags - remove obsolete experimental flags from stable Ubuntu 24.04 FastAPI, Go, and ExpressJS tutorials - keep generated-contract and Redis/Valkey reference material while removing Charmcraft's PR-added 12-factor migration workflow and ownership claims; paas-charm owns that migration guidance The exact generated V2 dependency set is asserted for all six framework profiles, and lower-base profiles retain their existing `paas-charm>=1.0,<2` requirements output. Charmcraft's existing `metrics-path` validation remains unchanged: values must be strings that start with `/` and are valid RFC 3986 URL paths. Validation: - focused extension, registry, and init tests: 161 passed, 2 skipped - `make format`: passed - `make lint`: passed, including linkcheck and package checks - `make test-fast`: 2,832 passed, 73 deselected, 3 xfailed - targeted type checks, Sphinx lint, spelling, and Vale: passed - documentation build with warnings treated as errors: passed - pre-commit hooks: passed The Rockcraft bare/build-base error, CLI stability display, `/app-data` documentation, statsd-exporter binding, and Rockcraft release-note defects remain out of scope. --- - [x] 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`. - [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. - [x] I've updated the relevant release notes.

Evaluation history

Date Model Scores Action Summary
~deepseek/deepseek-pro-latest — closed resolved Merged PR aligning Ubuntu 26.04 12-factor contracts: V2 profiles now generate only paas-charm>=2.0.dev1,<3; legacy OAuth/OpenFGA/tracing/Redis deps removed; Spring Boot marked experimental on 24.04; docs and tests updated.
~deepseek/deepseek-pro-latest — closed resolved Merged #2906 to align Ubuntu 26.04 12-factor generated contracts: paas-charm>=2.0.dev1,<3 only in V2 profiles, drop legacy libraries, remove Redis relation, mark Spring Boot experimental on 24.04, docs/tests updates.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 24
Complexity: 45
Confidence: 78
Actionability: 80
needs review Aligns Ubuntu 26.04 12-factor V2 generated contracts: paas-charm>=2.0.dev1,<3 only, drops legacy Charmhub libs, removes Redis relation, marks Spring Boot experimental on 24.04, updates docs/tests. Approved by 4 reviewers.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 19
Complexity: 50
Confidence: 70
Actionability: 70
needs review Aligns Ubuntu 26.04 12-factor V2 contracts: paas-charm>=2.0.dev1,<3 only, drops legacy OAuth/OpenFGA/tracing/Redis from V2, marks Spring Boot experimental on 24.04, adds tests/docs. Approved with 2 unresolved comments.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 16
Complexity: 50
Confidence: 75
Actionability: 60
needs review Aligns Ubuntu 26.04 12-factor V2 contracts: paas-charm>=2.0.dev1,<3 only, drops legacy OAuth/OpenFGA/tracing/Redis from V2, marks Spring Boot experimental on 24.04, adds tests/docs. Approved with 3 unresolved comments.
~deepseek/deepseek-pro-latest
Impact: 62
Quick Win: 22
Complexity: 48
Confidence: 62
Actionability: 68
needs review Aligns Ubuntu 26.04 12-factor V2 contracts: paas-charm>=2.0.dev1,<3 only, drops legacy OAuth/OpenFGA/tracing/Redis from V2, marks Spring Boot experimental on 24.04, adds tests/docs. Approved with 3 unresolved comments.
~deepseek/deepseek-pro-latest
Impact: 60
Quick Win: 20
Complexity: 50
Confidence: 65
Actionability: 65
needs review Aligns Ubuntu 26.04 12-factor generated contracts: paas-charm>=2.0.dev1,<3 only, drops legacy OAuth/OpenFGA/tracing/Redis libs, marks Spring Boot experimental on 24.04, updates docs/tests. Approved; 2 unresolved comments.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 15
Complexity: 50
Confidence: 70
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor generated contracts: paas-charm>=2.0.dev1,<3 only, drops legacy OAuth/OpenFGA/tracing/Redis libs, marks Spring Boot experimental on 24.04, updates docs/tests. Approved by 2 reviewers; 2 unresolved comments; CI failing.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 15
Complexity: 50
Confidence: 75
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor V2 profiles to depend only on paas-charm>=2.0.dev1,<3, drops legacy libs/Redis, marks Spring Boot 24.04 experimental, updates docs/tests. Approved with 3 unresolved comments; OSV-scanner failing.
~deepseek/deepseek-pro-latest
Impact: 60
Quick Win: 15
Complexity: 55
Confidence: 70
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor generated contracts: paas-charm>=2.0.dev1 only, drops legacy V2 libs/Redis, marks Spring Boot experimental on 24.04, updates docs/tests. Approved but 3 unresolved comments and OSV-scanner failing.
~deepseek/deepseek-pro-latest
Impact: 60
Quick Win: 15
Complexity: 55
Confidence: 70
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor V2 generated contracts: only paas-charm>=2.0.dev1,<3 dependency, drops legacy libs/Redis, marks Spring Boot experimental on 24.04, updates docs/tests. Approved with 3 unresolved comments; OSV-scanner failing.
~deepseek/deepseek-pro-latest
Impact: 60
Quick Win: 14
Complexity: 55
Confidence: 75
Actionability: 50
needs review Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drops legacy libs/Redis, marks Spring Boot 24.04 experimental, updates docs/tests. Approved but 3 unresolved comments and lint/OSV CI failing.
~deepseek/deepseek-pro-latest
Impact: 58
Quick Win: 16
Complexity: 48
Confidence: 68
Actionability: 52
needs review Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy OAuth/OpenFGA/tracing/Redis libs, mark Spring Boot experimental on 24.04. Approved with 3 unresolved comments; OSV-scanner and lint/files failing.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 17
Complexity: 45
Confidence: 60
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy OAuth/OpenFGA/tracing/Redis libs, mark Spring Boot experimental on 24.04. Approved; 3 unresolved comments, OSV-scanner and lint/files failing.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 16
Complexity: 50
Confidence: 55
Actionability: 60
needs review Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy OAuth/OpenFGA/tracing/Redis libs, mark Spring Boot experimental on 24.04. Approved; 3 unresolved comments, OSV-scanner failing.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 11
Complexity: 50
Confidence: 60
Actionability: 40
keep open Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy OAuth/OpenFGA/tracing/Redis libs, mark Spring Boot experimental on 24.04, update docs/tests. Open with 3 unresolved review comments and pending CI.
~deepseek/deepseek-pro-latest
Impact: 50
Quick Win: 8
Complexity: 50
Confidence: 62
Actionability: 30
keep open Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy libs/Redis, mark Spring Boot experimental on 24.04, update docs/tests. Open with 3 unresolved review comments and failing OSV-scanner CI.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 10
Complexity: 60
Confidence: 65
Actionability: 45
keep open Aligns Ubuntu 26.04 12-factor contracts: V2 profiles depend only on paas-charm>=2.0.dev1,<3, drop legacy libs/Redis, mark Spring Boot experimental on 24.04, update docs/tests. Open with 3 unresolved review comments and pending CI.
~deepseek/deepseek-pro-latest
Impact: 55
Quick Win: 14
Complexity: 50
Confidence: 65
Actionability: 50
needs review Aligns Ubuntu 26.04 12-factor generated contracts: paas-charm>=2.0.dev1,<3 only, drops legacy libs/Redis, marks Spring Boot experimental on 24.04, updates tests/docs. Under review; 3 unresolved review comments, CI pending.
stealth/space-bunny-alpha
Impact: 56
Quick Win: 7
Complexity: 57
Confidence: 88
Actionability: 30
keep open Aligns Ubuntu 26.04 12-factor templates to paas-charm V2, removes legacy libraries and Redis, gates Spring Boot on 24.04, and updates tests/docs; five CI checks fail.
qwen/qwen3.8-27b
Impact: 60
Quick Win: 10
Complexity: 50
Confidence: 70
Actionability: 35
needs review Aligns 12-factor Ubuntu 26.04 V2 contracts: pins paas-charm>=2.0.dev1,<3, removes legacy Charmhub lib fetches (OAuth/OpenFGA/tracing) and Redis from V2, marks Spring Boot experimental on 24.04, updates tests/tutorials. Failing snap-tests CI on 4 platforms and OSV-scanner; 1 unresolved review comment; CLA unsigned.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 14
Complexity: 55
Confidence: 65
Actionability: 55
needs review Aligns Ubuntu 26.04 12-factor V2 contracts: pins paas-charm>=2.0.dev1,<3 in six profiles, drops legacy OAuth/OpenFGA/tracing libs and Redis relation, marks Spring Boot experimental on 24.04. Awaiting review; OSV-scanner failing, slow tests pending.
qwen/qwen3.8-27b
Impact: 50
Quick Win: 10
Complexity: 55
Confidence: 70
Actionability: 45
needs review Aligns Ubuntu 26.04 12-factor V2 contracts (paas-charm>=2.0.dev1,<3), marks Spring Boot experimental on 24.04, updates tutorials, removes obsolete migration docs. Core dependency change overlaps with merged #2884; CI has one failing OSV-scanner check. Pending review.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 14
Complexity: 55
Confidence: 70
Actionability: 55
needs review Aligns 12-factor Ubuntu 26.04 V2 contracts: six profiles switch to charmlibs interface packages (OAuth 1.1.0, OpenFGA 1.0.0, tracing 1.0.0), Redis removed from V2, Spring Boot experimental on 24.04. Awaiting review; OSV-scanner failing, CLA unsigned.
qwen/qwen3.8-27b
Impact: 50
Quick Win: 12
Complexity: 55
Confidence: 70
Actionability: 55
needs review Aligns 12-factor Ubuntu 26.04 V2 contracts: switches to charmlibs interface packages (OAuth, OpenFGA, tracing), removes Redis from V2, marks Spring Boot experimental on 24.04, updates tutorials and tests. 28 files, +211/-88. CI: 1 failing (OSV-scanner), several pending. No reviewer assigned yet.
qwen/qwen3.8-27b
Impact: 60
Quick Win: 12
Complexity: 55
Confidence: 72
Actionability: 45
needs review Aligns Ubuntu 26.04 12-factor V2 contracts to use charmlibs PyPI packages (OAuth, OpenFGA, tracing), removes Redis in favor of Valkey, updates docs and release notes. Fresh PR, no reviewers, CLA unsigned, OSV-scanner failing, several CI checks pending.
qwen/qwen3.8-27b
Impact: 20
Quick Win: 2
Complexity: 55
Confidence: 72
Actionability: 25
close superseded Aligns Ubuntu 26.04 12-factor V2 contracts (charmlibs packages, Redis removal, migration docs, tutorial flags). Core changes already merged to main via PR #2884 (commit 0712d308).
qwen/qwen3.8-27b
Impact: 55
Quick Win: 12
Complexity: 52
Confidence: 70
Actionability: 45
needs review Aligns Ubuntu 26.04 12-factor V2 contracts: switches six profiles to charmlibs interface packages (OAuth/OpenFGA/tracing), drops obsolete Redis relation, updates migration docs and 4.5 release notes. Fresh PR, CLA unsigned, OSV-scanner failing, 3 unresolved comments.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 12
Complexity: 50
Confidence: 72
Actionability: 45
needs review Aligns Ubuntu 26.04 V2 12-factor contracts: switches OAuth/OpenFGA/tracing to charmlibs Python packages, removes Redis from V2, updates migration docs and release notes. 0 days old, no reviewers assigned, 3 unresolved comments, CLA unsigned, OSV-scanner failing.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 8
Complexity: 50
Confidence: 65
Actionability: 30
needs review Aligns Ubuntu 26.04 V2 12-factor contracts to use interface packages (OAuth, OpenFGA, tracing) instead of Charmhub charmlibs, removes Redis from V2, updates docs/release notes. Fresh submission, CLA unsigned, OSV-scanner failing, slow tests pending, 2 unresolved review comments.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 10
Complexity: 50
Confidence: 72
Actionability: 35
needs review Aligns Ubuntu 26.04 12-factor V2 profiles to use PyPI charmlibs packages (OAuth, OpenFGA, tracing) instead of Charmhub libraries, removes obsolete Redis relation, updates docs and release notes. New PR, CLA unsigned, OSV-scanner failing, CI partially pending.
qwen/qwen3.8-27b
Impact: 52
Quick Win: 10
Complexity: 45
Confidence: 72
Actionability: 35
needs review Aligns Ubuntu 26.04 12-factor V2 templates to use charmlibs interface packages (OAuth, OpenFGA, tracing) from PyPI instead of Charmhub fetch, updates migration docs, removes obsolete experimental flags, and updates 4.5 release notes. New PR, 2 unresolved review comments, OSV-scanner failing.
qwen/qwen3.8-27b
Impact: 52
Quick Win: 12
Complexity: 50
Confidence: 62
Actionability: 45
needs review Aligns Ubuntu 26.04 12-factor V2 contract with paas-charm: accepts all metrics-path strings, pins OAuth/OpenFGA/tracing charmlibs in six V2 profiles, removes obsolete experimental flags, updates docs and 4.5 notes. New external PR, review pending, snap-tests/lint/OSV CI failing.

Update history

Date Change
merged
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
created

Related work

  • Related To: charmcraft#2884 (confidence 70%)

    Earlier fix aligning the 12-factor V2 contract, likely superseded or extended by this PR.

Related issues

Issue Project State Summary Similarity
#2884 fix(extensions): align 12-factor V2 contract charmcraft merged Merged PR #2884 (commit 0712d308): aligns 12-factor V2 contract — paas-charm V2 metadata for app/peers/uv on Ubuntu 26.04, single app-secret-key secret option, paas-config key validation, paas-charm>=2.0.dev0,<3 pin; V1 output unchanged.
77%