/** * Reasoning Trace Builder * * Captures the step-by-step evaluation process for inclusion in attestations. * This provides transparency into how RecourseOS reached its verdict. */ export interface TraceStep { step: number; action: string; target?: string; result: string; evidence_gathered?: EvidenceItem[]; decision?: string; confidence?: number; duration_ms?: number; } export interface EvidenceItem { key: string; value?: unknown; present: boolean; description?: string; } export interface ReasoningTrace { steps: TraceStep[]; duration_ms: number; handlers_invoked: string[]; state_sources: string[]; } export interface VerificationCommand { description: string; command: string; expected_pattern?: string; confirms?: string; } export interface ApiCheck { service: string; operation: string; parameters?: Record; expected_result?: Record; } export interface VerificationInstructions { commands?: VerificationCommand[]; api_checks?: ApiCheck[]; reproducibility: 'deterministic' | 'state-dependent' | 'time-sensitive'; state_snapshot?: { captured_at: string; resources: Record; }; } /** * Trace Builder - captures evaluation steps as they occur */ export declare class TraceBuilder { private steps; private handlers; private sources; private startTime; private stepCount; constructor(); /** * Record a step in the evaluation process */ step(action: string, result: string, options?: { target?: string; evidence?: EvidenceItem[]; decision?: string; confidence?: number; }): void; /** * Record that a handler was invoked */ handler(name: string): void; /** * Record a state source that was used */ source(name: string): void; /** * Build the final trace object */ build(): ReasoningTrace; } /** * Build verification instructions for a resource */ export declare function buildVerificationInstructions(resourceType: string, resourceId: string | undefined, recoverabilityTier: number, stateSnapshot?: Record): VerificationInstructions; /** * Create a trace for a simple pass-through evaluation */ export declare function createSimpleTrace(inputType: string, verdict: string, reason: string): ReasoningTrace; //# sourceMappingURL=trace.d.ts.map