import type { BuildObservationInboxReportOptions, ObservationEvidence, ObservationInboxItem, ObservationInboxReport, ObservationMessageRef, ObservationMessageWindow, ObservationSessionTimeRange, ObservationSeverityReasonCode, ObservationSignalSubtype, ObservationSignalType, ObservationSkillRollup, ObservationSourceKind } from '../types/index.js'; import { type PersistedObservationExperienceReport } from './experience.js'; export type { BuildObservationInboxReportOptions, ObservationEvidence, ObservationInboxItem, ObservationInboxReport, ObservationMessageRef, ObservationMessageWindow, ObservationSessionTimeRange, ObservationSeverityReasonCode, ObservationSignalSubtype, ObservationSignalType, ObservationSkillRollup, ObservationSourceKind, }; export type PersistedObservationInboxReport = Omit & { experience?: PersistedObservationExperienceReport; }; export declare const DEFAULT_PROJECT_OBSERVATIONS_DIR: string; export declare const DEFAULT_GLOBAL_OBSERVATIONS_DIR: string; export declare const DEFAULT_OBSERVATIONS_DIR: string; export declare function normalizeObservationKeyInput(value: unknown): string; /** Legacy migration only. New reports take sourceKind from Trace IR. */ export declare function inferObservationSourceKind(sourceTrace: string): ObservationSourceKind; export declare function severityReasonFor(item: Pick, lang?: 'zh' | 'en'): string; export declare function legacySeverityReasonFor(item: Pick): string; export declare function severityReasonCodeFor(item: Pick): ObservationSeverityReasonCode; /** * 不再附带 diagnostics 字段 —— observability 不再反向驱动 diagnosis。 * 需要 diagnostics 的调用方(如 CLI observe ingest)拿到 report 后,自行调 * `buildObserveDiagnosticsFromReport(report)` 写入 `report.diagnostics`。 */ export declare function buildObservationInboxReport(tracePath: string, options?: BuildObservationInboxReportOptions): ObservationInboxReport; export declare function aggregateInboxItems(items: ObservationInboxItem[]): ObservationInboxItem[]; export declare function saveObservationInboxReport(report: ObservationInboxReport, outDir?: string): string; export declare function compactObservationInboxReport(report: ObservationInboxReport): PersistedObservationInboxReport; export declare function loadObservationInboxReports(dir?: string): ObservationInboxReport[]; export declare function loadLatestObservationInboxReport(dir?: string): ObservationInboxReport | null; export declare function loadLatestObservationInboxReports(dir?: string): ObservationInboxReport[]; export declare function queryObservationInbox(dir?: string): ObservationInboxItem[]; export declare function summarizeObservationInboxBySkill(items: ObservationInboxItem[], reports?: ObservationInboxReport[]): ObservationSkillRollup[]; export declare function findObservationInboxItem(id: string, dir?: string): ObservationInboxItem | null; export declare function buildObservationMessageWindow(item: Pick, radius?: number, preloadedMessages?: ObservationMessageRef[]): ObservationMessageWindow | undefined; export declare function formatObservationShow(item: ObservationInboxItem): string; export declare function selectExploreInboxItems(items: ObservationInboxItem[], limit: number, includeNoise?: boolean, random?: () => number): ObservationInboxItem[];