opencode-a2a 0.8.0__tar.gz → 0.8.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. {opencode_a2a-0.8.0/src/opencode_a2a.egg-info → opencode_a2a-0.8.1}/PKG-INFO +1 -1
  2. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/client.py +1 -1
  3. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1/src/opencode_a2a.egg-info}/PKG-INFO +1 -1
  4. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_client_facade.py +40 -0
  5. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.github/dependabot.yml +0 -0
  6. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.github/workflows/dependency-review.yml +0 -0
  7. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.github/workflows/publish.yml +0 -0
  8. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.github/workflows/validate.yml +0 -0
  9. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.gitignore +0 -0
  10. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.pre-commit-config.yaml +0 -0
  11. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/.secrets.baseline +0 -0
  12. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/AGENTS.md +0 -0
  13. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/CODE_OF_CONDUCT.md +0 -0
  14. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/CONTRIBUTING.md +0 -0
  15. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/LICENSE +0 -0
  16. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/README.md +0 -0
  17. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/SECURITY.md +0 -0
  18. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/SUPPORT.md +0 -0
  19. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/architecture.md +0 -0
  20. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/compatibility.md +0 -0
  21. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/conformance-triage.md +0 -0
  22. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/conformance.md +0 -0
  23. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/extension-specifications.md +0 -0
  24. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/guide.md +0 -0
  25. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/docs/maintainer-architecture.md +0 -0
  26. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/pyproject.toml +0 -0
  27. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/README.md +0 -0
  28. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/check_coverage.py +0 -0
  29. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/conformance.sh +0 -0
  30. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/dependency_health.sh +0 -0
  31. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/doctor.sh +0 -0
  32. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/health_common.sh +0 -0
  33. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/lint.sh +0 -0
  34. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/scripts/smoke_test_built_cli.sh +0 -0
  35. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/setup.cfg +0 -0
  36. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/__init__.py +0 -0
  37. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/auth.py +0 -0
  38. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/cli.py +0 -0
  39. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/__init__.py +0 -0
  40. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/agent_card.py +0 -0
  41. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/auth.py +0 -0
  42. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/config.py +0 -0
  43. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/error_mapping.py +0 -0
  44. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/errors.py +0 -0
  45. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/payload_text.py +0 -0
  46. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/polling.py +0 -0
  47. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/client/request_context.py +0 -0
  48. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/config.py +0 -0
  49. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/contracts/__init__.py +0 -0
  50. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/contracts/extensions.py +0 -0
  51. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/__init__.py +0 -0
  52. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/coordinator.py +0 -0
  53. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/event_helpers.py +0 -0
  54. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/executor.py +0 -0
  55. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/metrics.py +0 -0
  56. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/request_context.py +0 -0
  57. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/session_manager.py +0 -0
  58. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/stream_events.py +0 -0
  59. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/stream_runtime.py +0 -0
  60. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/stream_state.py +0 -0
  61. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/tool_error_mapping.py +0 -0
  62. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/tool_orchestration.py +0 -0
  63. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/execution/upstream_error_translator.py +0 -0
  64. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/invocation.py +0 -0
  65. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/__init__.py +0 -0
  66. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/application.py +0 -0
  67. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/dispatch.py +0 -0
  68. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/error_responses.py +0 -0
  69. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/__init__.py +0 -0
  70. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/common.py +0 -0
  71. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/interrupt_callbacks.py +0 -0
  72. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/interrupt_queries.py +0 -0
  73. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/provider_discovery.py +0 -0
  74. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/session_control.py +0 -0
  75. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/session_lifecycle.py +0 -0
  76. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/session_queries.py +0 -0
  77. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/handlers/workspace_control.py +0 -0
  78. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/methods.py +0 -0
  79. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/jsonrpc/params.py +0 -0
  80. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/metadata_access.py +0 -0
  81. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/opencode_upstream_client.py +0 -0
  82. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/output_modes.py +0 -0
  83. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/parsing.py +0 -0
  84. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/parts/__init__.py +0 -0
  85. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/parts/mapping.py +0 -0
  86. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/parts/text.py +0 -0
  87. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/profile/__init__.py +0 -0
  88. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/profile/runtime.py +0 -0
  89. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/protocol_versions.py +0 -0
  90. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/py.typed +0 -0
  91. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/runtime_state.py +0 -0
  92. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/sandbox_policy.py +0 -0
  93. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/__init__.py +0 -0
  94. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/agent_card.py +0 -0
  95. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/application.py +0 -0
  96. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/client_manager.py +0 -0
  97. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/lifespan.py +0 -0
  98. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/middleware.py +0 -0
  99. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/migrations.py +0 -0
  100. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/openapi.py +0 -0
  101. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/request_parsing.py +0 -0
  102. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/rest_tasks.py +0 -0
  103. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/state_store.py +0 -0
  104. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/server/task_store.py +0 -0
  105. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/task_states.py +0 -0
  106. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/trace_context.py +0 -0
  107. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a/upstream_taxonomy.py +0 -0
  108. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a.egg-info/SOURCES.txt +0 -0
  109. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a.egg-info/dependency_links.txt +0 -0
  110. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a.egg-info/entry_points.txt +0 -0
  111. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a.egg-info/requires.txt +0 -0
  112. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/src/opencode_a2a.egg-info/top_level.txt +0 -0
  113. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/__init__.py +0 -0
  114. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/__init__.py +0 -0
  115. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_agent_card.py +0 -0
  116. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_client_config.py +0 -0
  117. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_error_mapping.py +0 -0
  118. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_payload_text.py +0 -0
  119. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_polling.py +0 -0
  120. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/client/test_request_context.py +0 -0
  121. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/config/__init__.py +0 -0
  122. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/config/test_settings.py +0 -0
  123. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/conftest.py +0 -0
  124. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/contracts/__init__.py +0 -0
  125. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/contracts/test_extension_contract_consistency.py +0 -0
  126. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/__init__.py +0 -0
  127. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_agent_errors.py +0 -0
  128. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_agent_helpers.py +0 -0
  129. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_cancellation.py +0 -0
  130. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_directory_validation.py +0 -0
  131. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_metrics.py +0 -0
  132. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_multipart_input.py +0 -0
  133. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_opencode_agent_session_binding.py +0 -0
  134. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_session_lock_lifecycle.py +0 -0
  135. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_session_ownership.py +0 -0
  136. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_streaming_output_contract_blocks.py +0 -0
  137. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_streaming_output_contract_core.py +0 -0
  138. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_streaming_output_contract_interrupts.py +0 -0
  139. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/execution/test_streaming_output_contract_logging.py +0 -0
  140. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/__init__.py +0 -0
  141. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_dispatch_registry.py +0 -0
  142. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_error_responses.py +0 -0
  143. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_jsonrpc_methods.py +0 -0
  144. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_jsonrpc_params.py +0 -0
  145. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_jsonrpc_unsupported_method.py +0 -0
  146. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_session_extension_commands.py +0 -0
  147. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_session_extension_interrupts.py +0 -0
  148. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_session_extension_lifecycle.py +0 -0
  149. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_session_extension_prompt_async.py +0 -0
  150. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_session_extension_queries.py +0 -0
  151. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/jsonrpc/test_opencode_workspace_control_extension.py +0 -0
  152. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/package/__init__.py +0 -0
  153. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/package/test_logging.py +0 -0
  154. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/package/test_typing_contract.py +0 -0
  155. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/package/test_version.py +0 -0
  156. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/parts/__init__.py +0 -0
  157. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/parts/test_parts_text.py +0 -0
  158. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/profile/__init__.py +0 -0
  159. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/profile/test_profile_runtime.py +0 -0
  160. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/scripts/__init__.py +0 -0
  161. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/scripts/test_script_health_contract.py +0 -0
  162. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/__init__.py +0 -0
  163. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_a2a_client_manager.py +0 -0
  164. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_agent_card.py +0 -0
  165. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_app_behaviors.py +0 -0
  166. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_auth.py +0 -0
  167. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_call_context_builder.py +0 -0
  168. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_cancel_contract.py +0 -0
  169. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_cli.py +0 -0
  170. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_database_app_persistence.py +0 -0
  171. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_output_negotiation.py +0 -0
  172. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_state_store.py +0 -0
  173. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_task_store_factory.py +0 -0
  174. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/server/test_transport_contract.py +0 -0
  175. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/support/__init__.py +0 -0
  176. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/support/helpers.py +0 -0
  177. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/support/session_extensions.py +0 -0
  178. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/support/streaming_output.py +0 -0
  179. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/test_metadata_access.py +0 -0
  180. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/test_trace_context.py +0 -0
  181. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/upstream/__init__.py +0 -0
  182. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/tests/upstream/test_opencode_upstream_client_params.py +0 -0
  183. {opencode_a2a-0.8.0 → opencode_a2a-0.8.1}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: opencode-a2a
