1ff4dc7a9a
Two changes: - New POST /api/cache/clear (auth: REVALIDATE_TOKEN). Wipes the TTL content cache, the image disk + memory cache, and forwards to the RustyCMS /api/transform/cache/invalidate endpoint when an API key is configured. Single trigger to flush everything. - /api/revalidate now also calls clearImageCache() on asset.* events so a re-upload (focal change, alt edit, replacement) doesn't keep serving the previous transformed image from disk. clearImageCache() in image-cache.server.ts wipes the in-memory map and removes every file under IMAGE_CACHE_DIR.