Repository navigation
feat: resolve health status handling, contract validation discovery, … - #1283
Merged
Mimah97 merged 1 commit intoOct 17, 2026
Merged
Conversation
…and correlation id boundary specs Closes Vatix-Protocol#1203, Vatix-Protocol#1200, Vatix-Protocol#1202, Vatix-Protocol#1201 ## Vatix-Protocol#1203 — apps/api: AppService.getHealth degraded branch returns 503 and is asserted in controller tests - Updated AppController.health to return HTTP 503 (SERVICE_UNAVAILABLE) when AppService.getHealth reports a degraded status and HTTP 200 (OK) when healthy, enabling load balancers and uptime monitors to accurately detect dependency degradation. - Added explicit unit tests in apps/api/src/app.controller.spec.ts asserting both HTTP 200 on healthy checks and HTTP 503 on degraded checks. ## Vatix-Protocol#1200 — scripts/validate-contracts.js: distinguish missing contract directory from compilation failures - Track missing contract directories in a separate missing array distinct from cargo compilation failures (failed). - Log explicit failure details with expected directory paths when a contract directory is absent. - Report Passed, Missing, and Failed counts separately in the final summary. - Guard the --check-drift gate by failing immediately and skipping drift detection when any contract was missing or failed to compile. ## Vatix-Protocol#1202 — scripts/validate-contracts.js: dynamically derive contract list from filesystem - Replaced the hardcoded contract array with dynamic directory discovery under packages/contract/contracts filtering for valid directories containing Cargo.toml. - Merged discovered contracts with expected contracts declared in manifestKeysByContract sorted deterministically. - Added a validation check under --check-drift that fails loudly if any discovered contract lacks a mapping in manifestKeysByContract. ## Vatix-Protocol#1201 — packages/config: test 64-char boundary and fallback for sanitizeCorrelationId - Added comprehensive unit tests in packages/config/scripts/__tests__/check-shared-config.test.mjs verifying: - Valid 64-character correlation ID strings pass through unchanged. - Valid 65-character strings are truncated to exactly 64 characters. - Empty strings and strings consisting purely of invalid characters return null. - resolveCorrelationId({}) defaults to the expected local PID fallback (/^local-\d+$/).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…and correlation id boundary specs
Closes #1203, Closes #1200, Closes #1202, Closes #1201
#1203 — apps/api: AppService.getHealth degraded branch returns 503 and is asserted in controller tests
#1200 — scripts/validate-contracts.js: distinguish missing contract directory from compilation failures
#1202 — scripts/validate-contracts.js: dynamically derive contract list from filesystem
#1201 — packages/config: test 64-char boundary and fallback for sanitizeCorrelationId
See CONTRIBUTING.md for contribution guidelines and SECURITY.md for reporting security issues.