mirascope 2.0.0a6__tar.gz → 2.0.2__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 (2043) hide show
  1. mirascope-2.0.2/.coveragerc +44 -0
  2. mirascope-2.0.2/.env.example +17 -0
  3. mirascope-2.0.2/.gitignore +183 -0
  4. mirascope-2.0.2/LICENSE +21 -0
  5. mirascope-2.0.2/PKG-INFO +203 -0
  6. mirascope-2.0.2/examples/agents/basic.py +97 -0
  7. mirascope-2.0.2/examples/async/async_streaming.py +17 -0
  8. mirascope-2.0.2/examples/async/async_tools.py +28 -0
  9. mirascope-2.0.2/examples/async/basic.py +16 -0
  10. mirascope-2.0.2/examples/async/basic_model.py +13 -0
  11. mirascope-2.0.2/examples/async/basic_prompt.py +16 -0
  12. mirascope-2.0.2/examples/async/parallel.py +19 -0
  13. mirascope-2.0.2/examples/calls/access_prompt.py +20 -0
  14. mirascope-2.0.2/examples/calls/basic.py +10 -0
  15. mirascope-2.0.2/examples/calls/override.py +12 -0
  16. mirascope-2.0.2/examples/calls/return_types.py +13 -0
  17. mirascope-2.0.2/examples/calls/with_params.py +10 -0
  18. mirascope-2.0.2/examples/chaining/basic_call.py +26 -0
  19. mirascope-2.0.2/examples/chaining/basic_model.py +26 -0
  20. mirascope-2.0.2/examples/chaining/basic_prompt.py +26 -0
  21. mirascope-2.0.2/examples/chaining/conditional_call.py +35 -0
  22. mirascope-2.0.2/examples/chaining/conditional_model.py +39 -0
  23. mirascope-2.0.2/examples/chaining/conditional_prompt.py +34 -0
  24. mirascope-2.0.2/examples/chaining/nested_call.py +34 -0
  25. mirascope-2.0.2/examples/chaining/nested_model.py +32 -0
  26. mirascope-2.0.2/examples/chaining/nested_prompt.py +34 -0
  27. mirascope-2.0.2/examples/chaining/parallel_call.py +39 -0
  28. mirascope-2.0.2/examples/chaining/parallel_model.py +41 -0
  29. mirascope-2.0.2/examples/chaining/parallel_prompt.py +42 -0
  30. mirascope-2.0.2/examples/context/async_context.py +36 -0
  31. mirascope-2.0.2/examples/context/basic_call.py +31 -0
  32. mirascope-2.0.2/examples/context/basic_model.py +31 -0
  33. mirascope-2.0.2/examples/context/basic_prompt.py +32 -0
  34. mirascope-2.0.2/examples/errors/basic.py +17 -0
  35. mirascope-2.0.2/examples/intro/context/model.py +41 -0
  36. mirascope-2.0.2/examples/intro/format/model.py +25 -0
  37. mirascope-2.0.2/examples/intro/local_model/model.py +17 -0
  38. mirascope-2.0.2/examples/intro/mlx/model.py +10 -0
  39. mirascope-2.0.2/examples/intro/model/async.py +17 -0
  40. mirascope-2.0.2/examples/intro/model/async_stream.py +18 -0
  41. mirascope-2.0.2/examples/intro/model/stream.py +15 -0
  42. mirascope-2.0.2/examples/intro/model/sync.py +14 -0
  43. mirascope-2.0.2/examples/intro/override/model.py +17 -0
  44. mirascope-2.0.2/examples/intro/parameters/model.py +17 -0
  45. mirascope-2.0.2/examples/intro/register_provider/model.py +21 -0
  46. mirascope-2.0.2/examples/intro/resume/model.py +17 -0
  47. mirascope-2.0.2/examples/intro/system_messages/model.py +20 -0
  48. mirascope-2.0.2/examples/intro/tool_call/model.py +35 -0
  49. mirascope-2.0.2/examples/intro/welcome.py +46 -0
  50. mirascope-2.0.2/examples/local_models/local_mlx.py +14 -0
  51. mirascope-2.0.2/examples/local_models/local_ollama.py +14 -0
  52. mirascope-2.0.2/examples/local_models/local_vllm.py +21 -0
  53. mirascope-2.0.2/examples/mcp/basic_call.py +23 -0
  54. mirascope-2.0.2/examples/mcp/basic_model.py +23 -0
  55. mirascope-2.0.2/examples/mcp/basic_prompt.py +25 -0
  56. mirascope-2.0.2/examples/mcp/combined_tools.py +43 -0
  57. mirascope-2.0.2/examples/mcp_with_thinking.py +35 -0
  58. mirascope-2.0.2/examples/messages/audio_content.py +10 -0
  59. mirascope-2.0.2/examples/messages/basic.py +8 -0
  60. mirascope-2.0.2/examples/messages/image_content.py +13 -0
  61. mirascope-2.0.2/examples/messages/multimodal.py +12 -0
  62. mirascope-2.0.2/examples/messages/roles.py +16 -0
  63. mirascope-2.0.2/examples/messages/text_content.py +7 -0
  64. mirascope-2.0.2/examples/misc/ask_llm.py +86 -0
  65. mirascope-2.0.2/examples/misc/local_clickhouse_verify.py +253 -0
  66. mirascope-2.0.2/examples/misc/local_versioning_example.py +92 -0
  67. mirascope-2.0.2/examples/misc/search_span.py +253 -0
  68. mirascope-2.0.2/examples/models/basic.py +5 -0
  69. mirascope-2.0.2/examples/models/call_patterns.py +24 -0
  70. mirascope-2.0.2/examples/models/override.py +14 -0
  71. mirascope-2.0.2/examples/models/with_params.py +5 -0
  72. mirascope-2.0.2/examples/ops/basic_trace.py +12 -0
  73. mirascope-2.0.2/examples/ops/configure_basic.py +11 -0
  74. mirascope-2.0.2/examples/ops/configure_cloud.py +9 -0
  75. mirascope-2.0.2/examples/ops/configure_otlp.py +15 -0
  76. mirascope-2.0.2/examples/ops/context_propagation.py +32 -0
  77. mirascope-2.0.2/examples/ops/instrument_llm.py +15 -0
  78. mirascope-2.0.2/examples/ops/session_attributes.py +18 -0
  79. mirascope-2.0.2/examples/ops/session_basic.py +16 -0
  80. mirascope-2.0.2/examples/ops/span_basic.py +18 -0
  81. mirascope-2.0.2/examples/ops/span_events.py +27 -0
  82. mirascope-2.0.2/examples/ops/trace_llm_call.py +12 -0
  83. mirascope-2.0.2/examples/ops/trace_with_metadata.py +11 -0
  84. mirascope-2.0.2/examples/ops/trace_wrapped.py +14 -0
  85. mirascope-2.0.2/examples/ops/version_basic.py +18 -0
  86. mirascope-2.0.2/examples/ops/version_llm_call.py +18 -0
  87. mirascope-2.0.2/examples/ops/version_with_metadata.py +23 -0
  88. mirascope-2.0.2/examples/prompts/basic.py +10 -0
  89. mirascope-2.0.2/examples/prompts/basic_without_prompt.py +10 -0
  90. mirascope-2.0.2/examples/prompts/messages_method.py +12 -0
  91. mirascope-2.0.2/examples/prompts/return_types.py +25 -0
  92. mirascope-2.0.2/examples/prompts/with_params.py +12 -0
  93. mirascope-2.0.2/examples/providers/custom_api_key.py +11 -0
  94. mirascope-2.0.2/examples/providers/openai_compatible.py +22 -0
  95. mirascope-2.0.2/examples/providers/scope_matching.py +15 -0
  96. mirascope-2.0.2/examples/reliability/basic_retry.py +17 -0
  97. mirascope-2.0.2/examples/reliability/fallback_call.py +31 -0
  98. mirascope-2.0.2/examples/reliability/fallback_model.py +30 -0
  99. mirascope-2.0.2/examples/reliability/fallback_prompt.py +30 -0
  100. mirascope-2.0.2/examples/reliability/retry_specific_errors.py +21 -0
  101. mirascope-2.0.2/examples/reliability/stream_retry.py +20 -0
  102. mirascope-2.0.2/examples/reliability/tool_error_recovery.py +40 -0
  103. mirascope-2.0.2/examples/reliability/validation_retry.py +28 -0
  104. mirascope-2.0.2/examples/responses/basic.py +6 -0
  105. mirascope-2.0.2/examples/responses/content_access.py +18 -0
  106. mirascope-2.0.2/examples/responses/finish_reason.py +11 -0
  107. mirascope-2.0.2/examples/responses/metadata.py +12 -0
  108. mirascope-2.0.2/examples/responses/resume.py +13 -0
  109. mirascope-2.0.2/examples/responses/usage.py +9 -0
  110. mirascope-2.0.2/examples/streaming/accumulated.py +19 -0
  111. mirascope-2.0.2/examples/streaming/async_basic.py +17 -0
  112. mirascope-2.0.2/examples/streaming/basic_call.py +11 -0
  113. mirascope-2.0.2/examples/streaming/basic_model.py +7 -0
  114. mirascope-2.0.2/examples/streaming/basic_prompt.py +11 -0
  115. mirascope-2.0.2/examples/streaming/chunk_stream.py +16 -0
  116. mirascope-2.0.2/examples/streaming/error_handling.py +19 -0
  117. mirascope-2.0.2/examples/streaming/replay.py +21 -0
  118. mirascope-2.0.2/examples/streaming/streams.py +40 -0
  119. mirascope-2.0.2/examples/streaming/structured_stream.py +26 -0
  120. mirascope-2.0.2/examples/streaming/with_tools.py +28 -0
  121. mirascope-2.0.2/examples/structured_output/advanced_model_features.py +29 -0
  122. mirascope-2.0.2/examples/structured_output/basemodel.py +18 -0
  123. mirascope-2.0.2/examples/structured_output/basic_call.py +11 -0
  124. mirascope-2.0.2/examples/structured_output/basic_model.py +7 -0
  125. mirascope-2.0.2/examples/structured_output/basic_prompt.py +11 -0
  126. mirascope-2.0.2/examples/structured_output/custom_instructions.py +28 -0
  127. mirascope-2.0.2/examples/structured_output/explicit_mode.py +18 -0
  128. mirascope-2.0.2/examples/structured_output/generic_collection.py +21 -0
  129. mirascope-2.0.2/examples/structured_output/output_parser.py +38 -0
  130. mirascope-2.0.2/examples/structured_output/primitives.py +11 -0
  131. mirascope-2.0.2/examples/structured_output/with_tools.py +34 -0
  132. mirascope-2.0.2/examples/thinking/access_thoughts.py +17 -0
  133. mirascope-2.0.2/examples/thinking/basic.py +10 -0
  134. mirascope-2.0.2/examples/thinking/config.py +13 -0
  135. mirascope-2.0.2/examples/thinking/encode_as_text.py +22 -0
  136. mirascope-2.0.2/examples/tools/async_tools.py +28 -0
  137. mirascope-2.0.2/examples/tools/basic.py +29 -0
  138. mirascope-2.0.2/examples/tools/loop.py +32 -0
  139. mirascope-2.0.2/examples/tools/parallel.py +27 -0
  140. mirascope-2.0.2/examples/tools/with_call.py +23 -0
  141. mirascope-2.0.2/examples/tools/with_model.py +19 -0
  142. mirascope-2.0.2/examples/tools/with_prompt.py +24 -0
  143. mirascope-2.0.2/mirascope/_utils.py +34 -0
  144. mirascope-2.0.2/mirascope/api/_generated/__init__.py +440 -0
  145. mirascope-2.0.2/mirascope/api/_generated/annotations/client.py +506 -0
  146. mirascope-2.0.2/mirascope/api/_generated/annotations/raw_client.py +1414 -0
  147. mirascope-2.0.2/mirascope/api/_generated/annotations/types/annotations_create_response.py +48 -0
  148. mirascope-2.0.2/mirascope/api/_generated/annotations/types/annotations_get_response.py +48 -0
  149. mirascope-2.0.2/mirascope/api/_generated/annotations/types/annotations_list_response_annotations_item.py +50 -0
  150. mirascope-2.0.2/mirascope/api/_generated/annotations/types/annotations_update_response.py +48 -0
  151. mirascope-2.0.2/mirascope/api/_generated/api_keys/__init__.py +17 -0
  152. mirascope-2.0.2/mirascope/api/_generated/api_keys/client.py +530 -0
  153. mirascope-2.0.2/mirascope/api/_generated/api_keys/raw_client.py +1236 -0
  154. mirascope-2.0.2/mirascope/api/_generated/api_keys/types/__init__.py +15 -0
  155. mirascope-2.0.2/mirascope/api/_generated/api_keys/types/api_keys_list_all_for_org_response_item.py +40 -0
  156. mirascope-2.0.2/mirascope/api/_generated/client.py +211 -0
  157. mirascope-2.0.2/mirascope/api/_generated/docs/raw_client.py +178 -0
  158. mirascope-2.0.2/mirascope/api/_generated/environment.py +9 -0
  159. mirascope-2.0.2/mirascope/api/_generated/environments/__init__.py +23 -0
  160. mirascope-2.0.2/mirascope/api/_generated/environments/client.py +649 -0
  161. mirascope-2.0.2/mirascope/api/_generated/environments/raw_client.py +1567 -0
  162. mirascope-2.0.2/mirascope/api/_generated/environments/types/__init__.py +25 -0
  163. mirascope-2.0.2/mirascope/api/_generated/environments/types/environments_get_analytics_response.py +60 -0
  164. mirascope-2.0.2/mirascope/api/_generated/environments/types/environments_get_analytics_response_top_functions_item.py +24 -0
  165. mirascope-2.0.2/mirascope/api/_generated/environments/types/environments_get_analytics_response_top_models_item.py +22 -0
  166. mirascope-2.0.2/mirascope/api/_generated/errors/__init__.py +25 -0
  167. mirascope-2.0.2/mirascope/api/_generated/errors/bad_request_error.py +14 -0
  168. mirascope-2.0.2/mirascope/api/_generated/errors/conflict_error.py +14 -0
  169. mirascope-2.0.2/mirascope/api/_generated/errors/payment_required_error.py +15 -0
  170. mirascope-2.0.2/mirascope/api/_generated/errors/service_unavailable_error.py +14 -0
  171. mirascope-2.0.2/mirascope/api/_generated/errors/too_many_requests_error.py +15 -0
  172. mirascope-2.0.2/mirascope/api/_generated/functions/__init__.py +39 -0
  173. mirascope-2.0.2/mirascope/api/_generated/functions/client.py +647 -0
  174. mirascope-2.0.2/mirascope/api/_generated/functions/raw_client.py +1890 -0
  175. mirascope-2.0.2/mirascope/api/_generated/functions/types/__init__.py +53 -0
  176. mirascope-2.0.2/mirascope/api/_generated/functions/types/functions_get_by_env_response.py +53 -0
  177. mirascope-2.0.2/mirascope/api/_generated/functions/types/functions_get_by_env_response_dependencies_value.py +22 -0
  178. mirascope-2.0.2/mirascope/api/_generated/functions/types/functions_list_by_env_response.py +25 -0
  179. mirascope-2.0.2/mirascope/api/_generated/functions/types/functions_list_by_env_response_functions_item.py +56 -0
  180. mirascope-2.0.2/mirascope/api/_generated/functions/types/functions_list_by_env_response_functions_item_dependencies_value.py +22 -0
  181. mirascope-2.0.2/mirascope/api/_generated/health/raw_client.py +175 -0
  182. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/__init__.py +33 -0
  183. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/client.py +546 -0
  184. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/raw_client.py +1519 -0
  185. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/__init__.py +53 -0
  186. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_accept_response.py +34 -0
  187. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_accept_response_role.py +7 -0
  188. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_create_request_role.py +7 -0
  189. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response.py +48 -0
  190. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response_role.py +7 -0
  191. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response_status.py +7 -0
  192. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response.py +48 -0
  193. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response_role.py +7 -0
  194. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response_status.py +7 -0
  195. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item.py +48 -0
  196. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item_role.py +7 -0
  197. mirascope-2.0.2/mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item_status.py +7 -0
  198. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/__init__.py +19 -0
  199. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/client.py +302 -0
  200. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/raw_client.py +736 -0
  201. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/__init__.py +27 -0
  202. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/organization_memberships_list_response_item.py +33 -0
  203. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/organization_memberships_list_response_item_role.py +7 -0
  204. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/organization_memberships_update_request_role.py +7 -0
  205. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/organization_memberships_update_response.py +31 -0
  206. mirascope-2.0.2/mirascope/api/_generated/organization_memberships/types/organization_memberships_update_response_role.py +7 -0
  207. mirascope-2.0.2/mirascope/api/_generated/organizations/__init__.py +51 -0
  208. mirascope-2.0.2/mirascope/api/_generated/organizations/client.py +869 -0
  209. mirascope-2.0.2/mirascope/api/_generated/organizations/raw_client.py +2593 -0
  210. mirascope-2.0.2/mirascope/api/_generated/organizations/types/__init__.py +71 -0
  211. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_create_payment_intent_response.py +24 -0
  212. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_request_target_plan.py +7 -0
  213. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response.py +47 -0
  214. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response_validation_errors_item.py +33 -0
  215. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response_validation_errors_item_resource.py +7 -0
  216. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_router_balance_response.py +24 -0
  217. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_subscription_response.py +53 -0
  218. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_subscription_response_current_plan.py +7 -0
  219. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_subscription_response_payment_method.py +26 -0
  220. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_subscription_response_scheduled_change.py +34 -0
  221. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_subscription_response_scheduled_change_target_plan.py +7 -0
  222. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_update_subscription_request_target_plan.py +7 -0
  223. mirascope-2.0.2/mirascope/api/_generated/organizations/types/organizations_update_subscription_response.py +35 -0
  224. mirascope-2.0.2/mirascope/api/_generated/project_memberships/__init__.py +25 -0
  225. mirascope-2.0.2/mirascope/api/_generated/project_memberships/client.py +437 -0
  226. mirascope-2.0.2/mirascope/api/_generated/project_memberships/raw_client.py +1039 -0
  227. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/__init__.py +29 -0
  228. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_create_request_role.py +7 -0
  229. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_create_response.py +35 -0
  230. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_create_response_role.py +7 -0
  231. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_list_response_item.py +33 -0
  232. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_list_response_item_role.py +7 -0
  233. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_update_request_role.py +7 -0
  234. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_update_response.py +35 -0
  235. mirascope-2.0.2/mirascope/api/_generated/project_memberships/types/project_memberships_update_response_role.py +7 -0
  236. mirascope-2.0.2/mirascope/api/_generated/projects/raw_client.py +1302 -0
  237. mirascope-2.0.2/mirascope/api/_generated/reference.md +4915 -0
  238. mirascope-2.0.2/mirascope/api/_generated/tags/__init__.py +19 -0
  239. mirascope-2.0.2/mirascope/api/_generated/tags/client.py +504 -0
  240. mirascope-2.0.2/mirascope/api/_generated/tags/raw_client.py +1288 -0
  241. mirascope-2.0.2/mirascope/api/_generated/tags/types/__init__.py +17 -0
  242. mirascope-2.0.2/mirascope/api/_generated/tags/types/tags_create_response.py +41 -0
  243. mirascope-2.0.2/mirascope/api/_generated/tags/types/tags_get_response.py +41 -0
  244. mirascope-2.0.2/mirascope/api/_generated/tags/types/tags_list_response.py +23 -0
  245. mirascope-2.0.2/mirascope/api/_generated/tags/types/tags_list_response_tags_item.py +41 -0
  246. mirascope-2.0.2/mirascope/api/_generated/tags/types/tags_update_response.py +41 -0
  247. mirascope-2.0.2/mirascope/api/_generated/token_cost/__init__.py +7 -0
  248. mirascope-2.0.2/mirascope/api/_generated/token_cost/client.py +160 -0
  249. mirascope-2.0.2/mirascope/api/_generated/token_cost/raw_client.py +264 -0
  250. mirascope-2.0.2/mirascope/api/_generated/token_cost/types/__init__.py +8 -0
  251. mirascope-2.0.2/mirascope/api/_generated/token_cost/types/token_cost_calculate_request_usage.py +54 -0
  252. mirascope-2.0.2/mirascope/api/_generated/token_cost/types/token_cost_calculate_response.py +52 -0
  253. mirascope-2.0.2/mirascope/api/_generated/traces/__init__.py +97 -0
  254. mirascope-2.0.2/mirascope/api/_generated/traces/client.py +1103 -0
  255. mirascope-2.0.2/mirascope/api/_generated/traces/raw_client.py +2322 -0
  256. mirascope-2.0.2/mirascope/api/_generated/traces/types/__init__.py +155 -0
  257. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_get_analytics_summary_response.py +60 -0
  258. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_get_trace_detail_by_env_response.py +33 -0
  259. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_get_trace_detail_by_env_response_spans_item.py +88 -0
  260. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_get_trace_detail_response_spans_item.py +88 -0
  261. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_list_by_function_hash_response.py +25 -0
  262. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_list_by_function_hash_response_traces_item.py +44 -0
  263. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_request_attribute_filters_item.py +26 -0
  264. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_request_attribute_filters_item_operator.py +7 -0
  265. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_request_sort_by.py +7 -0
  266. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_request_sort_order.py +7 -0
  267. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_response.py +26 -0
  268. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_by_env_response_spans_item.py +50 -0
  269. mirascope-2.0.2/mirascope/api/_generated/traces/types/traces_search_response_spans_item.py +50 -0
  270. mirascope-2.0.2/mirascope/api/_generated/types/__init__.py +85 -0
  271. mirascope-2.0.2/mirascope/api/_generated/types/bad_request_error_body.py +50 -0
  272. mirascope-2.0.2/mirascope/api/_generated/types/date.py +3 -0
  273. mirascope-2.0.2/mirascope/api/_generated/types/immutable_resource_error.py +22 -0
  274. mirascope-2.0.2/mirascope/api/_generated/types/internal_server_error_body.py +49 -0
  275. mirascope-2.0.2/mirascope/api/_generated/types/plan_limit_exceeded_error.py +32 -0
  276. mirascope-2.0.2/mirascope/api/_generated/types/plan_limit_exceeded_error_tag.py +7 -0
  277. mirascope-2.0.2/mirascope/api/_generated/types/pricing_unavailable_error.py +23 -0
  278. mirascope-2.0.2/mirascope/api/_generated/types/rate_limit_error.py +31 -0
  279. mirascope-2.0.2/mirascope/api/_generated/types/rate_limit_error_tag.py +5 -0
  280. mirascope-2.0.2/mirascope/api/_generated/types/service_unavailable_error_body.py +24 -0
  281. mirascope-2.0.2/mirascope/api/_generated/types/service_unavailable_error_tag.py +7 -0
  282. mirascope-2.0.2/mirascope/api/_generated/types/subscription_past_due_error.py +31 -0
  283. mirascope-2.0.2/mirascope/api/_generated/types/subscription_past_due_error_tag.py +7 -0
  284. mirascope-2.0.2/mirascope/api/settings.py +99 -0
  285. mirascope-2.0.2/mirascope/llm/__init__.py +297 -0
  286. mirascope-2.0.2/mirascope/llm/calls/__init__.py +17 -0
  287. mirascope-2.0.2/mirascope/llm/calls/calls.py +348 -0
  288. mirascope-2.0.2/mirascope/llm/calls/decorator.py +275 -0
  289. mirascope-2.0.2/mirascope/llm/content/tool_output.py +43 -0
  290. mirascope-2.0.2/mirascope/llm/exceptions.py +360 -0
  291. mirascope-2.0.2/mirascope/llm/formatting/__init__.py +39 -0
  292. mirascope-2.0.2/mirascope/llm/formatting/format.py +293 -0
  293. mirascope-2.0.2/mirascope/llm/formatting/output_parser.py +178 -0
  294. mirascope-2.0.2/mirascope/llm/formatting/partial.py +131 -0
  295. mirascope-2.0.2/mirascope/llm/formatting/primitives.py +192 -0
  296. mirascope-2.0.2/mirascope/llm/formatting/types.py +66 -0
  297. mirascope-2.0.2/mirascope/llm/messages/__init__.py +35 -0
  298. mirascope-2.0.2/mirascope/llm/messages/_utils.py +34 -0
  299. mirascope-2.0.2/mirascope/llm/models/__init__.py +21 -0
  300. mirascope-2.0.2/mirascope/llm/models/models.py +1419 -0
  301. mirascope-2.0.2/mirascope/llm/models/params.py +72 -0
  302. mirascope-2.0.2/mirascope/llm/models/thinking_config.py +61 -0
  303. mirascope-2.0.2/mirascope/llm/prompts/_utils.py +31 -0
  304. mirascope-2.0.2/mirascope/llm/prompts/decorator.py +226 -0
  305. mirascope-2.0.2/mirascope/llm/prompts/prompts.py +492 -0
  306. mirascope-2.0.2/mirascope/llm/providers/__init__.py +62 -0
  307. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/__init__.py +27 -0
  308. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/beta_decode.py +282 -0
  309. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/beta_encode.py +266 -0
  310. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/decode.py +288 -0
  311. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/encode.py +418 -0
  312. mirascope-2.0.2/mirascope/llm/providers/anthropic/_utils/errors.py +46 -0
  313. mirascope-2.0.2/mirascope/llm/providers/anthropic/beta_provider.py +374 -0
  314. mirascope-2.0.2/mirascope/llm/providers/anthropic/provider.py +479 -0
  315. mirascope-2.0.2/mirascope/llm/providers/base/__init__.py +14 -0
  316. mirascope-2.0.2/mirascope/llm/providers/base/_utils.py +253 -0
  317. mirascope-2.0.2/mirascope/llm/providers/base/base_provider.py +1579 -0
  318. mirascope-2.0.2/mirascope/llm/providers/google/_utils/__init__.py +17 -0
  319. mirascope-2.0.2/mirascope/llm/providers/google/_utils/decode.py +307 -0
  320. mirascope-2.0.2/mirascope/llm/providers/google/_utils/encode.py +401 -0
  321. mirascope-2.0.2/mirascope/llm/providers/google/_utils/errors.py +50 -0
  322. mirascope-2.0.2/mirascope/llm/providers/google/provider.py +492 -0
  323. mirascope-2.0.2/mirascope/llm/providers/mirascope/_utils.py +73 -0
  324. mirascope-2.0.2/mirascope/llm/providers/mirascope/provider.py +349 -0
  325. mirascope-2.0.2/mirascope/llm/providers/mlx/_utils.py +141 -0
  326. mirascope-2.0.2/mirascope/llm/providers/mlx/encoding/base.py +72 -0
  327. mirascope-2.0.2/mirascope/llm/providers/mlx/encoding/transformers.py +150 -0
  328. mirascope-2.0.2/mirascope/llm/providers/mlx/mlx.py +254 -0
  329. mirascope-2.0.2/mirascope/llm/providers/mlx/provider.py +452 -0
  330. mirascope-2.0.2/mirascope/llm/providers/openai/_utils/errors.py +46 -0
  331. mirascope-2.0.2/mirascope/llm/providers/openai/completions/_utils/encode.py +376 -0
  332. mirascope-2.0.2/mirascope/llm/providers/openai/completions/base_provider.py +542 -0
  333. mirascope-2.0.2/mirascope/llm/providers/openai/provider.py +441 -0
  334. mirascope-2.0.2/mirascope/llm/providers/openai/responses/_utils/__init__.py +15 -0
  335. mirascope-2.0.2/mirascope/llm/providers/openai/responses/_utils/decode.py +260 -0
  336. mirascope-2.0.2/mirascope/llm/providers/openai/responses/_utils/encode.py +384 -0
  337. mirascope-2.0.2/mirascope/llm/providers/openai/responses/provider.py +513 -0
  338. mirascope-2.0.2/mirascope/llm/providers/provider_registry.py +299 -0
  339. mirascope-2.0.2/mirascope/llm/responses/__init__.py +65 -0
  340. mirascope-2.0.2/mirascope/llm/responses/_utils.py +146 -0
  341. mirascope-2.0.2/mirascope/llm/responses/base_response.py +103 -0
  342. mirascope-2.0.2/mirascope/llm/responses/base_stream_response.py +820 -0
  343. mirascope-2.0.2/mirascope/llm/responses/response.py +366 -0
  344. mirascope-2.0.2/mirascope/llm/responses/root_response.py +248 -0
  345. mirascope-2.0.2/mirascope/llm/responses/stream_response.py +581 -0
  346. mirascope-2.0.2/mirascope/llm/tools/decorator.py +184 -0
  347. mirascope-2.0.2/mirascope/llm/tools/tool_schema.py +319 -0
  348. mirascope-2.0.2/mirascope/llm/tools/toolkit.py +160 -0
  349. mirascope-2.0.2/mirascope/llm/tools/tools.py +263 -0
  350. mirascope-2.0.2/mirascope/ops/__init__.py +111 -0
  351. mirascope-2.0.2/mirascope/ops/_internal/closure.py +1172 -0
  352. mirascope-2.0.2/mirascope/ops/_internal/configuration.py +177 -0
  353. mirascope-2.0.2/mirascope/ops/_internal/exporters/exporters.py +362 -0
  354. mirascope-2.0.2/mirascope/ops/_internal/exporters/utils.py +66 -0
  355. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/common.py +530 -0
  356. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/cost.py +190 -0
  357. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/encode.py +238 -0
  358. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/llm.py +161 -0
  359. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/model.py +1798 -0
  360. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/response.py +521 -0
  361. mirascope-2.0.2/mirascope/ops/_internal/instrumentation/llm/serialize.py +300 -0
  362. mirascope-2.0.2/mirascope/ops/_internal/protocols.py +133 -0
  363. mirascope-2.0.2/mirascope/ops/_internal/traced_calls.py +389 -0
  364. mirascope-2.0.2/mirascope/ops/_internal/traced_functions.py +528 -0
  365. mirascope-2.0.2/mirascope/ops/_internal/tracing.py +353 -0
  366. mirascope-2.0.2/mirascope/ops/_internal/utils.py +131 -0
  367. mirascope-2.0.2/mirascope/ops/_internal/versioned_functions.py +357 -0
  368. mirascope-2.0.2/pyproject.toml +258 -0
  369. mirascope-2.0.2/scripts/regenerate_examples.ts +118 -0
  370. mirascope-2.0.2/tests/api/test_client.py +199 -0
  371. mirascope-2.0.2/tests/e2e/conftest.py +219 -0
  372. mirascope-2.0.2/tests/e2e/input/cassettes/test_caching_tool/anthropic_beta_claude_sonnet_4_0.yaml +640 -0
  373. mirascope-2.0.2/tests/e2e/input/cassettes/test_caching_tool/openai_gpt_4o_completions.yaml +1271 -0
  374. mirascope-2.0.2/tests/e2e/input/cassettes/test_caching_tool/openai_gpt_4o_responses.yaml +1741 -0
  375. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/anthropic_beta_claude_sonnet_4_0.yaml +236 -0
  376. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/anthropic_claude_sonnet_4_0.yaml +344 -0
  377. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/google_gemini_2_5_flash.yaml +129 -0
  378. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +120 -0
  379. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/openai_gpt_4o_completions.yaml +222 -0
  380. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_parse_error/openai_gpt_4o_responses.yaml +222 -0
  381. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_strict_tool_and_optional_properties/anthropic_beta_claude_sonnet_4_5.yaml +118 -0
  382. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_strict_tool_and_optional_properties/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +120 -0
  383. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_strict_tool_and_optional_properties/openai_gpt_4o_completions.yaml +120 -0
  384. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_strict_tool_and_optional_properties/openai_gpt_4o_responses.yaml +122 -0
  385. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/anthropic_beta_claude_sonnet_4_0.yaml +347 -0
  386. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/anthropic_claude_sonnet_4_0.yaml +335 -0
  387. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/google_gemini_2_5_flash.yaml +151 -0
  388. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +122 -0
  389. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/openai_gpt_4o_completions.yaml +226 -0
  390. mirascope-2.0.2/tests/e2e/input/cassettes/test_call_with_tool_error/openai_gpt_4o_responses.yaml +117 -0
  391. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider/anthropic_claude_haiku_4_5.yaml +106 -0
  392. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider/google_gemini_2_5_flash.yaml +66 -0
  393. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini.yaml +124 -0
  394. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini_completions.yaml +116 -0
  395. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini_responses.yaml +124 -0
  396. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider_streaming/anthropic_claude_haiku_4_5.yaml +168 -0
  397. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider_streaming/google_gemini_2_5_flash.yaml +70 -0
  398. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini.yaml +150 -0
  399. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini_completions.yaml +124 -0
  400. mirascope-2.0.2/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini_responses.yaml +150 -0
  401. mirascope-2.0.2/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/anthropic_beta_claude_sonnet_4_0.yaml +185 -0
  402. mirascope-2.0.2/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/openai_gpt_4o_completions.yaml +554 -0
  403. mirascope-2.0.2/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/openai_gpt_4o_responses.yaml +571 -0
  404. mirascope-2.0.2/tests/e2e/input/cassettes/test_strict_mode_with_tools/anthropic_claude_sonnet_4_5.yaml +229 -0
  405. mirascope-2.0.2/tests/e2e/input/cassettes/test_strict_mode_with_tools_streamed/anthropic_claude_sonnet_4_5.yaml +322 -0
  406. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/anthropic_beta_claude_sonnet_4_0.yaml +118 -0
  407. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_output_with_output_parser/anthropic_claude_haiku_4_5.yaml +110 -0
  408. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_output_with_primitive_types_int/anthropic_claude_haiku_4_5.yaml +112 -0
  409. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_output_with_primitive_types_list/anthropic_claude_haiku_4_5.yaml +114 -0
  410. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_stream_async/anthropic_claude_haiku_4_5.yaml +269 -0
  411. mirascope-2.0.2/tests/e2e/input/cassettes/test_structured_stream_sync/anthropic_claude_haiku_4_5.yaml +277 -0
  412. mirascope-2.0.2/tests/e2e/input/snapshots/test_caching_tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +26 -0
  413. mirascope-2.0.2/tests/e2e/input/snapshots/test_caching_tool/openai_gpt_4o_completions_snapshots.py +26 -0
  414. mirascope-2.0.2/tests/e2e/input/snapshots/test_caching_tool/openai_gpt_4o_responses_snapshots.py +26 -0
  415. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_mcp_tools/anthropic_claude_haiku_4_5_snapshots.py +352 -0
  416. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/anthropic_beta_claude_sonnet_4_0_snapshots.py +58 -0
  417. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/anthropic_claude_sonnet_4_0_snapshots.py +64 -0
  418. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/google_gemini_2_5_flash_snapshots.py +94 -0
  419. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +81 -0
  420. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/openai_gpt_4o_completions_snapshots.py +59 -0
  421. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_params/openai_gpt_4o_responses_snapshots.py +75 -0
  422. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error/anthropic_beta_claude_sonnet_4_0_snapshots.py +101 -0
  423. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error/anthropic_claude_sonnet_4_0_snapshots.py +127 -0
  424. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error/google_gemini_2_5_flash_snapshots.py +109 -0
  425. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error/openai_gpt_4o_completions_snapshots.py +78 -0
  426. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error/openai_gpt_4o_responses_snapshots.py +100 -0
  427. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/anthropic_beta_claude_sonnet_4_0_snapshots.py +13 -0
  428. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/anthropic_beta_claude_sonnet_4_5_snapshots.py +93 -0
  429. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/anthropic_claude_sonnet_4_0_snapshots.py +13 -0
  430. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/google_gemini_2_5_flash_snapshots.py +13 -0
  431. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/openai_gpt_4o_completions_snapshots.py +96 -0
  432. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties/openai_gpt_4o_responses_snapshots.py +92 -0
  433. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/anthropic_claude_sonnet_4_0_snapshots.py +3 -0
  434. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/google_gemini_2_5_flash_snapshots.py +3 -0
  435. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/anthropic_beta_claude_sonnet_4_0_snapshots.py +182 -0
  436. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/anthropic_claude_sonnet_4_0_snapshots.py +185 -0
  437. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/google_gemini_2_5_flash_snapshots.py +156 -0
  438. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +10 -0
  439. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/openai_gpt_4o_completions_snapshots.py +128 -0
  440. mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_tool_error/openai_gpt_4o_responses_snapshots.py +87 -0
  441. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +120 -0
  442. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/anthropic_claude_sonnet_4_0_snapshots.py +121 -0
  443. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/google_gemini_2_5_flash_snapshots.py +132 -0
  444. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +10 -0
  445. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/openai_gpt_4o_completions_snapshots.py +116 -0
  446. mirascope-2.0.2/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/openai_gpt_4o_responses_snapshots.py +127 -0
  447. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_streamed_thinking/anthropic_claude_sonnet_4_5_snapshots.py +87 -0
  448. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_thinking/anthropic_claude_sonnet_4_5_snapshots.py +94 -0
  449. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_tools/anthropic_claude_sonnet_4_5_snapshots.py +137 -0
  450. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_tools/google_gemini_3_pro_preview_snapshots.py +173 -0
  451. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_tools_streamed/anthropic_claude_sonnet_4_5_snapshots.py +132 -0
  452. mirascope-2.0.2/tests/e2e/input/snapshots/test_strict_mode_with_tools_streamed/google_gemini_3_pro_preview_snapshots.py +222 -0
  453. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/anthropic_beta_claude_sonnet_4_0_snapshots.py +13 -0
  454. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +13 -0
  455. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/anthropic_claude_sonnet_4_0_snapshots.py +13 -0
  456. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +88 -0
  457. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +10 -0
  458. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_output_parser/anthropic_claude_haiku_4_5_snapshots.py +79 -0
  459. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_primitive_types_int/anthropic_claude_haiku_4_5_snapshots.py +72 -0
  460. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_primitive_types_list/anthropic_claude_haiku_4_5_snapshots.py +99 -0
  461. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_stream_async/anthropic_claude_haiku_4_5_snapshots.py +229 -0
  462. mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_stream_sync/anthropic_claude_haiku_4_5_snapshots.py +268 -0
  463. mirascope-2.0.2/tests/e2e/input/test_call_with_params.py +55 -0
  464. mirascope-2.0.2/tests/e2e/input/test_call_with_parse_error.py +51 -0
  465. mirascope-2.0.2/tests/e2e/input/test_call_with_strict_tool_and_optional_properties.py +50 -0
  466. mirascope-2.0.2/tests/e2e/input/test_call_with_tool_error.py +47 -0
  467. mirascope-2.0.2/tests/e2e/input/test_mirascope_provider.py +88 -0
  468. mirascope-2.0.2/tests/e2e/input/test_model_not_found.py +49 -0
  469. mirascope-2.0.2/tests/e2e/input/test_strict_structured_output_compatibility.py +254 -0
  470. mirascope-2.0.2/tests/e2e/input/test_structured_output_parser.py +58 -0
  471. mirascope-2.0.2/tests/e2e/input/test_structured_output_primitive_types.py +59 -0
  472. mirascope-2.0.2/tests/e2e/input/test_structured_output_streaming.py +73 -0
  473. mirascope-2.0.2/tests/e2e/output/cassettes/test_call/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +151 -0
  474. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +686 -0
  475. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/async.yaml +274 -0
  476. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/async_stream.yaml +1424 -0
  477. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/stream.yaml +921 -0
  478. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/sync.yaml +276 -0
  479. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_beta_claude_sonnet_4_0/async.yaml +171 -0
  480. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +317 -0
  481. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_beta_claude_sonnet_4_0/stream.yaml +286 -0
  482. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_beta_claude_sonnet_4_0/sync.yaml +184 -0
  483. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_claude_sonnet_4_0/async.yaml +179 -0
  484. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_claude_sonnet_4_0/async_stream.yaml +341 -0
  485. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_claude_sonnet_4_0/stream.yaml +310 -0
  486. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/anthropic_claude_sonnet_4_0/sync.yaml +167 -0
  487. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/google_gemini_2_5_flash/async.yaml +65 -0
  488. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/google_gemini_2_5_flash/async_stream.yaml +63 -0
  489. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/google_gemini_2_5_flash/stream.yaml +63 -0
  490. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/google_gemini_2_5_flash/sync.yaml +77 -0
  491. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/openai_gpt_5_responses/async.yaml +113 -0
  492. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/openai_gpt_5_responses/async_stream.yaml +142 -0
  493. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/openai_gpt_5_responses/stream.yaml +142 -0
  494. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_thinking_no_include_thoughts/openai_gpt_5_responses/sync.yaml +113 -0
  495. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/async.yaml +233 -0
  496. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +426 -0
  497. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/stream.yaml +423 -0
  498. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/sync.yaml +233 -0
  499. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/async.yaml +675 -0
  500. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/async_stream.yaml +1115 -0
  501. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/stream.yaml +1103 -0
  502. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/sync.yaml +675 -0
  503. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/async.yaml +677 -0
  504. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/async_stream.yaml +1390 -0
  505. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/stream.yaml +1462 -0
  506. mirascope-2.0.2/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/sync.yaml +678 -0
  507. mirascope-2.0.2/tests/e2e/output/cassettes/test_max_tokens/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +202 -0
  508. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/json/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +209 -0
  509. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/strict/anthropic_claude_sonnet_4_5/async_stream.yaml +186 -0
  510. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/async.yaml +121 -0
  511. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +239 -0
  512. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/stream.yaml +238 -0
  513. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/sync.yaml +121 -0
  514. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/async.yaml +246 -0
  515. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +406 -0
  516. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/stream.yaml +391 -0
  517. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/sync.yaml +246 -0
  518. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/async.yaml +717 -0
  519. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/async_stream.yaml +1232 -0
  520. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/stream.yaml +1232 -0
  521. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/sync.yaml +717 -0
  522. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/async.yaml +723 -0
  523. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/async_stream.yaml +1596 -0
  524. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/stream.yaml +1596 -0
  525. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/sync.yaml +723 -0
  526. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/async.yaml +675 -0
  527. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/async_stream.yaml +1037 -0
  528. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/stream.yaml +1037 -0
  529. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/sync.yaml +675 -0
  530. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/async.yaml +693 -0
  531. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/async_stream.yaml +1428 -0
  532. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/stream.yaml +1517 -0
  533. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/sync.yaml +693 -0
  534. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/async.yaml +232 -0
  535. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/async_stream.yaml +349 -0
  536. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/stream.yaml +349 -0
  537. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/sync.yaml +232 -0
  538. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/async.yaml +679 -0
  539. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/async_stream.yaml +1125 -0
  540. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/stream.yaml +1125 -0
  541. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/sync.yaml +679 -0
  542. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/async.yaml +693 -0
  543. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/async_stream.yaml +1517 -0
  544. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/stream.yaml +1521 -0
  545. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/sync.yaml +694 -0
  546. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/async.yaml +239 -0
  547. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +427 -0
  548. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/stream.yaml +432 -0
  549. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/sync.yaml +239 -0
  550. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/async.yaml +699 -0
  551. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/async_stream.yaml +1055 -0
  552. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/stream.yaml +1055 -0
  553. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/sync.yaml +699 -0
  554. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/async.yaml +718 -0
  555. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/async_stream.yaml +1356 -0
  556. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/stream.yaml +1356 -0
  557. mirascope-2.0.2/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/sync.yaml +717 -0
  558. mirascope-2.0.2/tests/e2e/output/conftest.py +200 -0
  559. mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +1 -0
  560. mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +1 -0
  561. mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +1 -0
  562. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0_snapshots.py +801 -0
  563. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking/anthropic_claude_sonnet_4_0_snapshots.py +788 -0
  564. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking/openai_gpt_5_responses_snapshots.py +731 -0
  565. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking_no_include_thoughts/anthropic_beta_claude_sonnet_4_0_snapshots.py +423 -0
  566. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking_no_include_thoughts/anthropic_claude_sonnet_4_0_snapshots.py +437 -0
  567. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking_no_include_thoughts/google_gemini_2_5_flash_snapshots.py +330 -0
  568. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_thinking_no_include_thoughts/openai_gpt_5_responses_snapshots.py +240 -0
  569. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +559 -0
  570. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_tools/anthropic_claude_sonnet_4_0_snapshots.py +567 -0
  571. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_tools/google_gemini_2_5_flash_snapshots.py +703 -0
  572. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_tools/openai_gpt_4o_completions_snapshots.py +473 -0
  573. mirascope-2.0.2/tests/e2e/output/snapshots/test_call_with_tools/openai_gpt_4o_responses_snapshots.py +559 -0
  574. mirascope-2.0.2/tests/e2e/output/snapshots/test_max_tokens/anthropic_beta_claude_sonnet_4_0_snapshots.py +281 -0
  575. mirascope-2.0.2/tests/e2e/output/snapshots/test_refusal/anthropic_beta_claude_sonnet_4_0_snapshots.py +46 -0
  576. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output/anthropic_beta_claude_sonnet_4_0_snapshots.py +46 -0
  577. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output/json/anthropic_beta_claude_sonnet_4_0_snapshots.py +809 -0
  578. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +46 -0
  579. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output/strict/anthropic_claude_sonnet_4_0_snapshots.py +46 -0
  580. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +393 -0
  581. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +46 -0
  582. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_claude_sonnet_4_0_snapshots.py +547 -0
  583. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_claude_sonnet_4_5_snapshots.py +547 -0
  584. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/google_gemini_2_5_flash_snapshots.py +661 -0
  585. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0_snapshots.py +843 -0
  586. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0_snapshots.py +855 -0
  587. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5_snapshots.py +969 -0
  588. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/json/openai_gpt_4o_completions_snapshots.py +763 -0
  589. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/json/openai_gpt_4o_responses_snapshots.py +839 -0
  590. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/openai_gpt_4o_completions_snapshots.py +460 -0
  591. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/openai_gpt_4o_responses_snapshots.py +535 -0
  592. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +46 -0
  593. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_0_snapshots.py +46 -0
  594. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5_snapshots.py +510 -0
  595. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/openai_gpt_4o_completions_snapshots.py +460 -0
  596. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/openai_gpt_4o_responses_snapshots.py +556 -0
  597. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +547 -0
  598. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0_snapshots.py +547 -0
  599. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5_snapshots.py +547 -0
  600. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/google_gemini_2_5_flash_snapshots.py +661 -0
  601. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/openai_gpt_4o_completions_snapshots.py +499 -0
  602. mirascope-2.0.2/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/openai_gpt_4o_responses_snapshots.py +519 -0
  603. mirascope-2.0.2/tests/e2e/output/test_call_with_thinking.py +207 -0
  604. mirascope-2.0.2/tests/e2e/output/test_prompt.py +171 -0
  605. mirascope-2.0.2/tests/e2e/output/test_refusal.py +98 -0
  606. mirascope-2.0.2/tests/llm/formatting/test_format.py +279 -0
  607. mirascope-2.0.2/tests/llm/formatting/test_output_parser.py +103 -0
  608. mirascope-2.0.2/tests/llm/formatting/test_partial.py +196 -0
  609. mirascope-2.0.2/tests/llm/formatting/test_primitive_types.py +287 -0
  610. mirascope-2.0.2/tests/llm/mcp/test_mcp_client.py +285 -0
  611. mirascope-2.0.2/tests/llm/providers/anthropic/test_anthropic_beta_provider.py +151 -0
  612. mirascope-2.0.2/tests/llm/providers/anthropic/test_anthropic_provider.py +217 -0
  613. mirascope-2.0.2/tests/llm/providers/base/test_base_provider.py +224 -0
  614. mirascope-2.0.2/tests/llm/providers/base/test_utils.py +275 -0
  615. mirascope-2.0.2/tests/llm/providers/google/test_google_provider.py +278 -0
  616. mirascope-2.0.2/tests/llm/providers/mlx/test_utils.py +69 -0
  617. mirascope-2.0.2/tests/llm/providers/openai/test_completions_encoding.py +115 -0
  618. mirascope-2.0.2/tests/llm/providers/openai/test_completions_provider.py +130 -0
  619. mirascope-2.0.2/tests/llm/providers/openai/test_responses_provider.py +130 -0
  620. mirascope-2.0.2/tests/llm/providers/test_mirascope_provider.py +411 -0
  621. mirascope-2.0.2/tests/llm/providers/test_provider_registry.py +269 -0
  622. mirascope-2.0.2/tests/llm/responses/test_response.py +1335 -0
  623. mirascope-2.0.2/tests/llm/responses/test_stream_response.py +2148 -0
  624. mirascope-2.0.2/tests/llm/responses/test_structured_stream.py +465 -0
  625. mirascope-2.0.2/tests/llm/responses/test_utils.py +234 -0
  626. mirascope-2.0.2/tests/llm/test_error_wrapping.py +83 -0
  627. mirascope-2.0.2/tests/llm/tools/test_decorator.py +620 -0
  628. mirascope-2.0.2/tests/llm/tools/test_tool_schema.py +422 -0
  629. mirascope-2.0.2/tests/llm/tools/test_toolkit.py +240 -0
  630. mirascope-2.0.2/tests/ops/_internal/cassettes/test_versioned_async_call.yaml +361 -0
  631. mirascope-2.0.2/tests/ops/_internal/cassettes/test_versioned_async_context_call.yaml +363 -0
  632. mirascope-2.0.2/tests/ops/_internal/cassettes/test_versioned_call_sync.yaml +362 -0
  633. mirascope-2.0.2/tests/ops/_internal/cassettes/test_versioned_context_call.yaml +362 -0
  634. mirascope-2.0.2/tests/ops/_internal/exporters/test_exporters.py +783 -0
  635. mirascope-2.0.2/tests/ops/_internal/instrumentation/__init__.py +0 -0
  636. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/__init__.py +0 -0
  637. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_async_context_response_resume_exports_mirascope_span.yaml +220 -0
  638. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_async_context_stream_response_resume_exports_mirascope_span.yaml +260 -0
  639. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_async_response_resume_exports_mirascope_span.yaml +688 -0
  640. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_async_stream_response_resume_exports_mirascope_span.yaml +259 -0
  641. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_context_response_resume_exports_mirascope_span.yaml +220 -0
  642. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_context_stream_response_resume_exports_mirascope_span.yaml +255 -0
  643. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_call_with_strict_tool.yaml +114 -0
  644. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_call_with_tool_outputs.yaml +438 -0
  645. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_call_with_tools.yaml +307 -0
  646. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_context_resume_async_exports_genai_span.yaml +220 -0
  647. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_context_resume_exports_genai_span.yaml +220 -0
  648. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_context_resume_stream_async_exports_genai_span.yaml +260 -0
  649. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_context_resume_stream_exports_genai_span.yaml +255 -0
  650. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_resume_async_exports_genai_span.yaml +220 -0
  651. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_resume_exports_genai_span.yaml +221 -0
  652. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_resume_stream_async_exports_genai_span.yaml +255 -0
  653. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_resume_stream_exports_genai_span.yaml +260 -0
  654. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_stream_async_exports_genai_span.yaml +178 -0
  655. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_stream_async_with_tracer_set_to_none.yaml +178 -0
  656. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_stream_async_without_instrumentation.yaml +178 -0
  657. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_model_stream_with_tools.yaml +390 -0
  658. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_response_resume_exports_mirascope_span.yaml +221 -0
  659. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/cassettes/test_stream_response_resume_exports_mirascope_span.yaml +255 -0
  660. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_common.py +232 -0
  661. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_cost_calculation.py +457 -0
  662. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_instrumentation.py +102 -0
  663. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_call.py +839 -0
  664. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_call_async.py +137 -0
  665. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_context_call.py +66 -0
  666. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_context_call_async.py +67 -0
  667. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_context_stream.py +146 -0
  668. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_context_stream_async.py +224 -0
  669. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_resume.py +779 -0
  670. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_stream.py +441 -0
  671. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_model_stream_async.py +190 -0
  672. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_response.py +353 -0
  673. mirascope-2.0.2/tests/ops/_internal/instrumentation/llm/test_serialize.py +598 -0
  674. mirascope-2.0.2/tests/ops/_internal/test_closure.py +1552 -0
  675. mirascope-2.0.2/tests/ops/_internal/test_configuration.py +192 -0
  676. mirascope-2.0.2/tests/ops/_internal/test_metadata_preservation.py +246 -0
  677. mirascope-2.0.2/tests/ops/_internal/test_propagation.py +634 -0
  678. mirascope-2.0.2/tests/ops/_internal/test_span.py +555 -0
  679. mirascope-2.0.2/tests/ops/_internal/test_tracing.py +1792 -0
  680. mirascope-2.0.2/tests/ops/_internal/test_versioning.py +1859 -0
  681. mirascope-2.0.2/tests/ops/conftest.py +161 -0
  682. mirascope-2.0.2/uv.lock +3490 -0
  683. mirascope-2.0.0a6/.coveragerc +0 -47
  684. mirascope-2.0.0a6/.env.example +0 -14
  685. mirascope-2.0.0a6/.gitignore +0 -180
  686. mirascope-2.0.0a6/LICENSE +0 -21
  687. mirascope-2.0.0a6/PKG-INFO +0 -202
  688. mirascope-2.0.0a6/examples/intro/context/model.py +0 -41
  689. mirascope-2.0.0a6/examples/intro/format/model.py +0 -26
  690. mirascope-2.0.0a6/examples/intro/local_model/model.py +0 -18
  691. mirascope-2.0.0a6/examples/intro/mlx/model.py +0 -11
  692. mirascope-2.0.0a6/examples/intro/model/async.py +0 -18
  693. mirascope-2.0.0a6/examples/intro/model/async_stream.py +0 -19
  694. mirascope-2.0.0a6/examples/intro/model/stream.py +0 -16
  695. mirascope-2.0.0a6/examples/intro/model/sync.py +0 -15
  696. mirascope-2.0.0a6/examples/intro/override/model.py +0 -18
  697. mirascope-2.0.0a6/examples/intro/parameters/model.py +0 -18
  698. mirascope-2.0.0a6/examples/intro/register_provider/model.py +0 -22
  699. mirascope-2.0.0a6/examples/intro/resume/model.py +0 -18
  700. mirascope-2.0.0a6/examples/intro/system_messages/model.py +0 -20
  701. mirascope-2.0.0a6/examples/intro/tool_call/model.py +0 -36
  702. mirascope-2.0.0a6/examples/mcp_with_thinking.py +0 -34
  703. mirascope-2.0.0a6/examples/misc/local_clickhouse_verify.py +0 -254
  704. mirascope-2.0.0a6/examples/misc/local_versioning_example.py +0 -85
  705. mirascope-2.0.0a6/mirascope/api/_generated/__init__.py +0 -259
  706. mirascope-2.0.0a6/mirascope/api/_generated/annotations/client.py +0 -474
  707. mirascope-2.0.0a6/mirascope/api/_generated/annotations/raw_client.py +0 -1095
  708. mirascope-2.0.0a6/mirascope/api/_generated/annotations/types/annotations_create_response.py +0 -35
  709. mirascope-2.0.0a6/mirascope/api/_generated/annotations/types/annotations_get_response.py +0 -35
  710. mirascope-2.0.0a6/mirascope/api/_generated/annotations/types/annotations_list_response_annotations_item.py +0 -35
  711. mirascope-2.0.0a6/mirascope/api/_generated/annotations/types/annotations_update_response.py +0 -35
  712. mirascope-2.0.0a6/mirascope/api/_generated/api_keys/__init__.py +0 -7
  713. mirascope-2.0.0a6/mirascope/api/_generated/api_keys/client.py +0 -429
  714. mirascope-2.0.0a6/mirascope/api/_generated/api_keys/raw_client.py +0 -788
  715. mirascope-2.0.0a6/mirascope/api/_generated/api_keys/types/__init__.py +0 -9
  716. mirascope-2.0.0a6/mirascope/api/_generated/client.py +0 -175
  717. mirascope-2.0.0a6/mirascope/api/_generated/docs/raw_client.py +0 -116
  718. mirascope-2.0.0a6/mirascope/api/_generated/environment.py +0 -9
  719. mirascope-2.0.0a6/mirascope/api/_generated/environments/__init__.py +0 -17
  720. mirascope-2.0.0a6/mirascope/api/_generated/environments/client.py +0 -500
  721. mirascope-2.0.0a6/mirascope/api/_generated/environments/raw_client.py +0 -999
  722. mirascope-2.0.0a6/mirascope/api/_generated/environments/types/__init__.py +0 -15
  723. mirascope-2.0.0a6/mirascope/api/_generated/errors/__init__.py +0 -19
  724. mirascope-2.0.0a6/mirascope/api/_generated/errors/bad_request_error.py +0 -11
  725. mirascope-2.0.0a6/mirascope/api/_generated/errors/conflict_error.py +0 -11
  726. mirascope-2.0.0a6/mirascope/api/_generated/functions/__init__.py +0 -29
  727. mirascope-2.0.0a6/mirascope/api/_generated/functions/client.py +0 -433
  728. mirascope-2.0.0a6/mirascope/api/_generated/functions/raw_client.py +0 -1049
  729. mirascope-2.0.0a6/mirascope/api/_generated/functions/types/__init__.py +0 -29
  730. mirascope-2.0.0a6/mirascope/api/_generated/health/raw_client.py +0 -111
  731. mirascope-2.0.0a6/mirascope/api/_generated/organizations/__init__.py +0 -27
  732. mirascope-2.0.0a6/mirascope/api/_generated/organizations/client.py +0 -447
  733. mirascope-2.0.0a6/mirascope/api/_generated/organizations/raw_client.py +0 -994
  734. mirascope-2.0.0a6/mirascope/api/_generated/organizations/types/__init__.py +0 -25
  735. mirascope-2.0.0a6/mirascope/api/_generated/organizations/types/organizations_credits_response.py +0 -19
  736. mirascope-2.0.0a6/mirascope/api/_generated/projects/raw_client.py +0 -945
  737. mirascope-2.0.0a6/mirascope/api/_generated/reference.md +0 -2545
  738. mirascope-2.0.0a6/mirascope/api/_generated/traces/__init__.py +0 -77
  739. mirascope-2.0.0a6/mirascope/api/_generated/traces/client.py +0 -560
  740. mirascope-2.0.0a6/mirascope/api/_generated/traces/raw_client.py +0 -1052
  741. mirascope-2.0.0a6/mirascope/api/_generated/traces/types/__init__.py +0 -127
  742. mirascope-2.0.0a6/mirascope/api/_generated/traces/types/traces_get_analytics_summary_response.py +0 -54
  743. mirascope-2.0.0a6/mirascope/api/_generated/traces/types/traces_get_trace_detail_response_spans_item.py +0 -90
  744. mirascope-2.0.0a6/mirascope/api/_generated/traces/types/traces_search_response_spans_item.py +0 -41
  745. mirascope-2.0.0a6/mirascope/api/_generated/types/__init__.py +0 -55
  746. mirascope-2.0.0a6/mirascope/api/_generated/types/internal_server_error_body.py +0 -49
  747. mirascope-2.0.0a6/mirascope/api/settings.py +0 -81
  748. mirascope-2.0.0a6/mirascope/llm/__init__.py +0 -254
  749. mirascope-2.0.0a6/mirascope/llm/calls/__init__.py +0 -16
  750. mirascope-2.0.0a6/mirascope/llm/calls/calls.py +0 -339
  751. mirascope-2.0.0a6/mirascope/llm/calls/decorator.py +0 -261
  752. mirascope-2.0.0a6/mirascope/llm/content/tool_output.py +0 -26
  753. mirascope-2.0.0a6/mirascope/llm/exceptions.py +0 -147
  754. mirascope-2.0.0a6/mirascope/llm/formatting/__init__.py +0 -22
  755. mirascope-2.0.0a6/mirascope/llm/formatting/format.py +0 -216
  756. mirascope-2.0.0a6/mirascope/llm/formatting/partial.py +0 -58
  757. mirascope-2.0.0a6/mirascope/llm/formatting/types.py +0 -54
  758. mirascope-2.0.0a6/mirascope/llm/messages/__init__.py +0 -32
  759. mirascope-2.0.0a6/mirascope/llm/models/__init__.py +0 -16
  760. mirascope-2.0.0a6/mirascope/llm/models/models.py +0 -1351
  761. mirascope-2.0.0a6/mirascope/llm/prompts/_utils.py +0 -63
  762. mirascope-2.0.0a6/mirascope/llm/prompts/decorator.py +0 -215
  763. mirascope-2.0.0a6/mirascope/llm/prompts/prompts.py +0 -424
  764. mirascope-2.0.0a6/mirascope/llm/providers/__init__.py +0 -65
  765. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/__init__.py +0 -25
  766. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/beta_decode.py +0 -273
  767. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/beta_encode.py +0 -217
  768. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/decode.py +0 -279
  769. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/encode.py +0 -399
  770. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/_utils/errors.py +0 -46
  771. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/beta_provider.py +0 -328
  772. mirascope-2.0.0a6/mirascope/llm/providers/anthropic/provider.py +0 -421
  773. mirascope-2.0.0a6/mirascope/llm/providers/base/__init__.py +0 -18
  774. mirascope-2.0.0a6/mirascope/llm/providers/base/_utils.py +0 -204
  775. mirascope-2.0.0a6/mirascope/llm/providers/base/base_provider.py +0 -1500
  776. mirascope-2.0.0a6/mirascope/llm/providers/base/params.py +0 -122
  777. mirascope-2.0.0a6/mirascope/llm/providers/google/_utils/__init__.py +0 -15
  778. mirascope-2.0.0a6/mirascope/llm/providers/google/_utils/decode.py +0 -294
  779. mirascope-2.0.0a6/mirascope/llm/providers/google/_utils/encode.py +0 -382
  780. mirascope-2.0.0a6/mirascope/llm/providers/google/_utils/errors.py +0 -49
  781. mirascope-2.0.0a6/mirascope/llm/providers/google/provider.py +0 -446
  782. mirascope-2.0.0a6/mirascope/llm/providers/mirascope/_utils.py +0 -77
  783. mirascope-2.0.0a6/mirascope/llm/providers/mirascope/provider.py +0 -318
  784. mirascope-2.0.0a6/mirascope/llm/providers/mlx/_utils.py +0 -136
  785. mirascope-2.0.0a6/mirascope/llm/providers/mlx/encoding/base.py +0 -69
  786. mirascope-2.0.0a6/mirascope/llm/providers/mlx/encoding/transformers.py +0 -147
  787. mirascope-2.0.0a6/mirascope/llm/providers/mlx/mlx.py +0 -237
  788. mirascope-2.0.0a6/mirascope/llm/providers/mlx/provider.py +0 -423
  789. mirascope-2.0.0a6/mirascope/llm/providers/openai/_utils/errors.py +0 -46
  790. mirascope-2.0.0a6/mirascope/llm/providers/openai/completions/_utils/encode.py +0 -372
  791. mirascope-2.0.0a6/mirascope/llm/providers/openai/completions/base_provider.py +0 -513
  792. mirascope-2.0.0a6/mirascope/llm/providers/openai/provider.py +0 -411
  793. mirascope-2.0.0a6/mirascope/llm/providers/openai/responses/_utils/__init__.py +0 -13
  794. mirascope-2.0.0a6/mirascope/llm/providers/openai/responses/_utils/decode.py +0 -247
  795. mirascope-2.0.0a6/mirascope/llm/providers/openai/responses/_utils/encode.py +0 -372
  796. mirascope-2.0.0a6/mirascope/llm/providers/openai/responses/provider.py +0 -475
  797. mirascope-2.0.0a6/mirascope/llm/providers/provider_registry.py +0 -225
  798. mirascope-2.0.0a6/mirascope/llm/responses/__init__.py +0 -60
  799. mirascope-2.0.0a6/mirascope/llm/responses/_utils.py +0 -56
  800. mirascope-2.0.0a6/mirascope/llm/responses/base_response.py +0 -100
  801. mirascope-2.0.0a6/mirascope/llm/responses/base_stream_response.py +0 -730
  802. mirascope-2.0.0a6/mirascope/llm/responses/response.py +0 -365
  803. mirascope-2.0.0a6/mirascope/llm/responses/root_response.py +0 -176
  804. mirascope-2.0.0a6/mirascope/llm/responses/stream_response.py +0 -584
  805. mirascope-2.0.0a6/mirascope/llm/tools/decorator.py +0 -179
  806. mirascope-2.0.0a6/mirascope/llm/tools/tool_schema.py +0 -308
  807. mirascope-2.0.0a6/mirascope/llm/tools/toolkit.py +0 -152
  808. mirascope-2.0.0a6/mirascope/llm/tools/tools.py +0 -238
  809. mirascope-2.0.0a6/mirascope/ops/__init__.py +0 -107
  810. mirascope-2.0.0a6/mirascope/ops/_internal/closure.py +0 -1169
  811. mirascope-2.0.0a6/mirascope/ops/_internal/configuration.py +0 -126
  812. mirascope-2.0.0a6/mirascope/ops/_internal/exporters/exporters.py +0 -342
  813. mirascope-2.0.0a6/mirascope/ops/_internal/exporters/utils.py +0 -29
  814. mirascope-2.0.0a6/mirascope/ops/_internal/instrumentation/llm/encode.py +0 -238
  815. mirascope-2.0.0a6/mirascope/ops/_internal/instrumentation/llm/llm.py +0 -1287
  816. mirascope-2.0.0a6/mirascope/ops/_internal/protocols.py +0 -51
  817. mirascope-2.0.0a6/mirascope/ops/_internal/traced_calls.py +0 -371
  818. mirascope-2.0.0a6/mirascope/ops/_internal/traced_functions.py +0 -413
  819. mirascope-2.0.0a6/mirascope/ops/_internal/tracing.py +0 -276
  820. mirascope-2.0.0a6/mirascope/ops/_internal/utils.py +0 -75
  821. mirascope-2.0.0a6/mirascope/ops/_internal/versioned_functions.py +0 -357
  822. mirascope-2.0.0a6/pyproject.toml +0 -256
  823. mirascope-2.0.0a6/scripts/regenerate_examples.ts +0 -127
  824. mirascope-2.0.0a6/tests/api/test_client.py +0 -199
  825. mirascope-2.0.0a6/tests/e2e/conftest.py +0 -209
  826. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_caching_tool/anthropic_beta_claude_sonnet_4_0.yaml +0 -640
  827. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_caching_tool/openai_gpt_4o_completions.yaml +0 -634
  828. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_caching_tool/openai_gpt_4o_responses.yaml +0 -865
  829. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider/anthropic_claude_haiku_4_5.yaml +0 -106
  830. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider/google_gemini_2_5_flash.yaml +0 -66
  831. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini.yaml +0 -124
  832. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini_completions.yaml +0 -116
  833. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider/openai_gpt_5_mini_responses.yaml +0 -124
  834. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider_streaming/anthropic_claude_haiku_4_5.yaml +0 -168
  835. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider_streaming/google_gemini_2_5_flash.yaml +0 -70
  836. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini.yaml +0 -150
  837. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini_completions.yaml +0 -124
  838. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_mirascope_provider_streaming/openai_gpt_5_mini_responses.yaml +0 -150
  839. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/anthropic_beta_claude_sonnet_4_0.yaml +0 -375
  840. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/openai_gpt_4o_completions.yaml +0 -372
  841. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/openai_gpt_4o_responses.yaml +0 -385
  842. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_strict_mode_with_tools/anthropic_claude_sonnet_4_5.yaml +0 -230
  843. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_strict_mode_with_tools_streamed/anthropic_claude_sonnet_4_5.yaml +0 -333
  844. mirascope-2.0.0a6/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/anthropic_beta_claude_sonnet_4_0.yaml +0 -118
  845. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_caching_tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -26
  846. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_caching_tool/openai_gpt_4o_completions_snapshots.py +0 -40
  847. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_caching_tool/openai_gpt_4o_responses_snapshots.py +0 -26
  848. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_mcp_tools/anthropic_claude_haiku_4_5_snapshots.py +0 -352
  849. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -58
  850. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/anthropic_claude_sonnet_4_0_snapshots.py +0 -64
  851. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/google_gemini_2_5_flash_snapshots.py +0 -94
  852. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -81
  853. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/openai_gpt_4o_completions_snapshots.py +0 -59
  854. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_params/openai_gpt_4o_responses_snapshots.py +0 -75
  855. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -40
  856. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/anthropic_claude_sonnet_4_0_snapshots.py +0 -40
  857. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -120
  858. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/anthropic_claude_sonnet_4_0_snapshots.py +0 -121
  859. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/google_gemini_2_5_flash_snapshots.py +0 -136
  860. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/openai_gpt_4o_completions_snapshots.py +0 -116
  861. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools/openai_gpt_4o_responses_snapshots.py +0 -127
  862. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_streamed_thinking/anthropic_claude_sonnet_4_5_snapshots.py +0 -105
  863. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_thinking/anthropic_claude_sonnet_4_5_snapshots.py +0 -114
  864. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_tools/anthropic_claude_sonnet_4_5_snapshots.py +0 -137
  865. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_tools/google_gemini_3_pro_preview_snapshots.py +0 -173
  866. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_tools_streamed/anthropic_claude_sonnet_4_5_snapshots.py +0 -132
  867. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_strict_mode_with_tools_streamed/google_gemini_3_pro_preview_snapshots.py +0 -222
  868. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -14
  869. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -14
  870. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/anthropic_claude_sonnet_4_0_snapshots.py +0 -14
  871. mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -88
  872. mirascope-2.0.0a6/tests/e2e/input/test_call_with_params.py +0 -55
  873. mirascope-2.0.0a6/tests/e2e/input/test_mirascope_provider.py +0 -88
  874. mirascope-2.0.0a6/tests/e2e/input/test_model_not_found.py +0 -49
  875. mirascope-2.0.0a6/tests/e2e/input/test_strict_structured_output_compatibility.py +0 -254
  876. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -167
  877. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -569
  878. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/async.yaml +0 -271
  879. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/async_stream.yaml +0 -1135
  880. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/stream.yaml +0 -1362
  881. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_thinking/openai_gpt_5_responses/sync.yaml +0 -264
  882. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -233
  883. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -442
  884. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -448
  885. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -233
  886. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/async.yaml +0 -223
  887. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/async_stream.yaml +0 -366
  888. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/stream.yaml +0 -350
  889. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_completions/sync.yaml +0 -223
  890. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/async.yaml +0 -218
  891. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/async_stream.yaml +0 -467
  892. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/stream.yaml +0 -489
  893. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_call_with_tools/openai_gpt_4o_responses/sync.yaml +0 -218
  894. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_max_tokens/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -185
  895. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/json/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -204
  896. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/strict/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -187
  897. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -121
  898. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -217
  899. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -244
  900. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -121
  901. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -246
  902. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -402
  903. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -397
  904. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -246
  905. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/async.yaml +0 -237
  906. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/async_stream.yaml +0 -404
  907. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/stream.yaml +0 -404
  908. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_completions/sync.yaml +0 -237
  909. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/async.yaml +0 -233
  910. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/async_stream.yaml +0 -536
  911. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/stream.yaml +0 -536
  912. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/json/openai_gpt_4o_responses/sync.yaml +0 -233
  913. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/async.yaml +0 -223
  914. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/async_stream.yaml +0 -339
  915. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/stream.yaml +0 -339
  916. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_completions/sync.yaml +0 -223
  917. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/async.yaml +0 -223
  918. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/async_stream.yaml +0 -447
  919. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/stream.yaml +0 -447
  920. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/openai_gpt_4o_responses/sync.yaml +0 -223
  921. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/async.yaml +0 -232
  922. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -335
  923. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/stream.yaml +0 -345
  924. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5/sync.yaml +0 -232
  925. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/async.yaml +0 -226
  926. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/async_stream.yaml +0 -427
  927. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/stream.yaml +0 -427
  928. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_completions/sync.yaml +0 -226
  929. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/async.yaml +0 -223
  930. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/async_stream.yaml +0 -447
  931. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/stream.yaml +0 -615
  932. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/strict/openai_gpt_4o_responses/sync.yaml +0 -224
  933. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -239
  934. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/async_stream.yaml +0 -401
  935. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -412
  936. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -239
  937. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/async.yaml +0 -231
  938. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/async_stream.yaml +0 -345
  939. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/stream.yaml +0 -345
  940. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_completions/sync.yaml +0 -231
  941. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/async.yaml +0 -232
  942. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/async_stream.yaml +0 -448
  943. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/stream.yaml +0 -448
  944. mirascope-2.0.0a6/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/openai_gpt_4o_responses/sync.yaml +0 -231
  945. mirascope-2.0.0a6/tests/e2e/output/conftest.py +0 -161
  946. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -891
  947. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_thinking/anthropic_claude_sonnet_4_0_snapshots.py +0 -851
  948. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_thinking/openai_gpt_5_responses_snapshots.py +0 -699
  949. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -559
  950. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_tools/anthropic_claude_sonnet_4_0_snapshots.py +0 -567
  951. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_tools/google_gemini_2_5_flash_snapshots.py +0 -703
  952. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_tools/openai_gpt_4o_completions_snapshots.py +0 -472
  953. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_call_with_tools/openai_gpt_4o_responses_snapshots.py +0 -563
  954. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_max_tokens/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -283
  955. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_refusal/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -50
  956. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -50
  957. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output/json/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -805
  958. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -50
  959. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output/strict/anthropic_claude_sonnet_4_0_snapshots.py +0 -50
  960. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -393
  961. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -50
  962. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_claude_sonnet_4_0_snapshots.py +0 -547
  963. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/anthropic_claude_sonnet_4_5_snapshots.py +0 -547
  964. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/google_gemini_2_5_flash_snapshots.py +0 -661
  965. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -843
  966. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0_snapshots.py +0 -855
  967. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5_snapshots.py +0 -969
  968. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/json/openai_gpt_4o_completions_snapshots.py +0 -749
  969. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/json/openai_gpt_4o_responses_snapshots.py +0 -839
  970. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/openai_gpt_4o_completions_snapshots.py +0 -460
  971. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/openai_gpt_4o_responses_snapshots.py +0 -522
  972. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -50
  973. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_0_snapshots.py +0 -50
  974. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/anthropic_claude_sonnet_4_5_snapshots.py +0 -510
  975. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/openai_gpt_4o_completions_snapshots.py +0 -466
  976. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/openai_gpt_4o_responses_snapshots.py +0 -556
  977. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -547
  978. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0_snapshots.py +0 -547
  979. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5_snapshots.py +0 -547
  980. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/google_gemini_2_5_flash_snapshots.py +0 -661
  981. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/openai_gpt_4o_completions_snapshots.py +0 -499
  982. mirascope-2.0.0a6/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/openai_gpt_4o_responses_snapshots.py +0 -519
  983. mirascope-2.0.0a6/tests/e2e/output/test_call_with_thinking.py +0 -109
  984. mirascope-2.0.0a6/tests/e2e/output/test_prompt.py +0 -179
  985. mirascope-2.0.0a6/tests/e2e/output/test_refusal.py +0 -98
  986. mirascope-2.0.0a6/tests/llm/formatting/test_format.py +0 -149
  987. mirascope-2.0.0a6/tests/llm/mcp/test_mcp_client.py +0 -283
  988. mirascope-2.0.0a6/tests/llm/providers/anthropic/test_anthropic_beta_provider.py +0 -151
  989. mirascope-2.0.0a6/tests/llm/providers/anthropic/test_anthropic_provider.py +0 -217
  990. mirascope-2.0.0a6/tests/llm/providers/base/test_utils.py +0 -160
  991. mirascope-2.0.0a6/tests/llm/providers/google/test_google_provider.py +0 -278
  992. mirascope-2.0.0a6/tests/llm/providers/mlx/test_utils.py +0 -70
  993. mirascope-2.0.0a6/tests/llm/providers/openai/test_completions_encoding.py +0 -115
  994. mirascope-2.0.0a6/tests/llm/providers/openai/test_completions_provider.py +0 -130
  995. mirascope-2.0.0a6/tests/llm/providers/openai/test_responses_provider.py +0 -130
  996. mirascope-2.0.0a6/tests/llm/providers/test_mirascope_provider.py +0 -409
  997. mirascope-2.0.0a6/tests/llm/providers/test_provider_registry.py +0 -143
  998. mirascope-2.0.0a6/tests/llm/responses/test_response.py +0 -816
  999. mirascope-2.0.0a6/tests/llm/responses/test_stream_response.py +0 -2023
  1000. mirascope-2.0.0a6/tests/llm/responses/test_utils.py +0 -195
  1001. mirascope-2.0.0a6/tests/llm/test_error_wrapping.py +0 -60
  1002. mirascope-2.0.0a6/tests/llm/tools/test_decorator.py +0 -415
  1003. mirascope-2.0.0a6/tests/llm/tools/test_tool_schema.py +0 -420
  1004. mirascope-2.0.0a6/tests/llm/tools/test_toolkit.py +0 -192
  1005. mirascope-2.0.0a6/tests/ops/_internal/exporters/test_exporters.py +0 -517
  1006. mirascope-2.0.0a6/tests/ops/_internal/test_closure.py +0 -1552
  1007. mirascope-2.0.0a6/tests/ops/cassettes/test_model_call_with_format_tool_mode.yaml +0 -79
  1008. mirascope-2.0.0a6/tests/ops/cassettes/test_model_call_with_max_tokens_limit.yaml +0 -87
  1009. mirascope-2.0.0a6/tests/ops/cassettes/test_model_call_with_tool_outputs.yaml +0 -219
  1010. mirascope-2.0.0a6/tests/ops/cassettes/test_model_call_with_tools.yaml +0 -108
  1011. mirascope-2.0.0a6/tests/ops/cassettes/test_model_stream_with_tools.yaml +0 -193
  1012. mirascope-2.0.0a6/tests/ops/cassettes/test_versioned_async_call.yaml +0 -361
  1013. mirascope-2.0.0a6/tests/ops/cassettes/test_versioned_async_context_call.yaml +0 -363
  1014. mirascope-2.0.0a6/tests/ops/cassettes/test_versioned_call_sync.yaml +0 -362
  1015. mirascope-2.0.0a6/tests/ops/cassettes/test_versioned_context_call.yaml +0 -362
  1016. mirascope-2.0.0a6/tests/ops/conftest.py +0 -161
  1017. mirascope-2.0.0a6/tests/ops/test_configuration.py +0 -14
  1018. mirascope-2.0.0a6/tests/ops/test_model_call.py +0 -826
  1019. mirascope-2.0.0a6/tests/ops/test_model_call_async.py +0 -133
  1020. mirascope-2.0.0a6/tests/ops/test_model_context_call.py +0 -62
  1021. mirascope-2.0.0a6/tests/ops/test_model_context_call_async.py +0 -63
  1022. mirascope-2.0.0a6/tests/ops/test_model_context_stream.py +0 -142
  1023. mirascope-2.0.0a6/tests/ops/test_model_context_stream_async.py +0 -218
  1024. mirascope-2.0.0a6/tests/ops/test_model_stream.py +0 -425
  1025. mirascope-2.0.0a6/tests/ops/test_propagation.py +0 -635
  1026. mirascope-2.0.0a6/tests/ops/test_span.py +0 -555
  1027. mirascope-2.0.0a6/tests/ops/test_tracing.py +0 -1385
  1028. mirascope-2.0.0a6/tests/ops/test_versioning.py +0 -1802
  1029. mirascope-2.0.0a6/uv.lock +0 -3488
  1030. {mirascope-2.0.0a6 → mirascope-2.0.2}/AGENTS.md +0 -0
  1031. {mirascope-2.0.0a6 → mirascope-2.0.2}/README.md +0 -0
  1032. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/context/decorator.py +0 -0
  1033. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/decorator/async.py +0 -0
  1034. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/decorator/async_stream.py +0 -0
  1035. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/decorator/stream.py +0 -0
  1036. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/decorator/sync.py +0 -0
  1037. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/format/decorator.py +0 -0
  1038. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/local_model/decorator.py +0 -0
  1039. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/mlx/decorator.py +0 -0
  1040. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/override/decorator.py +0 -0
  1041. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/parameters/decorator.py +0 -0
  1042. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/register_provider/decorator.py +0 -0
  1043. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/resume/decorator.py +0 -0
  1044. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/system_messages/decorator.py +0 -0
  1045. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/intro/tool_call/decorator.py +0 -0
  1046. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/misc/anthropic_redacted_thinking.py +0 -0
  1047. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/misc/openai_responses_reasoning.py +0 -0
  1048. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/misc/opentelemetry_call_trace.py +0 -0
  1049. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/misc/opentelemetry_genai.py +0 -0
  1050. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed.py +0 -0
  1051. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async.py +0 -0
  1052. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_context.py +0 -0
  1053. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_context_structured.py +0 -0
  1054. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream.py +0 -0
  1055. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_context.py +0 -0
  1056. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_context_structured.py +0 -0
  1057. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_structured.py +0 -0
  1058. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_tools.py +0 -0
  1059. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_tools_context.py +0 -0
  1060. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_tools_context_structured.py +0 -0
  1061. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_stream_tools_structured.py +0 -0
  1062. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_structured.py +0 -0
  1063. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_tools.py +0 -0
  1064. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_tools_context.py +0 -0
  1065. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_tools_context_structured.py +0 -0
  1066. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_async_tools_structured.py +0 -0
  1067. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_context.py +0 -0
  1068. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_context_structured.py +0 -0
  1069. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream.py +0 -0
  1070. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_context.py +0 -0
  1071. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_context_structured.py +0 -0
  1072. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_structured.py +0 -0
  1073. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_tools.py +0 -0
  1074. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_tools_context.py +0 -0
  1075. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_tools_context_structured.py +0 -0
  1076. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_stream_tools_structured.py +0 -0
  1077. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_structured.py +0 -0
  1078. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_tools.py +0 -0
  1079. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_tools_context.py +0 -0
  1080. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_tools_context_structured.py +0 -0
  1081. {mirascope-2.0.0a6 → mirascope-2.0.2}/examples/sazed/sazed_tools_structured.py +0 -0
  1082. {mirascope-2.0.0a6 → mirascope-2.0.2}/lint-staged.ts +0 -0
  1083. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/__init__.py +0 -0
  1084. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/_stubs.py +0 -0
  1085. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/__init__.py +0 -0
  1086. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/README.md +0 -0
  1087. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/__init__.py +0 -0
  1088. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/__init__.py +0 -0
  1089. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_create_request_label.py +0 -0
  1090. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_create_response_label.py +0 -0
  1091. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_get_response_label.py +0 -0
  1092. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_list_request_label.py +0 -0
  1093. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_list_response.py +0 -0
  1094. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_list_response_annotations_item_label.py +0 -0
  1095. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_update_request_label.py +0 -0
  1096. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/annotations/types/annotations_update_response_label.py +0 -0
  1097. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/api_keys/types/api_keys_create_response.py +0 -0
  1098. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/api_keys/types/api_keys_get_response.py +0 -0
  1099. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/api_keys/types/api_keys_list_response_item.py +0 -0
  1100. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/__init__.py +0 -0
  1101. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/api_error.py +0 -0
  1102. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/client_wrapper.py +0 -0
  1103. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/datetime_utils.py +0 -0
  1104. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/file.py +0 -0
  1105. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/force_multipart.py +0 -0
  1106. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/http_client.py +0 -0
  1107. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/http_response.py +0 -0
  1108. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/jsonable_encoder.py +0 -0
  1109. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/pydantic_utilities.py +0 -0
  1110. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/query_encoder.py +0 -0
  1111. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/remove_none_from_dict.py +0 -0
  1112. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/request_options.py +0 -0
  1113. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/core/serialization.py +0 -0
  1114. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/docs/__init__.py +0 -0
  1115. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/docs/client.py +0 -0
  1116. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/environments/types/environments_create_response.py +0 -0
  1117. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/environments/types/environments_get_response.py +0 -0
  1118. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/environments/types/environments_list_response_item.py +0 -0
  1119. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/environments/types/environments_update_response.py +0 -0
  1120. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/errors/forbidden_error.py +0 -0
  1121. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/errors/internal_server_error.py +0 -0
  1122. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/errors/not_found_error.py +0 -0
  1123. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/errors/unauthorized_error.py +0 -0
  1124. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_create_request_dependencies_value.py +0 -0
  1125. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_create_response.py +0 -0
  1126. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_create_response_dependencies_value.py +0 -0
  1127. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_find_by_hash_response.py +0 -0
  1128. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_find_by_hash_response_dependencies_value.py +0 -0
  1129. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_get_response.py +0 -0
  1130. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_get_response_dependencies_value.py +0 -0
  1131. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_list_response.py +0 -0
  1132. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_list_response_functions_item.py +0 -0
  1133. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/functions/types/functions_list_response_functions_item_dependencies_value.py +0 -0
  1134. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/health/__init__.py +0 -0
  1135. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/health/client.py +0 -0
  1136. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/health/types/__init__.py +0 -0
  1137. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/health/types/health_check_response.py +0 -0
  1138. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/health/types/health_check_response_status.py +0 -0
  1139. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_create_response.py +0 -0
  1140. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_create_response_role.py +0 -0
  1141. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_get_response.py +0 -0
  1142. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_get_response_role.py +0 -0
  1143. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_list_response_item.py +0 -0
  1144. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_list_response_item_role.py +0 -0
  1145. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_update_response.py +0 -0
  1146. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/organizations/types/organizations_update_response_role.py +0 -0
  1147. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/__init__.py +0 -0
  1148. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/client.py +0 -0
  1149. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/types/__init__.py +0 -0
  1150. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/types/projects_create_response.py +0 -0
  1151. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/types/projects_get_response.py +0 -0
  1152. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/types/projects_list_response_item.py +0 -0
  1153. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/projects/types/projects_update_response.py +0 -0
  1154. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item.py +0 -0
  1155. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource.py +0 -0
  1156. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item.py +0 -0
  1157. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value.py +0 -0
  1158. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_array_value.py +0 -0
  1159. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_kvlist_value.py +0 -0
  1160. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_kvlist_value_values_item.py +0 -0
  1161. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item.py +0 -0
  1162. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope.py +0 -0
  1163. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item.py +0 -0
  1164. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value.py +0 -0
  1165. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_array_value.py +0 -0
  1166. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_kvlist_value.py +0 -0
  1167. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_kvlist_value_values_item.py +0 -0
  1168. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item.py +0 -0
  1169. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item.py +0 -0
  1170. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value.py +0 -0
  1171. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_array_value.py +0 -0
  1172. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_kvlist_value.py +0 -0
  1173. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_kvlist_value_values_item.py +0 -0
  1174. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_status.py +0 -0
  1175. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_response.py +0 -0
  1176. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_create_response_partial_success.py +0 -0
  1177. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_get_analytics_summary_response_top_functions_item.py +0 -0
  1178. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_get_analytics_summary_response_top_models_item.py +0 -0
  1179. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_get_trace_detail_response.py +0 -0
  1180. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_search_request_attribute_filters_item.py +0 -0
  1181. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_search_request_attribute_filters_item_operator.py +0 -0
  1182. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_search_request_sort_by.py +0 -0
  1183. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_search_request_sort_order.py +0 -0
  1184. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/traces/types/traces_search_response.py +0 -0
  1185. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/already_exists_error.py +0 -0
  1186. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/already_exists_error_tag.py +0 -0
  1187. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/click_house_error.py +0 -0
  1188. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/database_error.py +0 -0
  1189. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/database_error_tag.py +0 -0
  1190. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/http_api_decode_error.py +0 -0
  1191. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/http_api_decode_error_tag.py +0 -0
  1192. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/issue.py +0 -0
  1193. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/issue_tag.py +0 -0
  1194. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/not_found_error_body.py +0 -0
  1195. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/not_found_error_tag.py +0 -0
  1196. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/number_from_string.py +0 -0
  1197. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/permission_denied_error.py +0 -0
  1198. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/permission_denied_error_tag.py +0 -0
  1199. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/property_key.py +0 -0
  1200. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/property_key_key.py +0 -0
  1201. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/property_key_key_tag.py +0 -0
  1202. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/stripe_error.py +0 -0
  1203. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/unauthorized_error_body.py +0 -0
  1204. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/_generated/types/unauthorized_error_tag.py +0 -0
  1205. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/api/client.py +0 -0
  1206. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/__init__.py +0 -0
  1207. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/audio.py +0 -0
  1208. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/document.py +0 -0
  1209. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/image.py +0 -0
  1210. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/text.py +0 -0
  1211. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/thought.py +0 -0
  1212. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/content/tool_call.py +0 -0
  1213. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/context/__init__.py +0 -0
  1214. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/context/_utils.py +0 -0
  1215. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/context/context.py +0 -0
  1216. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/formatting/from_call_args.py +0 -0
  1217. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/mcp/__init__.py +0 -0
  1218. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/mcp/mcp_client.py +0 -0
  1219. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/messages/message.py +0 -0
  1220. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/prompts/__init__.py +0 -0
  1221. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/prompts/protocols.py +0 -0
  1222. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/anthropic/__init__.py +0 -0
  1223. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/anthropic/model_id.py +0 -0
  1224. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/anthropic/model_info.py +0 -0
  1225. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/base/kwargs.py +0 -0
  1226. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/google/__init__.py +0 -0
  1227. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/google/message.py +0 -0
  1228. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/google/model_id.py +0 -0
  1229. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/google/model_info.py +0 -0
  1230. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/mirascope/__init__.py +0 -0
  1231. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/mlx/__init__.py +0 -0
  1232. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/mlx/encoding/__init__.py +0 -0
  1233. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/mlx/model_id.py +0 -0
  1234. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/model_id.py +0 -0
  1235. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/ollama/__init__.py +0 -0
  1236. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/ollama/provider.py +0 -0
  1237. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/__init__.py +0 -0
  1238. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/_utils/__init__.py +0 -0
  1239. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/completions/__init__.py +0 -0
  1240. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/completions/_utils/__init__.py +0 -0
  1241. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/completions/_utils/decode.py +0 -0
  1242. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/completions/provider.py +0 -0
  1243. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/model_id.py +0 -0
  1244. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/model_info.py +0 -0
  1245. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/openai/responses/__init__.py +0 -0
  1246. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/provider_id.py +0 -0
  1247. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/together/__init__.py +0 -0
  1248. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/providers/together/provider.py +0 -0
  1249. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/responses/finish_reason.py +0 -0
  1250. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/responses/streams.py +0 -0
  1251. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/responses/usage.py +0 -0
  1252. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/tools/__init__.py +0 -0
  1253. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/tools/_utils.py +0 -0
  1254. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/tools/protocols.py +0 -0
  1255. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/types/__init__.py +0 -0
  1256. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/types/dataclass.py +0 -0
  1257. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/types/jsonable.py +0 -0
  1258. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/llm/types/type_vars.py +0 -0
  1259. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/__init__.py +0 -0
  1260. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/context.py +0 -0
  1261. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/exporters/__init__.py +0 -0
  1262. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/exporters/processors.py +0 -0
  1263. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/exporters/types.py +0 -0
  1264. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/__init__.py +0 -0
  1265. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/__init__.py +0 -0
  1266. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/gen_ai_types/__init__.py +0 -0
  1267. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_input_messages.py +0 -0
  1268. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_output_messages.py +0 -0
  1269. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_system_instructions.py +0 -0
  1270. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/instrumentation/llm/gen_ai_types/shared.py +0 -0
  1271. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/propagation.py +0 -0
  1272. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/session.py +0 -0
  1273. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/spans.py +0 -0
  1274. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/types.py +0 -0
  1275. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/versioned_calls.py +0 -0
  1276. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/_internal/versioning.py +0 -0
  1277. {mirascope-2.0.0a6 → mirascope-2.0.2}/mirascope/ops/exceptions.py +0 -0
  1278. {mirascope-2.0.0a6 → mirascope-2.0.2}/schemas/gen-ai/gen-ai-input-messages.json +0 -0
  1279. {mirascope-2.0.0a6 → mirascope-2.0.2}/schemas/gen-ai/gen-ai-output-messages.json +0 -0
  1280. {mirascope-2.0.0a6 → mirascope-2.0.2}/schemas/gen-ai/gen-ai-system-instructions.json +0 -0
  1281. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/__init__.py +0 -0
  1282. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/example_generator.ts +0 -0
  1283. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/generate_extra_imports.py +0 -0
  1284. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/__init__.py +0 -0
  1285. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/codegen_anthropic.py +0 -0
  1286. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/codegen_google.py +0 -0
  1287. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/codegen_openai.py +0 -0
  1288. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/core/__init__.py +0 -0
  1289. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/core/models.py +0 -0
  1290. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/core/registry.py +0 -0
  1291. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/core/runner.py +0 -0
  1292. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/core/testing.py +0 -0
  1293. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/data/anthropic.yaml +0 -0
  1294. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/data/google.yaml +0 -0
  1295. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/data/openai.yaml +0 -0
  1296. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/test_anthropic.py +0 -0
  1297. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/test_google.py +0 -0
  1298. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/test_openai.py +0 -0
  1299. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/model_features/update_all.py +0 -0
  1300. {mirascope-2.0.0a6 → mirascope-2.0.2}/scripts/validate_extra_imports.sh +0 -0
  1301. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/api/test_missing_dependencies.py +0 -0
  1302. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/api/test_settings.py +0 -0
  1303. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/conftest.py +0 -0
  1304. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/README.md +0 -0
  1305. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/__init__.py +0 -0
  1306. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/assets/audio/tagline.mp3 +0 -0
  1307. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/assets/images/wikipedia.png +0 -0
  1308. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/README.md +0 -0
  1309. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1310. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error/anthropic_claude_sonnet_4_0.yaml +0 -0
  1311. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error/google_gemini_2_5_flash.yaml +0 -0
  1312. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error/openai_gpt_4o_completions.yaml +0 -0
  1313. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error/openai_gpt_4o_responses.yaml +0 -0
  1314. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error_stream/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1315. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error_stream/anthropic_claude_sonnet_4_0.yaml +0 -0
  1316. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error_stream/google_gemini_2_5_flash.yaml +0 -0
  1317. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error_stream/openai_gpt_4o_completions.yaml +0 -0
  1318. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_authentication_error_stream/openai_gpt_4o_responses.yaml +0 -0
  1319. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_multi_turn_conversation/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1320. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_multi_turn_conversation/anthropic_claude_sonnet_4_0.yaml +0 -0
  1321. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_multi_turn_conversation/google_gemini_2_5_flash.yaml +0 -0
  1322. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_multi_turn_conversation/openai_gpt_4o_completions.yaml +0 -0
  1323. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_multi_turn_conversation/openai_gpt_4o_responses.yaml +0 -0
  1324. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1325. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/anthropic_claude_sonnet_4_0.yaml +0 -0
  1326. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/google_gemini_2_5_flash.yaml +0 -0
  1327. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1328. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/openai_gpt_4o_completions.yaml +0 -0
  1329. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_system_message/openai_gpt_4o_responses.yaml +0 -0
  1330. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_tool/anthropic_claude_sonnet_4_0.yaml +0 -0
  1331. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_tool/google_gemini_2_5_flash.yaml +0 -0
  1332. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_user_message/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1333. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_user_message/anthropic_claude_sonnet_4_0.yaml +0 -0
  1334. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_user_message/google_gemini_2_5_flash.yaml +0 -0
  1335. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_user_message/openai_gpt_4o_completions.yaml +0 -0
  1336. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_caching_user_message/openai_gpt_4o_responses.yaml +0 -0
  1337. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_non_openai_models_through_openai/anthropic_claude_sonnet_4_5.yaml +0 -0
  1338. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_audio/google_gemini_2_5_flash.yaml +0 -0
  1339. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_audio/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1340. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_audio/openai_gpt_audio.yaml +0 -0
  1341. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_empty_string/google_gemini_2_5_flash.yaml +0 -0
  1342. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_empty_string/mlx_mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1343. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_empty_string/openai_gpt_4o_completions.yaml +0 -0
  1344. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_empty_string/openai_gpt_4o_responses.yaml +0 -0
  1345. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_content/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1346. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_content/anthropic_claude_sonnet_4_0.yaml +0 -0
  1347. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_content/google_gemini_2_5_flash.yaml +0 -0
  1348. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_content/openai_gpt_4o_completions.yaml +0 -0
  1349. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_content/openai_gpt_4o_responses.yaml +0 -0
  1350. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_url/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1351. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_url/anthropic_claude_sonnet_4_0.yaml +0 -0
  1352. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_url/openai_gpt_4o_completions.yaml +0 -0
  1353. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_image_url/openai_gpt_4o_responses.yaml +0 -0
  1354. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_mcp_tools/anthropic_claude_haiku_4_5.yaml +0 -0
  1355. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_params/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1356. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_params/anthropic_claude_sonnet_4_0.yaml +0 -0
  1357. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_params/google_gemini_2_5_flash.yaml +0 -0
  1358. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_params/openai_gpt_4o_completions.yaml +0 -0
  1359. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_params/openai_gpt_4o_responses.yaml +0 -0
  1360. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_text_encoded_thoughts/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1361. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_text_encoded_thoughts/anthropic_claude_sonnet_4_0.yaml +0 -0
  1362. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_text_encoded_thoughts/google_gemini_2_5_flash.yaml +0 -0
  1363. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_text_encoded_thoughts/openai_gpt_4o_completions.yaml +0 -0
  1364. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_text_encoded_thoughts/openai_gpt_4o_responses.yaml +0 -0
  1365. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_two_empty_string/google_gemini_2_5_flash.yaml +0 -0
  1366. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_two_empty_string/openai_gpt_4o_completions.yaml +0 -0
  1367. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_call_with_two_empty_string/openai_gpt_4o_responses.yaml +0 -0
  1368. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1369. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/anthropic_claude_sonnet_4_0.yaml +0 -0
  1370. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/google_gemini_2_5_flash.yaml +0 -0
  1371. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1372. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/openai_gpt_4o_completions.yaml +0 -0
  1373. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found/openai_gpt_4o_responses.yaml +0 -0
  1374. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1375. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/anthropic_claude_sonnet_4_0.yaml +0 -0
  1376. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/google_gemini_2_5_flash.yaml +0 -0
  1377. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1378. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/openai_gpt_4o_completions.yaml +0 -0
  1379. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_model_not_found_stream/openai_gpt_4o_responses.yaml +0 -0
  1380. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_ollama_provider/ollama_gemma3_4b.yaml +0 -0
  1381. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_openai_completions_provider/openai_gpt_4o_mini.yaml +0 -0
  1382. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_openai_completions_provider/openai_gpt_4o_mini_completions.yaml +0 -0
  1383. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_openai_responses_provider/openai_gpt_4o_mini.yaml +0 -0
  1384. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_openai_responses_provider/openai_gpt_4o_mini_responses.yaml +0 -0
  1385. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1386. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/anthropic_claude_sonnet_4_0.yaml +0 -0
  1387. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/google_gemini_2_5_flash.yaml +0 -0
  1388. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1389. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/openai_gpt_4o_completions.yaml +0 -0
  1390. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override/openai_gpt_4o_responses.yaml +0 -0
  1391. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/anthropic_claude_sonnet_4_0.yaml +0 -0
  1392. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/google_gemini_2_5_flash.yaml +0 -0
  1393. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_resume_with_override_thinking_and_tools/mlx_community_Qwen3_0_6B_4bit_DWQ_053125.yaml +0 -0
  1394. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode/anthropic_claude_sonnet_4_5.yaml +0 -0
  1395. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode/google_gemini_3_pro_preview.yaml +0 -0
  1396. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_streamed/anthropic_claude_sonnet_4_5.yaml +0 -0
  1397. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_streamed/google_gemini_3_pro_preview.yaml +0 -0
  1398. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_streamed_thinking/anthropic_claude_sonnet_4_5.yaml +0 -0
  1399. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_streamed_thinking/google_gemini_3_pro_preview.yaml +0 -0
  1400. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_thinking/anthropic_claude_sonnet_4_5.yaml +0 -0
  1401. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_thinking/google_gemini_3_pro_preview.yaml +0 -0
  1402. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_tools/google_gemini_3_pro_preview.yaml +0 -0
  1403. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_strict_mode_with_tools_streamed/google_gemini_3_pro_preview.yaml +0 -0
  1404. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/anthropic_claude_sonnet_4_0.yaml +0 -0
  1405. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/anthropic_claude_sonnet_4_5.yaml +0 -0
  1406. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/google_gemini_2_5_flash.yaml +0 -0
  1407. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/anthropic_beta_claude_sonnet_4_0.yaml +0 -0
  1408. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/anthropic_claude_sonnet_4_0.yaml +0 -0
  1409. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/anthropic_claude_sonnet_4_5.yaml +0 -0
  1410. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/google_gemini_2_5_flash.yaml +0 -0
  1411. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/openai_gpt_4o_completions.yaml +0 -0
  1412. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/json/openai_gpt_4o_responses.yaml +0 -0
  1413. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/openai_gpt_4o_completions.yaml +0 -0
  1414. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/openai_gpt_4o_responses.yaml +0 -0
  1415. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/strict/anthropic_claude_sonnet_4_5.yaml +0 -0
  1416. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/strict/google_gemini_2_5_flash.yaml +0 -0
  1417. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/strict/openai_gpt_4o_completions.yaml +0 -0
  1418. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/strict/openai_gpt_4o_responses.yaml +0 -0
  1419. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/anthropic_claude_sonnet_4_0.yaml +0 -0
  1420. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/anthropic_claude_sonnet_4_5.yaml +0 -0
  1421. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/google_gemini_2_5_flash.yaml +0 -0
  1422. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/openai_gpt_4o_completions.yaml +0 -0
  1423. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_structured_output_with_formatting_instructions/tool/openai_gpt_4o_responses.yaml +0 -0
  1424. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/cassettes/test_together_provider/meta_llama_Llama_3_3_70B_Instruct_Turbo.yaml +0 -0
  1425. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/conftest.py +0 -0
  1426. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_caching_multi_turn_conversation_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1427. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_caching_system_message_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1428. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_caching_tool_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1429. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_caching_user_message_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1430. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_audio_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1431. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_empty_array_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1432. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_empty_string_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1433. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_image_content_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1434. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_image_url_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1435. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_call_with_params_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1436. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_call_with_text_encoded_thoughts_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_call_with_parse_error_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1437. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_call_with_two_empty_string_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_call_with_strict_tool_and_optional_properties_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1438. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_model_not_found_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_call_with_text_encoded_thoughts_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1439. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_model_not_found_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_call_with_tool_error_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1440. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_resume_with_override_thinking_and_tools_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_call_with_two_empty_string_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1441. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_conversation_caching_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1442. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_model_not_found_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1443. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_model_not_found_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1444. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_resume_with_override_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1445. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_resume_with_override_thinking_and_tools_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1446. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1447. /mirascope-2.0.0a6/tests/e2e/input/mlx_lm_cassettes/test_tool_caching_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1448. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1449. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_structured_output_with_formatting_instructions_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1450. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_system_message_caching_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1451. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/input/mlx_lm_cassettes/test_tool_caching_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1452. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/mlx_lm_cassettes/test_user_message_caching_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1453. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1454. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1455. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/google_gemini_2_5_flash_snapshots.py +0 -0
  1456. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1457. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/openai_gpt_4o_completions_snapshots.py +0 -0
  1458. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_multi_turn_conversation/openai_gpt_4o_responses_snapshots.py +0 -0
  1459. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1460. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1461. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/google_gemini_2_5_flash_snapshots.py +0 -0
  1462. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1463. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/openai_gpt_4o_completions_snapshots.py +0 -0
  1464. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_system_message/openai_gpt_4o_responses_snapshots.py +0 -0
  1465. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_tool/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1466. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_tool/google_gemini_2_5_flash_snapshots.py +0 -0
  1467. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_tool/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1468. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1469. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1470. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/google_gemini_2_5_flash_snapshots.py +0 -0
  1471. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1472. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/openai_gpt_4o_completions_snapshots.py +0 -0
  1473. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_caching_user_message/openai_gpt_4o_responses_snapshots.py +0 -0
  1474. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_non_openai_models_through_openai/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1475. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1476. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1477. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/google_gemini_2_5_flash_snapshots.py +0 -0
  1478. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1479. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/openai_gpt_4o_completions_snapshots.py +0 -0
  1480. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/openai_gpt_4o_responses_snapshots.py +0 -0
  1481. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_audio/openai_gpt_audio_snapshots.py +0 -0
  1482. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1483. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1484. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/google_gemini_2_5_flash_snapshots.py +0 -0
  1485. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1486. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/openai_gpt_4o_completions_snapshots.py +0 -0
  1487. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_array/openai_gpt_4o_responses_snapshots.py +0 -0
  1488. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1489. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1490. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/google_gemini_2_5_flash_snapshots.py +0 -0
  1491. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1492. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/openai_gpt_4o_completions_snapshots.py +0 -0
  1493. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_empty_string/openai_gpt_4o_responses_snapshots.py +0 -0
  1494. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1495. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1496. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/google_gemini_2_5_flash_snapshots.py +0 -0
  1497. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1498. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/openai_gpt_4o_completions_snapshots.py +0 -0
  1499. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_content/openai_gpt_4o_responses_snapshots.py +0 -0
  1500. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1501. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1502. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/google_gemini_2_5_flash_snapshots.py +0 -0
  1503. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1504. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/openai_gpt_4o_completions_snapshots.py +0 -0
  1505. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_image_url/openai_gpt_4o_responses_snapshots.py +0 -0
  1506. {mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json → mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_parse_error}/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1507. {mirascope-2.0.0a6/tests/e2e/input/snapshots/test_resume_with_override_thinking_and_tools → mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_strict_tool_and_optional_properties}/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1508. /mirascope-2.0.0a6/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/google_gemini_2_5_flash_snapshots.py → /mirascope-2.0.2/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1509. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1510. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/openai_gpt_4o_completions_snapshots.py +0 -0
  1511. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_text_encoded_thoughts/openai_gpt_4o_responses_snapshots.py +0 -0
  1512. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1513. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1514. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/google_gemini_2_5_flash_snapshots.py +0 -0
  1515. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1516. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/openai_gpt_4o_completions_snapshots.py +0 -0
  1517. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_call_with_two_empty_string/openai_gpt_4o_responses_snapshots.py +0 -0
  1518. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider/anthropic_claude_haiku_4_5_snapshots.py +0 -0
  1519. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider/google_gemini_2_5_flash_snapshots.py +0 -0
  1520. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider/openai_gpt_5_mini_completions_snapshots.py +0 -0
  1521. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider/openai_gpt_5_mini_responses_snapshots.py +0 -0
  1522. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider/openai_gpt_5_mini_snapshots.py +0 -0
  1523. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider_streaming/anthropic_claude_haiku_4_5_snapshots.py +0 -0
  1524. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider_streaming/google_gemini_2_5_flash_snapshots.py +0 -0
  1525. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider_streaming/openai_gpt_5_mini_completions_snapshots.py +0 -0
  1526. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider_streaming/openai_gpt_5_mini_responses_snapshots.py +0 -0
  1527. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_mirascope_provider_streaming/openai_gpt_5_mini_snapshots.py +0 -0
  1528. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_ollama_provider/ollama_gemma3_4b_snapshots.py +0 -0
  1529. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_completions_provider/openai_gpt_4o_mini_completions_snapshots.py +0 -0
  1530. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_completions_provider/openai_gpt_4o_mini_responses_snapshots.py +0 -0
  1531. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_completions_provider/openai_gpt_4o_mini_snapshots.py +0 -0
  1532. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_responses_provider/openai_gpt_4o_mini_completions_snapshots.py +0 -0
  1533. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_responses_provider/openai_gpt_4o_mini_responses_snapshots.py +0 -0
  1534. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_openai_responses_provider/openai_gpt_4o_mini_snapshots.py +0 -0
  1535. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1536. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1537. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/google_gemini_2_5_flash_snapshots.py +0 -0
  1538. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1539. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/openai_gpt_4o_completions_snapshots.py +0 -0
  1540. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_resume_with_override/openai_gpt_4o_responses_snapshots.py +0 -0
  1541. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1542. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode/google_gemini_3_pro_preview_snapshots.py +0 -0
  1543. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode_streamed/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1544. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode_streamed/google_gemini_3_pro_preview_snapshots.py +0 -0
  1545. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode_with_streamed_thinking/google_gemini_3_pro_preview_snapshots.py +0 -0
  1546. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_strict_mode_with_thinking/google_gemini_3_pro_preview_snapshots.py +0 -0
  1547. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1548. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1549. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/google_gemini_2_5_flash_snapshots.py +0 -0
  1550. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1551. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1552. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1553. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/google_gemini_2_5_flash_snapshots.py +0 -0
  1554. {mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions → mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json}/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1555. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/openai_gpt_4o_completions_snapshots.py +0 -0
  1556. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/json/openai_gpt_4o_responses_snapshots.py +0 -0
  1557. {mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict → mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions}/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1558. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/openai_gpt_4o_completions_snapshots.py +0 -0
  1559. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/openai_gpt_4o_responses_snapshots.py +0 -0
  1560. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1561. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/google_gemini_2_5_flash_snapshots.py +0 -0
  1562. {mirascope-2.0.0a6/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool → mirascope-2.0.2/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict}/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1563. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/openai_gpt_4o_completions_snapshots.py +0 -0
  1564. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/strict/openai_gpt_4o_responses_snapshots.py +0 -0
  1565. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1566. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1567. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/google_gemini_2_5_flash_snapshots.py +0 -0
  1568. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/openai_gpt_4o_completions_snapshots.py +0 -0
  1569. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_structured_output_with_formatting_instructions/tool/openai_gpt_4o_responses_snapshots.py +0 -0
  1570. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/snapshots/test_together_provider/meta_llama_Llama_3_3_70B_Instruct_Turbo_snapshots.py +0 -0
  1571. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_authentication_error.py +0 -0
  1572. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_caching.py +0 -0
  1573. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_call_with_audio.py +0 -0
  1574. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_call_with_image.py +0 -0
  1575. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_call_with_mcp_tools.py +0 -0
  1576. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_call_with_text_encoded_thoughts.py +0 -0
  1577. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_empty_call.py +0 -0
  1578. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_openai_compatibility_providers.py +0 -0
  1579. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_provider_overriding.py +0 -0
  1580. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_resume_with_override.py +0 -0
  1581. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_resume_with_override_thinking_and_tools.py +0 -0
  1582. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/input/test_structured_output_with_formatting_instructions.py +0 -0
  1583. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/mlx_lm_cassette.py +0 -0
  1584. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/README.md +0 -0
  1585. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -0
  1586. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -0
  1587. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -0
  1588. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1589. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1590. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1591. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1592. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/google_gemini_2_5_flash/async.yaml +0 -0
  1593. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1594. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/google_gemini_2_5_flash/stream.yaml +0 -0
  1595. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/google_gemini_2_5_flash/sync.yaml +0 -0
  1596. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_completions/async.yaml +0 -0
  1597. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1598. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_completions/stream.yaml +0 -0
  1599. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_completions/sync.yaml +0 -0
  1600. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_responses/async.yaml +0 -0
  1601. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1602. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_responses/stream.yaml +0 -0
  1603. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call/openai_gpt_4o_responses/sync.yaml +0 -0
  1604. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -0
  1605. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -0
  1606. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -0
  1607. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1608. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1609. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1610. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1611. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/google_gemini_2_5_flash/async.yaml +0 -0
  1612. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1613. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/google_gemini_2_5_flash/stream.yaml +0 -0
  1614. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_thinking/google_gemini_2_5_flash/sync.yaml +0 -0
  1615. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1616. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1617. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1618. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1619. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/google_gemini_2_5_flash/async.yaml +0 -0
  1620. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1621. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/google_gemini_2_5_flash/stream.yaml +0 -0
  1622. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_call_with_tools/google_gemini_2_5_flash/sync.yaml +0 -0
  1623. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -0
  1624. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -0
  1625. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -0
  1626. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1627. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1628. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1629. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1630. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/google_gemini_2_5_flash/async.yaml +0 -0
  1631. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1632. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/google_gemini_2_5_flash/stream.yaml +0 -0
  1633. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/google_gemini_2_5_flash/sync.yaml +0 -0
  1634. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_completions/async.yaml +0 -0
  1635. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1636. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_completions/stream.yaml +0 -0
  1637. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_completions/sync.yaml +0 -0
  1638. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_responses/async.yaml +0 -0
  1639. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1640. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_responses/stream.yaml +0 -0
  1641. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_max_tokens/openai_gpt_4o_responses/sync.yaml +0 -0
  1642. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1643. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1644. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1645. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1646. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/google_gemini_2_5_flash/async.yaml +0 -0
  1647. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1648. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/google_gemini_2_5_flash/stream.yaml +0 -0
  1649. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/google_gemini_2_5_flash/sync.yaml +0 -0
  1650. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_completions/async.yaml +0 -0
  1651. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1652. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_completions/stream.yaml +0 -0
  1653. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_completions/sync.yaml +0 -0
  1654. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_responses/async.yaml +0 -0
  1655. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1656. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_responses/stream.yaml +0 -0
  1657. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_refusal/openai_gpt_4o_responses/sync.yaml +0 -0
  1658. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1659. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1660. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1661. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1662. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1663. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1664. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1665. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1666. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/google_gemini_2_5_flash/async.yaml +0 -0
  1667. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1668. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/google_gemini_2_5_flash/stream.yaml +0 -0
  1669. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/google_gemini_2_5_flash/sync.yaml +0 -0
  1670. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_beta_claude_sonnet_4_0/async.yaml +0 -0
  1671. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_beta_claude_sonnet_4_0/stream.yaml +0 -0
  1672. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_beta_claude_sonnet_4_0/sync.yaml +0 -0
  1673. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1674. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1675. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1676. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1677. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1678. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1679. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1680. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1681. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/google_gemini_2_5_flash/async.yaml +0 -0
  1682. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1683. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/google_gemini_2_5_flash/stream.yaml +0 -0
  1684. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/google_gemini_2_5_flash/sync.yaml +0 -0
  1685. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_completions/async.yaml +0 -0
  1686. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1687. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_completions/stream.yaml +0 -0
  1688. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_completions/sync.yaml +0 -0
  1689. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_responses/async.yaml +0 -0
  1690. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1691. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_responses/stream.yaml +0 -0
  1692. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/json/openai_gpt_4o_responses/sync.yaml +0 -0
  1693. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_completions/async.yaml +0 -0
  1694. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1695. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_completions/stream.yaml +0 -0
  1696. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_completions/sync.yaml +0 -0
  1697. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_responses/async.yaml +0 -0
  1698. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1699. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_responses/stream.yaml +0 -0
  1700. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/openai_gpt_4o_responses/sync.yaml +0 -0
  1701. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1702. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1703. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1704. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/google_gemini_2_5_flash/async.yaml +0 -0
  1705. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1706. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/google_gemini_2_5_flash/stream.yaml +0 -0
  1707. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/google_gemini_2_5_flash/sync.yaml +0 -0
  1708. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_completions/async.yaml +0 -0
  1709. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1710. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_completions/stream.yaml +0 -0
  1711. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_completions/sync.yaml +0 -0
  1712. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_responses/async.yaml +0 -0
  1713. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1714. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_responses/stream.yaml +0 -0
  1715. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/strict/openai_gpt_4o_responses/sync.yaml +0 -0
  1716. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1717. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1718. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1719. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1720. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1721. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1722. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1723. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1724. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/google_gemini_2_5_flash/async.yaml +0 -0
  1725. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1726. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/google_gemini_2_5_flash/stream.yaml +0 -0
  1727. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/google_gemini_2_5_flash/sync.yaml +0 -0
  1728. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_completions/async.yaml +0 -0
  1729. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_completions/async_stream.yaml +0 -0
  1730. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_completions/stream.yaml +0 -0
  1731. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_completions/sync.yaml +0 -0
  1732. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_responses/async.yaml +0 -0
  1733. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_responses/async_stream.yaml +0 -0
  1734. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_responses/stream.yaml +0 -0
  1735. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output/tool/openai_gpt_4o_responses/sync.yaml +0 -0
  1736. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1737. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1738. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1739. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1740. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1741. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1742. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1743. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1744. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/google_gemini_2_5_flash/async.yaml +0 -0
  1745. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1746. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/google_gemini_2_5_flash/stream.yaml +0 -0
  1747. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/google_gemini_2_5_flash/sync.yaml +0 -0
  1748. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1749. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1750. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1751. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1752. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1753. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1754. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1755. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/json/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1756. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0/async.yaml +0 -0
  1757. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0/async_stream.yaml +0 -0
  1758. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0/stream.yaml +0 -0
  1759. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_0/sync.yaml +0 -0
  1760. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5/async.yaml +0 -0
  1761. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5/async_stream.yaml +0 -0
  1762. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5/stream.yaml +0 -0
  1763. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/anthropic_claude_sonnet_4_5/sync.yaml +0 -0
  1764. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/google_gemini_2_5_flash/async.yaml +0 -0
  1765. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/google_gemini_2_5_flash/async_stream.yaml +0 -0
  1766. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/google_gemini_2_5_flash/stream.yaml +0 -0
  1767. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/cassettes/test_structured_output_with_tools/tool/google_gemini_2_5_flash/sync.yaml +0 -0
  1768. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_async_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1769. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1770. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_async_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1771. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1772. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1773. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1774. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_sync_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1775. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_call_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1776. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1777. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1778. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1779. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_sync_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1780. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1781. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_refusal_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1782. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_refusal_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_sync_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1783. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_refusal_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_call_with_tools_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1784. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_max_tokens_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1785. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_max_tokens_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1786. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_max_tokens_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1787. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_max_tokens_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1788. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_async_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1789. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1790. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_async_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1791. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1792. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_stream_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1793. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1794. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_sync_context_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1795. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/mlx_lm_cassettes/test_prompt_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1796. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_refusal_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_refusal_async_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1797. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_refusal_async_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1798. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_refusal_stream_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1799. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_refusal_sync_mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1800. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1801. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1802. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1803. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1804. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1805. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1806. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1807. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1808. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1809. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1810. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1811. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1812. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1813. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1814. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1815. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_async_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1816. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1817. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1818. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1819. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1820. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1821. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1822. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1823. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1824. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1825. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1826. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1827. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1828. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1829. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1830. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1831. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_sync_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1832. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1833. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1834. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1835. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1836. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1837. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1838. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1839. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1840. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1841. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1842. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1843. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1844. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1845. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1846. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1847. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_async_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1848. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1849. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1850. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1851. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1852. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1853. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1854. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1855. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_stream_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1856. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1857. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_None-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1858. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_json-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1859. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_strict-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1860. /mirascope-2.0.0a6/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml → /mirascope-2.0.2/tests/e2e/output/mlx_lm_cassettes/test_structured_output_with_tools_sync_context_tool-mlx-community_Qwen3-0.6B-4bit-DWQ-053125_.yaml +0 -0
  1861. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/anthropic_beta_claude_sonnet_4_0_snapshots.py +0 -0
  1862. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1863. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/google_gemini_2_5_flash_snapshots.py +0 -0
  1864. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1865. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/openai_gpt_4o_completions_snapshots.py +0 -0
  1866. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call/openai_gpt_4o_responses_snapshots.py +0 -0
  1867. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call_with_thinking/google_gemini_2_5_flash_snapshots.py +0 -0
  1868. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_call_with_tools/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1869. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_max_tokens/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1870. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_max_tokens/google_gemini_2_5_flash_snapshots.py +0 -0
  1871. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_max_tokens/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1872. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_max_tokens/openai_gpt_4o_completions_snapshots.py +0 -0
  1873. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_max_tokens/openai_gpt_4o_responses_snapshots.py +0 -0
  1874. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_refusal/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1875. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_refusal/google_gemini_2_5_flash_snapshots.py +0 -0
  1876. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_refusal/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1877. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_refusal/openai_gpt_4o_completions_snapshots.py +0 -0
  1878. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_refusal/openai_gpt_4o_responses_snapshots.py +0 -0
  1879. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1880. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1881. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/google_gemini_2_5_flash_snapshots.py +0 -0
  1882. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1883. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1884. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/google_gemini_2_5_flash_snapshots.py +0 -0
  1885. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1886. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/openai_gpt_4o_completions_snapshots.py +0 -0
  1887. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/json/openai_gpt_4o_responses_snapshots.py +0 -0
  1888. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1889. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/openai_gpt_4o_completions_snapshots.py +0 -0
  1890. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/openai_gpt_4o_responses_snapshots.py +0 -0
  1891. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/strict/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1892. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/strict/google_gemini_2_5_flash_snapshots.py +0 -0
  1893. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/strict/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1894. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/strict/openai_gpt_4o_completions_snapshots.py +0 -0
  1895. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/strict/openai_gpt_4o_responses_snapshots.py +0 -0
  1896. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/anthropic_claude_sonnet_4_0_snapshots.py +0 -0
  1897. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/anthropic_claude_sonnet_4_5_snapshots.py +0 -0
  1898. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/google_gemini_2_5_flash_snapshots.py +0 -0
  1899. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1900. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/openai_gpt_4o_completions_snapshots.py +0 -0
  1901. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output/tool/openai_gpt_4o_responses_snapshots.py +0 -0
  1902. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/json/google_gemini_2_5_flash_snapshots.py +0 -0
  1903. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/json/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1904. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1905. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/google_gemini_2_5_flash_snapshots.py +0 -0
  1906. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/strict/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1907. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/snapshots/test_structured_output_with_tools/tool/mlx_community_Qwen3_0_6B_4bit_DWQ_053125_snapshots.py +0 -0
  1908. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/test_call.py +0 -0
  1909. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/test_call_with_tools.py +0 -0
  1910. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/test_max_tokens.py +0 -0
  1911. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/test_structured_output.py +0 -0
  1912. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/e2e/output/test_structured_output_with_tools.py +0 -0
  1913. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/fixtures/__init__.py +0 -0
  1914. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/__init__.py +0 -0
  1915. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/calls/test_call_decorator.py +0 -0
  1916. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/content/test_audio_content.py +0 -0
  1917. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/content/test_image_content.py +0 -0
  1918. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/context/test_context.py +0 -0
  1919. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/context/test_context_utils.py +0 -0
  1920. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/formatting/__init__.py +0 -0
  1921. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/mcp/__init__.py +0 -0
  1922. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/mcp/example_mcp_client.py +0 -0
  1923. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/messages/test_messages.py +0 -0
  1924. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/models/test_model.py +0 -0
  1925. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/prompts/__init__.py +0 -0
  1926. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/prompts/test_prompt_decorator.py +0 -0
  1927. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/__init__.py +0 -0
  1928. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/anthropic/__init__.py +0 -0
  1929. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/base/__init__.py +0 -0
  1930. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/base/test_params.py +0 -0
  1931. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/google/__init__.py +0 -0
  1932. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/mlx/__init__.py +0 -0
  1933. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/mlx/conftest.py +0 -0
  1934. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/mlx/encoding/test_transformers.py +0 -0
  1935. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/mlx/test_client.py +0 -0
  1936. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/mlx/test_mlx.py +0 -0
  1937. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/openai/test_openai_provider.py +0 -0
  1938. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/openai/test_responses_encoding.py +0 -0
  1939. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/test_missing_dependencies.py +0 -0
  1940. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/test_ollama_provider.py +0 -0
  1941. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/test_openai_compatible_provider.py +0 -0
  1942. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/test_providers.py +0 -0
  1943. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/providers/test_together_provider.py +0 -0
  1944. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/responses/__init__.py +0 -0
  1945. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/llm/tools/__init__.py +0 -0
  1946. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/__init__.py +0 -0
  1947. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/__init__.py +0 -0
  1948. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_async_version_registers_new_function.yaml +0 -0
  1949. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_async_version_uses_existing_function.yaml +0 -0
  1950. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_call.yaml +0 -0
  1951. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_call_call_method.yaml +0 -0
  1952. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_call_stream_method.yaml +0 -0
  1953. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_call_wrapped_method.yaml +0 -0
  1954. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call.yaml +0 -0
  1955. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call_call_method.yaml +0 -0
  1956. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call_stream_method.yaml +0 -0
  1957. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call_with_tags.yaml +0 -0
  1958. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call_wrapped_call_method.yaml +0 -0
  1959. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_async_context_call_wrapped_returns_trace.yaml +0 -0
  1960. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_call_method.yaml +0 -0
  1961. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_stream_method.yaml +0 -0
  1962. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_sync.yaml +0 -0
  1963. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_with_tags.yaml +0 -0
  1964. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_wrapped_call_method.yaml +0 -0
  1965. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_wrapped_method.yaml +0 -0
  1966. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_call_wrapped_stream.yaml +0 -0
  1967. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call.yaml +0 -0
  1968. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_call_method.yaml +0 -0
  1969. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_stream_method.yaml +0 -0
  1970. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_with_metadata.yaml +0 -0
  1971. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_with_tags.yaml +0 -0
  1972. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_wrapped_call_method.yaml +0 -0
  1973. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_traced_context_call_wrapped_returns_trace.yaml +0 -0
  1974. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_version_registers_new_function.yaml +0 -0
  1975. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_version_uses_existing_function.yaml +0 -0
  1976. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_call_call_method.yaml +0 -0
  1977. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_call_stream_method.yaml +0 -0
  1978. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_call_wrapped_method.yaml +0 -0
  1979. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_call_wrapped_stream_method.yaml +0 -0
  1980. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_context_call_call_method.yaml +0 -0
  1981. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_context_call_stream_method.yaml +0 -0
  1982. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_context_call_wrapped_method.yaml +0 -0
  1983. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_async_context_call_wrapped_stream_method.yaml +0 -0
  1984. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_call_call_method.yaml +0 -0
  1985. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_call_stream_method.yaml +0 -0
  1986. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_call_with_tags.yaml +0 -0
  1987. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_call_wrapped_method.yaml +0 -0
  1988. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_call_wrapped_stream.yaml +0 -0
  1989. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_context_call_call_method.yaml +0 -0
  1990. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_context_call_stream_method.yaml +0 -0
  1991. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_context_call_wrapped_method.yaml +0 -0
  1992. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/cassettes/test_versioned_context_call_wrapped_stream_method.yaml +0 -0
  1993. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/closure_test_functions/__init__.py +0 -0
  1994. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/closure_test_functions/fakepkg/__init__.py +0 -0
  1995. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/closure_test_functions/main.py +0 -0
  1996. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/closure_test_functions/other.py +0 -0
  1997. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/exporters/__init__.py +0 -0
  1998. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/exporters/conftest.py +0 -0
  1999. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/exporters/test_processors.py +0 -0
  2000. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/_internal/exporters/utils.py +0 -0
  2001. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_async_exports_genai_span.yaml +0 -0
  2002. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_async_records_untracked_params_event.yaml +0 -0
  2003. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_exports_genai_span.yaml +0 -0
  2004. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_records_response_id.yaml +0 -0
  2005. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_records_untracked_params_event.yaml +0 -0
  2006. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_audio_content.yaml +0 -0
  2007. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_base64_image.yaml +0 -0
  2008. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_image.yaml +0 -0
  2009. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_json_format.yaml +0 -0
  2010. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_message_name.yaml +0 -0
  2011. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_none_parameters.yaml +0 -0
  2012. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_parameters.yaml +0 -0
  2013. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_reasoning_model.yaml +0 -0
  2014. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_stop_string.yaml +0 -0
  2015. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_with_tracer_set_to_none.yaml +0 -0
  2016. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_call_without_instrumentation.yaml +0 -0
  2017. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_context_call_async_exports_genai_span.yaml +0 -0
  2018. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_context_call_exports_genai_span.yaml +0 -0
  2019. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_context_stream_async_exports_genai_span.yaml +0 -0
  2020. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_context_stream_exports_genai_span.yaml +0 -0
  2021. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_exports_genai_span.yaml +0 -0
  2022. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_records_response_id.yaml +0 -0
  2023. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_records_untracked_params_event.yaml +0 -0
  2024. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_with_json_format.yaml +0 -0
  2025. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_with_none_parameters.yaml +0 -0
  2026. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_with_tracer_set_to_none.yaml +0 -0
  2027. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_model_stream_without_instrumentation.yaml +0 -0
  2028. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal/instrumentation/llm}/cassettes/test_tracer_context_with_model_call.yaml +0 -0
  2029. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/test_context.py +0 -0
  2030. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/test_missing_dependencies.py +0 -0
  2031. {mirascope-2.0.0a6/tests/ops → mirascope-2.0.2/tests/ops/_internal}/test_session.py +0 -0
  2032. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/ops/utils.py +0 -0
  2033. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/test_imports.py +0 -0
  2034. {mirascope-2.0.0a6 → mirascope-2.0.2}/tests/utils.py +0 -0
  2035. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/call.py +0 -0
  2036. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/context.py +0 -0
  2037. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/format.py +0 -0
  2038. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/streams.py +0 -0
  2039. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/tool.py +0 -0
  2040. {mirascope-2.0.0a6 → mirascope-2.0.2}/typechecking/utils.py +0 -0
  2041. {mirascope-2.0.0a6 → mirascope-2.0.2}/typings/mlx/__init__.pyi +0 -0
  2042. {mirascope-2.0.0a6 → mirascope-2.0.2}/typings/mlx/core.pyi +0 -0
  2043. {mirascope-2.0.0a6 → mirascope-2.0.2}/typings/mlx/nn.pyi +0 -0
