feat: structured error logging and widget wiring for health score coverage - #2173
Merged
gaspergrom merged 2 commits intoSep 9, 2026
Conversation
…erage IN-1276 Replace unstructured console.error calls in health-score-coverage API routes with a JSON-structured logError helper, and wire all 8 widget components into the report view template per the implementation plan layout. Signed-off-by: Gašper Grom <gasper.grom@gmail.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds structured error logging and assembles the health-score coverage report widgets.
Changes:
- Adds a shared JSON error logger across nine report APIs.
- Integrates all eight coverage widgets into the report layout.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
frontend/server/utils/log.ts |
Adds structured error logging. |
signal-scores.get.ts |
Uses structured logging. |
signal-availability.get.ts |
Uses structured logging. |
signal-availability-lf.get.ts |
Uses structured logging. |
lifecycle.get.ts |
Uses structured logging. |
glance.get.ts |
Uses structured logging. |
github-security.get.ts |
Uses structured logging. |
category-maximum.get.ts |
Uses structured logging. |
category-coverage.get.ts |
Uses structured logging. |
bands.get.ts |
Uses structured logging. |
health-score-coverage-report.vue |
Adds the eight report widgets. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+9
to
+18
| console.error( | ||
| JSON.stringify({ | ||
| scope, | ||
| message, | ||
| error: | ||
| error instanceof Error | ||
| ? { name: error.name, message: error.message, stack: error.stack } | ||
| : error, | ||
| }), | ||
| ); |
epipav
approved these changes
Sep 9, 2026
Signed-off-by: Gašper Grom <gasper.grom@gmail.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 19 out of 19 changed files in this pull request and generated 1 comment.
Suppressed comments (1)
frontend/server/utils/log.ts:10
errorisunknown, and this serialization throws for values such asBigIntor circular objects. Every updated route invokes the helper before its status-aware rethrow/createError, so a logging failure replaces the intended HTTP response with a newTypeError. Catch serialization failures and emit a controlled JSON fallback; regression tests for circular andBigIntvalues would protect this shared helper.
JSON.stringify({
Comment on lines
+87
to
+89
| onServerPrefetch(async () => { | ||
| await suspense(); | ||
| }); |
gaspergrom
merged commit Sep 9, 2026
3008f64
into
release/IN-1276-health-score-coverage
6 checks passed
gaspergrom
deleted the
feat/IN-1276-wire-widgets-and-structured-logging
branch
September 9, 2026 18:01
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.
Summary
console.errorcalls in the 9 health-score-coverage API routes with a JSON-structuredlogErrorhelper (frontend/server/utils/log.ts), addressing review feedback that these logs weren't parseable by Datadog.health-score-coverage-report.vueper the layout inattachments/IN-1276/implementation-plan.mdsection 5 — each widget is self-contained (no props, own data fetching) so this is an import + template placement change only.Base branch is
release/IN-1276-health-score-coverage(IN-1276 epic release branch), notmain. Merge into the release branch once approved; do not merge intomaindirectly.Test plan
pnpm lint:fixclean (no new warnings/errors)pnpm tsc-checkcleanpnpm test— 285/285 passing/report/health-score-coveragerelease/IN-1276-health-score-coverage-