Problem
A hosted tenant with multiple repos under one installation has no way to pause/dry-run all of them at once — only strictly per-repo agentPaused/agentDryRun (edited one repo at a time via MaintainerSettings, /v1/repos/:owner/:repo/settings) exists today. Decided: add a bulk control, distinct from the separate global operator kill-switch (getGlobalAgentFrozenState), which stays a deliberately separate singleton.
Area
src/api/routes.ts, src/services/control-panel-roles.ts.
Proposal
Add an installation-scoped bulk pause/dry-run endpoint layered on top of the existing per-repo settings — applies the same per-repo flags across every repo in the tenant's installation in one call, with its own audit-trail entry distinct from the global kill-switch's.
Deliverables
Resources
- Existing per-repo settings pattern (
/v1/repos/:owner/:repo/settings)
- The global kill-switch (
getGlobalAgentFrozenState) — stays separate, not touched by this
Boundaries
Installation-scoped bulk control only — does not touch or replace the global operator kill-switch.
maintainer-only — blast-radius-relevant control surface, needs maintainer review.
Problem
A hosted tenant with multiple repos under one installation has no way to pause/dry-run all of them at once — only strictly per-repo
agentPaused/agentDryRun(edited one repo at a time via MaintainerSettings,/v1/repos/:owner/:repo/settings) exists today. Decided: add a bulk control, distinct from the separate global operator kill-switch (getGlobalAgentFrozenState), which stays a deliberately separate singleton.Area
src/api/routes.ts,src/services/control-panel-roles.ts.Proposal
Add an installation-scoped bulk pause/dry-run endpoint layered on top of the existing per-repo settings — applies the same per-repo flags across every repo in the tenant's installation in one call, with its own audit-trail entry distinct from the global kill-switch's.
Deliverables
Resources
/v1/repos/:owner/:repo/settings)getGlobalAgentFrozenState) — stays separate, not touched by thisBoundaries
Installation-scoped bulk control only — does not touch or replace the global operator kill-switch.
maintainer-only — blast-radius-relevant control surface, needs maintainer review.