Skip to content

shipper_unblock

Attempt to unblock a blocked issue by evaluating store-owned blockers and updating local history. When issue mirroring is enabled, also repair the GitHub label/comment projections.

On macOS, this tool prevents idle system sleep while it performs progress-capable unblock work. See Keep the Mac awake during active work. Use this when a store-blocked issue should be evaluated against its stored blockers and unblocked if every blocker has cleared. A Rework rejection creates a visible operator-decision hold: automatic dispatch retains it, while ordinary operator unblock retires the hold and resumes the exact same Rework trigger. Use an explicit reset instead when the request, design, plan, or correction premise must change. Native dependencies created by grooming use the ordinary blocker lifecycle: ordinary unblock clears them after completed, while a later not_planned closure stays unresolved for operator review. Omit force for ordinary safe unblock; set force: true only after explicit human instruction to override unresolved blockers, including groom-created native dependencies. Ordinary unblock and force-unblock both record local workflow-history entries. When issue mirroring is enabled, GitHub label/comment changes are repaired projections of the local store and workflow event log, and external GitHub blockers are checked.

  • idempotentHint: true — Retrying the same call is expected to be safe once the target state is reached.
  • openWorldHint: true — The tool reaches GitHub or other external systems outside the MCP server.
NameTypeRequiredDefaultDescription
issueinteger | stringyes-Shipper issue reference. S# (GitHub #) accepts ordinary surrounding whitespace and requires the current mirror. Bare numbers are Shipper local IDs first; S# is accepted; gh: and # explicitly target a mapped GitHub issue; GitHub issue URLs are accepted. Responses return S# first with GitHub # second when mapped.
forcebooleanno-Explicit human-operator override for unresolved blockers. Automated agents must omit this unless the user specifically asked to force unblock; when force takes effect, it records a force_unblock history entry and, when issue mirroring is enabled, posts the distinct permanent ## Force Unblocked audit comment with overridden blocker details.
{
"issue": 42
}
Resolved issue: S#42 (GitHub #123): Generate MCP tool reference pages
Verdict: unblocked
Reason: All stored blockers are cleared.
  • Still blocked: Verdict: still-blocked with unresolved stored blocker details.
  • Force declined: Verdict: ordinary-unblock-available when all stored blockers are resolved; call again without force.
  • Force completed: Verdict: force-unblocked after explicit override; a force_unblock history entry is recorded and overridden blockers are listed. When issue mirroring is enabled, the distinct permanent ## Force Unblocked audit record is also posted.
  • Store or GitHub failure: Local issue-state access failed: . When issue mirroring is enabled, external GitHub blocker lookup or label/comment repair can also fail: .