Skip to content

fix(sdk): close conformance gaps in the agent, directory and service - #23

Merged
nkavian merged 1 commit into
offering-protocol:mainfrom
zhoodar:fix/sdk-conformance-audit
Sep 22, 2026
Merged

nkavian merged 1 commit into
offering-protocol:mainfrom
zhoodar:fix/sdk-conformance-audit

Conversation

@zhoodar

@zhoodar zhoodar commented Sep 15, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Correct Agent, Directory, and Service behavior against the ODP draft, with expanded shared conformance and regression coverage.
  • Bound Agent downloads during streaming, pin validated destinations, preserve TLS hostname checks, isolate supporting-document credentials, and add bounded read-only retries.
  • Resolve advertised search capabilities and validate typed filters, sort selection, and refinements without taking over application search or storage.
  • Correct representation defaults, pagination, response limits, content negotiation, conditional responses, and localized response metadata.
  • Accept compatible incoming minor versions while emitting 1.0. The original odp-specs vectors and schemas are unchanged.
  • Document integration responsibilities and keep root Maven properties alphabetical.

Compatibility

SearchPage includes per-entry issues. Service handlers report intentional request failures with OdpServiceException; unexpected handler exceptions produce masked internal errors. Individual retrieval defaults to full representations. Apache HttpClient 5 is an internal Agent dependency; Jackson 2 and Jackson 3 remain separate provider choices.

Applications own HTTP response caching, asynchronous wrapping, authentication/payment execution, and database-backed search semantics. Shared conformance reports retain explicit skips for unimplemented optional behavior and cases outside the SDK's execution boundaries.

Verification

  • ./mvnw verify on Java 17, 21, and 25
  • ./scripts/run-conformance.sh
  • ./scripts/verify-consumer.sh
  • ./scripts/verify-gradle-consumer.sh
  • ./scripts/run-node-interoperability.sh
  • Original protocol-version vectors: all seven cases executed for both Agent and Service
  • git diff --check

@nkavian
nkavian force-pushed the fix/sdk-conformance-audit branch from b525446 to 7d39d37 Compare September 21, 2026 01:54
@nkavian
nkavian force-pushed the fix/sdk-conformance-audit branch from 881a233 to d385816 Compare September 22, 2026 01:28
@nkavian
nkavian merged commit f81fc32 into offering-protocol:main Sep 22, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants