matrx-ai 0.5.332__tar.gz → 0.5.334__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 (1450) hide show
  1. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/PKG-INFO +6 -6
  2. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/__init__.py +7 -0
  3. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/agent_ops.py +0 -43
  4. matrx_ai-0.5.334/matrx_ai/tools/kinds/google.py +230 -0
  5. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/topical_map.py +124 -1
  6. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/workflow_tools.py +13 -0
  7. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/pyproject.toml +6 -6
  8. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/.gitignore +0 -0
  9. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/AGENTS.md +0 -0
  10. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/CLAUDE.md +0 -0
  11. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/MEDIA_VARIABLES_AND_HANDOFF.md +0 -0
  12. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/README.md +0 -0
  13. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/REMAINING_TASKS.md +0 -0
  14. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/TEST_HEALTH_HANDOFF.md +0 -0
  15. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/conftest.py +0 -0
  16. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/examples/embed_vfs.py +0 -0
  17. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/MODULE_README.md +0 -0
  18. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/__init__.py +0 -0
  19. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/_ext.py +0 -0
  20. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/MODULE_README.md +0 -0
  21. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/PODCAST_PIPELINE.md +0 -0
  22. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/__init__.py +0 -0
  23. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/_checkpoint.py +0 -0
  24. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/content_cleaner.py +0 -0
  25. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/conversation_labeler.py +0 -0
  26. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/podcast_generator.py +0 -0
  27. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/podcast_stages.py +0 -0
  28. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/research.py +0 -0
  29. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agent_runners/tests/test_distinct_voices.py +0 -0
  30. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/DEPRECATED_prompts_manager.py +0 -0
  31. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/FEATURE.md +0 -0
  32. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/MODULE_README.md +0 -0
  33. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/__init__.py +0 -0
  34. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/auto_assignment.py +0 -0
  35. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/batch_render.py +0 -0
  36. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/cache.py +0 -0
  37. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/conversation_type.py +0 -0
  38. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/definition.py +0 -0
  39. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/executor.py +0 -0
  40. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/history_hydration.py +0 -0
  41. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/library/__init__.py +0 -0
  42. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/library/schema_coerce.py +0 -0
  43. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/named.py +0 -0
  44. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/output.py +0 -0
  45. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/resolver.py +0 -0
  46. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/response_parser.py +0 -0
  47. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/services/conversation_labeler.py +0 -0
  48. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/source_tracking.py +0 -0
  49. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/tests/new_agent_test.py +0 -0
  50. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/tests/test_response_parser.py +0 -0
  51. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/tests/test_structured_output_emit.py +0 -0
  52. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/tests/test_variables_prompt_door.py +0 -0
  53. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/types.py +0 -0
  54. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/usage_registry.py +0 -0
  55. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/variable_kinds.py +0 -0
  56. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/variable_schema.py +0 -0
  57. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/agents/variables.py +0 -0
  58. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/FEATURE.md +0 -0
  59. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/__init__.py +0 -0
  60. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/coordinator.py +0 -0
  61. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/handle.py +0 -0
  62. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/models.py +0 -0
  63. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/outcomes.py +0 -0
  64. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/browser_handoff/seam.py +0 -0
  65. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/__init__.py +0 -0
  66. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/browser_dom.py +0 -0
  67. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/built_in.py +0 -0
  68. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/desktop_native.py +0 -0
  69. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/models.py +0 -0
  70. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/registry.py +0 -0
  71. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/tests/__init__.py +0 -0
  72. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/tests/test_browser_dom.py +0 -0
  73. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/capabilities/tests/test_capabilities.py +0 -0
  74. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/FEATURE.md +0 -0
  75. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/__init__.py +0 -0
  76. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/canonicalize.py +0 -0
  77. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/constraint_eval.py +0 -0
  78. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/controls.py +0 -0
  79. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/equivalence.py +0 -0
  80. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/errors.py +0 -0
  81. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/host_catalog.py +0 -0
  82. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/knobs.py +0 -0
  83. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/lifecycle.py +0 -0
  84. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/manager.py +0 -0
  85. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/models.py +0 -0
  86. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/processors.py +0 -0
  87. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/resolve.py +0 -0
  88. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/catalog/routes.py +0 -0
  89. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/client_host/__init__.py +0 -0
  90. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/client_host/agent_source.py +0 -0
  91. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/client_host/mandate_source.py +0 -0
  92. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/client_host/store.py +0 -0
  93. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/client_host/validate.py +0 -0
  94. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/coding_sessions/FEATURE.md +0 -0
  95. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/coding_sessions/__init__.py +0 -0
  96. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/coding_sessions/models.py +0 -0
  97. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/concepts/ai_matrx_context_engine_v2.md +0 -0
  98. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/concepts/context_engine_plus_deferred_context_full_flow.svg +0 -0
  99. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/AGENTS_API.md +0 -0
  100. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/CONTENT_TYPES.md +0 -0
  101. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/FEATURE.md +0 -0
  102. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/MODULE_README.md +0 -0
  103. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/TABLE_REFERENCE_FETCH.md +0 -0
  104. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/__init__.py +0 -0
  105. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/_parity.py +0 -0
  106. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/agent-definition-types.ts +0 -0
  107. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/ai-api-types.ts +0 -0
  108. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/citations.py +0 -0
  109. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/config_utils.py +0 -0
  110. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/context_preflight.py +0 -0
  111. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/context_trim.py +0 -0
  112. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/contract.schema.json +0 -0
  113. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/custom_tool.py +0 -0
  114. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/dictionary_config.py +0 -0
  115. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/enums.py +0 -0
  116. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/extra_config.py +0 -0
  117. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/finish_reason.py +0 -0
  118. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/json_schema_wire.py +0 -0
  119. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/llm_params.py +0 -0
  120. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/llm_wire_types.py +0 -0
  121. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/media_config.py +0 -0
  122. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/message-types.ts +0 -0
  123. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/message_config.py +0 -0
  124. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/__init__.py +0 -0
  125. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/content.py +0 -0
  126. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/extra.py +0 -0
  127. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/media.py +0 -0
  128. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/message.py +0 -0
  129. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/response.py +0 -0
  130. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/structured_input.py +0 -0
  131. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/unified.py +0 -0
  132. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/models/usage.py +0 -0
  133. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/name_gender.py +0 -0
  134. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/openai_responses_tool_ids.py +0 -0
  135. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/output_ceiling.py +0 -0
  136. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/picklist_runtime.py +0 -0
  137. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/prompt_values.py +0 -0
  138. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/read_only_resources.py +0 -0
  139. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/resource_ref.py +0 -0
  140. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/response_format.py +0 -0
  141. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/send_boundary.py +0 -0
  142. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/structured_input_config.py +0 -0
  143. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/structured_input_resolver.py +0 -0
  144. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tests/__init__.py +0 -0
  145. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tests/test_absolute_ceiling.py +0 -0
  146. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tests/test_get_output_excludes_thinking.py +0 -0
  147. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tool_config_image_processing_spec.md +0 -0
  148. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tool_result_guard.py +0 -0
  149. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tools_config.py +0 -0
  150. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/tts_config.py +0 -0
  151. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/unified_config.py +0 -0
  152. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/unified_content.py +0 -0
  153. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/usage_config.py +0 -0
  154. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/validators.py +0 -0
  155. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/config/wire_names.py +0 -0
  156. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context/__init__.py +0 -0
  157. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context/app_context.py +0 -0
  158. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context/emitter_protocol.py +0 -0
  159. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context/environment_sniffer.py +0 -0
  160. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context/events.py +0 -0
  161. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/context_engine.py +0 -0
  162. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/FEATURE.md +0 -0
  163. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/MODULE_README.md +0 -0
  164. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/__init__.py +0 -0
  165. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_agx_manager_impl.py +0 -0
  166. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_arm_managers_impl.py +0 -0
  167. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_conversation_rebuild_impl.py +0 -0
  168. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_cx_managers_impl.py +0 -0
  169. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_guest_registry_impl.py +0 -0
  170. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/_registry.py +0 -0
  171. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/agx_manager.py +0 -0
  172. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/MODULE_README.md +0 -0
  173. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/__init__.py +0 -0
  174. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/_ai_model_base_impl.py +0 -0
  175. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/_ai_model_dto_impl.py +0 -0
  176. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/_ai_model_manager_orm.py +0 -0
  177. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/ai_model_base.py +0 -0
  178. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/ai_model_dto.py +0 -0
  179. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ai_models/ai_model_manager.py +0 -0
  180. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/arm_managers.py +0 -0
  181. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/DATA_REF.md +0 -0
  182. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/MODULE_README.md +0 -0
  183. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/_notes_impl.py +0 -0
  184. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/_tasks_impl.py +0 -0
  185. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/data_ref.py +0 -0
  186. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/data_ref_utils.ts +0 -0
  187. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/datasets.py +0 -0
  188. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/notes.py +0 -0
  189. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/patch_utils.py +0 -0
  190. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/picklists.py +0 -0
  191. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/tasks.py +0 -0
  192. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/content_types/tests.py +0 -0
  193. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/control_tokens.py +0 -0
  194. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/conversation_gate.py +0 -0
  195. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/conversation_rebuild.py +0 -0
  196. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/conversation_title_backfill.py +0 -0
  197. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/cx_managers.py +0 -0
  198. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/db_requirements.py +0 -0
  199. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/guest_registry.py +0 -0
  200. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/message_parts.py +0 -0
  201. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/message_positions.py +0 -0
  202. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/migrations/0050_vfs_inode_blob.sql +0 -0
  203. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/migrations/0051_request_execution_attribution.sql +0 -0
  204. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/migrations/TOOL_CALL_OUTPUT_METADATA.md +0 -0
  205. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/migrations/add_observational_memory.sql +0 -0
  206. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/ownership_fields.py +0 -0
  207. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/persistence.py +0 -0
  208. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/request_tracking_log.py +0 -0
  209. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/tests/db_tests.py +0 -0
  210. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/turn_failure.py +0 -0
  211. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/db/voice_catalog.py +0 -0
  212. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/AUDIO_AUTOMATIC_FALLBACK.md +0 -0
  213. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/AUDIO_HANDLING_COMPARISON.md +0 -0
  214. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/GROQ_TRANSCRIPTION.md +0 -0
  215. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/GROQ_TRANSCRIPTION_QUICK_START.md +0 -0
  216. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/GROQ_TRANSCRIPTION_SUMMARY.md +0 -0
  217. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/GROQ_TRANSCRIPTION_USAGE_TRACKING.md +0 -0
  218. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/STT_CATALOG.md +0 -0
  219. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/SUBAGENTS.md +0 -0
  220. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/TRANSCRIPTION_CACHING.md +0 -0
  221. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/docs/YOUTUBE_URL_HANDLING.md +0 -0
  222. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/FEATURE.md +0 -0
  223. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/__init__.py +0 -0
  224. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/ai_judge.py +0 -0
  225. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/calibration.py +0 -0
  226. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/judge.py +0 -0
  227. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/ledger.py +0 -0
  228. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/evaluators/selector.py +0 -0
  229. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/extraction.py +0 -0
  230. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/FEATURE.md +0 -0
  231. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/__init__.py +0 -0
  232. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/_strict_json.py +0 -0
  233. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/agent_action.py +0 -0
  234. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/agent_assignment_action.py +0 -0
  235. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/agent_loop_actions.py +0 -0
  236. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/agent_produce_action.py +0 -0
  237. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/chat_action.py +0 -0
  238. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/conversation_action.py +0 -0
  239. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/extract_action.py +0 -0
  240. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/image_action.py +0 -0
  241. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/image_pipeline_actions.py +0 -0
  242. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/llm_action.py +0 -0
  243. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/mandate_action.py +0 -0
  244. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/mandates.py +0 -0
  245. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/scrape_action.py +0 -0
  246. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/search_action.py +0 -0
  247. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/shared.py +0 -0
  248. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/__init__.py +0 -0
  249. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/test_extract_model_contract.py +0 -0
  250. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/test_graph_nodes.py +0 -0
  251. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/test_llm_response_format.py +0 -0
  252. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/test_node_handlers_execute.py +0 -0
  253. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tests/test_node_panel_hooks.py +0 -0
  254. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/transcribe_action.py +0 -0
  255. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/tts_action.py +0 -0
  256. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/util_action.py +0 -0
  257. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/graph_nodes/video_action.py +0 -0
  258. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/injection_catalog.py +0 -0
  259. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/MODULE_README.md +0 -0
  260. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/__init__.py +0 -0
  261. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/content_blocks_manager.py +0 -0
  262. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/core.py +0 -0
  263. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/docs/MATRX_PATTERNS_FRONTEND_GUIDE.md +0 -0
  264. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/docs/QUICK_REFERENCE.md +0 -0
  265. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/docs/README.md +0 -0
  266. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/matrx_fetcher.py +0 -0
  267. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/pattern_parser.py +0 -0
  268. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/MODULE_README.md +0 -0
  269. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/__init__.py +0 -0
  270. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/dataset_data_test.py +0 -0
  271. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/direct_fetch_test.py +0 -0
  272. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/instruction_builder_test.py +0 -0
  273. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/integration_test.py +0 -0
  274. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/simple_variable_example.py +0 -0
  275. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/instructions/tests/variable_recognition_test.py +0 -0
  276. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/kinds.py +0 -0
  277. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/local_data/.gitignore +0 -0
  278. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/local_data/__init__.py +0 -0
  279. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/local_data/paths.py +0 -0
  280. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/mandates.py +0 -0
  281. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/FEATURE.md +0 -0
  282. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/__init__.py +0 -0
  283. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/file_handles.py +0 -0
  284. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/generation_metadata.py +0 -0
  285. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/media_blocks.py +0 -0
  286. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/media_persistence.py +0 -0
  287. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/mime_utils.py +0 -0
  288. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/media/naming.py +0 -0
  289. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/FEATURE.md +0 -0
  290. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/INTEGRATION_GUIDE.md +0 -0
  291. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/__init__.py +0 -0
  292. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/adapter.py +0 -0
  293. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/buffering_coordinator.py +0 -0
  294. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/constants.py +0 -0
  295. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/date_utils.py +0 -0
  296. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/events.py +0 -0
  297. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/factory.py +0 -0
  298. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/llm_adapter.py +0 -0
  299. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/message_utils.py +0 -0
  300. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/observational_memory.py +0 -0
  301. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/observer_agent.py +0 -0
  302. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/observer_runner.py +0 -0
  303. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/reflector_agent.py +0 -0
  304. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/reflector_runner.py +0 -0
  305. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/storage.py +0 -0
  306. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/storage_db.py +0 -0
  307. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/tests/test_async_buffering.py +0 -0
  308. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/tests/test_basic.py +0 -0
  309. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/thresholds.py +0 -0
  310. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/token_counter.py +0 -0
  311. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/memory/types.py +0 -0
  312. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/FEATURE.md +0 -0
  313. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/__init__.py +0 -0
  314. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/issue_capture.py +0 -0
  315. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/issue_registry.py +0 -0
  316. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/pricing_drift.py +0 -0
  317. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/ops/provider_outage.py +0 -0
  318. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/FEATURE.md +0 -0
  319. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/MODULE_README.md +0 -0
  320. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/__init__.py +0 -0
  321. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/change_claims.py +0 -0
  322. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/concurrent_engine.py +0 -0
  323. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/conversation_persistence.py +0 -0
  324. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/conversation_provider.py +0 -0
  325. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/conversation_runtime.py +0 -0
  326. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/cost_budget.py +0 -0
  327. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/execution_state.py +0 -0
  328. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/executor.py +0 -0
  329. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/loop_guard.py +0 -0
  330. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/mandate_carrier.py +0 -0
  331. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/overload_reroute.py +0 -0
  332. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/parallel_executor.py +0 -0
  333. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/recovery_logic.py +0 -0
  334. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/requests.py +0 -0
  335. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/required_members.py +0 -0
  336. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/reroute_alarm.py +0 -0
  337. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/step_phase.py +0 -0
  338. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/orchestrator/tracking.py +0 -0
  339. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/FEATURE.md +0 -0
  340. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/__init__.py +0 -0
  341. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/coordinator.py +0 -0
  342. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/postgres_text.py +0 -0
  343. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/queue_helpers.py +0 -0
  344. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/registry.py +0 -0
  345. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/persistence/replay.py +0 -0
  346. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/FEATURE.md +0 -0
  347. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/__init__.py +0 -0
  348. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/compiler.py +0 -0
  349. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/errors.py +0 -0
  350. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/types.py +0 -0
  351. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/plans/validate.py +0 -0
  352. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/MODULE_README.md +0 -0
  353. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/PROCESSING_TASKS.md +0 -0
  354. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/__init__.py +0 -0
  355. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/MODULE_README.md +0 -0
  356. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/__init__.py +0 -0
  357. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/audio_preprocessing.py +0 -0
  358. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/groq_transcription.py +0 -0
  359. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/stt.py +0 -0
  360. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/audio/transcription_cache.py +0 -0
  361. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/FEATURE.md +0 -0
  362. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/MODULE_README.md +0 -0
  363. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/__init__.py +0 -0
  364. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/block_detector.py +0 -0
  365. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/block_registry.py +0 -0
  366. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/content_view.py +0 -0
  367. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/envelope.py +0 -0
  368. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/fingerprint.py +0 -0
  369. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/generate_ts_types.py +0 -0
  370. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/kind_catalog.py +0 -0
  371. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/kind_surfaces_generated.py +0 -0
  372. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/MODULE_README.md +0 -0
  373. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/__init__.py +0 -0
  374. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/artifact.py +0 -0
  375. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/base.py +0 -0
  376. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/comparison.py +0 -0
  377. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/decision.py +0 -0
  378. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/decision_tree.py +0 -0
  379. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/diagram.py +0 -0
  380. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/flashcards.py +0 -0
  381. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/item_presentation.py +0 -0
  382. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/math_problem.py +0 -0
  383. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/media.py +0 -0
  384. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/mermaid.py +0 -0
  385. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/presentation.py +0 -0
  386. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/progress.py +0 -0
  387. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/questionnaire.py +0 -0
  388. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/quiz.py +0 -0
  389. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/recipe.py +0 -0
  390. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/research.py +0 -0
  391. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/resources.py +0 -0
  392. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/schema_proposal.py +0 -0
  393. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/structured_info.py +0 -0
  394. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/table.py +0 -0
  395. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/tasks.py +0 -0
  396. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/text.py +0 -0
  397. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/thinking.py +0 -0
  398. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/timeline.py +0 -0
  399. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/transcript.py +0 -0
  400. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/models/troubleshooting.py +0 -0
  401. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/MODULE_README.md +0 -0
  402. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/__init__.py +0 -0
  403. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/_llm_json.py +0 -0
  404. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/artifact_parser.py +0 -0
  405. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/comparison_parser.py +0 -0
  406. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/decision_parser.py +0 -0
  407. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/decision_tree_parser.py +0 -0
  408. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/diagram_parser.py +0 -0
  409. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/diff_parser.py +0 -0
  410. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/flashcard_parser.py +0 -0
  411. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/item_presentation_parser.py +0 -0
  412. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/math_problem_parser.py +0 -0
  413. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/mermaid_parser.py +0 -0
  414. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/presentation_parser.py +0 -0
  415. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/progress_parser.py +0 -0
  416. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/questionnaire_parser.py +0 -0
  417. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/quiz_parser.py +0 -0
  418. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/recipe_parser.py +0 -0
  419. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/research_parser.py +0 -0
  420. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/resources_parser.py +0 -0
  421. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/schema_proposal_parser.py +0 -0
  422. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/structured_info_parser.py +0 -0
  423. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/table_parser.py +0 -0
  424. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/task_parser.py +0 -0
  425. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/timeline_parser.py +0 -0
  426. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/timeline_stream_parser.py +0 -0
  427. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/transcript_parser.py +0 -0
  428. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/parsers/troubleshooting_parser.py +0 -0
  429. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/stream_processor.py +0 -0
  430. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tag_detection_buffer.py +0 -0
  431. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/MODULE_README.md +0 -0
  432. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/__init__.py +0 -0
  433. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/block_tester.py +0 -0
  434. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/stream_debug.py +0 -0
  435. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_block_detector.py +0 -0
  436. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_content.md +0 -0
  437. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_content_view.py +0 -0
  438. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_content_view_reads_real_envelopes.py +0 -0
  439. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_declared_markers_are_stamped.py +0 -0
  440. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_input.txt +0 -0
  441. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_mermaid_parser.py +0 -0
  442. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_parsers/__init__.py +0 -0
  443. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_parsers/test_flashcard_parser.py +0 -0
  444. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_parsers/test_parser_drift_guards.py +0 -0
  445. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_parsers/test_quiz_natural_shape.py +0 -0
  446. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_parsers/test_various_parsers.py +0 -0
  447. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_registered_kinds_are_kind_blocks.py +0 -0
  448. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_results/2026-03-24_13-54-33_decision_variant_b.json +0 -0
  449. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_stream_processor.py +0 -0
  450. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_streaming_partial_kinds.py +0 -0
  451. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/test_table_stream_stability.py +0 -0
  452. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/ts_bridge/parse_blocks.ts +0 -0
  453. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/blocks/tests/ts_bridge/stream_partials.ts +0 -0
  454. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/media_fallback/FEATURE.md +0 -0
  455. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/media_fallback/__init__.py +0 -0
  456. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/media_fallback/handler.py +0 -0
  457. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/media_fallback/resolvers.py +0 -0
  458. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/streaming-constitution.md +0 -0
  459. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/__init__.py +0 -0
  460. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/image_processor.py +0 -0
  461. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/tests/__init__.py +0 -0
  462. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/tests/test_image_processor.py +0 -0
  463. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/tests/test_vision_classes.py +0 -0
  464. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/processing/vision/vision_classes.py +0 -0
  465. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/FEATURE.md +0 -0
  466. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/MODULE_README.md +0 -0
  467. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/__init__.py +0 -0
  468. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/_media_dims.py +0 -0
  469. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/admission.py +0 -0
  470. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/FEATURE.md +0 -0
  471. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/__init__.py +0 -0
  472. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/anthropic_api.py +0 -0
  473. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/broker.py +0 -0
  474. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/client.py +0 -0
  475. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/anthropic/translator.py +0 -0
  476. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/base_media.py +0 -0
  477. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/base_translator.py +0 -0
  478. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cache_guard.py +0 -0
  479. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/capability_vocabulary.py +0 -0
  480. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cerebras/__init__.py +0 -0
  481. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cerebras/cerebras_api.py +0 -0
  482. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cerebras/client.py +0 -0
  483. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cerebras/translator.py +0 -0
  484. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/citation_emit.py +0 -0
  485. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cohere/__init__.py +0 -0
  486. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/cohere/rerank.py +0 -0
  487. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/FEATURE.md +0 -0
  488. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/MODULE_README.md +0 -0
  489. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/__init__.py +0 -0
  490. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/cerebras_model_sync.py +0 -0
  491. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/google_model_sync.py +0 -0
  492. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/groq_model_sync.py +0 -0
  493. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/model_sync.py +0 -0
  494. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/openai_model_sync.py +0 -0
  495. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/together_model_sync.py +0 -0
  496. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/data_sync/xai_model_sync.py +0 -0
  497. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/debug_pretty_print.py +0 -0
  498. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/MODULE_README.md +0 -0
  499. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/TASK-Update-elevent-api.md +0 -0
  500. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/__init__.py +0 -0
  501. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/client.py +0 -0
  502. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/direct_dialogue.py +0 -0
  503. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/elevenlabs_api.py +0 -0
  504. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/pronunciation_dict.py +0 -0
  505. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/eleven_labs/tts_streaming.py +0 -0
  506. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/errors.py +0 -0
  507. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/fastino/__init__.py +0 -0
  508. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/fastino/client.py +0 -0
  509. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/fastino/errors.py +0 -0
  510. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/fastino/fastino_api.py +0 -0
  511. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/fastino/models.py +0 -0
  512. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/MODULE_README.md +0 -0
  513. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/__init__.py +0 -0
  514. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/endpoint_probe.py +0 -0
  515. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/generic_openai_api.py +0 -0
  516. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/huggingface_api.py +0 -0
  517. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/generic_openai/translator.py +0 -0
  518. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/MODULE_README.md +0 -0
  519. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/__init__.py +0 -0
  520. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/google_api.py +0 -0
  521. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/google_client.py +0 -0
  522. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/google_image_api.py +0 -0
  523. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/google_interactions_api.py +0 -0
  524. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/google_video_api.py +0 -0
  525. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/sample_podcast_direct.py +0 -0
  526. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/specialized.py +0 -0
  527. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/google/translator.py +0 -0
  528. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/groq/__init__.py +0 -0
  529. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/groq/client.py +0 -0
  530. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/groq/groq_api.py +0 -0
  531. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/groq/stt.py +0 -0
  532. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/groq/translator.py +0 -0
  533. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/keys.py +0 -0
  534. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/mock/__init__.py +0 -0
  535. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/mock/mock_api.py +0 -0
  536. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/model_listing.py +0 -0
  537. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/moonshot/__init__.py +0 -0
  538. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/moonshot/moonshot_api.py +0 -0
  539. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/__init__.py +0 -0
  540. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/client.py +0 -0
  541. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/openai_api.py +0 -0
  542. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/openai_image_api.py +0 -0
  543. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/openai_video_api.py +0 -0
  544. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/realtime.py +0 -0
  545. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/openai/translator.py +0 -0
  546. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/outbound_capture.py +0 -0
  547. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/outbound_params.py +0 -0
  548. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/provider_io_capabilities.py +0 -0
  549. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/reasoning.py +0 -0
  550. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/reasoning_stream_state.py +0 -0
  551. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/replicate/__init__.py +0 -0
  552. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/replicate/model_descriptors.py +0 -0
  553. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/replicate/rate_limit.py +0 -0
  554. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/replicate/replicate_image_api.py +0 -0
  555. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/replicate/replicate_video_api.py +0 -0
  556. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/resolved_capabilities.py +0 -0
  557. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/sdk_drift.py +0 -0
  558. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/snapshot.py +0 -0
  559. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/snapshot_redactors.py +0 -0
  560. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/tests/__init__.py +0 -0
  561. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/tests/fixtures/openai_responses_request.json +0 -0
  562. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/tests/test_capture_client_sdk_flavor.py +0 -0
  563. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/tests/test_outbound_capture.py +0 -0
  564. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/tests/test_tts_segmentation.py +0 -0
  565. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/__init__.py +0 -0
  566. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/client.py +0 -0
  567. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/together_api.py +0 -0
  568. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/together_image_api.py +0 -0
  569. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/together_video_api.py +0 -0
  570. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/together/translator.py +0 -0
  571. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/unified_client.py +0 -0
  572. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/__init__.py +0 -0
  573. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/client.py +0 -0
  574. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/realtime.py +0 -0
  575. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/translator.py +0 -0
  576. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/xai_api.py +0 -0
  577. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/xai_image_api.py +0 -0
  578. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/providers/xai/xai_video_api.py +0 -0
  579. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/reports/cost_analysis.py +0 -0
  580. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/schema/__init__.py +0 -0
  581. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/schema/grammar_budget.py +0 -0
  582. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/schema/lint.py +0 -0
  583. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/schema/rules.py +0 -0
  584. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/MODULE_README.md +0 -0
  585. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/__init__.py +0 -0
  586. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/ingest.py +0 -0
  587. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/models.py +0 -0
  588. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/preamble.py +0 -0
  589. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/providers.py +0 -0
  590. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/resolver.py +0 -0
  591. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/skills/startup_check.py +0 -0
  592. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/__init__.py +0 -0
  593. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/host_isolation.py +0 -0
  594. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/profile_factory.py +0 -0
  595. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/record_replay.py +0 -0
  596. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/__init__.py +0 -0
  597. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/conftest.py +0 -0
  598. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/test_catalog_canonicalize.py +0 -0
  599. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/test_catalog_controls.py +0 -0
  600. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/test_catalog_manager.py +0 -0
  601. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/testing/tests/test_record_replay.py +0 -0
  602. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/MODULE_README.md +0 -0
  603. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/clean_response.json +0 -0
  604. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/cx_storage_response.json +0 -0
  605. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/final_response.json +0 -0
  606. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/MODULE_README.md +0 -0
  607. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/background_stream_async.py +0 -0
  608. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/conversation_id_test.py +0 -0
  609. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/openai_function_test.py +0 -0
  610. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/openai_image_input.py +0 -0
  611. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/openai_small_tests.py +0 -0
  612. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/openai/sample_output.json +0 -0
  613. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/prompts/agent_comparison.py +0 -0
  614. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/prompts/prompt_to_config.py +0 -0
  615. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/prompts/test_basic_prompts.py +0 -0
  616. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/sample_db.json +0 -0
  617. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/small_test.py +0 -0
  618. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_agent_loop_actions.py +0 -0
  619. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_apply_overrides.py +0 -0
  620. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_error_handling.py +0 -0
  621. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_evaluators.py +0 -0
  622. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_graph_nodes_turn_failure.py +0 -0
  623. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_image_pipeline_actions.py +0 -0
  624. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_judge_primitive.py +0 -0
  625. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_llm_params_drift.py +0 -0
  626. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_response_format.py +0 -0
  627. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_strict_json.py +0 -0
  628. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/test_translations.py +0 -0
  629. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tests/veo_generation.json +0 -0
  630. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/ARG_RECOVERY.md +0 -0
  631. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/FEATURE.md +0 -0
  632. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/MODULE_README.md +0 -0
  633. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/TOOLS_AUDIT_REPORT.md +0 -0
  634. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/TOOL_OUTPUT_VALIDATION_GATE.md +0 -0
  635. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/TOOL_RESULT_SIZE_GATE.md +0 -0
  636. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/USER_TOOL_WIRE_CONTRACT.md +0 -0
  637. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/__init__.py +0 -0
  638. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_call_logger.py +0 -0
  639. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_change_events.py +0 -0
  640. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_db_log.py +0 -0
  641. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_debug_log.py +0 -0
  642. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_dispatch_util.py +0 -0
  643. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_generated_declarations.py +0 -0
  644. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_sandbox_proxy.py +0 -0
  645. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/_sandbox_runtime.py +0 -0
  646. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/agent_projection.py +0 -0
  647. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/agent_tool.py +0 -0
  648. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/MODULE_README.md +0 -0
  649. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/__init__.py +0 -0
  650. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/_coercion.py +0 -0
  651. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/browser_args.py +0 -0
  652. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/code_ingest_args.py +0 -0
  653. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/db_args.py +0 -0
  654. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/dictionary_args.py +0 -0
  655. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/dispatcher_args.py +0 -0
  656. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/fs_args.py +0 -0
  657. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/math_args.py +0 -0
  658. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/memory_args.py +0 -0
  659. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/rag_args.py +0 -0
  660. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/shell_args.py +0 -0
  661. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/text_args.py +0 -0
  662. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/user_secrets_args.py +0 -0
  663. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/arg_models/web_args.py +0 -0
  664. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/db_hints.py +0 -0
  665. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/declared.py +0 -0
  666. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/document_validation.py +0 -0
  667. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/dynamic_drain.py +0 -0
  668. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/error_remedy.py +0 -0
  669. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/execution_authorization.py +0 -0
  670. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/executor.py +0 -0
  671. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/external_handlers.py +0 -0
  672. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/external_mcp.py +0 -0
  673. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/fault.py +0 -0
  674. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/gates.py +0 -0
  675. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/guardrails.py +0 -0
  676. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/handle_tool_calls.py +0 -0
  677. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/image_outputs.py +0 -0
  678. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/MODULE_README.md +0 -0
  679. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/STORE_HTML_SERVICE.md +0 -0
  680. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/TOOLS_README.md +0 -0
  681. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/__init__.py +0 -0
  682. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/_kd6_sabotage.py +0 -0
  683. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/_summarize_helper.py +0 -0
  684. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/_web_read_caps.py +0 -0
  685. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/agent_call.py +0 -0
  686. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/browser_discovery.py +0 -0
  687. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/bundle_lister.py +0 -0
  688. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/cloud_files.py +0 -0
  689. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/code.py +0 -0
  690. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/code_ingest.py +0 -0
  691. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/ctx.py +0 -0
  692. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/ctx_write.py +0 -0
  693. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/database.py +0 -0
  694. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/datasets_tools.py +0 -0
  695. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/debug_traces_tools.py +0 -0
  696. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/desktop_discovery.py +0 -0
  697. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/dictionary.py +0 -0
  698. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/feedback_tools.py +0 -0
  699. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/filesystem.py +0 -0
  700. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/kind_authoring.py +0 -0
  701. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/kind_component.py +0 -0
  702. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/kind_instance.py +0 -0
  703. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/kind_shared.py +0 -0
  704. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/math.py +0 -0
  705. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/memory.py +0 -0
  706. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/news.py +0 -0
  707. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/notes.py +0 -0
  708. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/picklists_tools.py +0 -0
  709. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/questionnaire.py +0 -0
  710. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/rag.py +0 -0
  711. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/random_wheel.py +0 -0
  712. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/seo.py +0 -0
  713. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/shell.py +0 -0
  714. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/skill.py +0 -0
  715. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/tasks.py +0 -0
  716. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/text.py +0 -0
  717. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/tool_component.py +0 -0
  718. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/travel.py +0 -0
  719. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/user_secrets_tool.py +0 -0
  720. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/vfs_filesystem.py +0 -0
  721. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/vfs_shell.py +0 -0
  722. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/vsc.py +0 -0
  723. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/web.py +0 -0
  724. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/implementations/widgets.py +0 -0
  725. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kind_stamp.py +0 -0
  726. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/agent_tasks.py +0 -0
  727. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/cms.py +0 -0
  728. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/code_docs.py +0 -0
  729. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/context_tools.py +0 -0
  730. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/database_tools.py +0 -0
  731. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/execution.py +0 -0
  732. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/fact_check.py +0 -0
  733. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/filesystem.py +0 -0
  734. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/ide.py +0 -0
  735. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/kind_authoring.py +0 -0
  736. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/kind_components.py +0 -0
  737. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/kind_instances.py +0 -0
  738. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/media_forensics.py +0 -0
  739. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/personal_content.py +0 -0
  740. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/scope_tools.py +0 -0
  741. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/text_tools.py +0 -0
  742. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/tool_components.py +0 -0
  743. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/tool_loading.py +0 -0
  744. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/tool_traces.py +0 -0
  745. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/tooling.py +0 -0
  746. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/udt_content.py +0 -0
  747. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/user_secrets.py +0 -0
  748. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/value_store.py +0 -0
  749. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/weather.py +0 -0
  750. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/wheel.py +0 -0
  751. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/kinds/workbench.py +0 -0
  752. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/knobs.py +0 -0
  753. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/lifecycle.py +0 -0
  754. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/logger.py +0 -0
  755. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/mcp_sync.py +0 -0
  756. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/merge.py +0 -0
  757. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/models.py +0 -0
  758. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/output_caps.py +0 -0
  759. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/output_models/__init__.py +0 -0
  760. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/output_models/seo.py +0 -0
  761. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/output_overflow.py +0 -0
  762. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/registry.py +0 -0
  763. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/result_gate.py +0 -0
  764. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/specs.py +0 -0
  765. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/streaming.py +0 -0
  766. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/MODULE_README.md +0 -0
  767. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/mimic_model_tests.py +0 -0
  768. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/register_kind_tools.py +0 -0
  769. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/register_toolcomp_tools.py +0 -0
  770. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_agent_projection.py +0 -0
  771. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_client_kinds.py +0 -0
  772. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_code_ingest.py +0 -0
  773. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_content_ir_contracts.py +0 -0
  774. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_dispatch_validation.py +0 -0
  775. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_document_tool_result.py +0 -0
  776. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_dynamic_drain.py +0 -0
  777. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_external_mcp.py +0 -0
  778. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_fault.py +0 -0
  779. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_memory_org_stamp.py +0 -0
  780. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_output_caps.py +0 -0
  781. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_pending_injection_drain.py +0 -0
  782. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_preflight_executor_drop.py +0 -0
  783. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_random_wheel.py +0 -0
  784. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_research_web_caps.py +0 -0
  785. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_result_gate.py +0 -0
  786. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_screenshot_tool_result.py +0 -0
  787. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_seo_async_keyword_seam.py +0 -0
  788. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_seo_tools.py +0 -0
  789. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_surface_enforcement.py +0 -0
  790. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_tool_aliases.py +0 -0
  791. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_tool_component.py +0 -0
  792. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_tool_result_kinds.py +0 -0
  793. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_tool_specs.py +0 -0
  794. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_toolcomp_sample_caps.py +0 -0
  795. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_toolcomp_tools.py +0 -0
  796. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_validate.py +0 -0
  797. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_vfs_adapters.py +0 -0
  798. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_vfs_routing.py +0 -0
  799. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tests/test_wire_names.py +0 -0
  800. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tool_aliases.py +0 -0
  801. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tool_binding_db.py +0 -0
  802. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tool_def_db.py +0 -0
  803. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tool_executor_db.py +0 -0
  804. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/tool_source.py +0 -0
  805. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/turn_ledger.py +0 -0
  806. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/validate.py +0 -0
  807. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/validation/__init__.py +0 -0
  808. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/validation/engine.py +0 -0
  809. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/validation/runner.py +0 -0
  810. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/validation/schema.py +0 -0
  811. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/EXTRACTION.md +0 -0
  812. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/README.md +0 -0
  813. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/__init__.py +0 -0
  814. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/adapters/__init__.py +0 -0
  815. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/backends/__init__.py +0 -0
  816. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/backends/memory.py +0 -0
  817. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/backends/postgres.py +0 -0
  818. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/cache.py +0 -0
  819. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/__init__.py +0 -0
  820. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/awk.py +0 -0
  821. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/base.py +0 -0
  822. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/cat.py +0 -0
  823. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/cd.py +0 -0
  824. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/chmod.py +0 -0
  825. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/chown.py +0 -0
  826. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/cp.py +0 -0
  827. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/cut.py +0 -0
  828. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/df.py +0 -0
  829. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/diff.py +0 -0
  830. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/du.py +0 -0
  831. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/echo.py +0 -0
  832. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/env.py +0 -0
  833. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/file.py +0 -0
  834. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/find.py +0 -0
  835. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/grep.py +0 -0
  836. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/gzip.py +0 -0
  837. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/head.py +0 -0
  838. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/ln.py +0 -0
  839. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/ls.py +0 -0
  840. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/mkdir.py +0 -0
  841. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/mv.py +0 -0
  842. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/patch.py +0 -0
  843. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/printf.py +0 -0
  844. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/ps.py +0 -0
  845. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/pwd.py +0 -0
  846. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/read_cmd.py +0 -0
  847. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/readlink.py +0 -0
  848. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/realpath.py +0 -0
  849. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/registry.py +0 -0
  850. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/rm.py +0 -0
  851. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/rmdir.py +0 -0
  852. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/runner.py +0 -0
  853. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/sed.py +0 -0
  854. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/set_cmd.py +0 -0
  855. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/sort.py +0 -0
  856. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/stat.py +0 -0
  857. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/stubs.py +0 -0
  858. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/tail.py +0 -0
  859. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/tar.py +0 -0
  860. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/test_cmd.py +0 -0
  861. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/touch.py +0 -0
  862. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/tr.py +0 -0
  863. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/tree.py +0 -0
  864. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/type.py +0 -0
  865. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/uniq.py +0 -0
  866. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/unzip.py +0 -0
  867. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/wc.py +0 -0
  868. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/which.py +0 -0
  869. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/commands/xargs.py +0 -0
  870. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/core.py +0 -0
  871. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/errors.py +0 -0
  872. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/__init__.py +0 -0
  873. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/cat.py +0 -0
  874. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/claude_tool.py +0 -0
  875. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/coreutils_errors.py +0 -0
  876. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/dates.py +0 -0
  877. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/grep.py +0 -0
  878. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/ls.py +0 -0
  879. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/sizes.py +0 -0
  880. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/stat.py +0 -0
  881. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/mimicry/traceback.py +0 -0
  882. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/paths.py +0 -0
  883. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/__init__.py +0 -0
  884. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/ast.py +0 -0
  885. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/env.py +0 -0
  886. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/executor.py +0 -0
  887. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/expansion.py +0 -0
  888. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/heredoc.py +0 -0
  889. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/lexer.py +0 -0
  890. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/parser.py +0 -0
  891. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/shell/runner.py +0 -0
  892. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs/workspace.py +0 -0
  893. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/tools/vfs_routing.py +0 -0
  894. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/utils/__init__.py +0 -0
  895. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai/utils/cache.py +0 -0
  896. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/matrx_ai_implementation_master_plan.md +0 -0
  897. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/contract_closure.py +0 -0
  898. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/dataclass_api_inventory.py +0 -0
  899. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/emit_contract_schema.py +0 -0
  900. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/engine_boundary_census.py +0 -0
  901. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/export_conformance_corpus.py +0 -0
  902. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/release.sh +0 -0
  903. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/scripts/verify_kind_instance_actor_artifact.py +0 -0
  904. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/browser_handoff_fakes.py +0 -0
  905. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/conftest.py +0 -0
  906. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_catalog_no_db.py +0 -0
  907. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_client_host_validate.py +0 -0
  908. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_control_rules_payload.py +0 -0
  909. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_credential_resolver_seam.py +0 -0
  910. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_execute_with_store.py +0 -0
  911. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_execution_agent_source.py +0 -0
  912. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_import_surface.py +0 -0
  913. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_key_resolver.py +0 -0
  914. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_ledger_truth_survives_persistence.py +0 -0
  915. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_lifecycle_no_db.py +0 -0
  916. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_mandate_source.py +0 -0
  917. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_no_db_streaming_with_tool.py +0 -0
  918. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_pricing_client_host.py +0 -0
  919. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_row_schema_fidelity.py +0 -0
  920. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_source_kind_collision.py +0 -0
  921. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/client_host/test_tool_source.py +0 -0
  922. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/coding_sessions/test_models.py +0 -0
  923. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_browser_controlled_by_human.json +0 -0
  924. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_configuration.json +0 -0
  925. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_not_found_legacy.json +0 -0
  926. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_profile_access_denied.json +0 -0
  927. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_profile_busy.json +0 -0
  928. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_profile_not_found.json +0 -0
  929. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/error_stale_run.json +0 -0
  930. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/get_element_ok.json +0 -0
  931. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/human_required_captcha.json +0 -0
  932. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/human_required_credential_missing.json +0 -0
  933. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/human_required_mfa.json +0 -0
  934. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/navigate_ok_default_profile.json +0 -0
  935. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/navigate_ok_named_profile.json +0 -0
  936. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/navigate_ok_transient_legacy.json +0 -0
  937. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/reopened_for_handoff.json +0 -0
  938. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/resume_page_inventory.json +0 -0
  939. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/resume_page_inventory_truncated.json +0 -0
  940. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/screenshot_media_ref_error.json +0 -0
  941. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/browser_s6/screenshot_ok_media_ref.json +0 -0
  942. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/anthropic_adaptive.json +0 -0
  943. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/anthropic_adaptive__v2.json +0 -0
  944. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/anthropic_standard.json +0 -0
  945. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/cerebras_reasoning.json +0 -0
  946. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/cerebras_reasoning_toggle.json +0 -0
  947. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/cerebras_standard.json +0 -0
  948. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/google_thinking.json +0 -0
  949. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/google_thinking_3__flash.json +0 -0
  950. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/google_thinking_3__pro.json +0 -0
  951. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/google_thinking__v2.json +0 -0
  952. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/groq_reasoning.json +0 -0
  953. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/groq_reasoning_toggle.json +0 -0
  954. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/groq_standard.json +0 -0
  955. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/groq_standard__v2.json +0 -0
  956. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/huggingface_standard.json +0 -0
  957. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_reasoning.json +0 -0
  958. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_reasoning_minimal.json +0 -0
  959. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_reasoning_xhigh.json +0 -0
  960. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_reasoning_xhigh__v2.json +0 -0
  961. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_standard.json +0 -0
  962. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/openai_standard__v2.json +0 -0
  963. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/together_text_standard.json +0 -0
  964. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/xai_reasoning.json +0 -0
  965. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/chat_param_golden/xai_standard.json +0 -0
  966. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/anthropic_pdf_doc.json +0 -0
  967. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/anthropic_search_result.json +0 -0
  968. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/anthropic_stream_events.json +0 -0
  969. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/anthropic_text_doc.json +0 -0
  970. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/gemini_grounding.json +0 -0
  971. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/citations/openai_web_search_annotations.json +0 -0
  972. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/constraint-eval-fixture.json +0 -0
  973. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/fingerprint_vectors.json +0 -0
  974. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/kind_schemas_sample.json +0 -0
  975. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/live_agent_variables.json +0 -0
  976. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/google_image.json +0 -0
  977. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/google_image__v2.json +0 -0
  978. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/google_video.json +0 -0
  979. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/openai_image.json +0 -0
  980. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/openai_image__v2.json +0 -0
  981. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/openai_image__v3.json +0 -0
  982. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/openai_video.json +0 -0
  983. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image.json +0 -0
  984. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v2.json +0 -0
  985. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v3.json +0 -0
  986. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v4.json +0 -0
  987. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v5.json +0 -0
  988. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v6.json +0 -0
  989. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_image__v7.json +0 -0
  990. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_video.json +0 -0
  991. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_video__v2.json +0 -0
  992. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_video__v3.json +0 -0
  993. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_video__v4.json +0 -0
  994. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/replicate_video__v5.json +0 -0
  995. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image.json +0 -0
  996. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image__v2.json +0 -0
  997. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image__v3.json +0 -0
  998. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image__v4.json +0 -0
  999. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image__v5.json +0 -0
  1000. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_image__v6.json +0 -0
  1001. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_video.json +0 -0
  1002. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_video__v2.json +0 -0
  1003. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_video__v3.json +0 -0
  1004. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_video__v4.json +0 -0
  1005. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/together_video__v5.json +0 -0
  1006. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/xai_image.json +0 -0
  1007. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/media_family_rules/xai_video.json +0 -0
  1008. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/refresh_kind_schemas.py +0 -0
  1009. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/w59_prescriber_outputs.json +0 -0
  1010. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/fixtures/wire_replay/gemini_tool_turn_snapshot.json +0 -0
  1011. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/memory/test_storage_identity.py +0 -0
  1012. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/memory/test_token_count_isolation.py +0 -0
  1013. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/__init__.py +0 -0
  1014. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/01_mixed_prose_and_blocks.md +0 -0
  1015. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/02_nested_xml_and_attributes.md +0 -0
  1016. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/03_fences_and_languages.md +0 -0
  1017. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/04_json_patterns.md +0 -0
  1018. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/05_malformed_and_partial.md +0 -0
  1019. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/06_dividers_media_tree.md +0 -0
  1020. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/07_unrecognized_xml.md +0 -0
  1021. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/08_embedded_kind_containers.md +0 -0
  1022. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/fixtures/variable-kind-bridge.generated.json +0 -0
  1023. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/harness.py +0 -0
  1024. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/test_partial_kind_fixture.py +0 -0
  1025. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/test_partial_value_parity.py +0 -0
  1026. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/test_ts_parser_parity.py +0 -0
  1027. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/parity/test_variable_kind_fixture.py +0 -0
  1028. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/__init__.py +0 -0
  1029. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/conftest.py +0 -0
  1030. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_chat_door_declares_actor.py +0 -0
  1031. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_conversation_visibility.py +0 -0
  1032. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_coordinator.py +0 -0
  1033. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_postgres_text.py +0 -0
  1034. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_registry_policy.py +0 -0
  1035. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_replay.py +0 -0
  1036. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_replay_permanent_quarantine.py +0 -0
  1037. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_replay_permanent_signature_siblings.py +0 -0
  1038. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/persistence/test_replay_policy.py +0 -0
  1039. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/plans/__init__.py +0 -0
  1040. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/plans/test_plan_compiler.py +0 -0
  1041. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/plans/test_plan_engine_mock.py +0 -0
  1042. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/plans/test_plan_types.py +0 -0
  1043. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/plans/test_plan_validation_gate.py +0 -0
  1044. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/providers/test_cohere_rerank.py +0 -0
  1045. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/providers/test_transport_truncation_is_retryable.py +0 -0
  1046. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/__init__.py +0 -0
  1047. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/fixtures/content_block_shapes.json +0 -0
  1048. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/fixtures/message_shapes.json +0 -0
  1049. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_code_execution_roundtrip.py +0 -0
  1050. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_content_block_parity.py +0 -0
  1051. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_contract_closure.py +0 -0
  1052. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_contract_schema.py +0 -0
  1053. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_dataclass_api_inventory.py +0 -0
  1054. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_extra_parity.py +0 -0
  1055. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_media_block_parity.py +0 -0
  1056. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_s1_corpus_replay.py +0 -0
  1057. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_s1_message_and_response_replay.py +0 -0
  1058. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_structured_input_parity.py +0 -0
  1059. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_token_usage_parity.py +0 -0
  1060. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unexpected_keys.py +0 -0
  1061. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unified_config_parity.py +0 -0
  1062. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unified_config_preconditions.py +0 -0
  1063. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unified_content_union.py +0 -0
  1064. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unified_message_parity.py +0 -0
  1065. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/pydantic_migration/test_unified_response_parity.py +0 -0
  1066. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_adversarial_content_contract.py +0 -0
  1067. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_adversarial_prompt_door.py +0 -0
  1068. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_action_input.py +0 -0
  1069. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_call_history.py +0 -0
  1070. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_call_result_mode.py +0 -0
  1071. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_executor_structured_output.py +0 -0
  1072. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_handoff.py +0 -0
  1073. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_input_kind_gate.py +0 -0
  1074. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_produce_kind_binding.py +0 -0
  1075. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_recursion_depth.py +0 -0
  1076. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_result_mode.py +0 -0
  1077. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_run_cost_settlement.py +0 -0
  1078. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_start_mandate.py +0 -0
  1079. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_tool_projection_args.py +0 -0
  1080. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_agent_variable_defaults.py +0 -0
  1081. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_anthropic_effort_ceiling.py +0 -0
  1082. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_anthropic_hosted_search.py +0 -0
  1083. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_anthropic_reasoning_structured_output.py +0 -0
  1084. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_anthropic_stream_event_loop.py +0 -0
  1085. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_anthropic_terminal_assistant_guard.py +0 -0
  1086. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_arg_error_hints.py +0 -0
  1087. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_assignment_empty_answer_refusal.py +0 -0
  1088. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_auto_assignment.py +0 -0
  1089. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_batch_dispatch.py +0 -0
  1090. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_block_envelope.py +0 -0
  1091. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_block_envelope_families.py +0 -0
  1092. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_block_registry_loader.py +0 -0
  1093. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_bound_filesystem_adapter.py +0 -0
  1094. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_broadcast_agent_result_binding.py +0 -0
  1095. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_browser_args_forbid.py +0 -0
  1096. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_browser_handoff_park_resume.py +0 -0
  1097. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_browser_s6_fixtures.py +0 -0
  1098. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_browser_s6_outcomes.py +0 -0
  1099. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_cache_state_persistence_scope.py +0 -0
  1100. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_capability_vocabulary.py +0 -0
  1101. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_catalog_controls_supported_false_beats_processor.py +0 -0
  1102. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_catalog_media_processors_parity.py +0 -0
  1103. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_catalog_model_lifecycle.py +0 -0
  1104. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_catalog_rule_vocabulary.py +0 -0
  1105. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_catalog_tts_stt.py +0 -0
  1106. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_change_claim_gate.py +0 -0
  1107. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_chat_param_golden.py +0 -0
  1108. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_child_source_context.py +0 -0
  1109. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_citation_emit.py +0 -0
  1110. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_citations_normalization.py +0 -0
  1111. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_citations_search_result_wire.py +0 -0
  1112. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_code_execute_python_arguments.py +0 -0
  1113. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_code_store_html_async.py +0 -0
  1114. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_component_source_gate_parity.py +0 -0
  1115. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_config_hydration_sanitization.py +0 -0
  1116. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_constraint_eval_fixture.py +0 -0
  1117. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_content_deserializer_parity.py +0 -0
  1118. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_context_action_recovery.py +0 -0
  1119. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_context_engine_multi_scope_cells.py +0 -0
  1120. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_context_patch_failure_capture.py +0 -0
  1121. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_context_trim_active_loop.py +0 -0
  1122. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_control_token_persistence.py +0 -0
  1123. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_adoption.py +0 -0
  1124. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_history_fence.py +0 -0
  1125. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_integrity_capture.py +0 -0
  1126. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_labeler_provider.py +0 -0
  1127. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_labeler_rendezvous.py +0 -0
  1128. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_memo_scope.py +0 -0
  1129. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_persistence.py +0 -0
  1130. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_provider.py +0 -0
  1131. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_rebuild_hydration.py +0 -0
  1132. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_resolver_responder.py +0 -0
  1133. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_response_format_transition.py +0 -0
  1134. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_runtime.py +0 -0
  1135. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_step_title.py +0 -0
  1136. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_conversation_title_backfill.py +0 -0
  1137. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_cross_family_blast.py +0 -0
  1138. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_cross_family_blast_media.py +0 -0
  1139. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_ctx_key_reconciliation.py +0 -0
  1140. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_ctx_known_missing_key.py +0 -0
  1141. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_ctx_summary_fallback.py +0 -0
  1142. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_data_ref_allowlist.py +0 -0
  1143. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_dataset_output_caps.py +0 -0
  1144. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_db_hints.py +0 -0
  1145. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_delegated_arg_recovery.py +0 -0
  1146. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_delegated_schema_contract.py +0 -0
  1147. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_delegation_authority.py +0 -0
  1148. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_desktop_discovery_contract.py +0 -0
  1149. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_document_output_ceiling.py +0 -0
  1150. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_document_output_ceiling_at_send.py +0 -0
  1151. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_document_text_serialization.py +0 -0
  1152. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_dropped_setting_warning.py +0 -0
  1153. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_durable_run_preflight.py +0 -0
  1154. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_elevenlabs_audio_streaming.py +0 -0
  1155. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_entity_input_context.py +0 -0
  1156. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_ephemeral_message_lease.py +0 -0
  1157. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_equivalence_law.py +0 -0
  1158. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_executor_cancel_persist.py +0 -0
  1159. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_executor_user_message_reservation.py +0 -0
  1160. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_external_mcp_streaming.py +0 -0
  1161. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_failed_turn_thread_text.py +0 -0
  1162. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_fallback_http_code_boundaries.py +0 -0
  1163. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_fastino_extraction.py +0 -0
  1164. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_file_handles.py +0 -0
  1165. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_file_search_match_ripgrep_rows.py +0 -0
  1166. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_fingerprint_parity.py +0 -0
  1167. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_format_scraped_content.py +0 -0
  1168. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_function_calling_gate.py +0 -0
  1169. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_generic_openai_registry.py +0 -0
  1170. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_generic_openai_streaming_usage.py +0 -0
  1171. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_generic_openai_translator.py +0 -0
  1172. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_interactions.py +0 -0
  1173. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_safety_settings.py +0 -0
  1174. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_search_with_tools.py +0 -0
  1175. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_specialized.py +0 -0
  1176. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_tool_schema_items.py +0 -0
  1177. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_google_wire_replay_payload.py +0 -0
  1178. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_graph_node_normalization_offload.py +0 -0
  1179. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_graph_node_registration.py +0 -0
  1180. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_graph_nodes_structured_output.py +0 -0
  1181. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_grooming_stubs.py +0 -0
  1182. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_guardrails_dedupe_exempt.py +0 -0
  1183. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_guest_registry.py +0 -0
  1184. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_history_hydration.py +0 -0
  1185. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_host_authored_user_turns.py +0 -0
  1186. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_host_seam_isolation.py +0 -0
  1187. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_idless_tool_call_guard.py +0 -0
  1188. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_image_ref_result_content.py +0 -0
  1189. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_import_no_config.py +0 -0
  1190. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_infer_discriminator.py +0 -0
  1191. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_injection_catalog.py +0 -0
  1192. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_interrupt_tail_hiding.py +0 -0
  1193. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_issue_capture_context.py +0 -0
  1194. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_iteration_assistant_announcement.py +0 -0
  1195. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kind_authoring_tools.py +0 -0
  1196. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kind_discriminator_first.py +0 -0
  1197. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kind_instance_actor_artifact.py +0 -0
  1198. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kind_instance_tools.py +0 -0
  1199. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kind_surface_bootstrap.py +0 -0
  1200. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_kinds_response_format.py +0 -0
  1201. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_knowledge_search_relevance_report.py +0 -0
  1202. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_llm_stream_text.py +0 -0
  1203. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_llm_to_pydantic_streaming.py +0 -0
  1204. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_log_delegated_runtime_pin.py +0 -0
  1205. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_loop_guard_reason_travels.py +0 -0
  1206. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mandate_carrier_guard.py +0 -0
  1207. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mandate_offer_rename.py +0 -0
  1208. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mandates_runtime_honesty.py +0 -0
  1209. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mcp_discovered_tool_purpose_boundary.py +0 -0
  1210. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mcp_lister_user_auth_discovery.py +0 -0
  1211. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_mcp_sync.py +0 -0
  1212. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_billing_basis.py +0 -0
  1213. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_block_carries_visibility.py +0 -0
  1214. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_fallback.py +0 -0
  1215. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_history_single_locator.py +0 -0
  1216. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_identity_consumers.py +0 -0
  1217. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_kind_reconciliation.py +0 -0
  1218. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_node_output_durability.py +0 -0
  1219. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_node_output_kinds.py +0 -0
  1220. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_output_durability.py +0 -0
  1221. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_media_visibility_policy.py +0 -0
  1222. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_member_depth_warning.py +0 -0
  1223. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_memory_wire_contract.py +0 -0
  1224. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_message_part_wire_contract.py +0 -0
  1225. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_message_position_contract.py +0 -0
  1226. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_minor_image_safety.py +0 -0
  1227. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_missing_provider_usage_capture.py +0 -0
  1228. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_model_authoring_resolution.py +0 -0
  1229. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_model_listing.py +0 -0
  1230. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_model_visibility.py +0 -0
  1231. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_moonshot_error_handling.py +0 -0
  1232. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_named_agent_mandate_definition.py +0 -0
  1233. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_nested_agent_stream_mutes.py +0 -0
  1234. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_no_inline_agent_system_prompts.py +0 -0
  1235. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_no_off_funnel_anthropic.py +0 -0
  1236. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_no_traceback_destroying_tool_errors.py +0 -0
  1237. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_offering_pin.py +0 -0
  1238. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_chat_tool_result_image.py +0 -0
  1239. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_config_converter_boundary.py +0 -0
  1240. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_responses_foreign_tool_ids.py +0 -0
  1241. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_stream_event_loop.py +0 -0
  1242. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_stream_terminal.py +0 -0
  1243. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_openai_tool_call_message_adjacency.py +0 -0
  1244. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_organization_system_actor.py +0 -0
  1245. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_orphan_tool_use_repair.py +0 -0
  1246. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_output_caps_list.py +0 -0
  1247. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_output_ceiling_classifier.py +0 -0
  1248. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_overload_reroute.py +0 -0
  1249. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_paid_completion_guards.py +0 -0
  1250. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_parent_lineage_capture.py +0 -0
  1251. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_parse_llm_json_node.py +0 -0
  1252. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_persistence_coordinator_ownership.py +0 -0
  1253. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_persistence_error_text.py +0 -0
  1254. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_cast_preview.py +0 -0
  1255. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_heartbeat.py +0 -0
  1256. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_image_provider_distribution.py +0 -0
  1257. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_media_caps.py +0 -0
  1258. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_official_video_media_resolution.py +0 -0
  1259. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_post_prep.py +0 -0
  1260. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_script_usage.py +0 -0
  1261. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_usage_resume.py +0 -0
  1262. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_podcast_voice_gender.py +0 -0
  1263. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_pricing_drift_routing.py +0 -0
  1264. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_pricing_exact_match_only.py +0 -0
  1265. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_programmatic_agent_prepare_hook.py +0 -0
  1266. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_prompt_ai_view.py +0 -0
  1267. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_prompt_caching.py +0 -0
  1268. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_admission.py +0 -0
  1269. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_billed_usage_capture.py +0 -0
  1270. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_client_event_loop.py +0 -0
  1271. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_error_ownership.py +0 -0
  1272. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_id_never_message_pk.py +0 -0
  1273. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_io_capabilities.py +0 -0
  1274. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_outage_seam.py +0 -0
  1275. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_overload_retry_policy.py +0 -0
  1276. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_reasoning_wrapper_concurrency.py +0 -0
  1277. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_reroute_visibility.py +0 -0
  1278. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_provider_tool_dedup.py +0 -0
  1279. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_reasoning_persistence.py +0 -0
  1280. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_reasoning_state_signal.py +0 -0
  1281. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_request_snapshot_assistant_text_full.py +0 -0
  1282. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_request_snapshot_json_safe.py +0 -0
  1283. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_request_snapshot_provider_stamp.py +0 -0
  1284. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_request_snapshot_store_gate.py +0 -0
  1285. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_request_summary_parity.py +0 -0
  1286. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_required_members.py +0 -0
  1287. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_resolved_capabilities.py +0 -0
  1288. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_resource_ref_normalization.py +0 -0
  1289. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_response_parser_repair.py +0 -0
  1290. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sampling_param_gating.py +0 -0
  1291. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sandbox_token_cache_isolation.py +0 -0
  1292. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sandbox_transient_outage_retry.py +0 -0
  1293. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_schema_lint.py +0 -0
  1294. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_schema_oneof_rewrite.py +0 -0
  1295. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_schema_rules_const_rewrite.py +0 -0
  1296. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_schema_rules_kind_first.py +0 -0
  1297. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sdk_drift_guard.py +0 -0
  1298. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sdk_kwargs_guard_census.py +0 -0
  1299. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_send_boundary_cache_gate.py +0 -0
  1300. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_send_boundary_guard.py +0 -0
  1301. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_send_boundary_preflight.py +0 -0
  1302. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_skill_ingest_flat_guard.py +0 -0
  1303. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_skill_provider_scope.py +0 -0
  1304. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_speech_model_chat_guard.py +0 -0
  1305. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_arg_coercion.py +0 -0
  1306. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_catalog_write_hook.py +0 -0
  1307. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_error_classification.py +0 -0
  1308. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_match_filters.py +0 -0
  1309. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_schema_aware_stamp.py +0 -0
  1310. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_sql_write_match_lists.py +0 -0
  1311. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_standing_output_contract_dispatch.py +0 -0
  1312. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_structured_info_parser.py +0 -0
  1313. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_structured_input_tool_injection.py +0 -0
  1314. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_structured_output_empty_refusal.py +0 -0
  1315. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_structured_output_schema_strip.py +0 -0
  1316. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_structured_sql_query.py +0 -0
  1317. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_success_trace_evidence.py +0 -0
  1318. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_summarize_helper.py +0 -0
  1319. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_supersede_failed_turns.py +0 -0
  1320. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_system_instruction_persist_roundtrip.py +0 -0
  1321. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_system_prompt_freeze.py +0 -0
  1322. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_system_run_cost_only_persistence.py +0 -0
  1323. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_terminal_provider_failure_capture.py +0 -0
  1324. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_terminal_response_guard.py +0 -0
  1325. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_thinking_cross_provider_anthropic.py +0 -0
  1326. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_thinking_cross_provider_google.py +0 -0
  1327. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_together_image_pacing.py +0 -0
  1328. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_together_reasoning_params.py +0 -0
  1329. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_blob_media_identity.py +0 -0
  1330. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_call_backfill_cache.py +0 -0
  1331. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_call_details_pairing.py +0 -0
  1332. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_call_stats_key.py +0 -0
  1333. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_completion_inline_persist.py +0 -0
  1334. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_dispatch_provenance_and_ceiling.py +0 -0
  1335. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_error_from_exception.py +0 -0
  1336. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_id_edge_lazy_load.py +0 -0
  1337. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_ledger_truth_in_structured_output.py +0 -0
  1338. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_logger_standalone_ownership.py +0 -0
  1339. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_logger_user_request_gate.py +0 -0
  1340. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_registry_annotations.py +0 -0
  1341. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_registry_extension_import.py +0 -0
  1342. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_registry_reload.py +0 -0
  1343. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_result_dedup.py +0 -0
  1344. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_result_error_is_persisted.py +0 -0
  1345. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_result_guard_capture.py +0 -0
  1346. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_result_json_boundary.py +0 -0
  1347. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_result_validator.py +0 -0
  1348. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_structured_output_conflict.py +0 -0
  1349. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_trace_parent_ordering.py +0 -0
  1350. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_validation_dispatch.py +0 -0
  1351. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_validation_enum.py +0 -0
  1352. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_validation_runner.py +0 -0
  1353. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tool_validation_unbound_ownership.py +0 -0
  1354. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_toolcomp_get_context_workflow.py +0 -0
  1355. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_toolcomp_versioning.py +0 -0
  1356. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_trace_tags.py +0 -0
  1357. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_translator_base_request.py +0 -0
  1358. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_translator_golden.py +0 -0
  1359. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_trim_summary_per_iteration.py +0 -0
  1360. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_truncated_response_capture.py +0 -0
  1361. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_truncation_notice_context.py +0 -0
  1362. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tts_speaker_alignment.py +0 -0
  1363. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tts_speaker_gender_adoption.py +0 -0
  1364. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_tts_structural_keys_stripped.py +0 -0
  1365. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_unknown_tool_hint.py +0 -0
  1366. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_unpriced_cost_never_silent_zero.py +0 -0
  1367. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_user_request_memo_scope.py +0 -0
  1368. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_variable_kinds_bridge.py +0 -0
  1369. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_variable_mapping.py +0 -0
  1370. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_variable_schema_fidelity.py +0 -0
  1371. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_web_read_caps.py +0 -0
  1372. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_web_search_billing.py +0 -0
  1373. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_web_search_capability_gate.py +0 -0
  1374. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_wire_swap_budget.py +0 -0
  1375. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_wire_swap_role_gating.py +0 -0
  1376. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_workbook_document_input.py +0 -0
  1377. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_workflow_step_holder.py +0 -0
  1378. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_write_governed_schemas.py +0 -0
  1379. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_xai_native_translator.py +0 -0
  1380. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/test_youtube_url_normalization.py +0 -0
  1381. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/__init__.py +0 -0
  1382. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/__init__.py +0 -0
  1383. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/conftest.py +0 -0
  1384. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/fixtures.py +0 -0
  1385. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/harness.py +0 -0
  1386. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_fidelity_cat.py +0 -0
  1387. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_fidelity_errors.py +0 -0
  1388. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_fidelity_find.py +0 -0
  1389. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_fidelity_grep.py +0 -0
  1390. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_fidelity_ls.py +0 -0
  1391. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/fidelity/test_harness_routing.py +0 -0
  1392. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cache.py +0 -0
  1393. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_awk.py +0 -0
  1394. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_cat.py +0 -0
  1395. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_cd.py +0 -0
  1396. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_chmod.py +0 -0
  1397. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_chown.py +0 -0
  1398. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_cp.py +0 -0
  1399. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_cut.py +0 -0
  1400. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_df.py +0 -0
  1401. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_diff.py +0 -0
  1402. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_du.py +0 -0
  1403. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_echo.py +0 -0
  1404. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_env.py +0 -0
  1405. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_file.py +0 -0
  1406. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_find.py +0 -0
  1407. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_grep.py +0 -0
  1408. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_gzip.py +0 -0
  1409. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_head.py +0 -0
  1410. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_ln.py +0 -0
  1411. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_ls.py +0 -0
  1412. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_mkdir.py +0 -0
  1413. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_mv.py +0 -0
  1414. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_patch.py +0 -0
  1415. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_printf.py +0 -0
  1416. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_ps.py +0 -0
  1417. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_pwd.py +0 -0
  1418. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_read.py +0 -0
  1419. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_readlink.py +0 -0
  1420. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_realpath.py +0 -0
  1421. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_rm.py +0 -0
  1422. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_rmdir.py +0 -0
  1423. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_sed.py +0 -0
  1424. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_set.py +0 -0
  1425. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_sort.py +0 -0
  1426. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_stat.py +0 -0
  1427. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_stubs.py +0 -0
  1428. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_tail.py +0 -0
  1429. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_tar.py +0 -0
  1430. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_test.py +0 -0
  1431. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_touch.py +0 -0
  1432. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_tr.py +0 -0
  1433. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_tree.py +0 -0
  1434. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_type.py +0 -0
  1435. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_uniq.py +0 -0
  1436. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_unzip.py +0 -0
  1437. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_wc.py +0 -0
  1438. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_which.py +0 -0
  1439. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_cmd_xargs.py +0 -0
  1440. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_command_base.py +0 -0
  1441. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_core.py +0 -0
  1442. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_mimicry.py +0 -0
  1443. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_package_isolation.py +0 -0
  1444. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_paths.py +0 -0
  1445. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_registry_isolation_contract.py +0 -0
  1446. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_shell_executor.py +0 -0
  1447. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_shell_expansion.py +0 -0
  1448. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_shell_lexer.py +0 -0
  1449. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_shell_parser.py +0 -0
  1450. {matrx_ai-0.5.332 → matrx_ai-0.5.334}/tests/vfs/test_workspace_identity_no_silent_fallback.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: matrx-ai
