/** * Briefing Insights Section * * Formats a DigestSnapshot into a compact briefing section (~50 tokens). * Only included when a digest snapshot is available (scheduler has run at least once, * or a snapshot was restored from a previous server session). */ import type { ResourceContext } from '../../shared.js'; /** Compact insights payload for the briefing JSON */ export interface BriefingInsights { activityTrend: string; significanceSpike: string | null; staleProjects: { projectNumber: number; daysSilent: number; }[]; topImportance: { id: number; score: number; preview: string; }[]; relationshipDensity?: number; } /** * Build the insights section from the latest digest snapshot. * * Resolution order: * 1. Scheduler's in-memory digest (HTTP transport with digest job running) * 2. Persisted DB snapshot (survives server restarts) * 3. Live compute with 60s TTL cache (stdio transport, fresh databases) * * Returns null only if compute itself fails or database has no entries. */ export declare function buildInsightsSection(context: ResourceContext): BriefingInsights | null; //# sourceMappingURL=insights-section.d.ts.map