Skip to content

pr-pipeline: converge own-actor merge holds on the do-not-merge label - part 2 of 4 #12452

Closed as not planned

Description

@melodic-automation-lanes

Part 2 of 4 of #12446, split at intake (owner Q93). The done-when below is copied from #12446 as written.

Done when

  • pr-unblock escalation routes other than intent, design, CRITICAL security or cost stop adding needs-human.

Done-when restated per owner decision Q3: #12446 (comment)

Activity

  1. added
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 2, 2026
  2. github-actions commented on Nov 2, 2026

    @github-actions
    Contributor

    Proposed work class: work-class: scoped
    Basis: automated intake triage; the lanes App applied this class.

    Size: Small
    Complexity: Medium
    Uncertainty: Knowable
    Flags: none
    Blocked by: none

    Understood: this is part 2 of 4 of #12446, split at intake. The one done-when item is that pr-unblock escalation routes other than CRITICAL security or cost stop adding needs-human. Reading the pr-unblock routes would settle which ones this covers. The sibling parts are #12451, #12453 and #12454. They are split children of the same parent, not duplicates.

    Automated triage, applied by the lanes App.

  3. added
    priority: mediumReal value, no hard deadline; normal backlog flow.
    and removed
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 2, 2026
  4. added
    status: readyTriaged, unblocked, and fully specified; eligible to pick up.
    work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.
    on Nov 2, 2026
  5. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed
    admission-deferredAdmitted but waiting for WIP room; the hourly work-unblock sweep labels it agent-ready.
    on Nov 2, 2026
  6. github-actions commented on Nov 2, 2026

    @github-actions
    Contributor
    No description provided.
  7. github-actions commented on Nov 2, 2026

    @github-actions
    Contributor
    No description provided.
  8. added
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    and removed
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    on Nov 2, 2026
  9. melodic-automation-lanes commented on Nov 2, 2026

    @melodic-automation-lanes
    ContributorAuthor

    The work-resolve-issue lane stopped partway through this issue and needs a person.

    Reason: design

    Why, in the run's own words:

    design-change: the issue says pr-unblock hold routes (other than CRITICAL security or cost) should stop adding needs-human, but it does not say what holds the PR in its place, and every option changes the PR escalation design other lanes depend on. (1) The parent #12446 proposes do-not-merge. But feedback-dispatch.mjs:23 and dispatch.mjs:75 skip any PR carrying do-not-merge, and report-escalation.sh:280 says do-not-merge 'stops the lane's rounds'. A lane-escalated needs-human PR is different: gate-source.mjs gateSource lets address-feedback keep working it, including a trusted person's answer to the escalation (feedback-dispatch.mjs:33-35). Switching labels would remove that answer-on-thread resume path. (2) docs/contracts/loop-lane/README.md:327 sends an intent, vision or primary-design finding to the human-gated role label, and attend-queue reads that label. That contract row is not in the issue's done-when, so changing it is a contract change, not a detail. (3) Most hold reasons in .github/scripts/pr-unblock/escalation-routes.json mix CRITICAL security with other causes: feedback-round-cap, feedback-uncertain and feedback-disputed each cover a CRITICAL or unrated security finding, an intent finding, or a person's own thread. The parent wants trust paths kept as person-only holds, but this part's done-when names only security and cost. Separating these needs adjudicate-feedback.mjs and address-feedback.mjs to emit new reasons, or a rule for which reasons count as security, and the issue gives neither. A person needs to decide three things: the hold label for non-security hold routes; whether address-feedback keeps working a PR held that way after a person answers; and how the mixed reasons and the fail-safe unlisted reason are classified.

    What the run says it did not do:

    • No code or doc change was made; the run stopped on the design-change question in reason
    • Tidy, review and verify were not run because the tree has no change

    Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41504526015

    To retry, remove needs-human and add agent-ready again.

  10. kyle-sexton commented on Nov 2, 2026

    @kyle-sexton
    Member

    Folded into #12446 and closed as carried: a sub-issue exists only when it ships as its own PR. This part's criterion is #12446's done-when line 2, word for word. The issue-lane run here stopped on design questions that sit inside #12446's one change; they are settled there in the builder notes (issuecomment-6586318613) and the owner's Q3 decision (issuecomment-6586931681), and the Automation Lanes session builds it. Written by the issue-triage session.

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

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.status: readyTriaged, unblocked, and fully specified; eligible to pick up.work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.

    Type

    Fields

    Work status

    agent-ready

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions