Skip to content

type-unsafe cast in Protocol result deserialization #601

@devcrocod

Description

@devcrocod

Protocol.request() deserializes the result using content-based polymorphic deserialization (selectClientResultDeserializer / selectServerResultDeserializer), which picks a concrete type based on JSON structure. The result is then cast to the caller's expected type via as T.

This is particularly problematic for:

  • GetTaskPayloadResult
  • GetTaskResult

related #566

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingrefactoringMaking things better

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions