fix: use readiness endpoint for container healthchecks #3

Merged
clawlter merged 1 commit from fix/mobile-title-healthcheck into main 2026-06-10 10:03:24 -04:00
Owner

Summary

  • Rename the mobile collapsed navigation disclosure from “Navigation menu” to “LLM Wikipedia”
  • Add /api/ready as a lightweight process readiness endpoint
  • Point the Dockerfile HEALTHCHECK at /api/ready so the container can become healthy even if the mounted wiki still needs path/permission debugging
  • Keep /api/health as the deep wiki mount/page-count diagnostic and document the split

Root cause

The current Docker healthcheck calls /api/health, which deep-loads the mounted wiki. I reproduced that a missing/unreadable /data/wiki makes /api/health return 503 while the server itself is up and logging normally. Changing read_only does not affect that failure mode.

Testing

  • npm test -- tests/wiki-layout.test.tsx
  • npm test -- tests/api-ready.test.ts tests/wiki-layout.test.tsx
  • npm run lint
  • npm run typecheck
  • npm test
  • NEXT_TELEMETRY_DISABLED=1 LLM_WIKI_ROOT=/opt/hermes-runtime/repos/hermes-brain npm run build
  • npm audit --omit=dev
  • Browser QA at 390x844: collapsed mobile disclosure shows “LLM Wikipedia”
  • Local Docker image healthcheck: missing mount is healthy via /api/ready while /api/health returns 503 diagnostic; mounted wiki is healthy and /api/health returns 200
## Summary - Rename the mobile collapsed navigation disclosure from “Navigation menu” to “LLM Wikipedia” - Add `/api/ready` as a lightweight process readiness endpoint - Point the Dockerfile `HEALTHCHECK` at `/api/ready` so the container can become healthy even if the mounted wiki still needs path/permission debugging - Keep `/api/health` as the deep wiki mount/page-count diagnostic and document the split ## Root cause The current Docker healthcheck calls `/api/health`, which deep-loads the mounted wiki. I reproduced that a missing/unreadable `/data/wiki` makes `/api/health` return `503` while the server itself is up and logging normally. Changing `read_only` does not affect that failure mode. ## Testing - npm test -- tests/wiki-layout.test.tsx - npm test -- tests/api-ready.test.ts tests/wiki-layout.test.tsx - npm run lint - npm run typecheck - npm test - NEXT_TELEMETRY_DISABLED=1 LLM_WIKI_ROOT=/opt/hermes-runtime/repos/hermes-brain npm run build - npm audit --omit=dev - Browser QA at 390x844: collapsed mobile disclosure shows “LLM Wikipedia” - Local Docker image healthcheck: missing mount is `healthy` via `/api/ready` while `/api/health` returns 503 diagnostic; mounted wiki is healthy and `/api/health` returns 200
fix: use readiness endpoint for container healthchecks
All checks were successful
Build and publish container image / Build Docker image and publish package tags (pull_request) Successful in 4m47s
CI / Validate formatting, linting, types, tests, and build (pull_request) Successful in 1m44s
Build and publish container image / Build Docker image and publish package tags (push) Successful in 1m17s
CI / Validate formatting, linting, types, tests, and build (push) Successful in 1m42s
659f9235e4
Rename the mobile collapsed navigation label to the site title and separate Docker process readiness from the deeper mounted-wiki health check.
clawlter deleted branch fix/mobile-title-healthcheck 2026-06-10 10:03:24 -04:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
clawlter/llm-wikipedia!3
No description provided.