Skip to content

Add auto-implement label that skips triage and opens a draft PR #447

Description

@vikvang

Motivation

Today, every newly-opened issue routes through triage-new-issues. Maintainers who already know an issue is implementation-ready have to wait for triage, then move the issue through ready-to-spec / ready-to-implement (and assign oz-agent) before the bot will start work.

We want a single label — auto-implement — that says "skip triage and spec, just implement this and open a draft PR." The motivating use case is trusted intake pipelines: a verified Warp team member, or a verified-scope social-media bot that files issues on behalf of real users, applies the label at issue-creation time so the bot dispatches in one step.

Desired behavior

When an issue is filed (issues.opened) with the auto-implement label pre-applied:

  1. Skip triage — do not run triage-new-issues.
  2. Dispatch the implementation workflow directly — same as create-implementation-from-issue does today for ready-to-implement + oz-agent-assigned issues.
  3. Share the session link in the progress comment, same as today's implementation flow.
  4. Open a draft PR for maintainers to review when the agent finishes.
  5. Post the PR link as a comment on the issue (the existing progress-comment update with the PR link is sufficient).

Trust model

GitHub already restricts label application to repository collaborators (or bot identities granted that permission). That is the trust boundary — anyone who can apply auto-implement is by definition authorized to bypass triage. As a consequence:

  • The label should be honored even when the issue author is a bot account, so a trusted intake bot can file + label in one step. (Today's issues.opened flow drops bot-authored issues; that drop needs to be bypassed when auto-implement is present.)
  • No oz-agent assignee precondition. The label itself is the gate.

Scope / non-goals

  • issues.opened only. Adding auto-implement to an existing issue after the fact should be a no-op. Existing labels (ready-to-spec, ready-to-implement) already cover the "promote later" case.
  • No new workflow. The existing create-implementation-from-issue workflow already opens a draft PR, auto-assigns oz-agent, posts a progress comment, and surfaces the session link via the cron poller. The change should be limited to routing.
  • Operator-managed label. The bot does not need to create the auto-implement GitHub label itself; operators add it to repositories that want this behavior.

Acceptance criteria

  • Issue opened with auto-implement label → create-implementation-from-issue dispatched, no triage comment posted.
  • Issue opened with auto-implement label by a bot account → still dispatched.
  • Issue opened without auto-implement → existing triage behavior unchanged.
  • Adding auto-implement to an existing issue → no dispatch (logged + dropped, like other unhandled labels).
  • Unit tests for each of the above in tests/test_routing.py.
  • Module docstring in core/routing.py updated to mention the new label.

Metadata

Metadata

Assignees

Labels

area:workflowGitHub workflows, Python automation, or Oz integrationenhancementNew feature or requestready-to-implementIndicates that an issue is ready for a code implementation coupled with the associated plan.repro:highThe report looks highly reproducible from the available informationtriagedInitial Oz triage has been completed for this issue

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions