import type { GoldenTrace } from '../golden-trace.js'; import type { RefinerSandboxResult, RefinerSandboxOptions } from './refiner-sandbox-wrapper.js'; import type { ToolSemanticRegistry } from './tool-semantic-registry.js'; import { type RuleReliabilityFailure } from './rule-reliability-validation.js'; export type RefinerRuleHostGateDecision = 'accepted_shadow' | 'rejected_validation_failed' | 'rejected_forbidden_pattern' | 'rejected_timeout' | 'rejected_runtime_error' | 'rejected_no_cases'; export interface RefinerRuleHostGateInput { code: string; goldenTrace: GoldenTrace; requestedMode?: 'shadow' | 'live'; softTimeoutMs?: number; /** * PRI-634-F Phase 2: registry the production gate resolves tool semantics * with. Threaded into the sandbox so replay synthetic inputs derive * canonicalKind + extraction hints identically to production. Absent → * legacy replay inputs (parity disabled). */ toolSemantics?: ToolSemanticRegistry; /** * PRI-634-F Phase 2: workspace root for replay path normalization — the * same root the production gate normalizes against. Absent → legacy * normalizedPath=null replay inputs. */ projectDir?: string; } export interface RefinerRuleHostGateResult { decision: RefinerRuleHostGateDecision; applicationMode: 'shadow'; sandboxResult: RefinerSandboxResult; reasons: string[]; /** * PRI-634-F Phase 3: layered attribution for every rejected decision * ({layer, reasonCode, evidence, nextAction} — SPEC §8/§10). Absent on * accepted_shadow. Routing only — no repair. */ failure?: RuleReliabilityFailure; } export interface RefinerRuleHostGateDeps { evaluateInSandbox: (code: string, goldenTrace: GoldenTrace, opts?: RefinerSandboxOptions) => RefinerSandboxResult; } export declare function evaluateRefinerRuleHostGate(input: RefinerRuleHostGateInput, deps: RefinerRuleHostGateDeps): RefinerRuleHostGateResult; //# sourceMappingURL=refiner-rulehost-gate.d.ts.map