Skip to content

Move the merge-pr, merge policy and agent-merge-pr scripts into agentrepo merge #324

Open
0 of 30 issues completed

Description

@tbhb-agent

Outcome

Run the merge transaction through agentrepo merge: policy,
pull request snapshots, preflight, squash-message briefing and lint,
review stamps, gates, confirmation, merge execution, verification,
cleanup and unattended operation.

The worktree-readiness check retains its existing behavior; its port
belongs to child 02 of the #322 area. This area does not wait for that
port.

The merge-pr and agent-merge-pr scripts become thin wrappers with
frozen fallback during the N-2 window. After that window, remove the
fallback, non-owner frozen implementations and unused test helpers.

Part of #588. Port the existing scanner behavior without waiting for
#292 or #313; those changes remain separate Go fixes after the port.
#753 owns protection-pattern changes.

Baseline code-line counts at fd7b680, excluding comments and blank
lines, for packages/agents/source/skills/merge-pr/shared/scripts:

Script Code lines
lint-squash-msg.sh 25
populate-description.sh 62
squash-message.sh 156
review.sh 108
preflight.sh 164
squash-merge.sh 254
pull-request.sh 107
merge-agent.sh 205
merge-policy.py 728

Done when

  • All 27 children are merged.
  • Every behavior covered by the ten merge Bats suites, including
    both delegation suites, and the policy cases has a Go test or
    a named reason to retain its existing coverage.
  • Children 14, 26 and 27 record parity against the frozen scripts.
  • Fallback removal satisfies the two-release warning period and
    the supported-version boundary.
  • The Go merge path runs without Python or uv.
  • Generated packages, deployments, token records and lock output
    are current.
  • CI passes on macOS, Linux and Windows.
  • The leak scans come back clean for this epic's own text and
    posts: gitleaks, check-leaks.sh with the repository's
    private-strings list, and the leak review of each post.
  • A closing comment checks every item above against evidence.

Final deletion of owner-tier Python and shell files follows in the
separate #588 cutover; their physical removal is not claimed here.

Children

Build order follows this list. The two-digit identifiers are stable
references used in the child bodies.

Children 01, 04, 13 and 21 have no sibling prerequisites.
Children 26 and 27 can proceed independently after 14.
Child 23 follows 22 because 22 removes remaining helper callers.

Out of scope

The shared-library deliverables of the #321 area, the worktree-readiness
port in the #322 area, and the later guard-hook migration under #588.

Owner-tier deletion of merge-agent.sh, merge-policy.py, merge-only
shared-library code and affected protected generated support files
belongs to a separate cutover under #588. That cutover follows children
20, 22 and 23 and requires bounded pull requests with the applicable
owner exact-head review.

Changes to the existing agentrepo checks evaluate contract and
tightening unknown-state or tied-run behavior are separate follow-ups.

Owner

tbhb-dev/devtools

Activity

  1. added
    change:featPR adds or changes a feature (Conventional Commit type feat)
    on Oct 20, 2026
  2. removed
    change:featPR adds or changes a feature (Conventional Commit type feat)
    on Oct 22, 2026
  3. changed the issue type fromtoon Oct 27, 2026
  4. 14 remaining items

  5. tbhb-agent commented on Oct 27, 2026

    @tbhb-agent
    ContributorAuthor

    Refinement: READY — Merge epic closes both round 1 gaps
    Model: gpt-6-astra

    Checked: the epic body, child titles, dependency map and retirement boundaries. The 27-child scope remains consistent; protected deletions stay in the separate cutover.

    Gaps: None. Explicit leak requirements at the epic body:48 and the evidence-backed closing comment at the epic body:51 close both prior gaps. No new substantive defects found.

    Split: None required.

    Definition of done

    • D4 — Covered: named leak scans and per-post leak review.
    • epic-1 — Covered: all 27 children must be merged.
    • epic-2 — Covered: closing comment checks completion criteria against evidence.

    Round: 2 of 3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    refinement:readyPassed the Definition of Ready; may be picked up

    Type

    Fields

    Work type

    Planned

    Priority

    Intangible

    Projects

    • Status
      Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions