import { type MergeQueueConfig } from '../../merge-queue/types.js'; export declare const AGENT_OPS_CONFIG_PATH = ".scaffold/agent-ops.yaml"; export interface AgentOpsService { name: string; band: number; } export interface AgentOpsDocker { /** Docker context name; when omitted, the installer picks a platform default. */ context?: string; services: AgentOpsService[]; shared_stack: Record; } export interface AgentOpsConfig { project_name: string; critical_labels: string[]; worktree_setup_commands: string[]; docker?: AgentOpsDocker; merge_queue: MergeQueueConfig; } export interface AgentOpsConfigWarning { code: string; message: string; } export declare function defaultAgentOpsConfig(projectRoot: string): AgentOpsConfig; export declare function loadAgentOpsConfig(projectRoot: string): AgentOpsConfig; /** * Non-fatal merge_queue config checks — detected post-parse so a hit never * blocks loading (unlike fail() above, which is used for shape/type errors). * * The daemon seeds the full-gate cache from a batch run only when * `gate_command === full_gate_command` (see src/merge-queue/daemon.ts D12). * The full gate is the authoritative post-merge safety net and must run the * COMPLETE suite: if a user points full_gate_command at the affected/narrowed * gate script by mistake, the daemon will seed the full-gate cache from a * narrowed run, and the poller will then skip a real post-merge full suite. */ export declare function mergeQueueConfigWarnings(mq: MergeQueueConfig): AgentOpsConfigWarning[]; //# sourceMappingURL=config.d.ts.map