Releases: MyPrototypeWhat/codex-a2a
Releases · MyPrototypeWhat/codex-a2a
v0.3.1
v0.3.0
Minor Changes
-
820a927: ### Breaking Changes
cancelTasknow usesAbortControllerto truly abort running Codex streams instead of soft polling. CustomgetTurnOptionsthat return asignalwill be merged with the internal abort signal.- Minimum
@openai/codex-sdkversion bumped to^0.116.0. - Minimum
@a2a-js/sdkversion bumped to^0.3.13. - License changed from Apache-2.0 to MIT.
Features
- AbortController cancellation — tasks are now cancelled immediately via
AbortSignalpassed torunStreamed, replacing the previous poll-based approach. - Thread cache LRU eviction — new
maxThreadsoption (default 64) with automatic eviction of least-recently-used threads to prevent memory leaks. AddedclearThreads()public method. - Configurable CORS — new
corsoption onCodexA2AServerto customizeorigin,methods, andheaders(defaults unchanged). - Graceful shutdown —
stop()now waits for active connections to drain (configurable viashutdownTimeout, default 5s) and cleans up cached threads. - New Codex event support — handles
thread.startedandThreadErrorEvent(type: "error") from codex-sdk 0.116. - Robust error handling —
execute()is wrapped in try-catch;resolveCodex()provides a clear error message when@openai/codex-sdkis missing. - Safe port scanning —
findAvailablePortuses iteration instead of recursion, with a 100-port scan limit. - Changeset + CI — added
@changesets/clifor version management and GitHub Actions workflows for CI and automated npm publishing.
Bug Fixes
- Fixed potential stack overflow in recursive
findAvailablePortwhen many ports are occupied. - Fixed
publishFailurenot callingeventBus.finished()whenrunStreamedthrows synchronously.