Reconcile Dependabot config across managed repos — ensure .github/dependabot.yml exists + is consistent, with cooldown and external-code-execution policy. Emits config-file changes via PR (file-based) — note how that composes with the API-state runner (likely a PR-based variant).
How (cold-handoff): copy the template at src/cycles/branch-protection.ts (+ src/cycles/README.md). Implement the Cycle interface from src/reconcile/runner.ts (uses orgLogin). Config in src/config/types.ts (all optional). Auth src/auth/app-client.ts; diff src/reconcile/diff.ts; guardrails src/reconcile/guardrails.ts; register in src/cli/registry.ts. Apply = read-modify-write; charge the budget. Verify via the runner with a mock-client test; tsc clean; tests green.
Reconcile Dependabot config across managed repos — ensure
.github/dependabot.ymlexists + is consistent, with cooldown and external-code-execution policy. Emits config-file changes via PR (file-based) — note how that composes with the API-state runner (likely a PR-based variant).How (cold-handoff): copy the template at
src/cycles/branch-protection.ts(+src/cycles/README.md). Implement theCycleinterface fromsrc/reconcile/runner.ts(usesorgLogin). Config insrc/config/types.ts(all optional). Authsrc/auth/app-client.ts; diffsrc/reconcile/diff.ts; guardrailssrc/reconcile/guardrails.ts; register insrc/cli/registry.ts. Apply = read-modify-write; charge the budget. Verify via the runner with a mock-client test; tsc clean; tests green.