Skip to Content

@cfxdevkit/executor


@cfxdevkit/executor / SafetyGuard

Class: SafetyGuard

Defined in: packages/executor/src/safety-guard.ts:31

SafetyGuard – off-chain complement to AutomationManager’s on-chain checks.

Responsibilities:

  1. Validate a job satisfies configured safety bounds before the keeper submits a transaction.
  2. Provide a global pause switch (circuit-breaker).
  3. Log every violation for audit purposes.

The logger is injected rather than imported — the SDK ships with no logging dependency. Pass your pino/winston/console instance, or omit for silence.

Constructors

Constructor

new SafetyGuard(config?, logger?): SafetyGuard

Defined in: packages/executor/src/safety-guard.ts:36

Parameters

config?

Partial<SafetyConfig> = {}

logger?

AutomationLogger = noopLogger

Returns

SafetyGuard

Methods

check()

check(job, context): SafetyCheckResult

Defined in: packages/executor/src/safety-guard.ts:59

Run all configured safety checks against a job. Returns { ok: true } if all pass, or { ok: false, violation } on first failure.

Parameters

job

Job

context
currentTime?

number

swapUsd

number

Returns

SafetyCheckResult


clearViolations()

clearViolations(): void

Defined in: packages/executor/src/safety-guard.ts:153

Returns

void


getConfig()

getConfig(): Readonly<SafetyConfig>

Defined in: packages/executor/src/safety-guard.ts:129

Returns

Readonly<SafetyConfig>


getViolations()

getViolations(): readonly SafetyViolation[]

Defined in: packages/executor/src/safety-guard.ts:149

Returns

readonly SafetyViolation[]


isPaused()

isPaused(): boolean

Defined in: packages/executor/src/safety-guard.ts:143

Returns

boolean


pauseAll()

pauseAll(): void

Defined in: packages/executor/src/safety-guard.ts:133

Returns

void


resumeAll()

resumeAll(): void

Defined in: packages/executor/src/safety-guard.ts:138

Returns

void


updateConfig()

updateConfig(patch): void

Defined in: packages/executor/src/safety-guard.ts:124

Parameters

patch

Partial<SafetyConfig>

Returns

void