import { RunProgramResult } from './runProgram.js'; import { VerifyMeasurements, VerifyTopology } from '../verify/report.js'; export interface RunRecord { /** ISO-8601 capture time. */ timestamp: string; /** The brepjs program source that was executed. */ program: string; outcome: RunProgramResult['outcome']; /** True only when the part built and passed all checks. */ ok: boolean; /** sha256 of the program + a canonical digest of the outcome (stable for identical runs). */ resultHash: string; /** Geometric summary — present only for completed runs. */ measurements?: VerifyMeasurements; topology?: VerifyTopology; } /** Build a {@link RunRecord} from a program and its sandbox result. `now` is injectable for tests. */ export declare function buildRunRecord(program: string, result: RunProgramResult, now?: () => Date): RunRecord; /** Append a record as one JSON line to `filePath` (creating it if absent). */ export declare function appendRunRecord(filePath: string, record: RunRecord): Promise;