ReviewOS

home-lang/home

Port gRPC call propagation contracts

#229
Closed chris opened this 10 days ago ·
10 days ago

Continue Bun corpus parity at position 3971 by porting js/third_party/grpc-js/test-call-propagation.test.ts without modifying the copied corpus.

Acceptance criteria:

  • Prepare the copied TypeScript annotations without changing runtime semantics.
  • Load the generic TestService definition and support unary, client-streaming, server-streaming, and bidi calls through the existing in-memory gRPC server registry.
  • Propagate parent cancellation and deadlines with correct gRPC status codes to both parent and child calls.
  • Preserve callback/status ordering and prevent duplicate terminal delivery, with useful error stacks.
  • Pin the copied file in the permanent mini-suite with zero failures or unsupported cases.
  • Push the completed conventional commit to main as Chris Breuer without coauthors and update #66.
10 days ago

Completed in b52cb1b (pushed to main).

  • Ported all 8 call-propagation tests with zero todos, failures, or unsupported cases.
  • Added generic in-memory TestService unary/client-stream/server-stream/bidi dispatch with explicit terminal state and duplicate-delivery protection.
  • Parent cancellation and deadline flags now propagate to child calls with correct gRPC status objects and stack-bearing errors.
  • Narrow TypeScript preparation preserves the copied test semantics while avoiding initialization of its unrelated shared helper surface.
  • Pinned js/third_party/grpc-js/test-call-propagation.test.ts in the permanent mini-suite; focused, SQL, and permanent gates pass in Debug.

Sign in to comment on this issue.