Repository navigation
Suggest checking OIDC trust only after a job fails - #382
Conversation
Amp-Thread-ID: https://ampcode.com/threads/T-01a031f1-2916-7144-a77d-ad88fa077cda Co-authored-by: Chris Campbell <chris.c@buildkite.com>
Amp-Thread-ID: https://ampcode.com/threads/T-01a031f1-2916-7144-a77d-ad88fa077cda Co-authored-by: Chris Campbell <chris.c@buildkite.com>
Amp-Thread-ID: https://ampcode.com/threads/T-01a031f1-2916-7144-a77d-ad88fa077cda Co-authored-by: Chris Campbell <chris.c@buildkite.com>
There was a problem hiding this comment.
No inline findings. This changes behavior in the OIDC token issuance path, so it needs human review.
Want to dig deeper?
Paste this into your agent to explore the findings from this review's Buildkite build:
Download the buildsworth logs from build 20463, then answer my questions about the findings.
Install the reading-buildsworth-logs skill to run this.
About buildsworth
Model: gpt-5.6-sol with xhigh thinking.
How to request a review: Comment @buildsworth-bk review on the PR, or request buildsworth-bk as a reviewer.
Risk labels (how buildsworth classifies risk) — buildsworth classifies risk itself from the diff. Unless repository policy already allows L2 approval, grant it by mentioning @buildsworth-bk (see approval ceiling and L2 approval grant):
- L1 — Low risk (dep bumps, docs/copy, lockfiles, small presentational fixes). buildsworth may approve by default.
- L2 — Standard risk (new UI, additive API fields, refactors). Approved only when repository policy or a verified grant allows it; otherwise comment-only.
- L3 — High risk (auth, migrations, payments, secrets, perf-critical paths). Human review always required.
Preserve current token failure tracking and command output processing. Move user guidance to the companion docs PR and cover redaction failure. Amp-Thread-ID: https://ampcode.com/threads/T-3533f467-8d9b-41cd-9f38-e9fbf763d355 Co-authored-by: Amp <amp@ampcode.com>
Publish once at finalization to a shared build-scoped context, replacing rather than appending. Keep successful, skipped, and cancelled jobs quiet. Amp-Thread-ID: https://ampcode.com/threads/T-3533f467-8d9b-41cd-9f38-e9fbf763d355 Co-authored-by: Amp <amp@ampcode.com>
wolfeidau
left a comment
There was a problem hiding this comment.
NICE helpful errors 👍🏻 👍🏻 👍🏻
|
🤖 Released in v0.128.0 |
🤖
Why
A job can mint a Buildkite OIDC token, then fail because its cloud service still trusts GitHub's issuer and claims. Warn after a requesting job fails, rather than adding noise to successful jobs whose trust is already configured.
Closes PB-3066.
This covers the OIDC slice of PB-2951. PB-2717 concerns GitHub issuer parity; this PR does not claim to resolve it.
What
At finalization, publish OIDC trust guidance only if the job made an authorized token request and its final conclusion is
failure. Post-action and failed mint requests count; permission alone does not. Success, skipped, and cancelled conclusions stay quiet.Publish once per failed requesting job to the build-scoped context
buildkite-gha-oidc-trust, with replacement rather than append. Multiple jobs therefore update one warning per build. The message links to OIDC setup and makes clear that this is a troubleshooting hint, not a diagnosis. Mint failure attribution and token secrecy are unchanged.Companion documentation describes the trigger and distinguishes mint denial from downstream trust rejection. Merge the docs only after this change is released. Neither merge nor release is authorized yet.