Quick Task 260416-kwq: SSE Streaming Documentation Summary

SSE streaming documentation added to CLAUDE.md covering annotation usage and generated output examples for all 5 generators, verified against golden test files.

Changes Made#

Task 1: Add SSE streaming documentation to CLAUDE.md#

Commit: 37b98c3

Three documentation additions to CLAUDE.md:

  1. SSE Streaming Annotation section (after Header Annotations, before Unwrap Annotation): Shows stream: true on HttpConfig with examples for basic streaming, path params, and query params -- all verified against internal/httpgen/testdata/proto/sse.proto.

  2. SSE Generated Output Examples (after TypeScript HTTP Servers, before OpenAPI Specifications): Five subsections covering each generator's SSE behavior:

    • Go Server: SSESender interface with Send(), SendWithEvent(), Flush() -- verified against sse_http.pb.go golden and generator.go source
    • Go Client: Generic SSEServiceEventStream[T proto.Message] with Next()/Err()/Close() pattern using bufio.Reader -- verified against sse_client.pb.go golden
    • TypeScript Client: async * generator methods returning AsyncGenerator<Event> with ReadableStream line buffering -- verified against sse_client.ts golden
    • TypeScript Server: Handler methods return ReadableStream<Event> instead of Promise, generated route converts to SSE format with error event handling -- verified against sse_server.ts golden
    • OpenAPI: text/event-stream content type with x-sse-event-schema vendor extension -- verified against SSEService.openapi.yaml golden
  3. Annotation Registry update: Row for ext 50003 changed from "HTTP path and method" to "HTTP path, method, and SSE streaming flag".

Deviations from Plan#

None -- plan executed exactly as written.

Self-Check: PASSED#

  • CLAUDE.md exists and contains SSE documentation
  • Commit 37b98c3 exists in git log
  • All 7 verification grep patterns pass