feat(pr)!: compose proposal without gating on remote state #5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/pr-compose-without-remote-gate"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Previously, /pr aborted the compose pass when the branch had no
upstream, was missing on the remote, or was ahead of the remote tip,
forcing the user to invoke /push before they could even see the
proposed title and body. Previewing the PR copy required publishing
first, which inverted the natural order.
Compose now always returns the proposal as long as ..HEAD is
non-empty: remote-state findings become warnings and plan fields
(branch_on_remote, local_ahead) but no longer bail. The push gate is
deferred to the open pass — the orchestrator catches
branch_on_remote: false at the user checkpoint and instructs the user
to /push, and mode=open re-probes ls-remote and returns needs_push if
the branch has been deleted since compose.
The compose status enum shrinks to ready, refuse_main_master,
nothing_to_pr, needs_input, existing_pr. The existing-PR lookup is
skipped when the branch isn't on the remote.
BREAKING CHANGE: compose no longer emits needs_push or local_ahead.
Consumers must read branch_on_remote and local_ahead from the plan.