/** * Research / Evidence System — pesquisa como artefato estruturado. * * Cada claim importante carrega: claim, source, confidence, sourceType, * verifiedAt. Diferencia FACT | ASSUMPTION | INFERENCE | UNKNOWN e prioriza * fontes por hierarquia (official docs > source code > tests > package metadata * > reliable tech > community). * * O registry permite à pipeline (ex.: composição research_evidence) coletar * evidências, classificar, verificar e gerar relatório com claims críticas. */ import type { ArtifactKind } from '../types.js'; export type EvidenceType = 'FACT' | 'ASSUMPTION' | 'INFERENCE' | 'UNKNOWN'; export type EvidenceSourceType = 'official-docs' | 'source-code' | 'tests' | 'package-metadata' | 'reliable-tech' | 'community'; /** Peso de confiabilidade por tipo de fonte — prioridade de verificação. */ export declare const SOURCE_TRUST: Record; export declare const SOURCE_RANK: EvidenceSourceType[]; export interface EvidenceClaim { id: string; claim: string; type: EvidenceType; source?: string; sourceType: EvidenceSourceType; /** Confiança do próprio LLM/agente que emitiu a claim em [0,1]. */ confidence: number; verifiedAt: string; /** Quando verificado contra fonte primária (FACT com source oficial). */ verified?: boolean; /** Trecho literal usado para conferir a claim contra a fonte. */ span?: string; tags?: string[]; } export interface EvidenceReport { total: number; byType: Record; bySourceType: Record; avgConfidence: number; /** Claims com confiança baixa ou tipo UNKNOWN — exigem verificação. */ critical: EvidenceClaim[]; /** Fonte de maior confiança encontrada por claim relevante. */ bestSources: Array<{ claim: string; sourceType: EvidenceSourceType; }>; } /** Infere o tipo inicial de uma claim a partir do texto e da confiança. */ export declare function inferEvidenceType(text: string, confidence: number): EvidenceType; export declare class EvidenceRegistry { private claims; /** Adiciona uma claim (com tipo inferido quando não informado). */ add(input: Omit & { type?: EvidenceType; verified?: boolean; }): EvidenceClaim; /** Registra claims em lote (ex.: saída de deep-research) — texto cru ou objetos. */ ingest(raw: unknown): number; /** * Verifica uma claim: marca como verified e sobe o tipo quando a fonte é * primária (official-docs / source-code / tests / package-metadata). */ verify(id: string, sourceType: EvidenceSourceType, span?: string): EvidenceClaim | undefined; all(): EvidenceClaim[]; /** Score de veracidade de uma claim: confiança × confiabilidade da fonte. */ score(claim: EvidenceClaim): number; /** Busca claims por termo (claim, source ou tag). */ search(query: string): EvidenceClaim[]; /** Claims com score abaixo do limiar, sem span ou tipo UNKNOWN — precisam verificação. */ critical(minScore?: number): EvidenceClaim[]; /** Relatório estruturado (artefato kind: research). */ report(): EvidenceReport; /** Fábrica de relatório no formato de artefato 'research' (contrato). */ toArtifact(): { kind: ArtifactKind; content: EvidenceReport; }; } //# sourceMappingURL=evidence.d.ts.map