#!/usr/bin/env node
/**
 * verify-gate-config (G1) — рубильник verify-гейта (зеркало judge-gate-config).
 * Активен ТОЛЬКО при флаге ROUTER_MENTOR_VERIFY_ENABLED=1 И наличии ключа подписанта.
 * Флаг OFF → inert ($0, до активации владельцем A3). Флаг ON + нет ключа → keyMissing
 * (consumer трактует как fail-CLOSE: владелец включил, но конфиг сломан — не пропускать молча).
 * Регистрация хука + флаг + ключ — шаг ВЛАДЕЛЬЦА.
 */
import { resolveReceiptKey } from './receipt-key-config.mjs';

const ENABLED_ENV = 'ROUTER_MENTOR_VERIFY_ENABLED';

export function resolveVerifyEnabled({ env = process.env } = {}) {
  return env[ENABLED_ENV] === '1';
}

export function verifyGateActive({ env = process.env, keyImpl = resolveReceiptKey } = {}) {
  if (!resolveVerifyEnabled({ env })) return { active: false, keyMissing: false };
  const key = keyImpl();
  return { active: !!key, keyMissing: !key };
}

export const _internals = { ENABLED_ENV };
