#!/usr/bin/env node /** * standby-session-reset — SessionStart-хук штатного режима. * При старте КАЖДОЙ сессии снимает часовой standby-mode и метку standby-pending данной сессии — * гарантирует, что новая сессия всегда стартует со стеной (не полагается на уникальность sessionId). * Fail-quiet: ошибка не ломает старт. */ import { fileURLToPath } from 'url'; import { readStdin, parseEventJson, removeSentinel } from './enforce-hook-helpers.mjs'; /** Чистая: чистит флаг+pending данной сессии через инъектируемый remove. */ export function resetSession(sess, remove) { remove('standby-mode', sess); remove('standby-pending', sess); return { reset: true }; } async function main() { try { const event = parseEventJson(await readStdin()); const sess = event.session_id || 'unknown'; resetSession(sess, removeSentinel); } catch { /* fail-quiet — сброс best-effort */ } process.stdout.write('{}'); process.exit(0); } const isCli = process.argv[1] && fileURLToPath(import.meta.url) === process.argv[1]; if (isCli) main();