- Switch Docker layer cache from local filesystem to GHA native cache
(type=gha), eliminating the cache-size workaround hack
- Consolidate cancel-previous-runs into a single dedicated job to
prevent race conditions from concurrent API calls
- Remove DATABASE_URL build-arg that was never consumed by the Dockerfile
- Add post-deploy health check that fails the job and prints logs if any
container exits unexpectedly
- Add .nvmrc and use node-version-file instead of hardcoded node-version: 20
Fixes#249
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>