UNPKG

overmind-mcp

Version:

Orchestrateur universel agents IA multi-modeles via MCP. Inclut le protocole 'Custom-Nickname' pour identifier vos agents avec des surnoms originaux (The Chaos Prophet, Shadow Sniper, etc.), l'isolation mémoire (Private Memory Context) et le support pour

55 lines • 2.55 kB
/** * ═══════════════════════════════════════════════════════════════════════════ * Audit Trail — Moteur de rétention (art. 35.2-35.3) * ═══════════════════════════════════════════════════════════════════════════ * * Calcule les dates d'expiration de rétention et gère le workflow : * hot (table active) → anonymisation → cold archive (5 ans) → purge définitive */ import type { LegalBasis } from './types.js'; /** * Calcule le timestamp d'expiration de rétention active (hot). * * @param createdAt Timestamp de création (ms) * @param retentionDaysOverride Override du nombre de jours (défaut: .env) * @returns Timestamp d'expiration */ export declare function calculateRetentionExpiry(createdAt: number, retentionDaysOverride?: number): number; /** * Calcule le timestamp d'expiration de l'archivage cold storage. * * @param archivedAt Timestamp d'archivage (ms) * @param archiveYearsOverride Override du nombre d'années (défaut: .env) * @returns Timestamp d'expiration de l'archive */ export declare function calculateArchiveExpiry(archivedAt: number, archiveYearsOverride?: number): number; /** * Vérifie si un enregistrement est expiré. */ export declare function isExpired(expiresAt: number, now?: number): boolean; export interface RetentionPolicyConfig { category: string; retentionDays: number; archiveYears: number; legalBasis: LegalBasis; anonymizeAfterDays: number; } /** * Politiques de rétention par défaut au moment de la migration. * Définition validée : 30 jours actif + 5 ans archive pour tout. */ export declare function getDefaultPolicies(): RetentionPolicyConfig[]; /** * Politiques par défaut — format JSON pour la migration SQL. */ export declare function getDefaultPoliciesJson(): string; /** * Détermine si un enregistrement doit être anonymisé (mi-rétention) * vs supprimé (fin de rétention active). * * @param createdAt Timestamp de création * @param policy Politique de rétention * @returns 'active' | 'anonymize' | 'archive' | 'purge' */ export declare function getRetentionStage(createdAt: number, policy: RetentionPolicyConfig, now?: number): 'active' | 'anonymize' | 'archive' | 'purge'; //# sourceMappingURL=retention.d.ts.map