gitops_task_helpers.ts view source
(options: GatePublishReadinessOptions): Promise<void> import {gate_publish_readiness} from '@fuzdev/fuz_repos/gitops_task_helpers.js'; The readiness gate gitops_publish --wetrun runs before its confirmation
prompt: fetches every npm repo from origin (`repos status <keys…> --fetch
--json`, which writes remote-tracking refs and nothing else) and refuses
unless each is ready (check_publish_readiness) — on its registry branch,
clean, idle, in sync with origin or ahead of it, fetched without error, no
other live session in its checkout, and nothing left to a person. Each
ready repo ahead of origin is logged, saying whether its release push
carries those commits or they stay unpushed.
Every npm repo, not just those the plan publishes or rewrites: the plan reads each one's working tree (changesets, versions, dependency ranges), so a repo off its branch or behind origin can hide a changeset and leave the plan wrong about what to publish. Changes nothing.
options
the loaded repos, the --registry if any, the package names the plan publishes, a logger, and the repos runner
returns
Promise<void>
throws
TaskError- if `repos status` fails or any npm repo isn't ready, naming each problem and its fix