feat: container liveness sync + node-runner slim base #15

Merged
michal merged 1 commits from feat/container-liveness-sync into main 2026-02-23 00:18:41 +00:00
Owner

Summary

  • syncStatus() detects crashed containers and marks them ERROR
  • 30s periodic sync loop catches containers that die after startup
  • Reconcile syncs status before counting active instances
  • node-runner switched to node:20-slim for npm package compatibility

Test plan

  • 236 mcpd tests pass
  • Deploy, verify crashed home-assistant shows ERROR not RUNNING
  • Rebuild node-runner with slim, verify home-assistant starts
## Summary - syncStatus() detects crashed containers and marks them ERROR - 30s periodic sync loop catches containers that die after startup - Reconcile syncs status before counting active instances - node-runner switched to node:20-slim for npm package compatibility ## Test plan - [x] 236 mcpd tests pass - [ ] Deploy, verify crashed home-assistant shows ERROR not RUNNING - [ ] Rebuild node-runner with slim, verify home-assistant starts
michal added 1 commit 2026-02-23 00:18:40 +00:00
feat: container liveness sync + node-runner slim base
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / test (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / package (pull_request) Has been cancelled
d07d4d11dd
- Add syncStatus() to InstanceService: detects crashed/stopped containers,
  marks them ERROR with last log line as context
- Reconcile now syncs container status first (detect dead before counting)
- Add 30s periodic sync loop in main.ts
- Switch node-runner from alpine to slim (Debian) for npm compatibility
  (fixes home-assistant-mcp-server binary not found on Alpine)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
michal merged commit d38b5aac60 into main 2026-02-23 00:18:41 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: michal/mcpctl#15