cohalen

Checks and Ship

Read the Verdict, clear the Blockers, and drive the commit, pull request, merge spine one action at a time.

Checks is the merge-readiness surface: the last pass before Ship. It aggregates every signal that decides whether the Workspace can merge (Git status, Check runs, Deployments, review Notes, and Todos) and reduces them to one Verdict sentence at the top, such as Uncommitted changes or Ready to merge. The Verdict selects the single primary action available right now, so there is never a menu of half-applicable buttons.

Blockers

A Blocker is any open signal that should stop a merge: a failed Check, an unresolved comment, an incomplete Todo, or a dirty Git status. Blockers are cleared intentionally, never dismissed silently, and the Verdict counts what remains while any are open.

  • Todos are merge-blocking work items on the Workspace, added by you or by the agent. The Workspace stays blocked until they are checked off, so known unfinished work cannot ship by accident.
  • Check runs are the branch's automated signals (CI, lint, build, test), each with its run state and a link to its source.
  • Git status is the branch's position against the Base branch: uncommitted changes, commits ahead or behind, each independently actionable.

The Base branch itself is retargetable here, if the change should merge somewhere other than the Repository's default branch.

Ship

Ship is the finish line: commit, pull request, merge, executed for real with git and your GitHub connection. The Verdict drives one step at a time:

  1. Commit & push sweeps up leftover uncommitted changes and pushes the branch. A mechanical step, no agent involved.
  2. Create PR opens the pull request. The Workspace's agent drafts the body as a visible Turn in the Chat, so you see and can steer what it writes.
  3. Merge completes it, squash by default; a per-Repository merge strategy setting overrides that, and a strategy the repository forbids falls back to an allowed one.

Everything runs as your connected GitHub account: pushes, the pull request, and the merge are authored as you, and branch protection on GitHub still applies. Failures along the way (a rejected push, branch protection, a merge conflict) surface in Checks rather than passing silently.

After a successful merge the Workspace shows Merged, and, if the Repository is set to, archives itself automatically (see Workspaces).


Next: Terminal and Project scripts, the workflow every Workspace inherits.

On this page