3
- Version: 0.5.332
3
+ Version: 0.5.334
4
4
  Summary: Unified multi-provider AI client, orchestration, and tool system
5
5
  Project-URL: Homepage, https://github.com/AI-Matrix-Engine/aidream-current
6
6
  Project-URL: Repository, https://github.com/AI-Matrix-Engine/aidream-current
@@ -32,12 +32,12 @@ Requires-Dist: groq>=1.2.0
32
32
  Requires-Dist: httpx
33
33
  Requires-Dist: json-repair
34
34
  Requires-Dist: matrx-assignment>=0.1.21
35
- Requires-Dist: matrx-connect>=0.1.110
36
- Requires-Dist: matrx-files>=0.2.172
37
- Requires-Dist: matrx-graph>=0.2.170
35
+ Requires-Dist: matrx-connect>=0.1.111
36
+ Requires-Dist: matrx-files>=0.2.173
37
+ Requires-Dist: matrx-graph>=0.2.171
38
38
  Requires-Dist: matrx-runtime>=0.0.104
39
- Requires-Dist: matrx-scraper[browser]>=0.2.218
40
- Requires-Dist: matrx-utils>=2.0.43
39
+ Requires-Dist: matrx-scraper[browser]>=0.2.220
40
+ Requires-Dist: matrx-utils>=2.0.44
41
41
  Requires-Dist: numpy>=2.0
