import type { ContextPackCoverage, ContextPackExpandableRef, ContextPackExecutionPhase, ContextPackExecutionSlice, ContextPackRuntimeGenerationAnswerContract } from '../contracts/context-pack.js'; import type { ContextPackRecoveryPlan, MadarAnswerabilityAssessment, MadarCoverageAssessment, MadarEvidenceStrengthAssessment } from '../contracts/context-recovery.js'; import type { IndexingManifestV1, IndexingReasonCode } from '../contracts/indexing.js'; import { type DiscoveryExclusionReason, type DiscoverySafetyMetadata } from '../shared/discovery-safety.js'; import { type RetrievalEvidencePlan } from './retrieve/pipeline.js'; export type MadarResponsePackConfidence = 'high' | 'medium' | 'low'; export type MadarResponseCoverage = 'complete' | 'partial' | 'unknown'; export type MadarResponseAgentDirective = 'answer_from_pack' | 'verify_one_targeted_file' | 'explore_with_caution'; export interface MadarResponseEvidence { /** Compatibility projection for consumers that have not migrated to the independent dimensions below. */ pack_confidence: MadarResponsePackConfidence; evidence_strength: MadarEvidenceStrengthAssessment; coverage: MadarResponseCoverage; coverage_detail: MadarCoverageAssessment; answerability: MadarAnswerabilityAssessment; recovery?: ContextPackRecoveryPlan; missing_phases: ContextPackExecutionPhase[]; covered_workflow_owners: string[]; confidence_reasons: string[]; agent_directive: MadarResponseAgentDirective; /** Share-safe aggregate. Local exclusion paths remain only in graph.json and local CLI diagnostics. */ discovery_exclusions?: { policy: 'artifact_path_only'; total: number; relevant: number; reasons: Partial>; relevant_reasons: Partial>; }; /** Share-safe aggregate. Local paths remain only in indexing-manifest.json. */ indexing_completeness?: { state: 'complete' | 'partial' | 'failed'; total_uncertain: number; relevant_uncertain: number; reasons: Partial>; relevant_reasons: Partial>; }; } export declare function confidenceScoreFromCoverage(coverage: ContextPackCoverage): number; export declare function coverageStatusFromCoverage(coverage?: ContextPackCoverage): MadarResponseCoverage; export declare function packConfidenceFromScore(score: number): MadarResponsePackConfidence; export declare function agentDirectiveForEvidence(packConfidence: MadarResponsePackConfidence, coverage: MadarResponseCoverage, answerContained?: boolean | undefined, answerability?: MadarAnswerabilityAssessment): MadarResponseAgentDirective; export interface MadarResponseEvidenceAssessment extends MadarResponseEvidence { score: number; } export declare function assessMadarResponseEvidence(input: { evidencePlan?: RetrievalEvidencePlan | undefined; answerContract?: ContextPackRuntimeGenerationAnswerContract | undefined; coverage?: ContextPackCoverage | undefined; coveredWorkflowOwners?: readonly string[] | undefined; discoverySafety?: DiscoverySafetyMetadata | null | undefined; expandable?: readonly ContextPackExpandableRef[] | undefined; executionSlice?: ContextPackExecutionSlice | undefined; graphPath?: string | undefined; indexingManifest?: IndexingManifestV1 | null | undefined; missingPhases?: readonly ContextPackExecutionPhase[] | undefined; question?: string | undefined; recovery?: ContextPackRecoveryPlan | undefined; score?: number | undefined; }): MadarResponseEvidenceAssessment; export declare function buildMadarResponseEvidence(input: { evidencePlan?: RetrievalEvidencePlan | undefined; answerContract?: ContextPackRuntimeGenerationAnswerContract | undefined; coverage?: ContextPackCoverage | undefined; missingPhases?: readonly ContextPackExecutionPhase[] | undefined; coveredWorkflowOwners?: readonly string[] | undefined; discoverySafety?: DiscoverySafetyMetadata | null | undefined; expandable?: readonly ContextPackExpandableRef[] | undefined; executionSlice?: ContextPackExecutionSlice | undefined; graphPath?: string | undefined; indexingManifest?: IndexingManifestV1 | null | undefined; question?: string | undefined; recovery?: ContextPackRecoveryPlan | undefined; score?: number | undefined; }): MadarResponseEvidence; export declare function collectWorkflowOwners(...groups: Array): string[]; export declare function missingPhasesFromPayload(payload: Partial<{ answer_contract: { missing_phases?: readonly unknown[]; }; execution_slice: { phase_coverage?: { missing?: readonly unknown[]; }; }; }>): ContextPackExecutionPhase[];