fix: support application-credential auth in keystone-v3 secret
Metadata
Current evaluation
Adds application-credential auth support to keystone-v3 secret injection, fixing silent failure where unsubstituted secrets were forwarded upstream. CI failing on snap-build, snap-test, unit-tests.
Suggested action: needs review
Reason: PR is 4 days old with 0 reviewers and 0 comments. CI is failing on snap-build, snap-test (noble and jammy), unit-tests, and OSV-scanner, which requires maintainer investigation. The fix addresses a legitimate bug where application_credential auth silently failed secret injection, but the CI failures need triage before merge.
Impact:
60
Quick Win:
33.0
Staleness:
10
Complexity:
45
Confidence:
70
Issue body
The keystone-v3 Fetch Service secret only rewrote password-method Keystone v3 auth requests (identity.password.user.{name,password}). A request using the application_credential method silently failed injection (injectKeystoneV3Secret returned an error that was only debug-logged) and was forwarded upstream with the caller's original, unsubstituted secret intact - which Keystone then rejects, and since processResponse only records artifacts for 200 OK responses, the failure left no trace at all in the session's metadata.json.
Add an ApplicationCredential identity shape and dispatch on which method the original request used: application_credential auth is rewritten by substituting identity.application_credential.{id,secret} directly (it carries no domain/user scope, since the credential is already project-scoped), while password auth keeps its existing domain-preserving rewrite.
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b |
Impact:
60
Quick Win:
33.0
Staleness:
10
Complexity:
45
Confidence:
70
|
needs review | Adds application-credential auth support to keystone-v3 secret injection, fixing silent failure where unsubstituted secrets were forwarded upstream. CI failing on snap-build, snap-test, unit-tests. | |
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
35.75
Staleness:
5
Complexity:
35
Confidence:
75
|
needs review | Adds application_credential auth support to keystone-v3 secret injection. Currently failing CI (linters, snap-tests, OSV-scanner), no reviewer engagement yet. | |
| qwen/qwen3.6-35b-a3b |
Impact:
60
Quick Win:
39.0
Staleness:
5
Complexity:
35
Confidence:
80
|
needs review | Adds application_credential auth support to keystone-v3 secret injection, fixing silent failures when this auth method is used | |
| qwen/qwen3.6-35b-a3b |
Impact:
55
Quick Win:
30.25
Staleness:
5
Complexity:
45
Confidence:
40
|
needs review | Adds application_credential auth support to keystone-v3 secret injection in fetch-service. PR is 1 day old, unreviewed, with failing CI checks on snap-tests, linters, and OSV-scanner. |
Update history
| Date | Change |
|---|---|
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| created |
Related work
-
Related To:
fetch-service#565
(confidence 85%)
Original PR that added keystone-v3 secrets support; this PR extends it with application-credential auth method.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #565 feat: add keystone-v3 secrets | fetch-service | merged | Merged after approval and CI validation. Implements secrets injection for Keystone Identity V3 authentication, resolving CRAFT-4995. The change adds credential management support for Keystone V3 endpoints. |