diff --git a/apps/web/src/components/GitActionsControl.logic.test.ts b/apps/web/src/components/GitActionsControl.logic.test.ts index f4cdeeaea18e53b319919d4f2e2d5dd8a11afbfd..73d5e9e77ca0f25f61c2765ae8242ae6721864b2 100644 --- a/apps/web/src/components/GitActionsControl.logic.test.ts +++ b/apps/web/src/components/GitActionsControl.logic.test.ts @@ -804,6 +804,17 @@ describe("buildGitActionProgressStages", () => { assert.deepEqual(stages, ["Pushing to origin/feature/test..."]); }); + it("skips commit stages for create-pr flow when push-only is forced", () => { + const stages = buildGitActionProgressStages({ + action: "commit_push_pr", + hasCustomCommitMessage: false, + hasWorkingTreeChanges: true, + forcePushOnly: true, + pushTarget: "origin/feature/test", + }); + assert.deepEqual(stages, ["Pushing to origin/feature/test...", "Creating PR..."]); + }); + it("includes commit stages for commit+push when working tree is dirty", () => { const stages = buildGitActionProgressStages({ action: "commit_push", diff --git a/apps/web/src/components/GitActionsControl.tsx b/apps/web/src/components/GitActionsControl.tsx index 04c03a149f4ba4e31af72232cb28193873d4652d..dd299092b2af199fd00db3848eac6750246f151e 100644 --- a/apps/web/src/components/GitActionsControl.tsx +++ b/apps/web/src/components/GitActionsControl.tsx @@ -372,6 +372,7 @@ export default function GitActionsControl({ gitCwd, activeThreadId }: GitActions closeResultToast(); void runGitActionWithToast({ action: "commit_push_pr", + forcePushOnlyProgress: true, }); }, },