/**
 * RetentionPolicy — per-project configuration for sub-session retention and
 * archival. See session-hierarchy.md §12.3.
 *
 * Deny-by-default (Convention #5): the absence of any field means "no
 * automatic archival." A policy without an `archiveBackend` cannot drive
 * archival at all — {@link ArchivalManager.archive} rejects with
 * {@link ArchiveNotConfiguredError}. The primitive Phase 8 ships is
 * on-demand `archive(subSessionId)`; a scheduler that invokes the primitive
 * is platform-layer (out of SDK scope per the roadmap "What's OUT" list).
 *
 * Phase 8 replaces the Phase 1 `RetentionPolicyRef = unknown` placeholder at
 * `session/hierarchy/project.ts` with this real type.
 */
/**
 * The empty retention policy — archival fully disabled. Exported as a named
 * constant so call sites declare their deny-by-default posture explicitly
 * rather than relying on `{}` literals (Convention #0, #5).
 */
export const RETENTION_POLICY_DISABLED = Object.freeze({});
//# sourceMappingURL=policy.js.map