import type { TotemConfig } from '@mmnto/totem'; import type { ShieldOptions } from './shield.js'; /** * Pre-flight deterministic-rule estimator for `totem review --estimate` * (mmnto-ai/totem#1714). Runs the same compiled-rule engine as * `totem lint` against the diff resolved by `totem review`'s standard * resolution chain (explicit `--diff` → `--staged` → working-tree → * branch-vs-base) and returns immediately. No orchestrator, no * embedder, no LanceDB — the entire LLM Verification Layer is * structurally unreachable from this module. * * Output is labeled `[Estimate]` (`ESTIMATE_DISPLAY_TAG`) on every log * line so consumers cannot conflate this with an LLM verdict; the * verdict line and `SHIELD_FAILED` exit semantics are inherited from * `runCompiledRules` unchanged so a passing estimate looks identical to * a passing `totem lint` run on the metrics + trap-ledger surface. * * After `runCompiledRules` returns, the pattern-history overlay layer * (mmnto-ai/totem#1731) reads `.totem/recurrence-stats.json` (substrate * from mmnto-ai/totem#1715) and surfaces uncovered historical patterns * whose tokens are present in the diff additions above a containment * threshold. Opt out via `--no-history`. Missing/malformed substrate * degrades to a single dim hint line so the deterministic pass output * is unchanged. * * Empty-diff handling intentionally does NOT stamp the * `.reviewed-content-hash` push-gate cache: an estimate is a forecast, * not a passing review, and stamping the cache would let the push-gate * unblock without ever running the LLM review. */ export declare function runEstimate(options: ShieldOptions, config: TotemConfig, cwd: string, configRoot: string): Promise; //# sourceMappingURL=shield-estimate.d.ts.map