f6e9fe8198
Replace per-upload Astro build threads with a single background worker (_site_rebuild_worker) that waits on an event, sleeps 60 s to let upload bursts settle, then runs one full build + rsync. 271 concurrent uploads now produce one build instead of 271 serialised builds, eliminating the OOM kill. --webroot is re-enabled; merge-only path still runs immediately per upload. Also: date filter row added to ActivityFeed.svelte (sport + date presets with dynamic year pills); deploy/vps gitignored for VPS config backups.