Some checks failed
Closes #512. The previous `(block_actuator)` snippet emitted `respond @actuator 404` at the top level of each archive vhost. But each vhost also has a catch-all `handle { reverse_proxy ... }` that matches /actuator/* too. Caddy's `handle` blocks are mutually exclusive — once one matches, the request never reaches a top-level `respond`. So /actuator/health was being proxied to the backend, which 302s to /login. Wrap the actuator response in its own `handle /actuator/*` block. Caddy sorts `handle` blocks by path specificity, so /actuator/* wins over the catch-all and the 404 is actually returned. Verified with `caddy validate` against the caddy:2 image. Also unblocks the nightly.yml smoke test's `/actuator/health → 404` assertion, which has been failing since the first staging deploy. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>