/** * schema-domain-triggers.ts, the trigger family (`watchers.triggers.*`). * * Three watcher kinds share one supervision spine: * - stream , regex-filtered, line-batched tail of a long-lived command * - condition, model-free declarative check (probe -> extract -> rule) * - on-exit , one-shot payload when a supervised child process terminates * * `watchers.triggers.enabled` ships **false** by design, not as limbo: a * trigger starts supervised long-lived processes, so on-by-default would run * watchers nobody asked for. Every key below is a real configurable feature * with a written purpose, never a bare toggle, the supervision ladder, the * breaker, the retention bounds and the process caps are all operator-tunable. * * Kept in its own domain module so the trigger family can evolve without * touching the shared runtime schema file. */ import type { ConfigSettingDefinition } from './schema-shared.js'; /** Trigger-family configuration (`watchers.triggers.*`). */ export interface TriggersConfig { /** Master gate. False by default, a trigger supervises real processes. */ enabled: boolean; /** Comma-separated backoff ladder (ms) walked on consecutive check failures. */ backoffLadderMs: string; /** Consecutive failures that open the breaker and park the trigger. */ breakerStrikes: number; /** Default cadence for condition checks that do not set their own. */ defaultCheckIntervalMs: number; /** Hard ceiling on how long one probe may run before it is abandoned. */ probeTimeoutMs: number; /** Condition checks allowed to run at the same moment. */ maxConcurrentChecks: number; /** Observations retained per trigger, the ring buffer the rules read. */ observationRingSize: number; /** Run-history records retained per trigger. */ runHistoryLimit: number; /** Age ceiling (hours) on retained run history. */ runHistoryTtlHours: number; /** Entries retained in the shared cross-watcher correlation event log. */ eventLogLimit: number; /** Age ceiling (hours) on the shared correlation event log. */ eventLogTtlHours: number; /** Cadence of the recurring recovery sweep (reap + bound + revalidate). */ sweepIntervalMs: number; /** Cadence of the supervision tick that reaps finished children and runs due checks. */ supervisionTickMs: number; /** Lines a stream watcher may hold before it drops the oldest. */ streamQueueLimit: number; /** Matched lines batched into one payload before an agent is invoked. */ streamBatchLines: number; /** Time a partial stream batch waits before it is flushed anyway. */ streamBatchIntervalMs: number; /** Ceiling on a supervised on-exit child before it is terminated `timed-out`. */ onExitMaxDurationMs: number; /** Standard input handed to a supervised on-exit child. */ onExitStdin: string; /** Bytes of tail output carried in a termination payload. */ outputTailBytes: number; } declare module './schema-types.js' { interface WatchersConfig { triggers: TriggersConfig; } } export declare const triggersConfigDefaults: { triggers: TriggersConfig; }; export declare const triggersConfigSettings: ConfigSettingDefinition[]; //# sourceMappingURL=schema-domain-triggers.d.ts.map