ReviewOS

home-lang/home

Port gRPC configured deadline contracts

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

Tracks copied Bun corpus position 3977 from #66: js/third_party/grpc-js/test-deadline.test.ts.

Acceptance criteria:

  • parse grpc.service_config method timeouts for generated clients
  • apply configured deadlines when calls omit a deadline and choose the earlier deadline when both are present
  • return DEADLINE_EXCEEDED exactly once with the existing contextual gRPC stack behavior
  • fix long real-timer progression so finite timers complete within the runner's bounded event-loop drain instead of becoming falsely unsupported
  • retain cancellation/terminal-state safety, pass both concurrent upstream checks, and pin the file permanently

Parent: #66

10 days ago

Completed in a287f51180f2d5c41a66cf449c5daea6ea8e6ab0 and pushed to main.

  • Generated TestService clients now parse method-level grpc.service_config timeouts and choose the earlier configured/explicit deadline.
  • Deadline completion remains single-settlement and reports DEADLINE_EXCEEDED with call-propagation, method, and corpus context.
  • Long finite timers now progress in bounded microtask batches, eliminating false event-loop unsupported results without busy-waiting long delays.
  • Malformed service configs preserve their parse cause and add ServiceConfig path/corpus stack frames.
  • Focused result: 2 passed, 0 todo, 0 failed, 0 unsupported; diagnostics, SQL, and permanent third-party suites pass.

Sign in to comment on this issue.