Skip to content

bot-resolve-conflicts: a git commit failure can bypass the escalation marker (re-dispatch risk) #2849

Description

@bpamiri

Summary

In the loop-safe verify step added in #2847, the resolver completes the merge with git commit --no-edit, then escalates (posts the conflict-attempted marker + conflict:needs-human label) if no new commit exists. If git commit --no-edit itself exits non-zero (e.g. a pre-commit hook rejects it), set -euo pipefail aborts the step before the escalation block runs — so no marker is posted and the freshen sweep can re-dispatch the resolver.

Likelihood

Very low: CI checkouts have no executable git hooks, and timeout-minutes: 60 is a backstop. Flagged by Reviewer A on #2847 as a non-blocking, theoretical edge. Tracking so it isn't lost.

Where

The Verify resolution, push, or escalate (loop-safe) step in .github/workflows/bot-resolve-conflicts.yml.

Acceptance criteria

  • Any failure on the resolve path (including a failed commit) leaves a conflict-attempted marker so freshen never re-dispatches indefinitely.
  • A trap-on-exit that posts the marker, or restructuring so the commit failure falls through to the escalation path, would both satisfy this.

Priority: low. Surfaced during the #2847 review cycle.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions