fix: correct status for services with all containers excluded from health checks

When all services in a Docker Compose file have `exclude_from_hc: true`,
the status aggregation logic was returning invalid states causing broken UI.

**Problems fixed:**
- ComplexStatusCheck returned 'running:healthy' for apps with no monitored containers
- Service model returned ':' (null status) when all services excluded
- UI showed active start/stop buttons for non-running services

**Changes:**
- ComplexStatusCheck: Return 'exited:healthy' when relevantContainerCount is 0
- Service model: Return 'exited:healthy' when both status and health are null
- Added comprehensive unit tests to verify the fixes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Andras Bacsai
2025-11-18 23:24:11 +01:00
parent c656e2ac7b
commit f81640e316
3 changed files with 65 additions and 1 deletions

View File

@@ -114,7 +114,7 @@ class ComplexStatusCheck
}
if ($relevantContainerCount === 0) {
return 'running:healthy';
return 'exited:healthy';
}
if ($hasRestarting) {