Skip to content

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

@vikvang

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
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions