Fixed
Health status remained “unknown” after compose drift redeploy, auto-start, and force redeploy
Only the image update path called
verifyAfterDeploy()— three other compose paths skipped itAdded
verifyHealthAfterCompose()that polls container state after compose up/restartRespects Docker HEALTHCHECK if present, falls back to running state
Applied to all 4 compose paths: image update, compose drift, auto-start (no containers), auto-start (stuck), force redeploy
Changed
api.addressis now[]stringinstead ofstringapi.portfield removed — port is part of each address stringSupports multiple listen addresses (one HTTP server per address, shared mux)
All servers shut down gracefully on SIGTERM/SIGINT
Default:
["127.0.0.1:9090"]