Repository navigation
Conversation
This was referenced Oct 9, 2026
Collaborator
Author
|
Closing this Python-only draft because its implementation files were retired by P5 (#222). The current TypeScript implementation was inspected: Work already retained ordinary parsed observations, but the shared withPlugin wrapper still allowed Client.close() failures to overwrite callback results/original errors, including signal expiry during cleanup. The minimal current-Server replacement is #228 (two production lines plus six regression cases). The new cases failed before the fix and pass after it; full npm run check and the real TS UI journey (12/12) passed. No retired Python files are restored. |
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.
What changed
A durable Work plugin call could receive and validate its response, then lose that observation when MCP session cleanup failed or the operation deadline expired during cleanup. Preserve the observation for the existing immutable ToolResults save/verification path. Caller cancellation and missing responses remain unknown and recovery never resends the effect.
Add fixed failure-stage and timeout diagnostics without endpoint URLs, credentials, arguments, response content or raw exception text. This does not change timeout limits, permission gates, database schema or retry policy.
The historical main failure at 612ccd4 took 9.70s and had no observed plugin effect, but its logs omitted the underlying exception. Its exact cause remains unconfirmed; the reproducible cleanup defect is not presented as that failure's established root cause.
Acceptance journey
Open-source research
Verification
npm run check: passed; final Turbo results reuse the preceding successful run.packages/harness/scripts/quality.sh: passed.OPENBOT_TEMPORAL_TEST_PYTHON=... npm run test:control:python: passed; 1,077 control tests + 1,597 Worker tests, 3 skips (optional base Temporal modules and retained-history replay input).Security impact
Documentation and compatibility
AI or automation assistance