-
[issue-6421] [FE] fix: truncate threads list and surface items load errors (#6425)
发布于
2026-04-30 10:34:37 +00:00 - [issue-6421] [FE] fix: prevent false "all items processed" error in annotation queue
When a user previously visited an annotation queue page with ?status=initial
in the URL, returning after annotating all items caused the INITIAL view to
remain stuck showing "All items in this annotation queue have already been
processed" error. The auto-transition to COMPLETED only fired when currentView
was unset, not when it was already set to "initial".Fix: extend the useEffect to also transition INITIAL→COMPLETED when items are
loaded and all are processed. Also guard the error alert in GetStartedView
with totalCount > 0 to prevent showing it when queueItems is empty (e.g.,
during a failed or incomplete fetch).Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
- [issue-6421] [FE] fix: extend COMPLETED transition to cover ANNOTATING state and add GetStartedView tests
Also handles the edge case where all queue items are processed externally
while a user is in the ANNOTATING view. Adds unit tests for GetStartedView
alert guard and button label logic.Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
- Revert "[issue-6421] [FE] fix: extend COMPLETED transition to cover ANNOTATING state and add GetStartedView tests"
This reverts commit
24e01cfda7.- Revert "[issue-6421] [FE] fix: prevent false "all items processed" error in annotation queue"
This reverts commit
cc53806f3a.- [issue-6421] [FE] fix: truncate threads list and surface items load errors
The SME flow's threads list query was missing truncate=true, causing the
backend ClickHouse response to exceed buffer/timeout limits on queues with
heavy thread payloads. The connection was closed mid-stream ("Premature
end of chunk coded message body"), the request returned 500, and the FE
silently treated the empty response as "all items processed".Changes:
- Pass truncate=true to useThreadsList (matches the existing useTracesList
pattern). Detail views fetch full untruncated data on demand, so this is
safe. - Capture isError from both items hooks and expose isItemsError on the
context. - Render a dedicated items-load error state with a retry action instead
of falling through to the misleading "all items processed" alert. - Replace NoDataView's hasQueueId boolean with a variant prop covering
no-queue, queue-error, and items-error cases.
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com
Co-authored-by: Douglas Blank doug@comet.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com
Co-authored-by: andrii.dudar andriid@comet.com下载附件