feat(analytics): report read failures by error notification instead of inline text - #4552
Merged
dearsimanovich-epam merged 1 commit intoSep 15, 2026
Conversation
…f inline text Analytics read failures now travel as ServerActionResponse envelopes and are reported by error notification in the service's own words, so an operator sees the service's errorHeader/errorMessage and can quote a requestId. Nine inline failure texts are removed across Evaluators, Pipelines and ConversationsTrace; AnalyticsDataApi's 13 reads move from `T | null` to the envelope, and PipelineReadResult is retired in favour of reading a refusal off `status === 403`. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
dearsimanovich-epam
requested review from
Gimir,
NastassiaKryshtal,
PolinaGurinovich97,
denys-kolomiitsev and
ya092
as code owners
September 15, 2026 09:31
dearsimanovich-epam
enabled auto-merge (squash)
September 15, 2026 09:31
ya092
approved these changes
Sep 15, 2026
dearsimanovich-epam
deleted the
feat/report-analytics-read-failures-by-notification
branch
September 15, 2026 10:46
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.
Description:
Analytics reported a failed read by writing a fixed English sentence into the page it was rendering — the same class of event that every other console surface reports through an error notification. Those sentences also said less than the app already knew: the service's
errorHeader,errorMessageandrequestIdwere read byBaseApiand then discarded, because the read methods returnedT | null, so an operator had no request id to quote at the team running the service. And because the text was inserted into the page's own column flow, it shifted the grid down on arrival and back up on the next successful read.Analytics read failures now travel as
ServerActionResponseenvelopes and are reported by error notification in the service's own words, falling back to the existing fixed string only where the service supplied none.Key Changes:
T | nulltoServerActionResponse<T>, so the error envelope survives the callPipelineReadResultretired; a refusal is now read offstatus === 403openspec/changes/archive/2026-09-15-move-analytics-load-errors-to-notifications/keeping onlyproposal.mdanddesign.mdper the Analytics retention ruleNew Components:
useReadFailureNotification— shared hook turning a failed read envelope into an error notification carrying the service's header, message and request iduseHopReadReport— the ConversationsTrace inspector's wrapper over that hook for its own client-side hop readsBreaking Changes:
AnalyticsDataApi's 13 read methods returnServerActionResponse<T>instead ofT | null; every caller in this repo is updated in the same commit.PipelineReadResultis removed — callers read a refusal offstatus === 403.Checklist:
(Issue #<ticket>)(comma-separated list of issues)🤖 Generated with Claude Code