Files
git.stella-ops.org/docs/features/unchecked/libraries/evidence-size-budgets-with-retention-tiers.md

3.1 KiB

Evidence Size Budgets with Retention Tiers

Module

__Libraries

Status

IMPLEMENTED

Description

Implements evidence storage budgets with tiered retention (Hot/Warm/Cold/Archive), auto-pruning policies, and usage tracking. Distinct from "Evidence TTL and staleness policy" (expiration) and "DSSE Envelope Size Management" (single envelope sizing). This is a full lifecycle budget management system with compression tiers.

Implementation Details

  • EvidenceBudgetService: src/__Libraries/StellaOps.Evidence/EvidenceBudgetService.cs -- multi-partial implementation: .Usage.cs (track per-tenant/per-type usage against budgets), .Status.cs (budget status reporting), .Prune.cs (auto-pruning based on retention policies)
  • IEvidenceBudgetService: src/__Libraries/StellaOps.Evidence/IEvidenceBudgetService.cs -- interface for budget management
  • EvidenceBudget: src/__Libraries/StellaOps.Evidence/EvidenceBudget.cs -- budget configuration model
  • BudgetCheckResult/BudgetStatus: src/__Libraries/StellaOps.Evidence/BudgetCheckResult.cs, BudgetStatus.cs -- budget check outcomes
  • RetentionPolicy: src/__Libraries/StellaOps.Evidence/RetentionPolicy.cs -- per-tier retention configuration
  • RetentionTier: src/__Libraries/StellaOps.Evidence/RetentionTier.cs -- tier enum (Hot/Warm/Cold/Archive)
  • RetentionTierManager: src/__Libraries/StellaOps.Evidence/RetentionTierManager.cs -- multi-partial: .CurrentTier.cs (determine current tier), .Migrate.cs (migrate between tiers), .Compress.cs (tier-specific compression), .Audit.cs (audit trail for migrations)
  • IRetentionTierManager/IArchiveStorage: src/__Libraries/StellaOps.Evidence/IRetentionTierManager.cs, IArchiveStorage.cs -- interfaces
  • TierMigrationResult/MigratedItem: src/__Libraries/StellaOps.Evidence/TierMigrationResult.cs, MigratedItem.cs -- migration tracking
  • UsageStats/PruneResult: src/__Libraries/StellaOps.Evidence/UsageStats.cs, PruneResult.cs -- reporting models
  • EvidenceItem/EvidenceType: src/__Libraries/StellaOps.Evidence/EvidenceItem.cs, EvidenceType.cs -- evidence models
  • CompressionLevel/BudgetExceededAction: src/__Libraries/StellaOps.Evidence/CompressionLevel.cs, BudgetExceededAction.cs -- configuration enums
  • Validation: src/__Libraries/StellaOps.Evidence/ -- EvidenceIndexValidator.cs, IEvidenceIndexValidator.cs, SchemaLoader.cs, ValidationError.cs, ValidationResult.cs
  • Source: SPRINT_7000_0004_0002_evidence_size_budgets.md

E2E Test Plan

  • Verify budget tracking reports accurate usage per tenant and evidence type
  • Test budget exceeded action triggers auto-pruning of oldest items
  • Verify retention tier migration (Hot -> Warm -> Cold -> Archive) with compression
  • Test RetentionTierManager applies tier-specific compression ratios
  • Verify PruneResult reports number of items pruned and space reclaimed
  • Test budget status API returns current usage vs. configured limits
  • Verify tier migration audit trail records all migrations
  • Test evidence index validation catches schema violations