docs(skills): a pushed branch always gets a PR #973

Merged
coilysiren merged 1 commit from fix/git-workflow-branch-needs-pr into main 2026-08-08 15:13:33 +00:00
Owner

Closes #972.

Problem

coding-core-git-workflow listed four lanes but never stated what happens when no lane is resolved:

  • direct-to-main - commit to main directly, then push.
  • pull-request - push a branch and open a human-gated Forgejo PR.
  • pull-request-and-merge - push a branch and mark the PR for the director merge lane.
  • remote-branch-only - push a branch and stop. No PR and no merge.

remote-branch-only sitting among the peers made branch-and-stop read as an available default rather than an explicitly-resolved exception. An interactive session with no assigned workflow could push a task branch, report the branch name, and stop. The work then surfaces to nobody: nothing queues it for review, nothing tracks it, and it decays into an orphan ref.

Kai's ruling: a branch without a PR is just litter.

Observed

coilyco-gaming/sirens-echo thread-scoped replies. The branch was pushed and reported on its own, and sirens-echo#78 had to be opened as a follow-up turn after the correction.

Change

One bullet after the lane list. A pushed branch always gets a PR, remote-branch-only is the sole exception and applies only when the caller resolved that lane, and unassigned work defaults to pull-request.

Scoped to the skill. The ward agent headless dispatch lanes in AGENTS.md are unchanged, because a headless run always has a caller-assigned lane and never hits the unassigned case this fixes.

Constraint

COMPOSED.md went from 3742 to 3960 chars against the 4000-char per-source cap. That is 40 chars of headroom left, so the next substantive addition to this skill needs either a cap bump under [tool.agentic-os.agent-compose-size] or a split into references/. Not doing either here, since this change fits.

Verification

pre-commit run --all-files passes.

Separately noted, not fixed here: the trailing-whitespace hook wants to modify .agents/roles.kdl (two lines of trailing whitespace inside the roles block). That is pre-existing on main and unrelated to this change, so it was reverted rather than absorbed into this commit. Worth its own issue.

🤖 Generated with Claude Code

Closes #972. ## Problem `coding-core-git-workflow` listed four lanes but never stated what happens when no lane is resolved: - `direct-to-main` - commit to `main` directly, then push. - `pull-request` - push a branch and open a human-gated Forgejo PR. - `pull-request-and-merge` - push a branch and mark the PR for the director merge lane. - `remote-branch-only` - push a branch and stop. No PR and no merge. `remote-branch-only` sitting among the peers made branch-and-stop read as an available default rather than an explicitly-resolved exception. An interactive session with no assigned workflow could push a task branch, report the branch name, and stop. The work then surfaces to nobody: nothing queues it for review, nothing tracks it, and it decays into an orphan ref. Kai's ruling: a branch without a PR is just litter. ## Observed `coilyco-gaming/sirens-echo` thread-scoped replies. The branch was pushed and reported on its own, and sirens-echo#78 had to be opened as a follow-up turn after the correction. ## Change One bullet after the lane list. A pushed branch always gets a PR, `remote-branch-only` is the sole exception and applies only when the caller resolved that lane, and unassigned work defaults to `pull-request`. Scoped to the skill. The `ward agent` headless dispatch lanes in `AGENTS.md` are unchanged, because a headless run always has a caller-assigned lane and never hits the unassigned case this fixes. ## Constraint `COMPOSED.md` went from 3742 to 3960 chars against the 4000-char per-source cap. That is 40 chars of headroom left, so the next substantive addition to this skill needs either a cap bump under `[tool.agentic-os.agent-compose-size]` or a split into `references/`. Not doing either here, since this change fits. ## Verification `pre-commit run --all-files` passes. Separately noted, not fixed here: the trailing-whitespace hook wants to modify `.agents/roles.kdl` (two lines of trailing whitespace inside the `roles` block). That is pre-existing on `main` and unrelated to this change, so it was reverted rather than absorbed into this commit. Worth its own issue. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
docs(skills): a pushed branch always gets a PR
Some checks failed
ci / ward-doctor (pull_request) Successful in 14s
ci / aos-cli-tests (pull_request) Successful in 34s
ci / gate (pull_request) Failing after 59s
51f3316f5f
coding-core-git-workflow listed four lanes but never said what happens
when no lane is resolved. remote-branch-only sitting among the peers made
branch-and-stop read as an available default, so an interactive session
with no assigned workflow could push a task branch, report it, and stop.
The branch then surfaces to nobody and decays into an orphan ref.

State the rule: a pushed branch always gets a PR, remote-branch-only is
the sole exception and only when the caller resolved that lane, and
unassigned work defaults to pull-request.

Observed on coilyco-gaming/sirens-echo#78, which had to be opened as a
follow-up turn after the branch was pushed and reported on its own.

closes #972

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
coilysiren deleted branch fix/git-workflow-branch-needs-pr 2026-08-08 15:13:34 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/agentic-os!973
No description provided.