traigent 0.21.3.dev0__tar.gz → 0.22.0__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 (641) hide show
  1. {traigent-0.21.3.dev0 → traigent-0.22.0}/CHANGELOG.md +49 -0
  2. {traigent-0.21.3.dev0/traigent.egg-info → traigent-0.22.0}/PKG-INFO +2 -1
  3. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/complete-function-specification.md +32 -0
  4. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/telemetry.md +70 -0
  5. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/evaluation.md +25 -0
  6. {traigent-0.21.3.dev0 → traigent-0.22.0}/pyproject.toml +2 -1
  7. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements.txt +1 -0
  8. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/__init__.py +4 -0
  9. traigent-0.22.0/traigent/analytics/next_steps.py +748 -0
  10. traigent-0.22.0/traigent/analytics/planner.py +920 -0
  11. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics_mcp/server.py +195 -0
  12. traigent-0.22.0/traigent/analytics_mcp/tools.py +1531 -0
  13. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/decorators.py +26 -0
  14. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/types.py +69 -3
  15. traigent-0.22.0/traigent/cli/guidance_command.py +376 -0
  16. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/main.py +4 -0
  17. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/next_steps_command.py +53 -4
  18. traigent-0.22.0/traigent/cloud/analytics_client.py +3383 -0
  19. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/api_operations.py +16 -0
  20. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/backend_client.py +110 -0
  21. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/client.py +10 -0
  22. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/models.py +29 -0
  23. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/session_operations.py +4 -0
  24. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/backend_session_manager.py +13 -1
  25. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/optimized_function.py +11 -0
  26. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/orchestrator.py +139 -3
  27. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/result_selection.py +136 -24
  28. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/trial_lifecycle.py +17 -0
  29. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/trial_result_factory.py +38 -0
  30. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/local.py +47 -2
  31. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/metrics_tracker.py +5 -0
  32. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/__init__.py +30 -0
  33. traigent-0.22.0/traigent/observability/analytics_dtos.py +160 -0
  34. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/client.py +907 -136
  35. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/config.py +45 -1
  36. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/decorators.py +29 -1
  37. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/dtos.py +157 -3
  38. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/interactive_optimizer.py +3 -0
  39. {traigent-0.21.3.dev0 → traigent-0.22.0/traigent.egg-info}/PKG-INFO +2 -1
  40. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent.egg-info/SOURCES.txt +3 -0
  41. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent.egg-info/requires.txt +1 -0
  42. traigent-0.21.3.dev0/traigent/analytics/next_steps.py +0 -216
  43. traigent-0.21.3.dev0/traigent/analytics_mcp/tools.py +0 -687
  44. traigent-0.21.3.dev0/traigent/cloud/analytics_client.py +0 -908
  45. {traigent-0.21.3.dev0 → traigent-0.22.0}/COMMERCIAL-LICENSE.md +0 -0
  46. {traigent-0.21.3.dev0 → traigent-0.22.0}/CONTRIBUTING.md +0 -0
  47. {traigent-0.21.3.dev0 → traigent-0.22.0}/CONTRIBUTOR-LICENSING.md +0 -0
  48. {traigent-0.21.3.dev0 → traigent-0.22.0}/DISCLAIMER.md +0 -0
  49. {traigent-0.21.3.dev0 → traigent-0.22.0}/LICENSE +0 -0
  50. {traigent-0.21.3.dev0 → traigent-0.22.0}/MANIFEST.in +0 -0
  51. {traigent-0.21.3.dev0 → traigent-0.22.0}/NOTICE +0 -0
  52. {traigent-0.21.3.dev0 → traigent-0.22.0}/README.md +0 -0
  53. {traigent-0.21.3.dev0 → traigent-0.22.0}/SECURITY.md +0 -0
  54. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/LOCAL_CI_GATE.md +0 -0
  55. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/README.md +0 -0
  56. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/SYNC_MAP.md +0 -0
  57. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/agent-skill.md +0 -0
  58. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/decorator-reference.md +0 -0
  59. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/enterprise-beta-api.md +0 -0
  60. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/interactive_optimizer.md +0 -0
  61. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/api-reference/thread-pool-examples.md +0 -0
  62. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/ARCHITECTURE.md +0 -0
  63. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/cost-architecture-validation.md +0 -0
  64. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/execution_mode_follow_up.md +0 -0
  65. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/integrations-inventory.md +0 -0
  66. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/plugin_architecture.md +0 -0
  67. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/project-structure.md +0 -0
  68. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/architecture/stop_conditions.md +0 -0
  69. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/concepts/composite-knob-ir.md +0 -0
  70. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/concepts/composite-knobs.md +0 -0
  71. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/concepts/guided-generation.md +0 -0
  72. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/ADDING_NEW_INTEGRATIONS.md +0 -0
  73. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/CODE_OF_CONDUCT.md +0 -0
  74. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/CONTRIBUTING.md +0 -0
  75. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/EXAMPLE_TEMPLATE.md +0 -0
  76. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/README.md +0 -0
  77. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/SECURITY.md +0 -0
  78. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/aikido_triage.md +0 -0
  79. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/code_review_instructions.md +0 -0
  80. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/contributing/test-quality-guide.md +0 -0
  81. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/demos/DEMO_VIDEO_GUIDE.md +0 -0
  82. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/demos/README.md +0 -0
  83. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/API_PATTERNS.md +0 -0
  84. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/LEARNING_ROADMAP.md +0 -0
  85. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/QUICK_REFERENCE.md +0 -0
  86. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/README.md +0 -0
  87. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/START_HERE.md +0 -0
  88. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/examples/TROUBLESHOOTING.md +0 -0
  89. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/fake-completion-tracking.md +0 -0
  90. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/feature_matrices/README.md +0 -0
  91. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/README.md +0 -0
  92. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/authentication.md +0 -0
  93. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/constraint-dsl.md +0 -0
  94. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/dataflow-detection.md +0 -0
  95. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/framework_override_enhanced_features.md +0 -0
  96. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/mcp-server.md +0 -0
  97. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/observability-spans.md +0 -0
  98. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/onboarding.md +0 -0
  99. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/prompt_management.md +0 -0
  100. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/recommendations.md +0 -0
  101. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/safety-gates.md +0 -0
  102. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/seamless_injection.md +0 -0
  103. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/strategy-presets.md +0 -0
  104. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/features/strict_metrics_nulls.md +0 -0
  105. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/GETTING_STARTED.md +0 -0
  106. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/README.md +0 -0
  107. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/installation.md +0 -0
  108. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/minimal-integration.md +0 -0
  109. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/portal-dev-laptop-agent.md +0 -0
  110. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/getting-started/testing.md +0 -0
  111. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/VSCODE_RESTART_GUIDE.md +0 -0
  112. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/execution-mode-migration.md +0 -0
  113. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/execution-modes.md +0 -0
  114. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/js-bridge.md +0 -0
  115. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/llm_plugin_migration_guide.md +0 -0
  116. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/parallel-configuration.md +0 -0
  117. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/guides/secrets_management.md +0 -0
  118. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/hybrid-mode-api-contract.md +0 -0
  119. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/hybrid-mode-client-guide.md +0 -0
  120. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/operations/azure_openai.md +0 -0
  121. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/operations/bedrock.md +0 -0
  122. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/operations/google_gemini.md +0 -0
  123. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/security/trust_model.md +0 -0
  124. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/testing/CREATIVE_STRESS_TESTING.md +0 -0
  125. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/concepts/composite-knob-ir.md +0 -0
  126. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/concepts/composite-knobs.md +0 -0
  127. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/concepts/guided-generation.md +0 -0
  128. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/schema.md +0 -0
  129. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/tagging_tracking.md +0 -0
  130. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/traceability/taxonomy_reference.md +0 -0
  131. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/tvl/CONSTRAINT_EXPRESSIONS.md +0 -0
  132. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/README.md +0 -0
  133. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/agent_optimization.md +0 -0
  134. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/choosing_optimization_model.md +0 -0
  135. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/configuration-spaces.md +0 -0
  136. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/evaluation_guide.md +0 -0
  137. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/injection_modes.md +0 -0
  138. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/interactive_optimization.md +0 -0
  139. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/smart_optimization.md +0 -0
  140. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/user-guide/tuned_variables.md +0 -0
  141. {traigent-0.21.3.dev0 → traigent-0.22.0}/docs/walkthrough.md +0 -0
  142. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-all.txt +0 -0
  143. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-analytics.txt +0 -0
  144. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-bayesian.txt +0 -0
  145. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-chroma.txt +0 -0
  146. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-dev.txt +0 -0
  147. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-hybrid.txt +0 -0
  148. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-integrations.txt +0 -0
  149. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-security.txt +0 -0
  150. {traigent-0.21.3.dev0 → traigent-0.22.0}/requirements/requirements-test.txt +0 -0
  151. {traigent-0.21.3.dev0 → traigent-0.22.0}/setup.cfg +0 -0
  152. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/__init__.py +0 -0
  153. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/_version.py +0 -0
  154. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/adapters/execution_adapter.py +0 -0
  155. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/admin/__init__.py +0 -0
  156. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/admin/client.py +0 -0
  157. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/admin/config.py +0 -0
  158. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/admin/dtos.py +0 -0
  159. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/agents/__init__.py +0 -0
  160. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/agents/config_mapper.py +0 -0
  161. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/agents/executor.py +0 -0
  162. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/agents/platforms.py +0 -0
  163. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/agents/specification_generator.py +0 -0
  164. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/anomaly.py +0 -0
  165. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/cost_optimization.py +0 -0
  166. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/example_insights.py +0 -0
  167. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/intelligence.py +0 -0
  168. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/meta_learning.py +0 -0
  169. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/optimization_plan.py +0 -0
  170. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/predictive.py +0 -0
  171. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/render.py +0 -0
  172. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics/scheduling.py +0 -0
  173. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/analytics_mcp/__init__.py +0 -0
  174. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/__init__.py +0 -0
  175. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/agent_inference.py +0 -0
  176. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/config_builder.py +0 -0
  177. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/config_space.py +0 -0
  178. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/constraint_builders.py +0 -0
  179. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/constraints.py +0 -0
  180. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/functions.py +0 -0
  181. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/parameter_ranges.py +0 -0
  182. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/parameter_validator.py +0 -0
  183. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/safety.py +0 -0
  184. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/strategy_presets.py +0 -0
  185. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/api/validation_protocol.py +0 -0
  186. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/__init__.py +0 -0
  187. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/auth_commands.py +0 -0
  188. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/detect_tvars_command.py +0 -0
  189. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/function_discovery.py +0 -0
  190. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/generate_config_command.py +0 -0
  191. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/hooks_commands.py +0 -0
  192. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/local_commands.py +0 -0
  193. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/onboard_commands.py +0 -0
  194. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/optimization_validator.py +0 -0
  195. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/plan_command.py +0 -0
  196. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/playbook_commands.py +0 -0
  197. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/sync_commands.py +0 -0
  198. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cli/validation_types.py +0 -0
  199. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/__init__.py +0 -0
  200. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/_aiohttp_compat.py +0 -0
  201. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/agent_dtos.py +0 -0
  202. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/analytics_auth.py +0 -0
  203. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/api_key_manager.py +0 -0
  204. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/async_batch_transport.py +0 -0
  205. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/auth.py +0 -0
  206. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/backend_bridges.py +0 -0
  207. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/backend_components.py +0 -0
  208. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/backend_synchronizer.py +0 -0
  209. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/benchmark_client.py +0 -0
  210. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/billing.py +0 -0
  211. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/cloud_operations.py +0 -0
  212. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/credential_manager.py +0 -0
  213. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/credential_resolver.py +0 -0
  214. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/dataset_converter.py +0 -0
  215. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/dtos.py +0 -0
  216. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/governance.py +0 -0
  217. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/integration_manager.py +0 -0
  218. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/optimizer_client.py +0 -0
  219. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/password_auth_handler.py +0 -0
  220. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/privacy_operations.py +0 -0
  221. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/production_mcp_client.py +0 -0
  222. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/remote_guidance.py +0 -0
  223. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/resilient_client.py +0 -0
  224. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/service.py +0 -0
  225. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/session_budgets.py +0 -0
  226. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/session_objectives.py +0 -0
  227. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/session_types.py +0 -0
  228. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/sessions.py +0 -0
  229. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/smart_pruning.py +0 -0
  230. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/subset_selection.py +0 -0
  231. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/sync_manager.py +0 -0
  232. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/token_manager.py +0 -0
  233. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/trial_operations.py +0 -0
  234. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/trial_tracker.py +0 -0
  235. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/url_security.py +0 -0
  236. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/user_agent.py +0 -0
  237. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/cloud/validators.py +0 -0
  238. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/__init__.py +0 -0
  239. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/api_keys.py +0 -0
  240. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/ast_transformer.py +0 -0
  241. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/backend_config.py +0 -0
  242. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/context.py +0 -0
  243. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/feature_flags.py +0 -0
  244. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/models.yaml +0 -0
  245. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/parallel.py +0 -0
  246. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/project.py +0 -0
  247. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/provider_support.py +0 -0
  248. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/providers.py +0 -0
  249. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/runtime_injector.py +0 -0
  250. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/tenant.py +0 -0
  251. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config/types.py +0 -0
  252. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/__init__.py +0 -0
  253. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/agent_classifier.py +0 -0
  254. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/apply.py +0 -0
  255. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/catalog/schemas/tvar_catalog_entry_schema.json +0 -0
  256. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/catalog/schemas/tvar_observation_schema.json +0 -0
  257. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/catalog/schemas/tvar_value_recommendation_schema.json +0 -0
  258. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/catalog/tvar_catalog.v1.json +0 -0
  259. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/catalog.py +0 -0
  260. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/llm_backend.py +0 -0
  261. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/pipeline.py +0 -0
  262. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/presets/__init__.py +0 -0
  263. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/presets/agent_type_catalog.py +0 -0
  264. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/presets/benchmark_catalog.py +0 -0
  265. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/presets/constraint_templates.py +0 -0
  266. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/presets/range_presets.py +0 -0
  267. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/recommendations.py +0 -0
  268. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/__init__.py +0 -0
  269. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/benchmarks.py +0 -0
  270. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/objectives.py +0 -0
  271. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/safety_constraints.py +0 -0
  272. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/structural_constraints.py +0 -0
  273. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/tvar_ranges.py +0 -0
  274. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/subsystems/tvar_recommendations.py +0 -0
  275. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/config_generator/types.py +0 -0
  276. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/__init__.py +0 -0
  277. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/best_config_runtime.py +0 -0
  278. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/cache_policy.py +0 -0
  279. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/ci_approval.py +0 -0
  280. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/config_state_manager.py +0 -0
  281. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/constants.py +0 -0
  282. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/cost_enforcement.py +0 -0
  283. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/cost_estimator.py +0 -0
  284. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/evaluator_wrapper.py +0 -0
  285. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/exception_handler.py +0 -0
  286. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/execution_policy_runtime.py +0 -0
  287. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/license.py +0 -0
  288. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/logger_facade.py +0 -0
  289. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/mandatory_metrics.py +0 -0
  290. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/meta_types.py +0 -0
  291. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/metadata_helpers.py +0 -0
  292. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/metric_registry.py +0 -0
  293. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/metrics_aggregator.py +0 -0
  294. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/namespace.py +0 -0
  295. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/objectives.py +0 -0
  296. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/optimization_pipeline.py +0 -0
  297. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/orchestrator_helpers.py +0 -0
  298. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/parallel_execution_manager.py +0 -0
  299. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/progress_manager.py +0 -0
  300. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/sample_budget.py +0 -0
  301. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/samplers/__init__.py +0 -0
  302. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/samplers/random_sampler.py +0 -0
  303. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/session_context.py +0 -0
  304. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/session_types.py +0 -0
  305. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/stat_significance.py +0 -0
  306. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/stop_condition_manager.py +0 -0
  307. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/stop_conditions.py +0 -0
  308. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/trace_env.py +0 -0
  309. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/tracing.py +0 -0
  310. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/trial_context.py +0 -0
  311. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/types.py +0 -0
  312. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/types_ext.py +0 -0
  313. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/utils.py +0 -0
  314. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core/workflow_trace_manager.py +0 -0
  315. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core_metrics/__init__.py +0 -0
  316. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core_metrics/client.py +0 -0
  317. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core_metrics/config.py +0 -0
  318. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/core_metrics/dtos.py +0 -0
  319. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/defaults.py +0 -0
  320. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/effectuation/__init__.py +0 -0
  321. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/effectuation/contracts.py +0 -0
  322. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/effectuation/strategies/__init__.py +0 -0
  323. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/effectuation/strategies/framework_param.py +0 -0
  324. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/effectuation/strategies/self_consistency.py +0 -0
  325. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluation/__init__.py +0 -0
  326. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluation/client.py +0 -0
  327. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluation/config.py +0 -0
  328. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluation/dtos.py +0 -0
  329. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/__init__.py +0 -0
  330. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/base.py +0 -0
  331. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/catalog/metric_eval_catalog.v1.json +0 -0
  332. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/catalog/schemas/metric_eval_catalog_entry_schema.json +0 -0
  333. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/catalog_loader.py +0 -0
  334. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/dataset_registry.py +0 -0
  335. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/hybrid_api.py +0 -0
  336. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/metrics.py +0 -0
  337. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/evaluators/recommendations.py +0 -0
  338. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/__init__.py +0 -0
  339. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/_portal.py +0 -0
  340. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/__init__.py +0 -0
  341. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/_bootstrap.py +0 -0
  342. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/_demo.py +0 -0
  343. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/anthropic.py +0 -0
  344. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/aws.py +0 -0
  345. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/azure.py +0 -0
  346. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/gcp.py +0 -0
  347. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/gemini.py +0 -0
  348. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/groq.py +0 -0
  349. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/litellm_any.py +0 -0
  350. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/manifest.json +0 -0
  351. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/openai.py +0 -0
  352. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/openrouter.py +0 -0
  353. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/providers/qa_samples.jsonl +0 -0
  354. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/quickstart/__init__.py +0 -0
  355. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/quickstart/__main__.py +0 -0
  356. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/quickstart/_env.py +0 -0
  357. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/quickstart/publish_and_verify.py +0 -0
  358. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/quickstart/qa_samples.jsonl +0 -0
  359. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/examples/tutorial_bootstrap.py +0 -0
  360. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/__init__.py +0 -0
  361. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/backend_provider.py +0 -0
  362. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/example_synth.py +0 -0
  363. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/llm_provider.py +0 -0
  364. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/loop.py +0 -0
  365. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/models.py +0 -0
  366. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/options.py +0 -0
  367. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/prompt_rewriter.py +0 -0
  368. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/__init__.py +0 -0
  369. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/_deterministic_indices.py +0 -0
  370. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/artifacts.py +0 -0
  371. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/buffer.py +0 -0
  372. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/document.py +0 -0
  373. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/edits.py +0 -0
  374. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/prompts.py +0 -0
  375. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/reflection.py +0 -0
  376. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/schedule.py +0 -0
  377. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/slow_update.py +0 -0
  378. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/splits.py +0 -0
  379. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/trainer.py +0 -0
  380. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/skill_train/trainer_result.py +0 -0
  381. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/generation/validators.py +0 -0
  382. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/guaranteed_modes.py +0 -0
  383. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hooks/__init__.py +0 -0
  384. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hooks/config.py +0 -0
  385. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hooks/installer.py +0 -0
  386. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hooks/validator.py +0 -0
  387. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/__init__.py +0 -0
  388. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/discovery.py +0 -0
  389. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/http_transport.py +0 -0
  390. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/lifecycle.py +0 -0
  391. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/mcp_transport.py +0 -0
  392. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/protocol.py +0 -0
  393. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/hybrid/transport.py +0 -0
  394. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/__init__.py +0 -0
  395. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/activation.py +0 -0
  396. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/base.py +0 -0
  397. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/base_plugin.py +0 -0
  398. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/bedrock_client.py +0 -0
  399. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/config.py +0 -0
  400. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/dspy_adapter.py +0 -0
  401. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/framework_override.py +0 -0
  402. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langchain/__init__.py +0 -0
  403. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langchain/handler.py +0 -0
  404. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langfuse/__init__.py +0 -0
  405. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langfuse/callback.py +0 -0
  406. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langfuse/client.py +0 -0
  407. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/langfuse/tracker.py +0 -0
  408. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/__init__.py +0 -0
  409. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/anthropic_plugin.py +0 -0
  410. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/azure_openai_plugin.py +0 -0
  411. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/base_llm_plugin.py +0 -0
  412. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/bedrock_plugin.py +0 -0
  413. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/cohere_plugin.py +0 -0
  414. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/gemini_plugin.py +0 -0
  415. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/huggingface_plugin.py +0 -0
  416. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/langchain/__init__.py +0 -0
  417. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/langchain/base.py +0 -0
  418. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/langchain_plugin.py +0 -0
  419. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/litellm_plugin.py +0 -0
  420. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/llamaindex_plugin.py +0 -0
  421. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/mistral_plugin.py +0 -0
  422. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/openai.py +0 -0
  423. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/llms/openai_plugin.py +0 -0
  424. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/mappings.py +0 -0
  425. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/__init__.py +0 -0
  426. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/anthropic_discovery.py +0 -0
  427. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/azure_discovery.py +0 -0
  428. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/base.py +0 -0
  429. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/cache.py +0 -0
  430. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/gemini_discovery.py +0 -0
  431. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/mistral_discovery.py +0 -0
  432. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/openai_discovery.py +0 -0
  433. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/model_discovery/registry.py +0 -0
  434. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/observability/__init__.py +0 -0
  435. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/observability/mlflow.py +0 -0
  436. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/observability/wandb.py +0 -0
  437. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/observability/workflow_traces.py +0 -0
  438. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/plugin_registry.py +0 -0
  439. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/providers.py +0 -0
  440. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/pydantic_ai/__init__.py +0 -0
  441. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/pydantic_ai/_types.py +0 -0
  442. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/pydantic_ai/handler.py +0 -0
  443. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/pydantic_ai/plugin.py +0 -0
  444. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/__init__.py +0 -0
  445. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/discovery.py +0 -0
  446. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/message_coercion.py +0 -0
  447. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/mock_adapter.py +0 -0
  448. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/parameter_normalizer.py +0 -0
  449. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/response_wrapper.py +0 -0
  450. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/validation.py +0 -0
  451. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/utils/version_compat.py +0 -0
  452. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/vector_stores/__init__.py +0 -0
  453. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/vector_stores/base.py +0 -0
  454. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/vector_stores/chromadb_plugin.py +0 -0
  455. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/vector_stores/pinecone_plugin.py +0 -0
  456. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/vector_stores/weaviate_plugin.py +0 -0
  457. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/integrations/wrappers.py +0 -0
  458. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/invokers/__init__.py +0 -0
  459. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/invokers/base.py +0 -0
  460. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/invokers/batch.py +0 -0
  461. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/invokers/local.py +0 -0
  462. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/invokers/streaming.py +0 -0
  463. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/__init__.py +0 -0
  464. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/adapters.py +0 -0
  465. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/bindings.py +0 -0
  466. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/canonical.py +0 -0
  467. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/cascade.py +0 -0
  468. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/certificates.py +0 -0
  469. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/composites.py +0 -0
  470. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/kinds.py +0 -0
  471. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/patterns.py +0 -0
  472. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/resolution.py +0 -0
  473. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/resolver.py +0 -0
  474. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/runtime.py +0 -0
  475. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/signals.py +0 -0
  476. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/knobs/telemetry.py +0 -0
  477. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/mcp/__init__.py +0 -0
  478. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/mcp/server.py +0 -0
  479. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/mcp/tools.py +0 -0
  480. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/__init__.py +0 -0
  481. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/agent_metrics.py +0 -0
  482. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/content_features.py +0 -0
  483. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/deepeval_metrics.py +0 -0
  484. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/ragas_metrics.py +0 -0
  485. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/metrics/registry.py +0 -0
  486. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/observability/agent_spans.py +0 -0
  487. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/__init__.py +0 -0
  488. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/base.py +0 -0
  489. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/batch_optimizers.py +0 -0
  490. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/cloud_optimizer.py +0 -0
  491. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/grid.py +0 -0
  492. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/random.py +0 -0
  493. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/registry.py +0 -0
  494. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/remote.py +0 -0
  495. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/remote_services.py +0 -0
  496. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/optimizers/results.py +0 -0
  497. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/__init__.py +0 -0
  498. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/loader.py +0 -0
  499. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/model.py +0 -0
  500. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/scaffold.py +0 -0
  501. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/schemas/agent_playbook_schema.json +0 -0
  502. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/staleness.py +0 -0
  503. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/playbook/validator.py +0 -0
  504. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/plugins/__init__.py +0 -0
  505. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/plugins/registry.py +0 -0
  506. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/projects/__init__.py +0 -0
  507. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/projects/client.py +0 -0
  508. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/projects/config.py +0 -0
  509. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/projects/dtos.py +0 -0
  510. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/prompts/__init__.py +0 -0
  511. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/prompts/client.py +0 -0
  512. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/prompts/config.py +0 -0
  513. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/prompts/dtos.py +0 -0
  514. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/providers/__init__.py +0 -0
  515. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/providers/validation.py +0 -0
  516. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/py.typed +0 -0
  517. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/reporting/__init__.py +0 -0
  518. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/reporting/example_map.py +0 -0
  519. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/__init__.py +0 -0
  520. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/audit.py +0 -0
  521. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/__init__.py +0 -0
  522. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/helpers.py +0 -0
  523. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/mfa.py +0 -0
  524. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/models.py +0 -0
  525. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/oidc.py +0 -0
  526. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/saml.py +0 -0
  527. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/sms.py +0 -0
  528. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/auth/totp.py +0 -0
  529. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/config.py +0 -0
  530. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/credentials.py +0 -0
  531. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/crypto_utils.py +0 -0
  532. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/deployment.py +0 -0
  533. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/encryption.py +0 -0
  534. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/enterprise.py +0 -0
  535. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/headers.py +0 -0
  536. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/input_validation.py +0 -0
  537. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/jwt_validator.py +0 -0
  538. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/rate_limiter.py +0 -0
  539. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/redaction.py +0 -0
  540. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/session_manager.py +0 -0
  541. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/security/tenant.py +0 -0
  542. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-analyze-results/SKILL.md +0 -0
  543. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-analyze-results/references/convergence-patterns.md +0 -0
  544. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-analyze-results/references/optimization-result-api.md +0 -0
  545. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-configuration-space/SKILL.md +0 -0
  546. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-configuration-space/references/constraints.md +0 -0
  547. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-configuration-space/references/parameter-types.md +0 -0
  548. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-debugging/SKILL.md +0 -0
  549. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-debugging/references/error-reference.md +0 -0
  550. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-debugging/references/logging-config.md +0 -0
  551. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-debugging/references/mock-mode.md +0 -0
  552. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-decorator-setup/SKILL.md +0 -0
  553. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-decorator-setup/references/evaluation-options.md +0 -0
  554. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-decorator-setup/references/execution-modes.md +0 -0
  555. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-decorator-setup/references/injection-modes.md +0 -0
  556. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-integrations/SKILL.md +0 -0
  557. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-integrations/references/dspy.md +0 -0
  558. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-integrations/references/langchain.md +0 -0
  559. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-integrations/references/litellm.md +0 -0
  560. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-quickstart/SKILL.md +0 -0
  561. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-quickstart/references/environment-variables.md +0 -0
  562. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-quickstart/references/installation-extras.md +0 -0
  563. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-run-optimization/SKILL.md +0 -0
  564. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-run-optimization/references/algorithms.md +0 -0
  565. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-run-optimization/references/cost-management.md +0 -0
  566. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/skills/traigent-run-optimization/references/parallel-config.md +0 -0
  567. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/storage/__init__.py +0 -0
  568. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/storage/local_storage.py +0 -0
  569. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/testing/__init__.py +0 -0
  570. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/traigent_client.py +0 -0
  571. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/traigent_integration.py +0 -0
  572. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/__init__.py +0 -0
  573. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/dataflow_strategy.py +0 -0
  574. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/detection_strategies.py +0 -0
  575. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/detection_types.py +0 -0
  576. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/detector.py +0 -0
  577. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/discovery.py +0 -0
  578. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/observation.py +0 -0
  579. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tuned_variables/py.typed +0 -0
  580. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/__init__.py +0 -0
  581. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/__main__.py +0 -0
  582. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/models.py +0 -0
  583. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/objectives.py +0 -0
  584. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/options.py +0 -0
  585. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/promotion_gate.py +0 -0
  586. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/registry.py +0 -0
  587. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/spec_loader.py +0 -0
  588. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/spec_validator.py +0 -0
  589. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/tvl/statistics.py +0 -0
  590. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/__init__.py +0 -0
  591. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/artifact_fingerprints.py +0 -0
  592. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/batch_optimizer_utils.py +0 -0
  593. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/batch_processing.py +0 -0
  594. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/callbacks.py +0 -0
  595. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/console.py +0 -0
  596. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/constraints.py +0 -0
  597. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/cost_calculator.py +0 -0
  598. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/diagnostics.py +0 -0
  599. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/discrete_domains.py +0 -0
  600. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/env_config.py +0 -0
  601. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/error_handler.py +0 -0
  602. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/example_id.py +0 -0
  603. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/exceptions.py +0 -0
  604. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/file_versioning.py +0 -0
  605. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/function_identity.py +0 -0
  606. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/hashing.py +0 -0
  607. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/importance.py +0 -0
  608. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/incentives.py +0 -0
  609. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/insights.py +0 -0
  610. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/langchain_interceptor.py +0 -0
  611. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/litellm_interceptor.py +0 -0
  612. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/llm_response_parsing.py +0 -0
  613. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/local_analytics.py +0 -0
  614. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/logging.py +0 -0
  615. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/multi_objective.py +0 -0
  616. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/numpy_compat.py +0 -0
  617. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/objectives.py +0 -0
  618. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/optimization_analyzer.py +0 -0
  619. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/optimization_logger.py +0 -0
  620. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/pagination.py +0 -0
  621. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/persistence.py +0 -0
  622. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/results_table.py +0 -0
  623. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/retry.py +0 -0
  624. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/secure_path.py +0 -0
  625. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/trial_costs.py +0 -0
  626. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/url_security.py +0 -0
  627. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/utils/validation.py +0 -0
  628. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/visualization/__init__.py +0 -0
  629. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/visualization/plots.py +0 -0
  630. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/wrapper/__init__.py +0 -0
  631. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/wrapper/errors.py +0 -0
  632. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/wrapper/server.py +0 -0
  633. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent/wrapper/service.py +0 -0
  634. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent.egg-info/dependency_links.txt +0 -0
  635. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent.egg-info/entry_points.txt +0 -0
  636. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent.egg-info/top_level.txt +0 -0
  637. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent_validation/__init__.py +0 -0
  638. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent_validation/base.py +0 -0
  639. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent_validation/plugins.py +0 -0
  640. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent_validation/py.typed +0 -0
  641. {traigent-0.21.3.dev0 → traigent-0.22.0}/traigent_validation/validators.py +0 -0
@@ -6,6 +6,55 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ### Changed
10
+
11
+ - `ObservabilityClient.flush(timeout=0)` and `close(timeout=0)` now perform an
12
+ immediate poll rather than treating zero as the configured 30-second flush
13
+ timeout. No deadline-exceeded warning is emitted for this intentional
14
+ poll-style use. No-argument flush and close retain synchronous delivery.
15
+ - `items_pending` and transport `pending_items` now count both buffered and
16
+ in-flight payloads, so a timed-out sender remains visible until it completes.
17
+ `get_stats()` also exposes `oldest_inflight_age_seconds` to diagnose custom
18
+ senders that do not return.
19
+
20
+ ### Fixed
21
+
22
+ - Observability delivery keeps exactly one sender active, including after a
23
+ bounded flush returns before its sender completes. A later flush waits for
24
+ that sender within its own deadline before beginning another batch.
25
+ - Health callbacks run after transport locks are released, and batch-delivery
26
+ failure events explicitly identify their batch (`item_count` and capped
27
+ `trace_ids`) instead of implying one callback per payload.
28
+ - The atexit observability close is explicitly bounded by the default
29
+ `flush_timeout` (30 seconds). This intentionally favors a bounded interpreter
30
+ shutdown over guaranteed delivery of a very slow final backlog.
31
+
32
+ ## [0.21.3] - 2026-07-11
33
+
34
+ ### Added
35
+
36
+ - Additive SmartOps Planner V2 client and `traigent guidance` CLI with strict
37
+ treatment/profile provenance, opaque decision execution, server-integrity-tagged structured
38
+ resolution, explicit idempotent receipt submission, and lifecycle reopen
39
+ commands.
40
+ The existing `traigent next-steps` v1 surface remains unchanged.
41
+
42
+ ### Fixed
43
+
44
+ - Correct the registered observability issue-list MCP wrapper so it matches the
45
+ six-argument helper contract instead of raising a runtime ``TypeError``.
46
+ - Enforce Planner V2 treatment isolation even outside strict experiment mode;
47
+ strict mode additionally rejects fallback and incomplete context.
48
+ - Validate exact action economics, implementation hash, attempt-bound argv,
49
+ receipt scope, and live equal execution/lease expiries before presenting a
50
+ resolved operation. The server integrity tag remains opaque to public clients.
51
+ - Describe rule parity and certified session-utility advantage without implying
52
+ policy agreement or a product KPI guarantee, and validate reopen/receipt
53
+ lifecycle transitions fail-closed.
54
+
55
+ - Declare `tenacity` as a dependency so litellm's retry helpers
56
+ (`completion_with_retries`) work on a clean install (#1824).
57
+
9
58
  ## [0.21.0] - 2026-07-07
10
59
 
11
60
  Observability hardening release. Enterprise-grade privacy posture for the
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: traigent
3
- Version: 0.21.3.dev0
3
+ Version: 0.22.0
4
4
  Summary: Enterprise-grade LLM optimization platform with advanced analytics and AI-powered insights
5
5
  Author-email: Traigent Team <opensource@traigent.ai>
6
6
  License-Expression: AGPL-3.0-only OR LicenseRef-Traigent-Commercial
@@ -37,6 +37,7 @@ Requires-Dist: cryptography>=46.0.7
37
37
  Requires-Dist: PyJWT[crypto]<3.0.0,>=2.13.0
38
38
  Requires-Dist: backoff>=2.2.0
39
39
  Requires-Dist: litellm<2,>=1.87.1
40
+ Requires-Dist: tenacity>=8.1.0
40
41
  Requires-Dist: rank-bm25
41
42
  Requires-Dist: psutil>=5.8.0
42
43
  Requires-Dist: pydantic>=2.0.0
@@ -529,6 +529,38 @@ class OptimizationResult:
529
529
  `metadata["source"]` records result provenance as one of `cloud_brain`,
530
530
  `local_fallback`, `explicit_local`, or `offline`.
531
531
 
532
+ #### `best_config` in multi-objective runs (authoritative accessor)
533
+
534
+ When you declare more than one objective — e.g. `objectives=["accuracy", "cost"]`,
535
+ **including the default equal weights** — `results.best_config` is the winner of
536
+ the declared **weighted aggregate**, not the highest-accuracy config. This is the
537
+ same winner the run's own post-hoc analysis crowns:
538
+
539
+ - `results.best_config` **==** `results.calculate_weighted_scores()["best_weighted_config"]`
540
+ **==** the `best_weighted_config` in the persisted `weighted_results_v2.json`.
541
+
542
+ The two artifacts of one run agree — **including on ties**: both selectors gather
543
+ every config within the conservative weighted-score tolerance of the maximum and
544
+ break the tie identically (secondary metrics in the declared objective order, then
545
+ `trial_id`), so a two-endpoint Pareto tie (both configs sharing the top weighted
546
+ aggregate) crowns the same winner in both places rather than opposite first-by-order
547
+ picks. `results.best_score` remains the winner's primary-objective value (e.g. its
548
+ accuracy); the weighted basis of the selection is surfaced per-trial in
549
+ `metrics["score"]` and in `metadata["session_summary"]["weighted_selection"]`.
550
+ `auto_load_best` and `get_best_config()` load this same weighted winner.
551
+
552
+ The agreement holds for the common run. Two narrow cases can still diverge, by
553
+ design: (1) a custom `promotion_policy.tie_breaker` (anything other than the default
554
+ `min_abs_deviation`) is honoured by the terminal selector but not by the post-hoc
555
+ accessor, which always uses the default; and (2) the terminal selector ranks only
556
+ **ranking-eligible** trials (those passing the comparability/coverage gate) while
557
+ `calculate_weighted_scores()` ranks all **successful** trials, so a successful but
558
+ ranking-ineligible config can appear only in the post-hoc set.
559
+
560
+ Single-objective runs are unchanged (highest primary-objective config); banded
561
+ objectives select by band proximity. Declaring non-uniform weights simply shifts
562
+ the aggregate toward the heavier objective. (Issues #1682, #1846.)
563
+
532
564
  ### TrialResult
533
565
 
534
566
  ```python
@@ -122,6 +122,23 @@ token usage from prompts. Pass measured `input_tokens`, `output_tokens`,
122
122
  `total_tokens`, or `cost_usd` from the provider response when recording
123
123
  generation spans; otherwise usage is reported as unknown, not zero.
124
124
 
125
+ ### Content-Free Execution Lineage
126
+
127
+ `ExecutionContextDTO` carries only versioned lineage identifiers. Client and
128
+ environment defaults are merged into each trace; fields omitted from a
129
+ per-trace DTO inherit those defaults. An explicit `None` clears a default and
130
+ is emitted as JSON `null`:
131
+
132
+ ```python
133
+ from traigent.observability import ExecutionContextDTO
134
+
135
+ context = ExecutionContextDTO(toolset_id=None)
136
+ client.start_trace("agent-run", execution_context=context)
137
+ ```
138
+
139
+ Dictionary inputs have the same explicit-null behavior. Free-form metadata and
140
+ content fields are not accepted in execution context.
141
+
125
142
  ### OpenTelemetry Tracing
126
143
 
127
144
  OpenTelemetry tracing is opt-in and uses a separate flag from telemetry
@@ -361,6 +378,59 @@ For HIPAA compliance or handling sensitive data:
361
378
 
362
379
  4. **Review Evaluation Dataset**: Ensure your evaluation datasets don't contain PII
363
380
 
381
+ ## Observability transport health
382
+
383
+ `ObservabilityClient.get_stats()` returns a process-local snapshot of buffered
384
+ trace delivery. Use it to alert on local loss before a trace reaches the
385
+ backend. The snapshot includes `dropped_items`, `dropped_by_reason`,
386
+ `queue_depth`, `inflight_items`, `oldest_inflight_age_seconds`, and
387
+ `retry_attempts`.
388
+
389
+ ```python
390
+ from traigent.observability import ObservabilityClient, ObservabilityConfig
391
+
392
+
393
+ def report_transport_health(event_type: str, payload: dict) -> None:
394
+ # Every local drop is reported. Delivery failures are one event per batch:
395
+ # payloads include item_count and up to 20 trace_ids alongside drop_reason,
396
+ # cumulative dropped_items, queue_depth, and event-specific details.
397
+ metrics_sink.emit(event_type, payload)
398
+
399
+
400
+ client = ObservabilityClient(
401
+ ObservabilityConfig(health_callback=report_transport_health)
402
+ )
403
+ stats = client.get_stats()
404
+ if stats["dropped_items"]:
405
+ metrics_sink.emit("observability_transport_snapshot", stats)
406
+ ```
407
+
408
+ `queue_depth` counts payloads still buffered; `inflight_items` counts payloads
409
+ already handed to a sender but not yet completed. A non-null
410
+ `oldest_inflight_age_seconds` makes a custom sender that does not return
411
+ diagnosable; custom senders should enforce their own request timeout.
412
+ `dropped_by_reason` is bounded to the transport's in-process lifetime and
413
+ distinguishes reasons such as
414
+ `queue_full`, `payload_too_large`, `payload_not_json_serializable`,
415
+ `transport_closed`, and `batch_delivery_failed`. These are local SDK metrics;
416
+ they are deliberately not added to the ingest wire payload until the strict
417
+ Schema and Backend contract is updated together.
418
+
419
+ `health_callback` is invoked only after SDK transport locks are released. It
420
+ may run on a background delivery thread, and callback exceptions are swallowed.
421
+ Keep it fast and safe for concurrent invocation. Batch-delivery failures emit a
422
+ single batch-shaped event with `item_count`, up to 20 `trace_ids`, and
423
+ `trace_ids_truncated`; queue, oversized-payload, serialization, and closed-
424
+ transport drops each emit their own event.
425
+
426
+ `flush(timeout=0)` and `close(timeout=0)` are immediate poll-style calls: they
427
+ return without starting a sender and do not emit a deadline-exceeded warning.
428
+ Previously, zero was treated like the configured flush timeout. An explicit
429
+ positive timeout bounds the wait; no-argument flush/close preserves synchronous
430
+ delivery. The atexit close path explicitly uses the default 30-second
431
+ `flush_timeout`, so shutdown can trade undelivered tail items for a bounded
432
+ interpreter exit.
433
+
364
434
  ## FAQ
365
435
 
366
436
  ### Q: Is telemetry enabled by default?
@@ -198,6 +198,31 @@ enable_mock_mode_for_quickstart()
198
198
 
199
199
  For shell-only fixtures, `TRAIGENT_MOCK_LLM=true` remains available outside production for backwards compatibility, but direct user-set activation emits `DeprecationWarning`.
200
200
 
201
+ ## Reading trial results — the trial-metrics contract
202
+
203
+ Each `TrialResult` (the items in `result.trials`) exposes several score-like
204
+ values. They do **not** all mean the same thing:
205
+
206
+ | Field | Meaning |
207
+ |---|---|
208
+ | `trial.score` | The trial's **optimization signal** — the exact value `best_config` argmaxes. For a single-objective run it is the objective metric (e.g. accuracy); for a weighted multi-objective run it is the weighted selection basis. **Read this when you want "the trial's score".** |
209
+ | `trial.metrics["score"]` | Same optimization signal, kept in the metrics map for serialization parity. |
210
+ | `trial.metrics["accuracy"]` (and other objective keys) | The individual metric values. When a custom `scoring_function` defines the objective, `metrics["accuracy"]` is the custom scorer's mean. |
211
+ | `trial.metrics["exact_match_default"]` | Present **only** when a custom `scoring_function` owns the `accuracy` objective. It holds the SDK's built-in case-insensitive exact-match scorer as a **diagnostic** — it is never the optimization signal and is not what `best_config` uses. |
212
+
213
+ ```python
214
+ result = my_agent.optimize_sync(max_trials=10)
215
+ for trial in result.trials:
216
+ # Correct: trial.score is the signal the optimizer used.
217
+ print(trial.config, trial.score)
218
+ ```
219
+
220
+ Before this contract was fixed (issue #1845), `trial.score` was `None` and
221
+ `metrics["score"]` held the built-in exact-match scorer even when a custom
222
+ `scoring_function` was supplied — so a consumer doing
223
+ `trial.score or trial.metrics["score"]` would log a number the optimizer never
224
+ used, disagreeing with `best_config` whenever the custom scorer was non-binary.
225
+
201
226
  ## Troubleshooting
202
227
 
203
228
  - **Paraphrased answers score 0.0**: The default `LocalEvaluator` accuracy is exact / case-insensitive match; it is not semantic. Provide your own `scoring_function` (or `metric_functions={"accuracy": ...}`) that performs embedding similarity or LLM-judge scoring. `LocalExecutionAdapter` also raises a visible error when dataset examples are tagged `evaluation_type: "semantic"` without a configured scorer.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "traigent"
7
- version = "0.21.3.dev0"
7
+ version = "0.22.0"
8
8
  authors = [
9
9
  {name = "Traigent Team", email = "opensource@traigent.ai"},
10
10
  ]
@@ -44,6 +44,7 @@ dependencies = [
44
44
  "PyJWT[crypto]>=2.13.0,<3.0.0", # >=2.13.0: Dependabot alerts — DoS, SSRF via JWKClient, HS256 forgery, alg bypass, kid DoS
45
45
  "backoff>=2.2.0",
46
46
  "litellm>=1.87.1,<2", # Floor: 1.84+ escaped the 1.83.x python-dotenv==1.0.1 and openai==2.24.0 exact sub-pins; 1.87.1 is the first stable release verified against this SDK. Upper bound <2 guards against a future breaking major. The demo (TraigentDemo) requires 1.88.0; this range admits it. Only the public API surface (completion, acompletion, cost_per_token, token_counter, model_cost, ModelResponse) is used — stable across the 1.x line.
47
+ "tenacity>=8.1.0", # tenacity completes litellm's retry surface: litellm imports it lazily in its public *_with_retries helpers (and the retry path exercised on litellm 1.91.0, #1824) but doesn't declare it — declare it so litellm's retry path works on a clean install
47
48
  "rank-bm25",
48
49
  "psutil>=5.8.0",
49
50
  # Required by API decorators and config validation
@@ -11,5 +11,6 @@ claude-code-sdk>=0.0.14
11
11
  mcp>=1.27.0
12
12
  backoff>=2.2.0
13
13
  litellm>=1.87.1,<2
14
+ tenacity>=8.1.0
14
15
  rank-bm25
15
16
  psutil>=5.8.0
@@ -16,6 +16,9 @@ from __future__ import annotations
16
16
 
17
17
  import warnings as _warnings
18
18
 
19
+ # Planner V2 is a core protocol, independent of the optional analytics plugin.
20
+ from .planner import PlannerV2Client
21
+
19
22
  _PLUGIN_AVAILABLE = False
20
23
 
21
24
  # Try to import from the plugin first
@@ -131,6 +134,7 @@ __all__ = [
131
134
  # Example Insights
132
135
  "ExampleInsightsClient",
133
136
  "NextStepsClient",
137
+ "PlannerV2Client",
134
138
  "OptimizationPlanClient",
135
139
  # Historical analytics
136
140
  "HistoricalAnalyticsEngine",