import { deriveVerifiedHandoffExecutionBoundary, type VerifierExecutionBinding } from "../core/index.js"; import type { CostProvenance, LoopArtifact, LoopRecord, MartinRunListFilters, MartinRunSelector, ReceiptIntegritySummary, ReceiptScope, VerifiedHandoffV1 } from "../contracts/index.js"; export interface LocalCorpusHotspot { scopeFingerprint: string; failureRate: number; sampleSize: number; riskScore: number; commonFailureClasses: string[]; } export interface LocalCorpusRisk { hotspots: LocalCorpusHotspot[]; corpusRecords: number; corpusPath: string; } export interface LocalRunHistoryHotspot { scopeFingerprint: string; failureRate: number; sampleSize: number; riskScore: number; commonFailureClasses: string[]; } export interface LocalRunHistoryRisk { hotspots: LocalRunHistoryHotspot[]; runRecords: number; runsRoot: string; } export declare function readLocalCorpusRisk(options?: { corpusPath?: string; minSampleSize?: number; minRiskScore?: number; }): Promise; export declare function readLocalRunHistoryRisk(options?: { runsDir?: string; minSampleSize?: number; minRiskScore?: number; }): Promise; export declare function computeScopeFingerprint(workingDirectory: string): string; export interface CliEnvironment { invocationRoot: string; workingDirectory: string; runsRoot: string; engine: "auto" | "claude" | "codex" | "gemini" | "openai"; liveMode: "live" | "proof"; } export interface PersistedLoopDetail { source: string; runsRoot: string; loop: LoopRecord; warnings: string[]; runDirectory?: string; loopRecordPath?: string; integrity: ReceiptIntegritySummary; } export type IntegrityStatus = ReceiptIntegritySummary["state"]; export interface VerificationSummary { status: "passed" | "failed" | "contradicted" | "not_run"; summary: string; eventCount: number; latestAttemptIndex?: number; completedAt?: string; steps: VerificationStepSummary[]; warnings: string[]; binding?: VerifierExecutionBinding; changedFiles: string[]; } export interface VerificationStepSummary { command: string; launched: boolean; completed?: boolean; crashed?: boolean; exitCode?: number; timedOut?: boolean; fastFail?: boolean; detail?: string; } export interface ArtifactSummary { totalCount: number; kinds: Record; highlights: LoopArtifact[]; } export interface TriageFinding { loopId: string; priority: number; status: LoopRecord["status"]; lifecycleState: LoopRecord["lifecycleState"]; title: string; summary: string; reasons: string[]; updatedAt: string; } export declare function readCostProvenance(loop: LoopRecord): CostProvenance; export declare const deriveLoopExecutionBoundary: typeof deriveVerifiedHandoffExecutionBoundary; export declare function describeCostProvenance(provenance: CostProvenance): string; export declare function resolveInvocationRoot(env?: NodeJS.ProcessEnv): string; export declare function resolveCliEnvironment(input?: { cwd?: string; runsDir?: string; engine?: string; liveMode?: CliEnvironment["liveMode"]; env?: NodeJS.ProcessEnv; }): CliEnvironment; export declare function listPersistedLoops(filters: MartinRunListFilters, options?: { invocationRoot?: string; }): Promise<{ runsRoot: string; loops: LoopRecord[]; warnings: string[]; }>; export declare function loadPersistedLoop(selector: MartinRunSelector, options?: { invocationRoot?: string; }): Promise; export declare function loadPersistedAttempt(selector: MartinRunSelector, options?: { invocationRoot?: string; }): Promise<{ detail: PersistedLoopDetail; attempt: LoopRecord["attempts"][number]; verification: VerificationSummary; }>; export declare function buildVerificationSummary(loop: LoopRecord): VerificationSummary; export declare function buildArtifactSummary(loop: LoopRecord): ArtifactSummary; export declare function buildRunReceipt(loop: LoopRecord, verification?: VerificationSummary, receiptScope?: ReceiptScope | undefined): Record; export declare function buildVerifiedHandoffFromPersistedLoop(detail: PersistedLoopDetail): VerifiedHandoffV1; export declare function buildRunDossier(detail: PersistedLoopDetail): Record; export declare function triagePersistedLoops(filters: MartinRunListFilters, options?: { invocationRoot?: string; }): Promise<{ runsRoot: string; findings: TriageFinding[]; warnings: string[]; }>; export declare function findPersistedLoopEvidence(runsDir: string | undefined, options?: { invocationRoot?: string; workspaceId?: string; }): Promise<{ runsRoot: string; loop?: LoopRecord; warnings: string[]; }>; export declare function resolveReceiptScope(loop: LoopRecord, runsRoot?: string): ReceiptScope | undefined;