frostney/known-good-route

delivery-wait

- Provides deterministic, resumable GitHub transition waits used internally by delivery workflows.

Quelltext ansehen

Verwendung

  1. Installationsbefehl kopieren und das Quellpaket vor der Installation in der eigenen Agentenumgebung prüfen.
  2. Benötigte Werkzeuge, Zugangsdaten und Hosts im Original prüfen.
  3. Eingabe und gewünschtes Ergebnis beschreiben und die Ausgabe mit den Quellen abgleichen.
npx skills add https://github.com/frostney/known-good-route --skill delivery-wait

Vor dem Start

  • Die Installation umfasst weder Modellabo noch API-Kontingent oder Dateizugriffsrechte.
  • Sterne und Installationen zeigen Aktivität, keine unabhängige Qualitäts- oder Sicherheitsprüfung.
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

Delivery wait

Run scripts/delivery_wait.py as a silent foreground child whenever a workflow must await external GitHub state. The harness passively waits for the command to finish; it must not simulate waiting with model heartbeats.

The caller supplies the repository, expected identity, absolute deadline, and an optional state path. The command reconciles any saved state with fresh GitHub state, waits while nothing relevant changes, and exits with one result. Use --json from workflow skills; human output is for direct terminal use. Skills default state files beneath gitignored .agent/waits/; another harness may supply any private state path through --state.

Invocation

wait <kind> --repo <owner/repo> --deadline <ISO 8601> [--interval <seconds>] [--state <path>] [--json] runs a foreground wait; inspect <kind> takes the same identity flags without --deadline, --interval, or --state. Each kind requires its own identity flags:

  • checks-terminal: --pr <number>, --head <sha>, and one --check <name>

per expected check context. Repeat --check for every context the caller needs; a run with no --check exits with an operational error instead of waiting.

  • pr-merged: --pr <number> and --head <sha>.
  • workflow-terminal: --run-id <id> and --head <sha>.
  • tag-target: --tag <name> and --head <sha>.
  • release-assets: --tag <name>, --head <sha>, and one --asset <name> per

required asset.

  • wake-at (wait only): --deadline alone. It keeps no state file, so

--state has no effect.

There is no --checkpoint flag. The state path is --state, and the command derives a default path from the kind and identity when it is omitted.

Results

--json prints one envelope whose state is the result. Only satisfied establishes the awaited fact. changed means a check or workflow reached a non-success terminal result or other relevant state moved; inspect it before deciding. invalidated means the expected head, ref, or saved identity no longer matches, timed-out means the deadline passed, and cancelled means the wait was interrupted. These exit 0; operational-error exits 2. inspect can also report waiting.

Use inspect for a single authoritative delivery snapshot and wait for a foreground transition wait. Supported predicates are exact-head checks, pull-request merge, workflow completion, tag target, release assets, and an absolute wake time. A changed expected head or ref invalidates the wait instead of being followed silently. GitHub remains authoritative; checkpoints contain normalized identities and observations, no credentials, raw comment bodies, or raw API payloads.

The helper uses authenticated gh transport. GraphQL is primary. A REST fallback is used only when GraphQL is rate-limited and REST preserves the same fact, or when GitHub exposes the fact only through REST.

Verwandte Aufgaben

aus demselben Repository

Weitere Skills

Alle Skills