ROAR Protocol SDK v0.3.0
Changelog
All notable changes to the ROAR Protocol specification and reference SDKs are documented here.
Format: [version] — date — description
[Python SDK 0.3.0] — 2026-03-16
Security (audit fixes)
- Enforce
DelegationToken.max_usesserver-side — tokens with exhausted use counts are now rejected at the server layer, not just flagged byis_valid() - Timestamp replay window enforced strictly: messages older than 300 seconds are rejected
- Empty
auth: {}field now causes the server to return 403 rather than silently passing
Changed
__version__aligned to0.3.0to matchpyproject.toml- Added
py.typedmarker (PEP 561) so mypy and pyright recognise inline type annotations
[TypeScript SDK 0.3.0] — 2026-03-16
Security (audit fixes, aligned with Python SDK 0.3.0)
verifyMessagenow enforces the 300-second replay window- Package version bumped from
1.0.0to0.3.0to match spec maturity and Python SDK
Changed
- Import paths in examples changed from repo-relative paths to
@roar-protocol/sdkpackage imports
[Python SDK 0.2.1] — 2026-03-13
Fixed
- Minor bug fixes in
ROARClientHTTP error handling AgentDirectory.search()now returns an empty list (notNone) when no agents match
[Python SDK 0.2.0] — 2026-03-12
Added
- Initial public release of standalone
roar-sdkPython package AgentIdentity,AgentCard,AgentDirectory,ROARMessage,MessageIntentROARClient(HTTP),ROARServer(FastAPI),ROARHub- Ed25519 asymmetric signing (
roar_sdk.signing) DelegationToken,issue_token,verify_token- DID method support:
did:roar,did:key,did:web SQLiteAgentDirectoryfor persistent discoveryDiscoveryCache,IdempotencyGuard,AutonomyLevel- MCP, A2A, and ACP protocol adapters
[0.2.0] — 2026-03-12
Added
ROAR-SPEC.md— umbrella specification document linking all 5 layersSDK-ROADMAP.md— implementation status and open tasks for Python/TS SDKsspec/schemas/— JSON Schemas forAgentIdentity,ROARMessage,StreamEventexamples/python/— runnable echo server and clienttests/conformance/— language-agnostic golden fixtures.github/ISSUE_TEMPLATE/spec_change.md— RFC template for spec proposals- Scope section in README clarifying spec vs SDK
- "Where's the code?" section in README linking to both SDK implementations
- "Implement ROAR in 5 steps" quickstart in README
- Concrete scenario in README showing cross-layer message flow
- Security model section in README (HMAC vs Ed25519, end-to-end signing flow)
- HTTP endpoints table in ROAR-SPEC.md
Changed
- README: Fixed incorrect intent names (
request/response/subscribe/unsubscribe/error/cancel→execute/delegate/update/ask/respond/notify/discover) - README: Added branding and origin story from @kdairatchi
spec/VERSION.json: Addedpython_sdk_min_versionandts_sdk_min_versionfields
[0.1.0] — 2026-03-11
Added
- Initial spec:
spec/01-identity.mdthroughspec/05-stream.md README.mdwith 5-layer overview and comparison tableINSTALL.md— ProwlrBot as reference implementationCONTRIBUTING.md,SECURITY.md,LICENSE(MIT)spec/VERSION.jsonwith spec v0.1.0 declaration- CI workflow (
.github/workflows/ci.yml)