@@ -0,0 +1,44 @@
1
+ [run]
2
+ # Exclude modules from coverage tracking until they have full test coverage
3
+ # Remove items from this list as we add comprehensive tests for each module
4
+ # Goal: When this exclude list is empty, we have 100% coverage across the entire codebase
5
+ omit =
6
+ # NOTE: MLX modules are excluded because the `mlx` package is macOS-only (Apple Silicon).
7
+ # CI runs on Linux where `mlx` is not available, so these modules cannot be tested there.
8
+ # TODO: Add a macOS CI job to run MLX tests and restore coverage for these modules.
9
+ mirascope/llm/providers/mlx/*
10
+
11
+ # Exclude Fern generated code
12
+ mirascope/api/_generated/*
13
+
14
+ # Exclude other top-level modules for now
15
+ mirascope/graphs/*
16
+
17
+ # Exclude examples, tests, and scripts from coverage
18
+ examples/*
19
+ tests/*
20
+ scripts/*
21
+
22
+ [report]
23
+ # Show lines that weren't covered
24
+ show_missing = True
25
+
26
+ # Fail if coverage is below 100% for tracked files
27
+ fail_under = 100
28
+
29
+ # Exclude patterns from coverage analysis
30
+ exclude_also =
31
+ pragma: no cover
32
+ def __repr__
33
+ if self.debug:
34
+ if settings.DEBUG
35
+ raise AssertionError
36
+ raise NotImplementedError
37
+ if __name__ == .__main__.:
38
+ class .*\bProtocol\):
39
+ @(abc\.)?abstractmethod
40
+ if TYPE_CHECKING:
41
+ @overload
42
+
43
+ [html]
44
+ directory = htmlcov
@@ -0,0 +1,17 @@
1
+ # Example environment file for Mirascope v2
2
+ # Copy this file to .env and fill in your API keys
3
+
4
+ # Anthropic API Key
5
+ # Get your API key from: https://console.anthropic.com/
6
+ ANTHROPIC_API_KEY=your_anthropic_api_key_here
7
+
8
+ # OpenAI API Key (if using OpenAI models)
9
+ # Get your API key from: https://platform.openai.com/api-keys
10
+ OPENAI_API_KEY=your_openai_api_key_here
11
+
12
+ # Google Generative AI API Key (if using Gemini models)
13
+ # Get your API key from: https://makersuite.google.com/app/apikey
14
+ GOOGLE_API_KEY=your_google_api_key_here
15
+
16
+ # Mirascope API Key (if using Mirascope Router)
17
+ MIRASCOPE_API_KEY=your_mirascope_api_key_here
@@ -0,0 +1,183 @@
1
+ # pyenv
2
+ .python-version
3
+ .python-versions
4
+
5
+ # Byte-compiled / optimized / DLL files
6
+ __pycache__/
7
+ *.py[cod]
8
+ *$py.class
9
+
10
+ # Mac
11
+ .DS_Store
12
+
13
+ # C extensions
14
+ *.so
15
+
16
+ # Distribution / packaging
17
+ .Python
18
+ build/
19
+ develop-eggs/
20
+ dist/
21
+ downloads/
22
+ eggs/
23
+ .eggs/
24
+ lib/
25
+ lib64/
26
+ parts/
27
+ sdist/
28
+ var/
29
+ wheels/
30
+ share/python-wheels/
31
+ *.egg-info/
32
+ .installed.cfg
33
+ *.egg
34
+ MANIFEST
35
+
36
+ # PyInstaller
37
+ # Usually these files are written by a python script from a template
38
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
39
+ *.manifest
40
+ *.spec
41
+
42
+ # Installer logs
43
+ pip-log.txt
44
+ pip-delete-this-directory.txt
45
+
46
+ # Unit test / coverage reports
47
+ htmlcov/
48
+ .tox/
49
+ .nox/
50
+ .coverage
51
+ .coverage.*
52
+ .cache
53
+ nosetests.xml
54
+ coverage.xml
55
+ *.cover
56
+ *.py,cover
57
+ .hypothesis/
58
+ .pytest_cache/
59
+ cover/
60
+
61
+ # Translations
62
+ *.mo
63
+ *.pot
64
+
65
+ # Django stuff:
66
+ *.log
67
+ local_settings.py
68
+ db.sqlite3
69
+ db.sqlite3-journal
70
+
71
+ # Flask stuff:
72
+ instance/
73
+ .webassets-cache
74
+
75
+ # Scrapy stuff:
76
+ .scrapy
77
+
78
+ # Sphinx documentation
79
+ docs/_build/
80
+
81
+ # PyBuilder
82
+ .pybuilder/
83
+ target/
84
+
85
+ # Jupyter Notebook
86
+ .ipynb_checkpoints
87
+
88
+ # IPython
89
+ profile_default/
90
+ ipython_config.py
91
+
92
+ # pyenv
93
+ # For a library or package, you might want to ignore these files since the code is
94
+ # intended to run in multiple environments; otherwise, check them in:
95
+ # .python-version
96
+
97
+ # pipenv
98
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
99
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
100
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
101
+ # install all needed dependencies.
102
+ #Pipfile.lock
103
+
104
+ # poetry
105
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
106
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
107
+ # commonly ignored for libraries.
108
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
109
+ #poetry.lock
110
+
111
+ # pdm
112
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
113
+ #pdm.lock
114
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
115
+ # in version control.
116
+ # https://pdm.fming.dev/#use-with-ide
117
+ .pdm.toml
118
+
119
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
120
+ __pypackages__/
121
+
122
+ # Celery stuff
123
+ celerybeat-schedule
124
+ celerybeat.pid
125
+
126
+ # SageMath parsed files
127
+ *.sage.py
128
+
129
+ # Environments
130
+ .env
131
+ .env.local
132
+ .env.staging
133
+ .env.production
134
+ .venv
135
+ env/
136
+ venv/
137
+ ENV/
138
+ env.bak/
139
+ venv.bak/
140
+
141
+ # Spyder project settings
142
+ .spyderproject
143
+ .spyproject
144
+
145
+ # Rope project settings
146
+ .ropeproject
147
+
148
+ # mkdocs documentation
149
+ /site
150
+ docs/**/*.html.md
151
+ docs/llms.txt
152
+ build/snippets/
153
+ mkdocs.dev.yml
154
+
155
+ # mypy
156
+ .mypy_cache/
157
+ .dmypy.json
158
+ dmypy.json
159
+
160
+ # Pyre type checker
161
+ .pyre/
162
+
163
+ # pytype static type analyzer
164
+ .pytype/
165
+
166
+ # Cython debug symbols
167
+ cython_debug/
168
+
169
+ # PyCharm
170
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
171
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
172
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
173
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
174
+ #.idea/
175
+
176
+ #sqlite
177
+ database.db
178
+
179
+ node_modules
180
+
181
+ # Generated responsive images
182
+ cloud/public/assets/**/*-medium.webp
183
+ cloud/public/assets/**/*-small.webp
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Mirascope, Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,203 @@
1
+ Metadata-Version: 2.4
2
+ Name: mirascope
3
+ Version: 2.0.2
4
+ Summary: Every frontier LLM. One unified interface.
5
+ Project-URL: Homepage, https://mirascope.com
6
+ Project-URL: Documentation, https://mirascope.com/docs/mirascope/v2
7
+ Project-URL: Repository, https://github.com/Mirascope/mirascope/tree/v2
8
+ Project-URL: Issues, https://github.com/Mirascope/mirascope/issues
9
+ Project-URL: Changelog, https://github.com/Mirascope/mirascope/releases
10
+ Author-email: William Bakst <william@mirascope.com>, Dandelion Mané <dandelion@mirascope.com>
11
+ Maintainer-email: William Bakst <william@mirascope.com>, Dandelion Mané <dandelion@mirascope.com>
12
+ License: MIT License
13
+
14
+ Copyright (c) 2026 Mirascope, Inc.
15
+
16
+ Permission is hereby granted, free of charge, to any person obtaining a copy
17
+ of this software and associated documentation files (the "Software"), to deal
18
+ in the Software without restriction, including without limitation the rights
19
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
20
+ copies of the Software, and to permit persons to whom the Software is
21
+ furnished to do so, subject to the following conditions:
22
+
23
+ The above copyright notice and this permission notice shall be included in all
24
+ copies or substantial portions of the Software.
25
+
26
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
27
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
28
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
29
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
30
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
31
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32
+ SOFTWARE.
33
+ License-File: LICENSE
34
+ Keywords: agents,anthropic,artificial intelligence,context engineering,developer tools,gemini,llm,llm tools,openai,prompt engineering
35
+ Classifier: Development Status :: 5 - Production/Stable
36
+ Classifier: Intended Audience :: Developers
37
+ Classifier: License :: OSI Approved :: MIT License
38
+ Classifier: Programming Language :: Python :: 3
39
+ Classifier: Programming Language :: Python :: 3.10
40
+ Classifier: Programming Language :: Python :: 3.11
41
+ Classifier: Programming Language :: Python :: 3.12
42
+ Classifier: Programming Language :: Python :: 3.13
43
+ Classifier: Programming Language :: Python :: 3.14
44
+ Classifier: Topic :: File Formats :: JSON
45
+ Classifier: Topic :: File Formats :: JSON :: JSON Schema
46
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
47
+ Classifier: Topic :: Software Development :: Libraries
48
+ Requires-Python: >=3.10
49
+ Requires-Dist: docstring-parser>=0.17.0
50
+ Requires-Dist: httpx>=0.27.0
51
+ Requires-Dist: jiter>=0.7.0
52
+ Requires-Dist: pydantic>=2.0.0
53
+ Requires-Dist: typing-extensions>=4.10.0
54
+ Provides-Extra: all
55
+ Requires-Dist: anthropic<1.0,>=0.76.0; extra == 'all'
56
+ Requires-Dist: google-genai<2,>=1.58.0; extra == 'all'
57
+ Requires-Dist: libcst>=1.8.6; extra == 'all'
58
+ Requires-Dist: mcp<2,>=1.25.0; extra == 'all'
59
+ Requires-Dist: mlx-lm<1,>=0.28.4; extra == 'all'
60
+ Requires-Dist: openai<3,>=2.15.0; extra == 'all'
61
+ Requires-Dist: opentelemetry-api<2,>=1.38.0; extra == 'all'
62
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.38.0; extra == 'all'
63
+ Requires-Dist: opentelemetry-instrumentation<1,>=0.59b0; extra == 'all'
64
+ Requires-Dist: opentelemetry-propagator-b3<2,>=1.38.0; extra == 'all'
65
+ Requires-Dist: opentelemetry-propagator-b3>=1.38.0; extra == 'all'
66
+ Requires-Dist: opentelemetry-propagator-jaeger>=1.38.0; extra == 'all'
67
+ Requires-Dist: opentelemetry-sdk<2,>=1.38.0; extra == 'all'
68
+ Requires-Dist: orjson>=3.11.4; extra == 'all'
69
+ Requires-Dist: packaging>=25.0; extra == 'all'
70
+ Requires-Dist: pillow<11,>=10.4.0; extra == 'all'
71
+ Requires-Dist: proto-plus>=1.24.0; extra == 'all'
72
+ Requires-Dist: pydantic-settings>=2.12.0; extra == 'all'
73
+ Provides-Extra: anthropic
74
+ Requires-Dist: anthropic<1.0,>=0.76.0; extra == 'anthropic'
75
+ Provides-Extra: api
76
+ Requires-Dist: pydantic-settings>=2.12.0; extra == 'api'
77
+ Provides-Extra: google
78
+ Requires-Dist: google-genai<2,>=1.58.0; extra == 'google'
79
+ Requires-Dist: pillow<11,>=10.4.0; extra == 'google'
80
+ Requires-Dist: proto-plus>=1.24.0; extra == 'google'
81
+ Provides-Extra: mcp
82
+ Requires-Dist: mcp<2,>=1.25.0; extra == 'mcp'
83
+ Provides-Extra: mlx
84
+ Requires-Dist: mlx-lm<1,>=0.28.4; extra == 'mlx'
85
+ Provides-Extra: openai
86
+ Requires-Dist: openai<3,>=2.15.0; extra == 'openai'
87
+ Provides-Extra: ops
88
+ Requires-Dist: libcst>=1.8.6; extra == 'ops'
89
+ Requires-Dist: opentelemetry-api<2,>=1.38.0; extra == 'ops'
90
+ Requires-Dist: opentelemetry-exporter-otlp<2,>=1.38.0; extra == 'ops'
91
+ Requires-Dist: opentelemetry-instrumentation<1,>=0.59b0; extra == 'ops'
92
+ Requires-Dist: opentelemetry-propagator-b3<2,>=1.38.0; extra == 'ops'
93
+ Requires-Dist: opentelemetry-propagator-b3>=1.38.0; extra == 'ops'
94
+ Requires-Dist: opentelemetry-propagator-jaeger>=1.38.0; extra == 'ops'
95
+ Requires-Dist: opentelemetry-sdk<2,>=1.38.0; extra == 'ops'
96
+ Requires-Dist: orjson>=3.11.4; extra == 'ops'
97
+ Requires-Dist: packaging>=25.0; extra == 'ops'
98
+ Description-Content-Type: text/markdown
99
+
100
+ ## Mirascope v2 Python
101
+
102
+ This directory contains the Python implementation of Mirascope.
103
+
104
+ ## Development Setup
105
+
106
+ 1. **Environment Variables**: Copy `.env.example` to `.env` and fill in your API keys:
107
+ ```bash
108
+ cp .env.example .env
109
+ # Edit .env with your API keys
110
+ ```
111
+
112
+ 2. **Install Dependencies**:
113
+
114
+ ```bash
115
+ uv sync --all-extras --dev
116
+ ```
117
+
118
+ 3. **Run Tests**:
119
+ ```bash
120
+ uv run pytest
121
+ ```
122
+
123
+ ## `ops.span` and Session Tracing
124
+
125
+ `mirascope.ops` provides tracing helpers to trace any Python function, not just
126
+ `llm.Model` calls.
127
+
128
+ 1. Install the OTEL extra and set up a tracer provider exactly as shown above.
129
+ `ops.span` automatically reuses the active provider, so spans from manual
130
+ instrumentation and GenAI instrumentation end up in the same trace tree.
131
+ 2. Use `ops.session` to group related spans and attach metadata:
132
+ ```python
133
+ from mirascope import ops
134
+
135
+ with ops.session(id="req-42", attributes={"team": "core"}):
136
+ with ops.span("load-data") as span:
137
+ span.set(stage="ingest")
138
+ # expensive work here
139
+ ```
140
+ 3. The span exposes `span_id`/`trace_id`, logging helpers, and graceful no-op
141
+ behavior when OTEL is not configured. When OTEL is active, session metadata is
142
+ attached to every span, and additional tools like `ops.trace`/`ops.version`
143
+ (planned) can build on the same context.
144
+
145
+ ## `ops.trace` Decorator
146
+
147
+ `@ops.trace` adds span instrumentation to any Python callable (including
148
+ `llm.Model` helpers) so you can capture argument/return metadata alongside the
149
+ GenAI spans emitted by `llm.instrument_opentelemetry`.
150
+
151
+ ```python
152
+ from mirascope import ops
153
+
154
+ @ops.trace(tags=["ingest"])
155
+ def normalize(record: dict[str, str]) -> dict[str, str]:
156
+ return {k: v.strip() for k, v in record.items()}
157
+
158
+ result = normalize({"foo": " bar "})
159
+ wrapped = normalize.wrapped({"foo": " bar "})
160
+ print(wrapped.span_id, wrapped.trace_id)
161
+ ```
162
+
163
+ - The decorator automatically handles sync/async functions and reuses `ops.span`
164
+ serialization logic for arguments/results.
165
+ - Combine with `ops.session` to tag spans with contextual metadata, and with
166
+ `ops.instrument_opentelemetry` to obtain both model-level GenAI spans
167
+ and method-level spans like `recommend_book.__call__`.
168
+ - For now we focus on Mirascope-layer entry points (e.g., decorated functions or
169
+ `llm.Model` wrappers) and do not auto-instrument underlying provider SDK calls.
170
+
171
+ ## Testing
172
+
173
+ ### VCR Cassettes
174
+
175
+ The project uses [VCR.py](https://vcrpy.readthedocs.io/) to record and replay HTTP interactions with LLM APIs. This allows tests to run quickly and consistently without making actual API calls.
176
+
177
+ - **Cassettes Location**: Test cassettes are stored in `tests/llm/clients/*/cassettes/`
178
+ - **Recording Mode**: Tests use `"once"` mode - records new interactions if no cassette exists, replays existing cassettes otherwise
179
+ - **CI/CD**: In CI environments, tests use existing cassettes and never make real API calls
180
+
181
+ ### Inline Snapshots
182
+
183
+ The project uses [inline-snapshot](https://15r10nk.github.io/inline-snapshot/) to capture expected test outputs directly in the test code.
184
+
185
+ - **Update Snapshots**: Run `uv run pytest --inline-snapshot=fix` to update all snapshots with actual values
186
+ - **Review Changes**: Run `uv run pytest --inline-snapshot=review` to preview what would change
187
+ - **Formatted Output**: Snapshots are automatically formatted with `ruff` for consistency
188
+
189
+ Example:
190
+ ```python
191
+ def test_api_response():
192
+ response = client.call(messages=[user("Hello")])
193
+ assert response.content == snapshot([Text(text="Hi there!")])
194
+ ```
195
+
196
+ ### Recording New Test Interactions
197
+
198
+ To record new test interactions:
199
+
200
+ 1. Ensure your API keys are set in `.env`
201
+ 2. Delete the relevant cassette file (if updating an existing test)
202
+ 3. Run the specific test: `uv run pytest tests/path/to/test.py::test_name`
203
+ 4. The cassette will be automatically created/updated
@@ -0,0 +1,97 @@
1
+ import json
2
+ import tempfile
3
+ from pathlib import Path
4
+
5
+ from mirascope import llm
6
+
7
+ # For safety, the agent may only operate within this workspace.
8
+ WORKSPACE = Path(tempfile.mkdtemp(prefix="agent_"))
9
+
10
+
11
+ def resolve_path(path_str: str) -> Path | None:
12
+ """Resolve a path within the workspace, returning None if it escapes."""
13
+ path = (WORKSPACE / path_str).resolve()
14
+ if WORKSPACE.resolve() not in path.parents and path != WORKSPACE.resolve():
15
+ return None
16
+ return path
17
+
18
+
19
+ @llm.tool
20
+ def list_files(directory: str = ".") -> str:
21
+ """List files in a directory."""
22
+ path = resolve_path(directory)
23
+ if path is None:
24
+ return "Error: Path is outside the workspace"
25
+ if not path.exists():
26
+ return f"Directory not found: {directory}"
27
+ files = [f.name + ("/" if f.is_dir() else "") for f in path.iterdir()]
28
+ return "\n".join(files) if files else "(empty directory)"
29
+
30
+
31
+ @llm.tool
32
+ def read_file(filepath: str) -> str:
33
+ """Read the contents of a file."""
34
+ path = resolve_path(filepath)
35
+ if path is None:
36
+ return "Error: Path is outside the workspace"
37
+ if not path.exists():
38
+ return f"File not found: {filepath}"
39
+ return path.read_text()
40
+
41
+
42
+ @llm.tool
43
+ def write_file(filepath: str, content: str) -> str:
44
+ """Write content to a file."""
45
+ path = resolve_path(filepath)
46
+ if path is None:
47
+ return "Error: Path is outside the workspace"
48
+ path.parent.mkdir(parents=True, exist_ok=True)
49
+ path.write_text(content)
50
+ return f"Wrote {len(content)} bytes to {filepath}"
51
+
52
+
53
+ def display_tool_call(tool_call: llm.ToolCall) -> str:
54
+ args = json.loads(tool_call.args)
55
+ match tool_call.name:
56
+ case "list_files":
57
+ return f"[Tool] List files in '{args.get('directory', '.')}'"
58
+ case "read_file":
59
+ return f"[Tool] Read '{args['filepath']}'"
60
+ case "write_file":
61
+ return f"[Tool] Write '{args['filepath']}'"
62
+ case _:
63
+ return f"[Tool]: {tool_call.name}"
64
+
65
+
66
+ def run_agent(model_id: llm.ModelId, query: str):
67
+ model = llm.model(model_id, thinking={"level": "medium", "include_thoughts": True})
68
+ response = model.stream(query, tools=[list_files, read_file, write_file])
69
+
70
+ while True: # The Agent Loop
71
+ for stream in response.streams():
72
+ match stream.content_type:
73
+ case "text":
74
+ for chunk in stream:
75
+ print(chunk, flush=True, end="")
76
+ print("\n")
77
+ case "thought":
78
+ print("<Thinking>\n", flush=True)
79
+ for chunk in stream:
80
+ print(chunk, flush=True, end="")
81
+ print("</Thinking>\n", flush=True)
82
+ case "tool_call":
83
+ tool_call = stream.collect()
84
+ print(display_tool_call(tool_call) + "\n")
85
+
86
+ if not response.tool_calls:
87
+ break # Agent is finished.
88
+
89
+ response = response.resume(response.execute_tools())
90
+
91
+
92
+ run_agent(
93
+ "anthropic/claude-sonnet-4-5",
94
+ "Create a calculator module (calc.py) with add, subtract, multiply, divide "
95
+ "functions, then create a test file (test_calc.py) that tests each function.",
96
+ )
97
+ print(f"View the agent's work in this directory: {WORKSPACE}\n")
@@ -0,0 +1,17 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+
6
+ @llm.call("openai/gpt-5-mini")
7
+ async def recommend_book(genre: str):
8
+ return f"Recommend a {genre} book."
9
+
10
+
11
+ async def main():
12
+ response = await recommend_book.stream("fantasy")
13
+ async for chunk in response.text_stream():
14
+ print(chunk, end="", flush=True)
15
+
16
+
17
+ asyncio.run(main())
@@ -0,0 +1,28 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+
6
+ @llm.tool
7
+ async def fetch_weather(city: str) -> str:
8
+ """Fetch current weather for a city."""
9
+ await asyncio.sleep(0.1) # Simulate async API call
10
+ return f"72°F and sunny in {city}"
11
+
12
+
13
+ @llm.call("openai/gpt-5-mini", tools=[fetch_weather])
14
+ async def weather_assistant(query: str):
15
+ return query
16
+
17
+
18
+ async def main():
19
+ response = await weather_assistant("What's the weather in Tokyo?")
20
+
21
+ while response.tool_calls:
22
+ tool_outputs = await response.execute_tools()
23
+ response = await response.resume(tool_outputs)
24
+
25
+ print(response.pretty())
26
+
27
+
28
+ asyncio.run(main())
@@ -0,0 +1,16 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+
6
+ @llm.call("openai/gpt-5-mini")
7
+ async def recommend_book(genre: str):
8
+ return f"Recommend a {genre} book."
9
+
10
+
11
+ async def main():
12
+ response = await recommend_book("fantasy")
13
+ print(response.text())
14
+
15
+
16
+ asyncio.run(main())
@@ -0,0 +1,13 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+ model = llm.Model("openai/gpt-5-mini")
6
+
7
+
8
+ async def main():
9
+ response: llm.AsyncResponse = await model.call_async("Recommend a fantasy book.")
10
+ print(response.text())
11
+
12
+
13
+ asyncio.run(main())
@@ -0,0 +1,16 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+
6
+ @llm.prompt
7
+ async def recommend_book(genre: str):
8
+ return f"Recommend a {genre} book."
9
+
10
+
11
+ async def main():
12
+ response: llm.AsyncResponse = await recommend_book("openai/gpt-5-mini", "fantasy")
13
+ print(response.text())
14
+
15
+
16
+ asyncio.run(main())
@@ -0,0 +1,19 @@
1
+ import asyncio
2
+
3
+ from mirascope import llm
4
+
5
+
6
+ @llm.call("openai/gpt-5-mini")
7
+ async def recommend_book(genre: str):
8
+ return f"Recommend a {genre} book."
9
+
10
+
11
+ async def main():
12
+ genres = ["fantasy", "mystery", "romance"]
13
+ responses = await asyncio.gather(*[recommend_book(genre) for genre in genres])
14
+
15
+ for genre, response in zip(genres, responses, strict=False):
16
+ print(f"[{genre}]: {response.pretty()}\n")
17
+
18
+
19
+ asyncio.run(main())