Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/fixed-14727.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Forward-merge PRs that are forced to a merge commit instead of a squash no longer raise a repeated unclassified runtime-error self-report ([#14727](https://github.com/hivecommons/hive/issues/14727)).
5 changes: 5 additions & 0 deletions src/pkg/fleetreport/fleetreport.go
Original file line number Diff line number Diff line change
Expand Up @@ -767,6 +767,11 @@ var benignSubstrings = []string{
// output, not a repeated runtime defect (hivecommons/hive#14377). The
// enforce-mode denial (effects.ErrDenied) stays reportable.
"shadow fence would have denied external mutation",
// The forward-merge guard (src/pkg/github/pullrequest.go) warns each time
// it overrides a squash request on a forward-merge PR with a merge commit.
// That is the merge-safety policy working as designed, re-logged per
// merge attempt, not a repeated runtime defect (hivecommons/hive#14727).
"forward-merge guard: refusing to squash",
}

// IsBenignMessage reports whether a raw log message is noise the generic
Expand Down
9 changes: 9 additions & 0 deletions src/pkg/fleetreport/runtime_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -797,6 +797,15 @@ func TestIsBenignMessagePolicySeedDivergence(t *testing.T) {
}
}

func TestIsBenignMessageForwardMergeGuard(t *testing.T) {
if !IsBenignMessage("forward-merge guard: refusing to squash, forcing merge commit") {
t.Error("forward-merge squash refusal not benign")
}
if IsBenignMessage("forward-merge guard: head-history check failed") {
t.Error("head-history check failure wrongly benign")
}
}

func TestIsBenignMessageCopilotModelFallback(t *testing.T) {
const msg = "copilot CLI substituted the configured model"
if !IsBenignMessage(msg) {
Expand Down
Loading