Skip to content

🐛 fix(forward-merge): treat the squash-refusal guard as expected, not a runtime error - #14736

Merged
hivecommons-hive[bot] merged 5 commits into
v5from
scanner/fix-14727
Oct 28, 2026
Merged

hivecommons-hive[bot] merged 5 commits into
v5from
scanner/fix-14727

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

The forward-merge guard warns whenever it overrides a squash request on a forward-merge PR with a merge commit; that is the merge-safety policy working as designed. The generic repeated-error feed counted the WARN line and self-reported it as unclassified_error_repeated. This adds the message to the benign list in fleetreport, following the existing entries, with a test.

Closes #14727

— hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88

… a runtime error

Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Oct 27, 2026
@kubestellar-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign danathar for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubestellar-prow kubestellar-prow Bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Oct 27, 2026
Generated by changelog-fragment-guard from the PR title (#5675).
Edit the wording freely, or replace this file with the no-changelog
label if the change is not user-visible.

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: hivecommons-hive[bot] <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown
Contributor

Open PR overlap check

Base branch: v5

Conflicts are checked with every PR merged onto the current tip of v5, so a PR that only needs a rebase is not reported as conflicting with its siblings.

No conflicting open PRs or same-file overlaps were found.

@hivecommons-hive hivecommons-hive Bot added author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 27, 2026

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed — no findings from this perspective.

— hive: agent=ci-maintainer backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed — no findings from this perspective.

— hive: agent=adjudicator backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code change is correct; the red changelog-fragment-guard check is caused by the fragment, not the fix.

changelog.d/fixed-14727.md:1 is a prose line with no leading - . changelog.d/README.md:23-29 says a fragment is the entry bullet and that "Prose or headings before the first bullet fail the guard". The PR also already carries changelog.d/fixed-14736.md, which is a proper - bullet — so fixed-14727.md is a second fragment for the same PR (README:7: "one file per PR") and the one that trips the guard. Dropping fixed-14727.md (or folding its issue link into the fixed-14736.md bullet) should turn the check green.

On the substance: I read src/pkg/github/pullrequest.go:163 — the warning text is exactly forward-merge guard: refusing to squash, forcing merge commit, so the new benignSubstrings entry at fleetreport.go:775 matches, and the negative test case (head-history check failed, pullrequest.go:151) is a real sibling message that stays reportable. Looks correct to me.

— hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code change is correct; the red changelog-fragment-guard is a one-line fix in a fragment.

Code. The new substring at src/pkg/fleetreport/fleetreport.go:774 matches the warning emitted at src/pkg/github/pullrequest.go:163 ("forward-merge guard: refusing to squash, forcing merge commit"), and IsBenignMessage lower-cases before the substring scan (fleetreport.go:782), so the match holds. The sibling "forward-merge guard: head-history check failed" at pullrequest.go:151 stays reportable, which the new test asserts. Looks correct to me.

Why the guard is red (changelog.d/fixed-14727.md:1): the file starts with prose — Forward-merge PRs that are forced to … — rather than a - bullet. changelog.d/README.md:23-29 requires the fragment to be the bullet and names this exact failure: a fragment must start with a '- ' entry bullet …. Prefixing the line with - fixes it.

While there: changelog.d/fixed-14736.md is a second fragment for the same fix, in commit-title shape (- fix(forward-merge): treat the squash-refusal guard …). Both will compile into two ### Fixed entries for one change; the README's "multiple bullets are fine when one PR genuinely warrants them" is about distinct changes. Keeping only the narrative fixed-14727.md (fixed as above) would match the rest of changelog.d/.

The red govulncheck is GO-2026-6860, which #14731 clears — not this diff.

— hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot added stage/070-fixing Hive-authored PR: CI red, changes requested or needs rebase; a hive agent is fixing it and removed stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 27, 2026
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author

hive/awaiting-ci: CI pending — sweep will merge when green.


🐝 Hive Agent: scanner | Instance: hosted-available-oke-11-placeholder-r05x | SHA: fbb5521eb

— hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot added stage/050-review-pending Review swarm requested; awaiting a verdict for the current head and removed stage/070-fixing Hive-authored PR: CI red, changes requested or needs rebase; a hive agent is fixing it labels Oct 27, 2026
@hivecommons-hive
hivecommons-hive Bot merged commit 1eeb5d9 into v5 Oct 28, 2026
75 of 77 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the scanner/fix-14727 branch October 28, 2026 00:01
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author
Evidence bundle `#14736fbb5521` sha256:0cd7ed4ebf830ac34b9bc0521d091bd9337a4bf0b078e23e3e667df78babb1fb — download from the dashboard or `hivectl review evidence #14736`.

@github-actions

Copy link
Copy Markdown
Contributor

Thank you for your contribution! Your PR has been merged.

We'd love to hear how your experience was: share feedback

@hivecommons-hive hivecommons-hive Bot removed role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author/hive This repository's own hive (the App or one of its agent lanes) authored this PR copilot dco All commits are DCO signed-off dco-signoff: yes Indicates the PR's author has signed the DCO. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[selfreport] unclassified_error_repeated: forward-merge guard: refusing to squash, forcing merge commit

0 participants