wireframe 0.3.0

Simplify building servers and clients for custom binary protocols.
Documentation
@streaming_request
Feature: Streaming request body consumption
  Streaming request bodies let handlers consume inbound payloads
  incrementally while preserving back-pressure and error propagation.

  Scenario: StreamingBody exposes an AsyncRead adapter
    Given a streaming request body channel with capacity 4
    When body chunks "hello " and "world" are sent
    And the streaming body is read through the AsyncRead adapter
    Then the collected body is "hello world"

  Scenario: Bounded request body channels apply back-pressure
    Given a streaming request body channel with capacity 1
    When one body chunk "first" is buffered without draining the stream
    And another body chunk "second" is sent with a 50 millisecond timeout
    Then the send is blocked by back-pressure

  Scenario: Request body stream errors reach consumers
    Given a streaming request body channel with capacity 4
    When body chunk "ok" is sent
    And a request body error of kind "invalid data" is sent
    And the request body stream is drained directly
    Then one chunk is received before the error
    And the last stream error kind is "invalid data"