3
- Version: 0.8.0
3
+ Version: 0.8.1
4
4
  Summary: OpenCode A2A runtime
5
5
  Author: liujuanjuan1984@Intelligent-Internet
6
6
  License-Expression: Apache-2.0
@@ -295,7 +295,7 @@ class A2AClient:
295
295
  card = await self.get_agent_card()
296
296
  config = ClientConfig(
297
297
  streaming=True,
298
- polling=False,
298
+ polling=self._polling_fallback_policy.enabled,
299
299
  httpx_client=await self._get_httpx_client(),
300
300
  supported_transports=list(self._settings.supported_transports),
301
301
  use_client_preference=self._settings.use_client_preference,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: opencode-a2a
3
- Version: 0.8.0
3
+ Version: 0.8.1
4
4
  Summary: OpenCode A2A runtime
5
5
  Author: liujuanjuan1984@Intelligent-Internet
6
6
  License-Expression: Apache-2.0
@@ -154,6 +154,46 @@ async def test_build_client_uses_settings_and_transport_config(
154
154
  assert actual is fake_sdk_client
155
155
 
156
156
 
157
+ @pytest.mark.asyncio
158
+ async def test_build_client_enables_sdk_polling_when_polling_fallback_enabled(
159
+ monkeypatch: pytest.MonkeyPatch,
160
+ ) -> None:
161
+ client = A2AClient(
162
+ "http://agent.example.com",
163
+ settings=A2AClientSettings(polling_fallback_enabled=True),
164
+ )
165
+ fake_sdk_client = _FakeClient()
166
+ factory_calls: dict[str, object] = {}
167
+
168
+ class _FakeFactory:
169
+ def __init__(self, config: ClientConfig, consumers: list[object] | None = None):
170
+ factory_calls["config"] = config
171
+ factory_calls["consumers"] = consumers
172
+
173
+ def create(
174
+ self,
175
+ _card: object,
176
+ consumers: list[object] | None = None,
177
+ interceptors: list[object] | None = None,
178
+ extensions: list[str] | None = None,
179
+ ) -> _FakeClient:
180
+ return fake_sdk_client
181
+
182
+ monkeypatch.setattr(client_module, "ClientFactory", _FakeFactory)
183
+ monkeypatch.setattr(
184
+ client_module,
185
+ "build_agent_card_resolver",
186
+ lambda *_args: _FakeCardResolver("agent-card"),
187
+ )
188
+
189
+ actual = await client._build_client()
190
+
191
+ config = factory_calls["config"]
192
+ assert isinstance(config, ClientConfig)
193
+ assert config.polling is True
194
+ assert actual is fake_sdk_client
195
+
196
+
157
197
  @pytest.mark.asyncio
158
198
  async def test_send_returns_last_event(monkeypatch: pytest.MonkeyPatch) -> None:
159
199
  client = A2AClient("http://agent.example.com")
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes