Skip to content

v0.2.1

Choose a tag to compare

@cheenulabs cheenulabs released this 20 Sep 18:01
· 19 commits to main since this release
834f055

Patch release: more reliable blocking burst delivery, observation stop, and usability fixes on top of 0.2.0.

Fixed

Blocking finite-burst delivery

Ready blocking consumers now receive the full ready queue in each thread crossing instead of stopping at 64 records. Queue count and byte limits are unchanged; overflow for genuinely slow consumers remains explicit (#66, #36).

RPC backpressure →

Stream and input edge cases

  • Sequential aiter / async for reuse on the same async stream no longer raises a busy error; concurrent readers and result-drain conflicts are still rejected (#62, #58).

  • Locally rejected, unsent input leaves a healthy client reusable without weakening ownership for commands that may have reached Pi (#61, #57).

New Features

Stop observation without closing Pi

Call stop() on an observation context, drain remaining buffered records, then inspect status.end_reason for scoped stop, discard, overflow, or process termination (#69, #56).

Scoped observation example →

Documentation and compatibility

  • Usage and API docs clarify interface choice for streaming, events, and settlement helpers (#70).

  • README covers Python API use cases and thinking-level controls (#71).

  • Tested Pi protocol baseline is 0.86.0; minimum remains 0.85.1 (#59).

Compatibility

Requirement Version
Python 3.11+
Pi protocol baseline (tested) 0.86.0
Pi protocol minimum 0.85.1
python -m pip install pi-agent-python-sdk==0.2.1

Import the package as pi_agent. No breaking API changes from 0.2.0.

Quick start · Compatibility · Changelog