export declare const GOVERNANCE_EVIDENCE_CANDIDATE_SCHEMA_VERSION: 1; export declare const GOVERNANCE_EVIDENCE_CANDIDATE_DEFAULT_PAGE_SIZE = 50; export declare const GOVERNANCE_EVIDENCE_CANDIDATE_MAX_PAGE_SIZE = 100; export type GovernanceEvidenceCandidateMissingBinding = 'tool_call' | 'task' | 'plan' | 'workspace'; export interface GovernanceEvidenceTraceSnapshot { readonly sessionId: string; readonly task: { readonly scope: 'session'; } | { readonly scope: 'kanban_task'; readonly taskId: string; readonly boardId: string | null; }; readonly plan: { readonly state: 'missing' | 'invalid' | 'unreadable' | 'refreshing'; } | { readonly state: 'available'; readonly fingerprint: string; }; readonly workspace: { readonly state: 'not_captured' | 'unavailable'; } | { readonly state: 'captured'; readonly manifestHash: string; readonly baseHead: string; }; } export interface GovernanceToolOutcomeMetadata { readonly toolCallId?: string | undefined; readonly toolName: string; readonly ok: boolean; readonly durationMs: number; readonly outputBytes?: number | undefined; readonly outputTokens?: number | undefined; readonly outputLines?: number | undefined; } export interface GovernanceEvidenceCandidate { readonly schemaVersion: typeof GOVERNANCE_EVIDENCE_CANDIDATE_SCHEMA_VERSION; readonly candidateType: 'tool_execution'; readonly status: 'unverified'; readonly candidateId: string | null; readonly binding: { readonly state: 'bound'; } | { readonly state: 'incomplete'; readonly missing: readonly GovernanceEvidenceCandidateMissingBinding[]; }; readonly trace: GovernanceEvidenceTraceSnapshot; readonly tool: { readonly callId: string | null; readonly name: string; }; readonly outcome: { readonly status: 'succeeded' | 'failed'; readonly durationMs: number; readonly outputBytes?: number | undefined; readonly outputTokens?: number | undefined; readonly outputLines?: number | undefined; }; } type GovernanceEvidenceCandidateIneligibilityReason = 'payload_invalid' | 'unsupported_schema' | 'binding_incomplete' | 'candidate_identity_missing' | 'candidate_identity_mismatch' | 'task_binding_mismatch' | 'trace_binding_incomplete'; export interface GovernanceEvidenceCandidateLedgerEntry { readonly sequence: number; readonly observationId: string; readonly source: string; readonly taskId: string | null; readonly observedAt: string; readonly recordedAt: string; readonly candidateId: string | null; readonly toolCallId: string | null; readonly toolName: string | null; readonly outcomeStatus: 'succeeded' | 'failed' | null; readonly planFingerprint: string | null; readonly workspaceManifestHash: string | null; readonly workspaceBaseHead: string | null; readonly evaluation: { readonly state: 'eligible_for_evaluation'; readonly reasons: readonly GovernanceEvidenceCandidateIneligibilityReason[]; } | { readonly state: 'ineligible'; readonly reasons: readonly GovernanceEvidenceCandidateIneligibilityReason[]; }; } export interface GovernanceEvidenceCandidateObservation { readonly sequence: number; readonly observationId: string; readonly source: string; readonly taskId: string | null; readonly category: string; readonly observedAt: string; readonly recordedAt: string; readonly payload: Readonly>; } export declare function createGovernanceEvidenceCandidate(trace: GovernanceEvidenceTraceSnapshot, outcome: GovernanceToolOutcomeMetadata): GovernanceEvidenceCandidate; export declare function evaluateGovernanceEvidenceCandidateObservation(observation: GovernanceEvidenceCandidateObservation): GovernanceEvidenceCandidateLedgerEntry; export {}; //# sourceMappingURL=evidence-candidate.d.ts.map