/** * Behavioral Decay Service * * Organic scar lifecycle management: scars that keep getting dismissed * naturally fade in recall ranking. No manual hygiene commands needed. * * Two functions: * 1. refreshBehavioralScores() — calls Supabase RPC to update decay_multiplier * based on scar_usage patterns (fire-and-forget from session_start) * 2. fetchDismissalCounts() — queries scar_usage for inline archival hints * (called from recall to annotate frequently-dismissed scars) */ export interface BehavioralRefreshResult { scars_updated: number; scars_scanned: number; } export interface DismissalCounts { surfaced: number; dismissed: number; } /** * Refresh behavioral decay scores from scar_usage patterns. * * Calls the `refresh_scar_behavioral_scores()` Supabase RPC function. * Idempotent, safe for concurrent calls. Returns null if Supabase isn't configured. * * Intended to be called fire-and-forget from session_start. */ export declare function refreshBehavioralScores(): Promise; /** * Fetch dismissal counts for specific scars from scar_usage. * * Returns a map of scar_id → { surfaced, dismissed } for scars * that have been surfaced at least once. Used by recall to add * inline archival hints for frequently-dismissed scars. * * Gracefully returns empty map on any error. */ export declare function fetchDismissalCounts(scarIds: string[]): Promise>; //# sourceMappingURL=behavioral-decay.d.ts.map