Skip to content

feat(service): add /healthz endpoint for dependency health checks#925

Merged
suchapalaver merged 7 commits intomainfrom
feat/healthz-endpoint
Feb 4, 2026
Merged

feat(service): add /healthz endpoint for dependency health checks#925
suchapalaver merged 7 commits intomainfrom
feat/healthz-endpoint

Conversation

@suchapalaver
Copy link
Copy Markdown
Collaborator

Expose a health check endpoint that reports database and graph-node connectivity status, enabling load balancers and orchestration tools to detect service degradation.

Closes #503


Signed off by Joseph Livesey joseph@semiotic.ai

@coveralls
Copy link
Copy Markdown

coveralls commented Feb 3, 2026

Pull Request Test Coverage Report for Build 21680564461

Details

  • 83 of 116 (71.55%) changed or added relevant lines in 3 files are covered.
  • 2 unchanged lines in 1 file lost coverage.
  • Overall coverage decreased (-0.02%) to 69.45%

Changes Missing Coverage Covered Lines Changed/Added Lines %
crates/service/src/routes/healthz.rs 45 78 57.69%
Files with Coverage Reduction New Missed Lines %
crates/tap-agent/src/agent/sender_account.rs 2 85.72%
Totals Coverage Status
Change from base Build 21680168182: -0.02%
Covered Lines: 11094
Relevant Lines: 15974

💛 - Coveralls

Expose a health check endpoint that reports database and graph-node connectivity status,
enabling load balancers and orchestration tools to detect service degradation.

Closes #503
Reuse a single PostgreSQL container for all test databases instead of
starting a new container per test. Reduces test execution time and
resource usage when running multiple integration tests.
Add 5-second timeout to graph-node health check to ensure load balancers
receive timely responses even when graph-node is degraded. Standardize
status response to "healthy"/"unhealthy" for consistency.
…able

Add test coverage for the unhealthy dependency scenario to ensure the
health endpoint correctly reports service degradation to load balancers.
…bels

Add 5-second timeout for database health checks to prevent /healthz from
hanging when the database is slow or unresponsive. Standardize all health
check status labels to "healthy"/"unhealthy" for consistent responses.
…heck

Replace `indexingStatuses` query with `__typename` introspection to check
graph-node connectivity. This works even when no subgraphs are deployed.
@suchapalaver suchapalaver force-pushed the feat/healthz-endpoint branch from 96c8c0e to 391a80b Compare February 4, 2026 16:51
…cript robustness

Remove duplicate 7302:7300 port mapping in local-network.patch that would
cause Docker Compose to fail. Also refactor close-allocations.sh to use
array-based command building for safer argument handling, and add
clarifying comments about mnemonic parsing limitations.
@suchapalaver suchapalaver marked this pull request as ready for review February 4, 2026 17:31
@suchapalaver suchapalaver merged commit 9e7b67a into main Feb 4, 2026
12 checks passed
@suchapalaver suchapalaver deleted the feat/healthz-endpoint branch February 4, 2026 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Healthy endpoint

3 participants