bitbucket: Implement ChecksByChange with per-status build detail#1267
Open
ed-irl wants to merge 1 commit into
Open
bitbucket: Implement ChecksByChange with per-status build detail#1267ed-irl wants to merge 1 commit into
ed-irl wants to merge 1 commit into
Conversation
Collaborator
Author
|
This change is part of the following stack:
Change managed by git-spice. |
This was referenced Jun 13, 2026
3732b02 to
904f3da
Compare
0f20aae to
c3dab6d
Compare
Implements the Bitbucket side of the per-change checks API: rollup
state from the PR head commit's build statuses, plus per-status
name/state/url forwarded as runs[].
- gateway: CommitStatus grows Key, Name, and URL fields. Existing
callers and fixtures keep working because the new fields are
omitempty.
- rollupFromCommitStatuses collapses Bitbucket build-status
states to the upstream rollup taxonomy. Failure wins over
pending wins over passed. Empty list means no CI configured
-> ChecksNone. Stopped statuses are operator-cancelled
non-failures and roll up as passed (changed from the merge
handler's aggregateStatuses, which treated Stopped as Failed;
that path is preserved for backwards compatibility but no
longer informs the richer API).
- ChecksByChange issues getPullRequest + CommitStatusList per
PR. State is lowercased to match the spec's forge-native
convention; Name falls back to Key when the build-status
provider didn't supply a human name.
- aggregateStatuses (the merge handler's path) keeps its
pre-existing semantics and is now scoped narrowly so the
refactor doesn't change merge behavior.
Integration fixtures regenerate on the next forgetest -update
pass (real Bitbucket credentials).
904f3da to
d6014a1
Compare
c3dab6d to
7f63525
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the Bitbucket side of the per-change checks API: rollup
state from the PR head commit's build statuses, plus per-status
name/state/url forwarded as runs[].
callers and fixtures keep working because the new fields are
omitempty.
states to the upstream rollup taxonomy. Failure wins over
pending wins over passed. Empty list means no CI configured
-> ChecksNone. Stopped statuses are operator-cancelled
non-failures and roll up as passed (changed from the merge
handler's aggregateStatuses, which treated Stopped as Failed;
that path is preserved for backwards compatibility but no
longer informs the richer API).
PR. State is lowercased to match the spec's forge-native
convention; Name falls back to Key when the build-status
provider didn't supply a human name.
pre-existing semantics and is now scoped narrowly so the
refactor doesn't change merge behavior.
Integration fixtures regenerate on the next forgetest -update
pass (real Bitbucket credentials).