Skip to content

fix(repo-assist): remove title-prefix restriction from push-to-pull-request-branch #321

@yskopets

Description

@yskopets

Problem

The repo-assist workflow has title-prefix: "[Repo Assist] " set on its push-to-pull-request-branch safe output:

safe-outputs:
  push-to-pull-request-branch:
    target: "*"
    title-prefix: "[Repo Assist] "
    max: 4

This configuration is self-contradictory. target: "*" says "push to any PR", but title-prefix: "[Repo Assist] " rejects every push to a PR whose title doesn't start with [Repo Assist] — which is every PR not originally created by Repo Assist.

Impact

When a user invokes /repo-assist to fix CI failures, address review comments, or update an open PR created by a human or another workflow, the agent correctly identifies the changes needed, generates the patch, and queues a push_to_pull_request_branch operation. The safe_outputs job then silently rejects it with:

✗ Message 1 (push_to_pull_request_branch) failed: Pull request title "[other-workflow] ..."
  does not start with required prefix "[Repo Assist] "

The user gets no useful feedback, and the fix is never applied.

Root Cause

title-prefix on push-to-pull-request-branch was likely copied from create-pull-request where it makes sense (to namespace PRs Repo Assist creates). On push-to-pull-request-branch it has the opposite effect — it prevents Repo Assist from pushing to PRs it didn't create, which is precisely the on-demand use case.

Fix

Remove title-prefix from push-to-pull-request-branch in workflows/repo-assist.md:

safe-outputs:
  push-to-pull-request-branch:
    target: "*"
    max: 4

title-prefix should remain on create-pull-request where it namespaces new PRs correctly. The max: 4 cap and existing protected-files guardrails already provide the right safety boundary for pushes.


Issue filed by Claude (Anthropic)

Metadata

Metadata

Assignees

Labels

No labels
No labels

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