feature/Refusal-shows-server-message · L-260926-b72417 - #45
Merged
Merged
Conversation
`pipelex-method-apps` takes `@pipelex/sdk` from `pipelex-sdk-js`'s feature/Failed-run-report-js, written at the dependency entry of webapp-js/package.json with the lock regenerated in the same commit (P1). The collapse before this branch merges is `wt unpin _pipelex-method-apps--failed-run-reason-shown pipelex-sdk-js --to <version>` (P2, P7).
…rom its stored report `pollDurableRun` now puts the run's stored error report (the result lookup's, else the status read's) on the `RunFailedError` it classifies, and passes the status read's `finished_at`. `classifyRunFailed` reads the display from the report: its title in the headline, its message with the provider's raw text cut out, its user action's detail as the hint, its `retryable` verdict as a retry line, and a support line with the run id, the error type and when the run ended. A run with no report keeps the SDK's sentence. `<ErrorDisplay>` renders the retry line and the support line, and `docs/errors.md` describes where a failed run's reason comes from. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FigDssaJrvNcmbnBedi7oq
A `wait_and_retry` user action says the system will retry automatically, which is untrue of a run that has ended: nothing retries it. The failed-run display now drops that advice and lets the retry line say what to do. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FigDssaJrvNcmbnBedi7oq
`classifyResponse` now reads a runner refusal at /v1/start or /v1/execute from its problem document: the user action's detail becomes the hint in place of the one the HTTP status chose, the `retryable` verdict becomes the retry line, and the method's validation items, with an unknown model's reference and the model deck's suggestions, are listed in the technical details ahead of the raw body. An answer carrying none of these keeps its old classification. The next-step and retry helpers are shared with the failed-run classification, and docs/errors.md gains a section on refusals. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
When no cause advised anything, the runtime fills in an `unknown` user
action ("Check pipe_stack to identify which pipe failed"), which a verbose
self-hosted runner sends on /v1/execute. It points at a field the display
never shows, so `nextStepOf` now drops the `unknown` kind as it drops
`wait_and_retry`, on refusals and failed runs alike.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`pipelex-method-apps` takes `@pipelex/sdk` from the registry again, with the lock regenerated in the same commit. The pin stood at 98260ff0 of `pipelex-sdk-js` (P7).
… onto 0.26.0 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
lchoquel
changed the base branch from
feature/Failed-run-reason-shown
to
dev
September 27, 2026 10:49
…ady in this branch Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
A run the runner refuses, at /v1/start in durable mode or /v1/execute in blocking mode, is now classified from its problem document instead of by HTTP status alone. The hint is the runtime's user action (except a stale wait_and_retry promise or the unknown-kind fallback), a retry line appears only when
retryablesays so, and the method's validation items go in the technical details with an unknown model's reference and the deck's suggestions. An answer with no problem document keeps today's wording. This PR is stacked on pipelex-method-apps#44 and shares its next-step and retry helpers with the failed-run classification.Closes L-260926-b72417
🤖 Generated with Claude Code
Summary by cubic
A run the runner refuses — at
/v1/startin durable mode or/v1/executein blocking mode — is now classified from its problem document instead of by HTTP status alone. The runtime'suser_action.detailbecomes the hint (exceptwait_and_retryandunknownkinds), a retry line appears only whenretryablesays so, and the method's validation items — with an unknown model's reference and the model deck's suggestions — are listed ahead of the raw body in technical details. An answer with no problem document keeps today's wording, and the next-step and retry helpers are shared with the failed-run classification.Closes L-260926-b72417.
Written for commit 0de7e93. Summary will update on new commits.