Skip to content

Releases: Intelligent-Internet/opencode-a2a

v0.5.1

26 Mar 10:34
39fa676

Choose a tag to compare

What's Changed

Full Changelog: v0.5.0...v0.5.1

v0.5.0

24 Mar 08:33
ae79fe6

Choose a tag to compare

Overview

v0.5.0 focuses on runtime state durability, database-first server defaults, and naming cleanup around upstream error taxonomy and translators.

Highlights

  • Database-backed runtime state: Added a configurable database-backed persistence layer for task records, session binding and ownership, interrupt request bindings, and interrupt tombstones so runtime state can survive process restarts.
  • Durable database defaults: Switched the default runtime state backend from memory to database, added a default SQLite profile, and repositioned memory as an explicit opt-in development/test mode.
  • Session binding semantics cleanup: Promoted database-backed session binding and ownership from cache-like retention to durable state, removing TTL/max-size eviction from the durable path while retaining explicit error behavior when an upstream OpenCode session is missing.
  • Upstream error taxonomy naming alignment: Renamed taxonomy and translator modules to make the layering between upstream classification, execution translation, and JSON-RPC error responses clearer without changing runtime behavior.
  • Test and infrastructure hardening: Removed stale memory-store assumptions, cleaned up dead durability-era code paths, eliminated SQLite engine lifecycle leaks in tests, and resolved SQLAlchemy registry warnings for custom task tables.

Full Changelog

v0.4.1...v0.5.0

v0.4.1

23 Mar 13:34
b58a57e

Choose a tag to compare

Overview

v0.4.1 focuses on execution/runtime modularization, outbound client lifecycle hardening, sandbox policy consolidation, and correctness fixes for streaming output and error handling.

Highlights

  • Execution and client modularization: Split execution responsibilities across session, streaming, and policy-oriented components, and further reduced facade/helper indirection in the outbound A2A client stack.
  • A2A tool and error-path hardening: Centralized outbound/client-side error mapping, aligned JSON-RPC translators with shared upstream taxonomy, and stabilized a2a_call failure payloads.
  • Outbound client cache lifecycle controls: Added bounded outbound client caching with TTL, max-size, busy-aware reuse, and safer eviction semantics to avoid closing clients that are still in use.
  • Sandbox and policy enforcement cleanup: Centralized sandbox policy decisions, validated conflicting configuration earlier, and aligned directory/shell exposure with the effective runtime policy.
  • CLI and streaming correctness improvements: Removed the redundant serve subcommand and fixed final streaming snapshots so reasoning content no longer leaks into canonical final text.

Full Changelog

v0.4.0...v0.4.1

v0.4.0

23 Mar 05:37
6cb1694

Choose a tag to compare

Overview

v0.4.0 adds client-side A2A outbound integration and stream call hardening while also tightening release reliability and removing duplicated documentation.

Highlights

  • A2A client + CLI integration: Added outbound A2A client facade, CLI call integration, and streamed a2a_call handling to support client-side message delivery workflows.
  • Authentication docs clarification: Clarified OpenCode auth state precedence in deployment scenarios for better configuration consistency and operational confidence.
  • Documentation cleanup: Consolidated duplicated documentation content and reduced overlap to improve readability and maintainability.
  • Release pipeline reliability: Updated publish/CI workflow behavior for stable execution under newer action runtimes by explicitly moving workflow JS actions to Node.js 24 mode and disabling setup-uv caching that could fail during publish.
  • Formatting stability: Fixed a ruff format regression path that previously caused release baseline checks to fail unexpectedly.

Full Changelog

v0.3.1...v0.4.0

v0.3.1

22 Mar 03:37
6d73c71

Choose a tag to compare

Overview

v0.3.1 standardizes the project, package, CLI, and repository naming around opencode-a2a, while keeping the full A2A runtime behavior, test coverage, and release pipeline aligned with the new identity.

