/** * Noah — Yellow Repeat Escalation * * Amendment 2 (CRITICAL) — D-04: * If the same agent hits Yellow 6+ times cumulatively, Noah escalates * to Greg via Telegram. Catches slow degradation ("boiling frog"). * * yellow_count is tracked per-agent in lifecycle_state table. * Threshold is stored in system_config (YELLOW_ESCALATION_THRESHOLD). */ import type { SqliteTemporalStore } from '../store/sqlite-store.js'; import type { CorridorColor } from './corridor-absolute.js'; export declare const DEFAULT_YELLOW_ESCALATION_THRESHOLD = 6; export interface YellowEscalationResult { shouldEscalate: boolean; yellowCount: number; threshold: number; agentId: string; } export declare function checkYellowEscalation(store: SqliteTemporalStore, agentId: string, currentCorridor: CorridorColor, threshold?: number): YellowEscalationResult; export interface YellowEscalationAlert { type: 'corridor_yellow_repeat_escalation'; severity: 'CRITICAL'; agentId: string; yellowCount: number; threshold: number; score: number; message: string; channels: readonly ['telegram', 'jessie', 'audit']; } export declare function buildYellowEscalationAlert(agentId: string, yellowCount: number, threshold: number, score: number): YellowEscalationAlert; //# sourceMappingURL=yellow-escalation.d.ts.map