# backup/

Complete backup and restore system with tiered retention.

## Files

| File | What | When to read |
| ---- | ---- | ------------ |
| `README.md` | Feature documentation | Understanding backup architecture |

## Subdirectories

| Directory | What | When to read |
| --------- | ---- | ------------ |
| `api/` | HTTP endpoints, validation | API changes |
| `domain/` | Business logic, services | Core backup/retention logic |
| `data/` | Repository, database queries | Database operations |
| `jobs/` | Scheduled job handlers | Cron job modifications |
| `migrations/` | Database schema | Schema changes |
| `tests/` | Unit and integration tests | Adding or modifying tests |

## Key Files

| File | What | When to read |
| ---- | ---- | ------------ |
| `domain/backup.types.ts` | Types, constants, TIERED_RETENTION | Type definitions |
| `domain/backup.service.ts` | Core backup operations | Creating/managing backups |
| `domain/backup-classification.service.ts` | Tiered retention classification | Category/expiration logic |
| `domain/backup-retention.service.ts` | Retention enforcement | Deletion logic |
| `data/backup.repository.ts` | Database queries | Data access patterns |
