Skip to content

Fail a mismatched rpc result in the process that produced it - #2609

Open
fzyzcjy wants to merge 1 commit into
tom/refactor-miles/op23-3from
tom/refactor-miles/op23-4
Open

Fail a mismatched rpc result in the process that produced it#2609
fzyzcjy wants to merge 1 commit into
tom/refactor-miles/op23-3from
tom/refactor-miles/op23-4

Conversation

@fzyzcjy

@fzyzcjy fzyzcjy commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

Part of #1837

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.

Tip: disable this comment in your organization's Code Review settings.

@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-3 branch from 91bb9c5 to dd955df Compare August 28, 2026 11:41
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-4 branch 3 times, most recently from c1bebd8 to 514c83b Compare August 28, 2026 14:33
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-3 branch from 0d358c8 to 4ab6742 Compare August 28, 2026 15:03
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-4 branch from 514c83b to 28982fe Compare August 28, 2026 15:03
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-3 branch from 4ab6742 to 69a68b4 Compare August 28, 2026 18:20
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-4 branch from 28982fe to 4b8d5cf Compare August 28, 2026 18:20
Arguments are validated on both sides of the wire: encoding constructs the
query model, which is a full validation. A result was not: the server dumped
it through pydantic's serializer, which only warns on a type mismatch, so a
worker answering the wrong type completed as a success and the failure
surfaced two processes away, as a client-side validation error over a payload
the server never checked - with the root cause reduced to a warning line in
the server log.

Serializing the result now treats those warnings as errors, so a method that
does not answer what it declares fails on the server, inside the call that
produced the value, with the mismatch in its traceback.
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-3 branch from 69a68b4 to 8b47f75 Compare August 29, 2026 12:39
@fzyzcjy
fzyzcjy force-pushed the tom/refactor-miles/op23-4 branch from 4b8d5cf to 5384aec Compare August 29, 2026 12:39

@fzyzcjy fzyzcjy left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No correctness or regression issue was found. Serialization mismatches now raise within the existing server-side exception boundary, and the target deliver retains this behavior.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant