πŸ“„ File detail

utils/permissions/autoModeState.ts

🧩 .tsπŸ“ 40 linesπŸ’Ύ 1,095 bytesπŸ“ text
← Back to All Files

🎯 Use case

This file lives under β€œutils/”, which covers cross-cutting helpers (shell, tempfiles, settings, messages, process input, …). On the API surface it exposes setAutoModeActive, isAutoModeActive, setAutoModeFlagCli, getAutoModeFlagCli, and setAutoModeCircuitBroken (and more) β€” mainly functions, hooks, or classes. What the file header says: Auto mode state functions β€” lives in its own module so callers can conditionally require() it on feature('TRANSCRIPT_CLASSIFIER').

Generated from folder role, exports, dependency roots, and inline comments β€” not hand-reviewed for every path.

🧠 Inline summary

Auto mode state functions β€” lives in its own module so callers can conditionally require() it on feature('TRANSCRIPT_CLASSIFIER').

πŸ“€ Exports (heuristic)

  • setAutoModeActive
  • isAutoModeActive
  • setAutoModeFlagCli
  • getAutoModeFlagCli
  • setAutoModeCircuitBroken
  • isAutoModeCircuitBroken
  • _resetForTesting

πŸ–₯️ Source preview

// Auto mode state functions β€” lives in its own module so callers can
// conditionally require() it on feature('TRANSCRIPT_CLASSIFIER').

let autoModeActive = false
let autoModeFlagCli = false
// Set by the async verifyAutoModeGateAccess check when it
// reads a fresh tengu_auto_mode_config.enabled === 'disabled' from GrowthBook.
// Used by isAutoModeGateEnabled() to block SDK/explicit re-entry after kick-out.
let autoModeCircuitBroken = false

export function setAutoModeActive(active: boolean): void {
  autoModeActive = active
}

export function isAutoModeActive(): boolean {
  return autoModeActive
}

export function setAutoModeFlagCli(passed: boolean): void {
  autoModeFlagCli = passed
}

export function getAutoModeFlagCli(): boolean {
  return autoModeFlagCli
}

export function setAutoModeCircuitBroken(broken: boolean): void {
  autoModeCircuitBroken = broken
}

export function isAutoModeCircuitBroken(): boolean {
  return autoModeCircuitBroken
}

export function _resetForTesting(): void {
  autoModeActive = false
  autoModeFlagCli = false
  autoModeCircuitBroken = false
}