Highlights

  • Unified Naming: Renamed the published package from opencode-a2a-server to opencode-a2a, and migrated the Python package namespace from opencode_a2a_server to opencode_a2a.
  • CLI & Runtime Alignment: Updated the CLI entrypoint, runtime service name, version metadata lookup, and health/profile identifiers to consistently use opencode-a2a.
  • Docs & Test Coverage Refresh: Synchronized README, guide, contributing, security docs, contract assertions, and test imports with the new package and repository naming.
  • Release Pipeline Continuity: Updated pre-commit, coverage gates, smoke tests, CI workflows, and publish workflows so future releases build and publish under the new package name.
  • Repository Rename: Renamed the GitHub repository to Intelligent-Internet/opencode-a2a so package metadata, source hosting, and release automation point to the same canonical project name.

Full Changelog

v0.3.0...v0.3.1

v0.3.0

21 Mar 15:44
0d397b3

Choose a tag to compare

Overview

v0.3.0 focuses on structural modularity and protocol alignment, bringing machine-readable service contracts, consolidated runtime profiles, and enhanced streaming metadata to the A2A server.

Highlights

  • Machine-readable Service Contracts: Exposed explicit cancel/replay semantics and execution environment boundary metadata in service contracts.
  • Structural Refactoring: Reorganized adapter modules, split oversized runtime and contract modules, and aligned app assembly with SDK defaults for better maintainability.
  • Protocol & Streaming Alignment: Consolidated JSON-RPC capability snapshots and refined streaming terminal states to ensure consistency across REST and JSON-RPC interfaces.
  • Engineering Hygiene: Completed a full remediation of the codebase, removing dead helpers and explicitly configuring keepalive and interrupt retention.

Full Changelog

v0.2.5...v0.3.0

v0.2.5

19 Mar 16:37
aa72fd2

Choose a tag to compare

Overview

v0.2.5 aligns stream text extraction with the current upstream opencode serve part protocol, so snapshot-based stream parts are translated into A2A text output instead of completing with status-only events.

Highlights

  • Upstream protocol alignment: streaming output now recognizes snapshot, step-start, and step-finish parts from opencode serve and extracts text from their snapshot fields.
  • Stable downstream rendering: A2A clients now receive text artifact updates for snapshot-based upstream responses instead of falling through to Content unavailable.
  • Final response consistency: final message text extraction now also understands snapshot-based parts while still preferring explicit text parts when both are present.
  • Regression coverage: new tests cover snapshot-based stream parts and final-response text extraction behavior.

Full Changelog

v0.2.4...v0.2.5

v0.2.4

19 Mar 15:55
05d1886

Choose a tag to compare

Overview

v0.2.4 narrows the runtime boundary back to an external opencode serve, restores request-scoped model selection and provider discovery behavior, and tightens interrupt metadata to the confirmed shared contract.

Highlights

  • External upstream boundary: opencode-a2a-server is again focused on adapting an already running opencode serve instead of managing that upstream process itself.
  • Contract fixes: request-scoped model selection and provider/model discovery extensions are restored so clients can keep using the documented shared and OpenCode-specific surfaces.
  • Interrupt contract cleanup: shared interrupt details are narrowed to the confirmed wire contract, reducing ambiguity for downstream consumers.
  • Documentation refresh: README and supporting docs now present the project scope, quick start path, and deployment boundary more clearly.

Full Changelog

v0.2.3...v0.2.4

v0.2.3

19 Mar 06:43
c30d2ed

Choose a tag to compare

Overview

v0.2.3 adds an optional managed upstream mode so opencode-a2a-server can start and bind to a local opencode serve automatically.

Highlights

  • Managed OpenCode upstream: the runtime can now launch a local opencode serve, capture its actual listening URL, and clean it up on shutdown.
  • More reliable local startup: this avoids failures caused by upstream random ports when users would otherwise need to wire two processes together manually.

Full Changelog

v0.2.2...v0.2.3

v0.2.2

19 Mar 06:04
3641410

Choose a tag to compare

Overview

v0.2.2 simplifies the runtime surface around a single foreground serve entrypoint and clarifies workspace configuration.

Highlights

  • Serve-first runtime: opencode-a2a-server now focuses on direct foreground serving, leaving supervision and deployment orchestration to operators.
  • Clearer workspace configuration: OPENCODE_WORKSPACE_ROOT is now the single runtime variable for the default OpenCode workspace root.

Full Changelog

v0.2.1...v0.2.2