archive_purge.py 535 B

12345678910111213141516171819202122232425
  1. """Schemas for archive auto-purge (#1008 follow-up)."""
  2. from __future__ import annotations
  3. from pydantic import BaseModel, Field
  4. class ArchivePurgePreviewResponse(BaseModel):
  5. count: int
  6. total_bytes: int
  7. sample_filenames: list[str]
  8. older_than_days: int
  9. class ArchivePurgeRequest(BaseModel):
  10. older_than_days: int = Field(ge=1, le=3650)
  11. class ArchivePurgeResponse(BaseModel):
  12. deleted: int
  13. class ArchivePurgeSettings(BaseModel):
  14. enabled: bool = False
  15. days: int = Field(default=365, ge=7, le=3650)