/** * graded-session.ts * * Module-level flag tracking whether the current Pi session is in graded mode. * Set to true by attempt-capture after dispatching an /attempt injection; * read by integrity-guard's before_agent_start hook to reinforce evaluation * constraints on every subsequent agent turn. * * Pi is single-process per session, so module-level state has session granularity * and resets automatically when Pi restarts. */ let _active = false; let _jailbreakCount = 0; export const JAILBREAK_ESCALATION_THRESHOLD = 3; export function setGradedMode(active: boolean): void { _active = active; } export function isGradedModeActive(): boolean { return _active; } export function resetGradedMode(): void { _active = false; _jailbreakCount = 0; } export function incrementJailbreakCount(): number { return ++_jailbreakCount; } export function getJailbreakCount(): number { return _jailbreakCount; }