Skip to content

automation run-lifecycle doors (cancel, restore-suspension): docs route tables, :name scoping clause, and the SDK-method decision left open by PR #16755 #16896

Closed

Description

@os-zhuang

PR #16755 (card #13953) shipped POST /automation/:name/runs/:runId/cancel and …/restore-suspension and PASSed contract review at 34feecba7 (#16755 (comment)). Three non-blocking findings were carried out of that review rather than holding the PR:

Terminal state (one sentence)

The two doors are documented where the rest of the run family is, their ledger notes say what the :name segment does and does not scope, and whether a JS SDK method exists is a recorded decision rather than scope prose.

Items

  1. Docs route tables (review F7/N2). content/docs/automation/flows.mdx (the run-family table, around the resume / screen rows) and packages/services/service-automation/README.md (same table) list the run family without the two new doors. Add both rows with their gate (PLATFORM_ADMIN posture rung, isSystem bypass), body { reason? }, and the 501-when-absent shape. ⛔ content/docs/releases/** stays untouched.
  2. :name scoping clause (review F5/N5). Both arms call the verb with parts[2] and never check that the run belongs to flow parts[0] — the existing convention of resume / screen / getRun. One clause in each route-ledger.ts note saying so, so the flow-scoped shape is not read as a scoping the door enforces.
  3. SDK method decision (review F4/N4). Both ledger rows are server-only with prose "adding one reclassifies the row to sdk". Record the decision: either file the client.automation.cancelRun / restoreSuspension card, or state on this card that they stay server-only until an operator asks, and cite that from both ledger notes.

H-check (one)

node scripts/docs-audit/affected-docs.mjs on the head lists neither flows.mdx nor the README as naming a route the tree does not document, and route-ledger.conformance.test.ts is green with the amended notes.

Related

#13953 (card) · PR #16755 · #16285 (dogfood not in the derived gate families — separate, already open) · #3877 (Stage-D response-schema ratchet, F8 observation).

Filed by the director seat after the contract review of PR #16755 @ 34feecba7.

Activity

  1. added
    documentationImprovements or additions to documentation
    pm:queueReady for the PM dispatch loop
    domain:servicesRetired 2026-10-22, alias of domain:server (services surface); in-flight cards keep it until landed
    on Sep 8, 2026
  2. github-actions commented on Sep 9, 2026

    @github-actions
    Contributor

    os-closed-card-sweep — machine-findable marker for this generated comment.

    Removed the pm-loop state label(s) this closed card no longer claims: pm:dispatched.

    A state label claims work is in flight. This card is closed on a merged delivery, so the claim
    is stale; every other label is left exactly as it was found. Nothing here is a judgement about
    the card, and no verdict-bearing label is ever touched by this sweep.

    posted by half-state-patrol run 34325389984 · trigger schedule

    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationdomain:servicesRetired 2026-10-22, alias of domain:server (services surface); in-flight cards keep it until landedpriority:p3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions