21-Feb-2026 — Migrations and Errors: 1 feature, 4 fixes, 1 build change and 1 chore #116

build 484commit 8fcd499


enforce lint consistently across frontend and server, fix all violations (#116)

resolve 104 pre-existing ESLint violations to unblock pre-push hook

migrations: handle invalid Brevo API key

Skip Brevo migrations gracefully on 401 unauthorised responses instead of throwing. Added both Brevo migrations to the pre-applied list so they are not re-run on environments that have already applied them.

migrations: skip Brevo migrations gracefully when no API key is configured

Environments without a Brevo config document caused configuredBrevo() to throw when accessing .value on null, failing the migration instead of skipping it. Separated the config lookup from the main migration logic so missing config is handled gracefully.

errors: handle ChunkLoadError after deployments with auto-reload

Add custom ErrorHandler that detects ChunkLoadError (caused by stale chunk references after deployment) and triggers a page reload. Uses sessionStorage with a 10-second cooldown per path to prevent infinite reload loops.

add claude-swarm lifecycle management and timed git hooks

sync package-lock.json with @annix/claude-swarm 0.1.12