Skip to content

Compatibility

This page is the canonical compatibility matrix for A2A Mesh runtime versions, package surfaces, protocol fixtures, transports, optional peers, and deprecation windows.

Last checked on 2026-05-26 against the Node.js release schedule, the Node.js release index, and the repository tools/runtime-versions.json manifest.

Runtime Compatibility

The workspace engine range is Node.js >=22.22.1 <25 and pnpm >=11 <12. In plain engine terms, use Node.js >=22.22.1 <25 and pnpm >=11 <12. Development tooling pins pnpm 11.7.0 through packageManager and tools/runtime-versions.json.

RuntimeRepository statusCurrent repository versionUpstream status on 2026-05-26Support policy
Node.js 22 JodSupported LTS floor22.22.3 in CI smokeMaintenance LTS, EOL 2027-04-30Supported until the repository announces a higher floor through this page.
Node.js 24 KryptonPreferred LTS line24.16.0 in .node-version and .nvmrcActive LTS, maintenance starts 2026-10-20, EOL 2028-04-30Preferred local, CI, docs, and scaffold runtime.
Node 25Not supportedNot usedCurrent/maintenance line ending 2026-06-01Odd-numbered Current lines are not supported until the engine range is raised.
pnpm 11Supported package manager11.7.0Latest registry metadata checked separatelyRequired for workspace scripts and lockfile consistency.

Do not rely on Node.js 20 or older. Node.js 20 is outside the repository engine range and is already EOL in the Node.js project schedule checked for this policy.

Package Version Matrix

All public packages in the 0.2.0-alpha.0 release line share the same Node engine range: >=22.22.1 <25.

PackageCurrent versionNode rangeCompatibility notes
@a2amesh/cli0.2.0-alpha.0>=22.22.1 <25Published a2amesh command-line interface.
@a2amesh/mcp0.2.0-alpha.0>=22.22.1 <25A2A and MCP mapping helpers and bridge runtime.
@a2amesh/protocol0.2.0-alpha.0>=22.22.1 <25Protocol types, interfaces, constants, and validators.
@a2amesh/registry0.2.0-alpha.0>=22.22.1 <25Registry server, discovery, health, and storage helpers.
@a2amesh/runtime0.2.0-alpha.0>=22.22.1 <25Core runtime, client/server APIs, task lifecycle, and telemetry/auth hooks.
create-a2amesh0.2.0-alpha.0>=22.22.1 <25Project scaffolder.

Patch releases may add compatible bug fixes, tests, and docs. New public package surfaces must update public-surface.json, package docs, and this matrix before release.

Protocol Version Matrix

Protocol versionStatus in A2A MeshEvidence and behavior
0.3Legacy input compatibility onlyAgent Cards and registry interface metadata may be normalized when tests cover the shape. New runtime responses do not target 0.3.
1.0Primary runtime targetCore server/client tests, integration tests, Agent Card compatibility, and default CLI conformance use A2A 1.0 as the canonical runtime surface.
1.2a2amesh experimental profile fixtures (opt-in)Versioned fixtures and schemas cover the experimental Agent Card, message, task, stream, push, and negative cases. Client negotiation and CLI conformance do not prefer this profile unless the caller opts in.
Future versionsUnsupported until added deliberatelyA new version requires schemas, fixtures, CLI conformance support, docs, and protocol compatibility tests before it is documented as supported.

The executable fixture set lives under tests/conformance/fixtures/ and is run with pnpm run test:conformance.

Transport Feature Matrix

Transport surfaceStatusCovered behaviorRequired verification
HTTP+JSONSupportedAgent Card discovery, JSON-RPC message/send, task reads, task cancellation, push notification routes, registry routes, health, and metrics.Core, registry, integration, and conformance tests.
SSESupportedmessage/stream, task event streaming, heartbeat/close behavior, and task resubscribe surfaces.Core SSE tests, integration tests, and conformance stream fixtures.
WebSocketSupported package surfaceRequest/response A2A JSON-RPC over @a2amesh/internal-transport-ws.WebSocket package tests and shared transport contract tests.
gRPCRetained package surfaceA2A task and agent-card flows through @a2amesh/internal-transport-grpc.gRPC package tests and shared transport contract tests.
MCP bridgeBridge, not an A2A transportMaps supported MCP tool shapes to A2A tool/task concepts.MCP bridge mapping tests.

No transport should be documented for broad deployment without matching tests and security documentation for its auth, origin, TLS, or callback behavior.

Adapter Optional Peer Ranges

Provider and framework SDKs stay peer dependencies where possible so default installs do not pull every integration stack.

PackagePeer dependencySupported range
@a2amesh/runtime@opentelemetry/exporter-metrics-otlp-http^0.218.0 || ^0.219.0
@a2amesh/runtime@opentelemetry/exporter-trace-otlp-http^0.218.0 || ^0.219.0
@a2amesh/runtime@opentelemetry/resources^2.7.1
@a2amesh/runtime@opentelemetry/sdk-metrics^2.7.1
@a2amesh/runtime@opentelemetry/sdk-node^0.218.0 || ^0.219.0

Adapter tests use fake provider objects by default. Live provider behavior must remain opt-in and cannot be required by the default local verification gate.

Deprecation Policy

A supported runtime, protocol fixture, transport, package entry point, CLI command, or peer dependency range needs a minimum 90 days notice and one minor release with documentation before removal. The notice must name the replacement path, migration steps, affected package versions, and the first release where removal can happen.

Breaking removals should happen in a major release unless the upstream runtime or provider has already reached EOL or has an active security issue that makes support unsafe.

Removal conditions

Removal can proceed only when all of the following are true:

  • The deprecation notice has shipped in release notes, this page, and affected package docs.
  • A compatible replacement or explicit unsupported status is documented.
  • Tests, schemas, examples, and command docs no longer depend on the deprecated surface.
  • Protected branch CI passes on the removal change.
  • Security or ecosystem risk from keeping the surface is documented when removal happens before the normal notice window.

Validation Commands

bash
pnpm run docs:check
pnpm run docs:build
pnpm run lint:md

PowerShell:

powershell
pnpm run docs:check
pnpm run docs:build
pnpm run lint:md

Released under the Apache-2.0 License.