Skip to content

Make RPC payload classification declaration-derived #99

Closed

Description

@ueberBrot

Parent

Spec: Complete the review-driven Effect API Query 0.1.0 programme

What to build

Broad payload Schemas accept valid inputs and encoders while actual payloadless calls remain concise.

Acceptance criteria

  • Classify payloadlessness from the actual declaration rather than void assignability.
  • Public API compiler fixtures cover Unknown, Any, void-containing unions, and true payloadless RPCs across key, query, mutation, infinite, accumulated, live, and encoder APIs.
  • Verify valid input-bearing calls at runtime and preserve default construction semantics.
  • Retain canonical JSON restrictions: broad input support does not imply that every broad-schema value is a valid default key.
  • Run the repository compiler and supported TypeScript 5.9 fixtures against workspace dependencies and update minimal contract guidance needed for the changed signatures.

Metadata

Metadata

Assignees

Labels

ready-for-agentFully specified, ready for an AFK agent

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions