Merge branch 'worktree-landing-backup'

# Conflicts:
#	CHANGELOG.md
This commit is contained in:
Deeman
2026-02-23 15:01:32 +01:00
8 changed files with 129 additions and 1 deletions

View File

@@ -7,6 +7,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
### Added
- **Landing zone backup to R2** — append-only landing files (`data/landing/*.json.gz`)
synced to Cloudflare R2 every 30 minutes via systemd timer + rclone; extraction state
DB (`.state.sqlite`) continuously replicated via Litestream (second DB entry in existing
config); auto-restore on container startup for both `app.db` and `.state.sqlite`;
`infra/restore_landing.sh` script for disaster recovery of landing files;
`infra/landing-backup/` systemd service + timer units; rclone installation added to
`infra/setup_server.sh`; reuses existing R2 bucket and credentials (no new env vars)
- **Admin Email Hub** (`/admin/emails`) — full email management dashboard with:
sent log (filterable by type/event/search, HTMX partial updates), email detail
with Resend API enrichment for HTML preview, inbound inbox with unread badges