42
42
  Requires-Dist: openai>=2.35.1
43
43
  Requires-Dist: pathspec>=1.0.0
@@ -70,6 +70,7 @@ from matrx_ai.tools.kinds.execution import ( # noqa: E402
70
70
  ShellExecution,
71
71
  )
72
72
  from matrx_ai.tools.kinds.fact_check import FactCheckReviewSet # noqa: E402
73
+ from matrx_ai.tools.kinds.google import GOOGLE_TOOL_RESULT_KINDS # noqa: E402
73
74
  from matrx_ai.tools.kinds.filesystem import ( # noqa: E402
74
75
  DirectoryCreateResult,
75
76
  DirectoryListing,
@@ -251,6 +252,12 @@ TOOL_RESULT_KINDS: dict[str, type[KindModel]] = {
251
252
  # image verification pair — ONE kind each, shared with the workflow nodes
252
253
  # web.google.reverse_image_search / image.metadata.read (no twin slugs).
253
254
  **MEDIA_FORENSICS_TOOL_RESULT_KINDS,
255
+ # the two Google tools (2026-09-17, google-native PLAN §5.8). ONE union kind
256
+ # each — google_workspace_result was a PLACEHOLDER declared beside the other
257
+ # agent-ops shapes and bound to nothing, so the tool it describes stamped no
258
+ # __kind at all; google_marketing_result is new with its tool. The twelve-
259
+ # action `google_read` these two replaced had no kind and no row here.
260
+ **GOOGLE_TOOL_RESULT_KINDS,
254
261
  # scope_system (aidream/services/scope_system/tools.py): render actions
255
262
  # reshaped from a bare string into `context` (a scalar cannot carry __kind).
256
263
  "scope_system": ScopeSystemResult,
@@ -208,49 +208,6 @@ class OfficeToolResult(KindModel):
208
208
  __all__ = ["SelfPromptResult", "RulebookToolResult", "ResearchRunState", "OfficeToolResult"]
209
209
 
210
210
 
211
- @kind(
212
- "google_workspace_result",
213
- label="Google Workspace Result",
214
- family="google_workspace",
215
- example={"created": True, "file_id": "1AbC", "name": "Notes", "kind": "google_document", "open_in_google": "https://docs.google.com/…"},
216
- # PLACEHOLDER — list_resources/create/read/append (Docs), read/write
217
- # (Sheets) and prepare_email (which NEVER sends) receipts.
218
- maturity="placeholder",
219
- )
220
- class GoogleWorkspaceResult(KindModel):
221
- #: `list_resources`.
222
- resources: list[dict] | None = None
223
- count: int | None = None
224
- note: str | None = None
225
- #: create receipts.
226
- created: bool | None = None
227
- file_id: str | None = None
228
- name: str | None = None
229
- kind: str | None = None
230
- open_in_google: str | None = None
231
- #: document read/append window.
232
- title: str | None = None
233
- text: str | None = None
234
- total_chars: int | None = None
235
- showing_chars: str | None = None
236
- has_more: bool | None = None
237
- next_start_char: int | None = None
238
- appended: bool | None = None
239
- #: sheet read/write window.
240
- tab: str | None = None
241
- range: str | None = None
242
- rows: list[list[JsonValue]] | None = None
243
- row_count: int | None = None
244
- sheet_size: str | None = None
245
- next_range_a1: str | None = None
246
- written: bool | None = None
247
- #: `prepare_email` — a draft for the HUMAN send step; never sent here.
248
- sent: bool | None = None
249
- draft: dict | None = None
250
- from_email: str | None = None
251
- next_step: str | None = None
252
-
253
-
254
211
  @kind(
255
212
  "tool_result_page",
256
213
  label="Tool Result Page",
@@ -0,0 +1,230 @@
1
+ """Kinds for the two Google agent tools — ``google_workspace`` · ``google_marketing``.
2
+
3
+ ONE union kind per tool, the ``cms_*`` / ``topical_map`` precedent: an
4
+ action-dispatched tool returns one shape whose branch-only keys are optional,
5
+ and every branch validates against it before the result leaves the tool
6
+ (a key the kind does not declare is a TOOL DEFECT, never an untyped
7
+ pass-through).
8
+
9
+ * ``google_workspace_result`` — Docs, Sheets, the prepared (never sent) email,
10
+ and the read/import halves of Calendar, Contacts and Tasks. Promoted from the
11
+ placeholder tier on 2026-09-17 when the tool was rebuilt to the convention
12
+ (``common-docs/projects/google-native/PLAN.md`` §5.8): every mutating action
13
+ gained ``dry_run``, so the kind now declares the PREVIEW branches too — the
14
+ block an append would land and where, the cells a write would replace, the
15
+ fields an import would mint, the field map a contact import would apply, and
16
+ which of a task set is already here.
17
+ * ``google_marketing_result`` — the six read-only marketing reads. Every branch
18
+ carries ``source`` (persisted vs live Google), the ``bounds`` it was asked
19
+ for, and the truthful truncation trio, because a marketing number read
20
+ without its bounds is how a partial window becomes a reported total.
21
+
22
+ The models live HERE, not in aidream, because ``TOOL_RESULT_KINDS`` may never
23
+ import aidream (``scripts/check_package_boundaries.py``) and the tool
24
+ implementations import these models to validate with.
25
+
26
+ Publish: ``scripts/publish_kind_catalog.py matrx_ai.tools.kinds.google --apply``.
27
+ """
28
+
29
+ from __future__ import annotations
30
+
31
+ from matrx_graph.content_ir.model import KindModel
32
+ from matrx_graph.content_ir.sdk import kind
33
+ from pydantic import JsonValue
34
+
35
+ # ---------------------------------------------------------------------------
36
+ # google_workspace_result
37
+ # ---------------------------------------------------------------------------
38
+
39
+
40
+ @kind(
41
+ "google_workspace_result",
42
+ label="Google Workspace Result",
43
+ family="google_workspace",
44
+ example={
45
+ "action": "append_document",
46
+ "dry_run": True,
47
+ "file_id": "1AbC",
48
+ "title": "Q3 Plan",
49
+ "would_append": {
50
+ "position": "end_of_document",
51
+ "heading": "## 2026-09-17",
52
+ "text": "Three risks remain open.",
53
+ "after_char": 4211,
54
+ },
55
+ "note": "Nothing was written. Re-run without dry_run to append exactly this block.",
56
+ "open_in_google": "https://docs.google.com/document/d/1AbC",
57
+ },
58
+ )
59
+ class GoogleWorkspaceResult(KindModel):
60
+ #: Every result names the action that produced it (the union's own label).
61
+ action: str = ""
62
+ #: Which connected Google account answered. Present on every live read.
63
+ google_account: str | None = None
64
+ note: str | None = None
65
+
66
+ # ── list_resources: the files AI Matrx can reach + the health of the
67
+ # accounts behind them (what `google_read.list_capabilities` used to answer).
68
+ resources: list[dict] | None = None
69
+ count: int | None = None
70
+ accounts: list[dict] | None = None
71
+
72
+ # ── create receipts (Doc or Sheet).
73
+ created: bool | None = None
74
+ file_id: str | None = None
75
+ name: str | None = None
76
+ kind: str | None = None
77
+ open_in_google: str | None = None
78
+
79
+ # ── document read / append window.
80
+ title: str | None = None
81
+ text: str | None = None
82
+ total_chars: int | None = None
83
+ showing_chars: str | None = None
84
+ has_more: bool | None = None
85
+ next_start_char: int | None = None
86
+ appended: bool | None = None
87
+
88
+ # ── sheet read / write window.
89
+ tab: str | None = None
90
+ range: str | None = None
91
+ rows: list[list[JsonValue]] | None = None
92
+ row_count: int | None = None
93
+ sheet_size: str | None = None
94
+ next_range_a1: str | None = None
95
+ written: bool | None = None
96
+
97
+ # ── dry_run previews. `dry_run: true` means NOTHING was written; each
98
+ # preview is the exact change the same call without dry_run would make.
99
+ dry_run: bool | None = None
100
+ #: append_document — the block and where it lands.
101
+ would_append: dict | None = None
102
+ #: write_sheet — the cells that would be replaced and what would replace them.
103
+ would_write: dict | None = None
104
+ #: create_document / create_sheet — the file that would be created.
105
+ would_create: dict | None = None
106
+
107
+ # ── import_sheet_as_table.
108
+ #: One field per header-row column, with the column letter it came from.
109
+ fields: list[dict] | None = None
110
+ header_row: int | None = None
111
+ #: A step only the browser can take, named exactly. Never a fake success.
112
+ needs_client: dict | None = None
113
+
114
+ # ── prepare_email — a draft for the HUMAN send step; never sent here.
115
+ sent: bool | None = None
116
+ draft: dict | None = None
117
+ from_email: str | None = None
118
+ next_step: str | None = None
119
+
120
+ # ── read_calendar.
121
+ events: list[dict] | None = None
122
+ window_start: str | None = None
123
+ window_end: str | None = None
124
+
125
+ # ── read_contacts / import_contact.
126
+ contacts: list[dict] | None = None
127
+ #: import_contact — per Person field, where the value came from.
128
+ field_map: list[dict] | None = None
129
+ person: dict | None = None
130
+ imported: bool | None = None
131
+ matched_by: str | None = None
132
+
133
+ # ── read_tasks / import_tasks.
134
+ task_lists: list[dict] | None = None
135
+ tasks: list[dict] | None = None
136
+ #: import_tasks — what landed, what was already here, what was skipped.
137
+ imported_tasks: list[dict] | None = None
138
+ already_imported: list[dict] | None = None
139
+ skipped: list[dict] | None = None
140
+
141
+ # ── the human-in-the-loop branch. An organization can require a person to
142
+ # approve a write or an import before it happens (the ``hitl.google.*``
143
+ # knobs). When it does, the tool runs its OWN dry run, queues that exact
144
+ # preview in the one approval queue, and returns the preview WITH these two
145
+ # keys set — so the model is told, in the result rather than in prose, that
146
+ # nothing was written and where the change is waiting.
147
+ #: True when the change was PROPOSED, not made. Never present otherwise.
148
+ awaiting_approval: bool | None = None
149
+ #: The queue item: ``approval_id``, the ``mode`` it runs in, the ``knob``
150
+ #: that decided, whether the run was ``attended``, and who it waits with.
151
+ approval: dict | None = None
152
+
153
+ # ── the honesty trio every bounded read carries.
154
+ bounds: dict | None = None
155
+ truncated: bool | None = None
156
+ limit_note: str | None = None
157
+
158
+
159
+ # ---------------------------------------------------------------------------
160
+ # google_marketing_result
161
+ # ---------------------------------------------------------------------------
162
+
163
+
164
+ @kind(
165
+ "google_marketing_result",
166
+ label="Google Marketing Result",
167
+ family="google_marketing",
168
+ example={
169
+ "action": "read_search_console",
170
+ "source": "persisted",
171
+ "site_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
172
+ "bounds": {"start_date": "2026-08-01", "end_date": "2026-08-28", "limit": 1000},
173
+ "returned_count": 412,
174
+ "count_unit": "rows",
175
+ "truncated": False,
176
+ "completeness": "complete_within_requested_bound",
177
+ "limit_note": "Persisted Search Console rows are bounded by the requested limit.",
178
+ "data": {"rows": []},
179
+ },
180
+ )
181
+ class GoogleMarketingResult(KindModel):
182
+ action: str = ""
183
+ #: `persisted` = our own stored facts (no hidden sync); `live_google` = a
184
+ #: bounded call to Google made for this request. Never absent.
185
+ source: str = ""
186
+ #: Which connected Google account answered a live read.
187
+ google_account: str | None = None
188
+ site_id: str | None = None
189
+ channel_id: str | None = None
190
+
191
+ #: What was ASKED for — the window, the limit, the profile.
192
+ bounds: dict | None = None
193
+ returned_count: int | None = None
194
+ count_unit: str | None = None
195
+ #: True/False when the provider or our own cap says so; null when unknowable.
196
+ truncated: bool | None = None
197
+ completeness: str | None = None
198
+ limit_note: str | None = None
199
+ #: How old the numbers are, in words, when the source lags (GSC ~3 days).
200
+ freshness: str | None = None
201
+ note: str | None = None
202
+
203
+ #: The read's payload, under the shape the underlying reader returns.
204
+ data: JsonValue | None = None
205
+
206
+ # ── tracking_health: the plain-English verdict, the three graded checks, and
207
+ # what the read could not see. The check shape and the three booleans are the
208
+ # SAME vocabulary the stored snapshot declares (`web.tag_manager_snapshot`
209
+ # findings → `tag_manager_findings`, migration 0763), so this answer can be
210
+ # persisted verbatim rather than translated into a second set of words.
211
+ verdict: str | None = None
212
+ checks: list[dict] | None = None
213
+ has_ga4: bool | None = None
214
+ has_conversion_tag: bool | None = None
215
+ has_consent: bool | None = None
216
+ caveats: list[str] | None = None
217
+ containers: list[dict] | None = None
218
+
219
+
220
+ GOOGLE_TOOL_RESULT_KINDS: dict[str, type[KindModel]] = {
221
+ "google_workspace": GoogleWorkspaceResult,
222
+ "google_marketing": GoogleMarketingResult,
223
+ }
224
+
225
+
226
+ __all__ = [
227
+ "GOOGLE_TOOL_RESULT_KINDS",
228
+ "GoogleMarketingResult",
229
+ "GoogleWorkspaceResult",
230
+ ]
@@ -10,7 +10,7 @@ doctrine forbids).
10
10
  EVERY key is typed: the tool validates each result against this model before
11
11
  returning it, so a database contract change that adds, drops or reshapes a key
12
12
  fails loudly as `result_kind_mismatch` instead of reaching an agent untyped.
13
- The shapes are the database's as of `seo_topical_map_18`:
13
+ The shapes are the database's as of `seo_topical_map_19_page_intents`:
14
14
 
15
15
  * an associated item the caller cannot open is ABSENT from every listing (no
16
16
  entry, no count); a facet value's `ref` to such a row is `null`, the same as no
@@ -185,6 +185,103 @@ class PageMapping(KindSubModel):
185
185
  error: str | None = None
186
186
 
187
187
 
188
+ # ── page intents (`page_intents`, `set_page_intents`) ────────────────────────
189
+
190
+
191
+ class IntentPage(EntityRef):
192
+ """`seo.list_page_intents` page projection + its Search Console totals."""
193
+
194
+ site_id: str | None = None
195
+ clicks: int | None = None
196
+ impressions: int | None = None
197
+ #: the window the totals were summed over (the `performance_window_days` knob).
198
+ performance_window_days: int | None = None
199
+
200
+
201
+ class IntentTopicRef(KindSubModel):
202
+ slug: str
203
+ name: str
204
+
205
+
206
+ class CoveredTopic(KindSubModel):
207
+ """A `covers` edge: where the page sits TODAY."""
208
+
209
+ slug: str
210
+ name: str
211
+ confidence: int | None = None
212
+ #: mapper | human | agent — who asserted the coverage.
213
+ source: str | None = None
214
+
215
+
216
+ class PageIntent(KindSubModel):
217
+ """The one `intent` edge of a page: where it is GOING and what happens to it."""
218
+
219
+ topic: IntentTopicRef
220
+ #: keep | move | merge | redirect | rewrite | delete.
221
+ disposition: str
222
+ #: proposed | accepted | done.
223
+ state: str | None = None
224
+ source: str | None = None
225
+ note: str | None = None
226
+ #: merge / redirect only: the live page or planned page it points at. Null when
227
+ #: the destination row is one the caller cannot open — the same as no destination.
228
+ into: EntityRef | None = None
229
+ updated_at: str | None = None
230
+
231
+
232
+ class PageIntentRow(KindSubModel):
233
+ page: IntentPage
234
+ current_topics: list[CoveredTopic]
235
+ #: null when the page carries `covers` edges but no intent yet.
236
+ intent: PageIntent | None = None
237
+
238
+
239
+ # ── gaps, history, planned pages (`topic_gaps`, `map_history`, `create_planned_page`) ──
240
+
241
+
242
+ class TopicGap(KindSubModel):
243
+ """A topic of the map carrying no live page and no planned page."""
244
+
245
+ slug: str
246
+ name: str
247
+ status: str
248
+ depth: int
249
+ keyword_count: int
250
+
251
+
252
+ class MapHistoryRow(KindSubModel):
253
+ """A topic the map no longer shows — rejected or retired — and who changed it.
254
+
255
+ `changed_at` / `changed_by` come from `history.row_versions`, so they are the
256
+ platform's record of the change, not a column a writer could set."""
257
+
258
+ slug: str
259
+ name: str
260
+ status: str
261
+ description: str | None = None
262
+ parent_slug: str | None = None
263
+ version: int | None = None
264
+ attachments: Attachments | None = None
265
+ changed_at: str | None = None
266
+ changed_by: str | None = None
267
+ #: user | agent | code — the actor tier the change was made under.
268
+ changed_by_tier: str | None = None
269
+
270
+
271
+ class PlannedPage(KindSubModel):
272
+ """The `plan.node` `create_planned_page` had the content plan create. `slug` and
273
+ `route` are the plan's own derivations, never ours."""
274
+
275
+ id: str | None = None
276
+ site_id: str | None = None
277
+ label: str | None = None
278
+ slug: str | None = None
279
+ route: str | None = None
280
+ node_type: str | None = None
281
+ page_type: str | None = None
282
+ status: str | None = None
283
+
284
+
188
285
  # ── graph ────────────────────────────────────────────────────────────────────
189
286
 
190
287
 
@@ -359,6 +456,32 @@ class TopicalMapResult(KindModel):
359
456
  mapped: int | None = None
360
457
  failed: int | None = None
361
458
 
459
+ # page intents
460
+ #: `page_intents`: one row per page carrying an intent OR a `covers` edge.
461
+ #: Each listing keeps its OWN key — three shapes under one `items` would make an
462
+ #: agent guess which one it is holding, and would widen a published kind's field.
463
+ items: list[PageIntentRow] | None = None
464
+ #: `page_intents`: the unpaged count, and the window actually applied.
465
+ total: int | None = None
466
+ limit: int | None = None
467
+ offset: int | None = None
468
+ performance_window_days: int | None = None
469
+ #: `page_intents`: extra `intent` edges beyond the one per page that should exist —
470
+ #: nonzero is a data defect, never hidden.
471
+ duplicate_intents: int | None = None
472
+ #: `set_page_intents`: how many intents were written (`failed` counts the rest).
473
+ set: int | None = None
474
+
475
+ # proposals and planned pages
476
+ #: `reject_topics`: the proposals moved to `status = 'rejected'` — kept, never lost.
477
+ rejected: list[RemovedTopic] | None = None
478
+ #: `create_planned_page`: the node the content plan created (or would create).
479
+ node: PlannedPage | None = None
480
+ #: `topic_gaps`: topics with no live page and no planned page.
481
+ gaps: list[TopicGap] | None = None
482
+ #: `map_history`: topics the map no longer shows, newest change first.
483
+ history: list[MapHistoryRow] | None = None
484
+
362
485
 
363
486
  TopicNode.model_rebuild()
364
487
 
@@ -134,6 +134,19 @@ class WorkflowAuthorResult(KindModel):
134
134
  #: folded into the prose hint.
135
135
  warnings: list[dict] | None = None
136
136
  hint: str | None = None
137
+ #: The saved row's fresh concurrency token (ISO-8601), so a client that
138
+ #: already holds the row can adopt it without a second read.
139
+ updated_at: str | None = None
140
+ #: update/patch only — the RECEIPT of the write: the ids of the steps and
141
+ #: connections it added, changed or removed (``nodes_added`` /
142
+ #: ``nodes_updated`` / ``nodes_removed`` / ``edges_added`` /
143
+ #: ``edges_updated`` / ``edges_removed``), each list capped, with
144
+ #: ``truncated`` naming any list that was cut. The Studio reveals exactly
145
+ #: these on the canvas instead of diffing a re-read (Conductor mode,
146
+ #: 2026-09-17). Added to the KIND the same day it was added to the tool:
147
+ #: an undeclared key fails ``extra="forbid"`` and the whole result loses
148
+ #: its ``__kind`` stamp.
149
+ changed: dict[str, list[str]] | None = None
137
150
 
138
151
 
139
152
  @kind(
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "matrx-ai"
3
- version = "0.5.332"
3
+ version = "0.5.334"
4
4
  description = "Unified multi-provider AI client, orchestration, and tool system"
5
5
  readme = "README.md"
6
6
  license = { text = "MIT" }
@@ -65,15 +65,15 @@ dependencies = [
65
65
  "asyncpg>=0.31.0",
66
66
  # --- Matrx ecosystem ---
67
67
  # media/media_persistence.py imports VisibilityLiteral, first exported by 2.0.7.
68
- "matrx-utils>=2.0.43",
69
- "matrx-files>=0.2.172",
68
+ "matrx-utils>=2.0.44",
69
+ "matrx-files>=0.2.173",
70
70
  # 0.1.26+ exports the Masterwork* event models used here (renamed 2026-08-17;
71
71
  # the next matrx-connect release is the first tag that exports the new names).
72
- "matrx-connect>=0.1.110",
72
+ "matrx-connect>=0.1.111",
73
73
  # actions.register_node is imported at module scope and first shipped in 0.1.22.
74
- "matrx-graph>=0.2.170",
74
+ "matrx-graph>=0.2.171",
75
75
  # tools.implementations imports the browser implementation eagerly.
76
- "matrx-scraper[browser]>=0.2.218",
76
+ "matrx-scraper[browser]>=0.2.220",
77
77
  # matrx-runtime (the Request Management Layer): the conversation executor
78
78
  # (orchestrator/conversation_runtime.py) is a CONSUMER of its ExecutionEngine —
79
79
  # one conversation = one global_execution. ai → runtime is the acyclic edge.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes