autocontext 0.4.0__tar.gz → 0.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (855) hide show
  1. {autocontext-0.4.0 → autocontext-0.4.2}/PKG-INFO +43 -8
  2. {autocontext-0.4.0 → autocontext-0.4.2}/README.md +42 -7
  3. {autocontext-0.4.0 → autocontext-0.4.2}/docs/agent-integration.md +20 -2
  4. {autocontext-0.4.0 → autocontext-0.4.2}/pyproject.toml +1 -1
  5. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/__init__.py +1 -1
  6. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/feedback_loops.py +15 -7
  7. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/llm_client.py +32 -3
  8. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/orchestrator.py +77 -66
  9. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/provider_bridge.py +51 -9
  10. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/translator.py +10 -7
  11. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/cli.py +145 -107
  12. autocontext-0.4.2/src/autocontext/cli_investigate.py +99 -0
  13. autocontext-0.4.2/src/autocontext/cli_queue.py +170 -0
  14. autocontext-0.4.2/src/autocontext/cli_role_runtime.py +79 -0
  15. autocontext-0.4.2/src/autocontext/cli_runtime_overrides.py +68 -0
  16. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/config/settings.py +14 -2
  17. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/judge.py +82 -18
  18. autocontext-0.4.2/src/autocontext/execution/rubric_coherence.py +92 -0
  19. autocontext-0.4.2/src/autocontext/investigation/__init__.py +27 -0
  20. autocontext-0.4.2/src/autocontext/investigation/engine.py +615 -0
  21. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/solver.py +95 -19
  22. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/generation_runner.py +7 -0
  23. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/prompts/templates.py +9 -5
  24. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/registry.py +67 -6
  25. autocontext-0.4.2/src/autocontext/providers/runtime_bridge.py +51 -0
  26. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/pi_cli.py +2 -0
  27. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/family_classifier.py +11 -0
  28. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/investigation_codegen.py +14 -4
  29. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/operator_loop_codegen.py +77 -2
  30. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/operator_loop_designer.py +7 -11
  31. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/registry.py +43 -9
  32. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/simulation/engine.py +16 -6
  33. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/simulation/helpers.py +17 -4
  34. autocontext-0.4.2/src/autocontext/strategy_interface.py +17 -0
  35. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_api_key_fallback.py +30 -1
  36. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_backport.py +79 -20
  37. autocontext-0.4.2/tests/test_cli_investigate.py +130 -0
  38. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_json.py +22 -0
  39. autocontext-0.4.2/tests/test_cli_runtime_timeout_overrides.py +209 -0
  40. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_simulate_runtime.py +29 -0
  41. autocontext-0.4.2/tests/test_custom_scenario_name_resolution.py +144 -0
  42. autocontext-0.4.2/tests/test_family_aware_strategy_prompts.py +41 -0
  43. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_family_classifier.py +10 -0
  44. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_feedback_loops.py +26 -3
  45. autocontext-0.4.2/tests/test_investigation_engine.py +208 -0
  46. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_judge.py +47 -0
  47. autocontext-0.4.2/tests/test_knowledge_solver.py +97 -0
  48. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_per_role_provider.py +81 -9
  49. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_cli_runtime.py +21 -0
  50. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_provider_surface.py +3 -1
  51. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_rpc.py +3 -1
  52. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pipeline_adapter.py +7 -1
  53. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rubric_coherence.py +19 -0
  54. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_simulate_command.py +110 -0
  55. autocontext-0.4.2/tests/test_simulation_helpers.py +25 -0
  56. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_strategy_translator.py +30 -7
  57. autocontext-0.4.2/tests/test_subscription_cli_provider_surface.py +97 -0
  58. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_task_runner.py +23 -0
  59. {autocontext-0.4.0 → autocontext-0.4.2}/uv.lock +1 -1
  60. autocontext-0.4.0/src/autocontext/execution/rubric_coherence.py +0 -46
  61. {autocontext-0.4.0 → autocontext-0.4.2}/.gitignore +0 -0
  62. {autocontext-0.4.0 → autocontext-0.4.2}/assets/banner.svg +0 -0
  63. {autocontext-0.4.0 → autocontext-0.4.2}/assets/banner.txt +0 -0
  64. {autocontext-0.4.0 → autocontext-0.4.2}/assets/whats_new.txt +0 -0
  65. {autocontext-0.4.0 → autocontext-0.4.2}/demo_data/README.md +0 -0
  66. {autocontext-0.4.0 → autocontext-0.4.2}/docs/mlx-training.md +0 -0
  67. {autocontext-0.4.0 → autocontext-0.4.2}/docs/sandbox.md +0 -0
  68. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/001_initial.sql +0 -0
  69. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/002_phase3_phase7.sql +0 -0
  70. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/003_agent_subagent_metadata.sql +0 -0
  71. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/004_knowledge_inheritance.sql +0 -0
  72. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/005_ecosystem_provider_tracking.sql +0 -0
  73. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/006_human_feedback.sql +0 -0
  74. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/007_task_queue.sql +0 -0
  75. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/008_staged_validation.sql +0 -0
  76. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/009_generation_timing.sql +0 -0
  77. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/010_consultation_log.sql +0 -0
  78. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/010_session_notebook.sql +0 -0
  79. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/011_monitors.sql +0 -0
  80. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/012_research_hub.sql +0 -0
  81. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/013_generation_dimension_summary.sql +0 -0
  82. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/014_scoring_backend_metadata.sql +0 -0
  83. {autocontext-0.4.0 → autocontext-0.4.2}/migrations/015_match_replay.sql +0 -0
  84. {autocontext-0.4.0 → autocontext-0.4.2}/pyrightconfig.json +0 -0
  85. {autocontext-0.4.0 → autocontext-0.4.2}/smoke_test.py +0 -0
  86. {autocontext-0.4.0 → autocontext-0.4.2}/smoke_test_loop.py +0 -0
  87. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agentos/__init__.py +0 -0
  88. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agentos/types.py +0 -0
  89. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/__init__.py +0 -0
  90. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/agent_sdk_client.py +0 -0
  91. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/analyst.py +0 -0
  92. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/architect.py +0 -0
  93. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/coach.py +0 -0
  94. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/competitor.py +0 -0
  95. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/contracts.py +0 -0
  96. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/curator.py +0 -0
  97. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/hint_feedback.py +0 -0
  98. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/model_router.py +0 -0
  99. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/parsers.py +0 -0
  100. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/pipeline_adapter.py +0 -0
  101. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/role_router.py +0 -0
  102. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/skeptic.py +0 -0
  103. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/subagent_runtime.py +0 -0
  104. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/translator_simplification.py +0 -0
  105. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/agents/types.py +0 -0
  106. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/__init__.py +0 -0
  107. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/aggregate_runner.py +0 -0
  108. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/calibration.py +0 -0
  109. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/clustering.py +0 -0
  110. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/correlation.py +0 -0
  111. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/credit_assignment.py +0 -0
  112. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/extractor.py +0 -0
  113. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/facets.py +0 -0
  114. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/issue_generator.py +0 -0
  115. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/issue_store.py +0 -0
  116. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/regression_fixtures.py +0 -0
  117. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/rubric_drift.py +0 -0
  118. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/run_trace.py +0 -0
  119. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/store.py +0 -0
  120. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/taxonomy.py +0 -0
  121. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/timeline_inspector.py +0 -0
  122. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/analytics/trace_reporter.py +0 -0
  123. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/artifacts/__init__.py +0 -0
  124. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/artifacts/models.py +0 -0
  125. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/banner.py +0 -0
  126. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/__init__.py +0 -0
  127. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/cache.py +0 -0
  128. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/factory.py +0 -0
  129. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/hf_bucket.py +0 -0
  130. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/local.py +0 -0
  131. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/mirror.py +0 -0
  132. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/ref.py +0 -0
  133. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/registry.py +0 -0
  134. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/store.py +0 -0
  135. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/blobstore/sync.py +0 -0
  136. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/bootstrap/__init__.py +0 -0
  137. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/bootstrap/collector.py +0 -0
  138. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/bootstrap/redactor.py +0 -0
  139. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/bootstrap/renderer.py +0 -0
  140. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/bootstrap/snapshot.py +0 -0
  141. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/concepts.py +0 -0
  142. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/config/__init__.py +0 -0
  143. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/config/presets.py +0 -0
  144. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/config/tuning_bounds.py +0 -0
  145. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/consultation/__init__.py +0 -0
  146. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/consultation/runner.py +0 -0
  147. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/consultation/stage.py +0 -0
  148. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/consultation/triggers.py +0 -0
  149. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/consultation/types.py +0 -0
  150. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evaluation/__init__.py +0 -0
  151. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evaluation/ab_runner.py +0 -0
  152. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evaluation/ab_stats.py +0 -0
  153. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evidence/__init__.py +0 -0
  154. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evidence/manifest.py +0 -0
  155. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evidence/materializer.py +0 -0
  156. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evidence/tracker.py +0 -0
  157. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/evidence/workspace.py +0 -0
  158. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/__init__.py +0 -0
  159. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/action_filter.py +0 -0
  160. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/agent_task_evolution.py +0 -0
  161. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/ast_safety.py +0 -0
  162. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/bias_probes.py +0 -0
  163. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/evaluator_guardrail.py +0 -0
  164. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/__init__.py +0 -0
  165. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/base.py +0 -0
  166. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/local.py +0 -0
  167. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/monty.py +0 -0
  168. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/primeintellect.py +0 -0
  169. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/executors/ssh.py +0 -0
  170. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/harness_coverage.py +0 -0
  171. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/harness_loader.py +0 -0
  172. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/harness_synthesizer.py +0 -0
  173. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/harness_tester.py +0 -0
  174. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/improvement_loop.py +0 -0
  175. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/judge_executor.py +0 -0
  176. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/objective_verification.py +0 -0
  177. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/output_cleaner.py +0 -0
  178. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/phased_execution.py +0 -0
  179. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/policy_executor.py +0 -0
  180. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/policy_refinement.py +0 -0
  181. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/rubric_calibration.py +0 -0
  182. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/sample_states.py +0 -0
  183. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/strategy_validator.py +0 -0
  184. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/supervisor.py +0 -0
  185. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/task_runner.py +0 -0
  186. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/trajectory_harness.py +0 -0
  187. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/execution/verification_dataset.py +0 -0
  188. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/__init__.py +0 -0
  189. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/adapt/__init__.py +0 -0
  190. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/adapt/applicator.py +0 -0
  191. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/adapt/types.py +0 -0
  192. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/audit/__init__.py +0 -0
  193. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/audit/types.py +0 -0
  194. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/audit/writer.py +0 -0
  195. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/__init__.py +0 -0
  196. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/controller.py +0 -0
  197. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/events.py +0 -0
  198. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/llm_client.py +0 -0
  199. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/output_parser.py +0 -0
  200. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/subagent.py +0 -0
  201. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/core/types.py +0 -0
  202. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/cost/__init__.py +0 -0
  203. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/cost/calculator.py +0 -0
  204. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/cost/tracker.py +0 -0
  205. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/cost/types.py +0 -0
  206. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/__init__.py +0 -0
  207. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/dimensional.py +0 -0
  208. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/failure_report.py +0 -0
  209. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/protocol.py +0 -0
  210. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/runner.py +0 -0
  211. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/scenario_evaluator.py +0 -0
  212. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/self_play.py +0 -0
  213. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/evaluation/types.py +0 -0
  214. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta/__init__.py +0 -0
  215. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta/advisor.py +0 -0
  216. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta/collector.py +0 -0
  217. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta/profiler.py +0 -0
  218. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta/types.py +0 -0
  219. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/meta_optimizer.py +0 -0
  220. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/__init__.py +0 -0
  221. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/applier.py +0 -0
  222. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/gate.py +0 -0
  223. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/parser.py +0 -0
  224. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/spec.py +0 -0
  225. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/mutations/store.py +0 -0
  226. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/optimizer/__init__.py +0 -0
  227. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/optimizer/pareto.py +0 -0
  228. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/orchestration/__init__.py +0 -0
  229. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/orchestration/dag.py +0 -0
  230. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/orchestration/engine.py +0 -0
  231. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/orchestration/types.py +0 -0
  232. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/__init__.py +0 -0
  233. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/advancement.py +0 -0
  234. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/gate.py +0 -0
  235. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/holdout.py +0 -0
  236. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/objective_guardrail.py +0 -0
  237. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/retry_context.py +0 -0
  238. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/trend_gate.py +0 -0
  239. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/pipeline/validity_gate.py +0 -0
  240. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/repl/__init__.py +0 -0
  241. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/repl/monty_worker.py +0 -0
  242. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/repl/session.py +0 -0
  243. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/repl/types.py +0 -0
  244. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/repl/worker.py +0 -0
  245. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/scoring/__init__.py +0 -0
  246. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/scoring/backends.py +0 -0
  247. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/scoring/elo.py +0 -0
  248. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/storage/__init__.py +0 -0
  249. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/storage/versioned_store.py +0 -0
  250. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/validation/__init__.py +0 -0
  251. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/validation/staged.py +0 -0
  252. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/harness/validation/stages.py +0 -0
  253. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/__init__.py +0 -0
  254. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/primeintellect/__init__.py +0 -0
  255. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/primeintellect/client.py +0 -0
  256. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/ssh/__init__.py +0 -0
  257. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/ssh/client.py +0 -0
  258. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/integrations/ssh/config.py +0 -0
  259. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/__init__.py +0 -0
  260. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/coherence.py +0 -0
  261. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/dead_end_manager.py +0 -0
  262. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/evidence_freshness.py +0 -0
  263. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/export.py +0 -0
  264. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/fresh_start.py +0 -0
  265. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/harness_quality.py +0 -0
  266. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/hint_volume.py +0 -0
  267. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/lessons.py +0 -0
  268. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/mutation_log.py +0 -0
  269. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/normalized_metrics.py +0 -0
  270. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/package.py +0 -0
  271. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/progress.py +0 -0
  272. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/protocol.py +0 -0
  273. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/rapid_gate.py +0 -0
  274. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/report.py +0 -0
  275. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/research_hub.py +0 -0
  276. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/search.py +0 -0
  277. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/stagnation.py +0 -0
  278. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/trajectory.py +0 -0
  279. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/tuning.py +0 -0
  280. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/knowledge/weakness.py +0 -0
  281. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/__init__.py +0 -0
  282. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/controller.py +0 -0
  283. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/cost_control.py +0 -0
  284. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/ecosystem_runner.py +0 -0
  285. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/events.py +0 -0
  286. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/exploration.py +0 -0
  287. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/generation_pipeline.py +0 -0
  288. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/hypothesis_tree.py +0 -0
  289. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/presets.py +0 -0
  290. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/refinement_prompt.py +0 -0
  291. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/__init__.py +0 -0
  292. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/context_loaders.py +0 -0
  293. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/dimensions.py +0 -0
  294. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/exploration.py +0 -0
  295. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/freshness.py +0 -0
  296. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/harness_mutations.py +0 -0
  297. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/persistence_helpers.py +0 -0
  298. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_helpers/tournament_prep.py +0 -0
  299. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_preflight.py +0 -0
  300. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_prevalidation.py +0 -0
  301. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_probe.py +0 -0
  302. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_staged_validation.py +0 -0
  303. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_tree_search.py +0 -0
  304. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stage_types.py +0 -0
  305. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/stages.py +0 -0
  306. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/startup_verification.py +0 -0
  307. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/loop/tournament_helpers.py +0 -0
  308. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/__init__.py +0 -0
  309. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/_base.py +0 -0
  310. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/agent_task_tools.py +0 -0
  311. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/artifact_tools.py +0 -0
  312. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/distill_tools.py +0 -0
  313. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/knowledge_tools.py +0 -0
  314. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/monitor_tools.py +0 -0
  315. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/sandbox.py +0 -0
  316. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/server.py +0 -0
  317. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/mcp/tools.py +0 -0
  318. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/monitor/__init__.py +0 -0
  319. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/monitor/engine.py +0 -0
  320. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/monitor/evaluators.py +0 -0
  321. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/monitor/types.py +0 -0
  322. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notebook/__init__.py +0 -0
  323. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notebook/context_provider.py +0 -0
  324. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notebook/injection.py +0 -0
  325. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notebook/types.py +0 -0
  326. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/__init__.py +0 -0
  327. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/base.py +0 -0
  328. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/callback.py +0 -0
  329. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/composite.py +0 -0
  330. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/http.py +0 -0
  331. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/slack.py +0 -0
  332. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/notifications/stdout.py +0 -0
  333. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/__init__.py +0 -0
  334. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/adapters.py +0 -0
  335. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/agent_adapter.py +0 -0
  336. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/discovery.py +0 -0
  337. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/distill.py +0 -0
  338. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/models.py +0 -0
  339. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/openclaw/skill.py +0 -0
  340. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/preflight.py +0 -0
  341. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/prompts/__init__.py +0 -0
  342. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/prompts/context_budget.py +0 -0
  343. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/__init__.py +0 -0
  344. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/anthropic.py +0 -0
  345. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/base.py +0 -0
  346. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/callable_wrapper.py +0 -0
  347. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/mlx_provider.py +0 -0
  348. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/openai_compat.py +0 -0
  349. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/retry.py +0 -0
  350. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/providers/scenario_routing.py +0 -0
  351. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/__init__.py +0 -0
  352. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/consultation.py +0 -0
  353. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/evaluation.py +0 -0
  354. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/persistence.py +0 -0
  355. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/prompt_wiring.py +0 -0
  356. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/runtime.py +0 -0
  357. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/research/types.py +0 -0
  358. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/__init__.py +0 -0
  359. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/context_loader.py +0 -0
  360. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/prompts.py +0 -0
  361. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/repl_worker.py +0 -0
  362. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/session.py +0 -0
  363. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/rlm/types.py +0 -0
  364. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/__init__.py +0 -0
  365. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/base.py +0 -0
  366. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/claude_cli.py +0 -0
  367. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/codex_cli.py +0 -0
  368. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/direct_api.py +0 -0
  369. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/hermes_cli.py +0 -0
  370. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/pi_artifacts.py +0 -0
  371. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/pi_defaults.py +0 -0
  372. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/runtimes/pi_rpc.py +0 -0
  373. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/__init__.py +0 -0
  374. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/agent_task.py +0 -0
  375. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/artifact_editing.py +0 -0
  376. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/base.py +0 -0
  377. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/capabilities.py +0 -0
  378. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/coordination.py +0 -0
  379. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/__init__.py +0 -0
  380. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/_family_creator_shim.py +0 -0
  381. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_codegen.py +0 -0
  382. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_creator.py +0 -0
  383. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_designer.py +0 -0
  384. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_revision.py +0 -0
  385. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_spec.py +0 -0
  386. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/agent_task_validator.py +0 -0
  387. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/artifact_editing_codegen.py +0 -0
  388. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/artifact_editing_creator.py +0 -0
  389. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/artifact_editing_designer.py +0 -0
  390. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/artifact_editing_spec.py +0 -0
  391. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/codegen.py +0 -0
  392. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/coordination_codegen.py +0 -0
  393. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/coordination_creator.py +0 -0
  394. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/coordination_designer.py +0 -0
  395. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/coordination_spec.py +0 -0
  396. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/creator.py +0 -0
  397. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/creator_registry.py +0 -0
  398. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/designer.py +0 -0
  399. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/family_pipeline.py +0 -0
  400. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/generic_creator.py +0 -0
  401. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/investigation_creator.py +0 -0
  402. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/investigation_designer.py +0 -0
  403. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/investigation_spec.py +0 -0
  404. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/loader.py +0 -0
  405. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/naming.py +0 -0
  406. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/negotiation_codegen.py +0 -0
  407. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/negotiation_creator.py +0 -0
  408. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/negotiation_designer.py +0 -0
  409. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/negotiation_spec.py +0 -0
  410. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/operator_loop_creator.py +0 -0
  411. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/operator_loop_spec.py +0 -0
  412. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/schema_evolution_codegen.py +0 -0
  413. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/schema_evolution_creator.py +0 -0
  414. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/schema_evolution_designer.py +0 -0
  415. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/schema_evolution_spec.py +0 -0
  416. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/simulation_codegen.py +0 -0
  417. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/simulation_creator.py +0 -0
  418. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/simulation_designer.py +0 -0
  419. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/simulation_spec.py +0 -0
  420. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/spec.py +0 -0
  421. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/spec_auto_heal.py +0 -0
  422. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/tool_fragility_codegen.py +0 -0
  423. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/tool_fragility_creator.py +0 -0
  424. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/tool_fragility_designer.py +0 -0
  425. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/tool_fragility_spec.py +0 -0
  426. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/validator.py +0 -0
  427. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/workflow_codegen.py +0 -0
  428. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/workflow_creator.py +0 -0
  429. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/workflow_designer.py +0 -0
  430. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/custom/workflow_spec.py +0 -0
  431. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/families.py +0 -0
  432. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/family_contracts.py +0 -0
  433. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/grid_ctf/__init__.py +0 -0
  434. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/grid_ctf/scenario.py +0 -0
  435. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/investigation.py +0 -0
  436. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/negotiation.py +0 -0
  437. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/operator_loop.py +0 -0
  438. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/othello.py +0 -0
  439. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/schema_evolution.py +0 -0
  440. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/simulation.py +0 -0
  441. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/__init__.py +0 -0
  442. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/content-generation/README.md +0 -0
  443. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/content-generation/example_input.json +0 -0
  444. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/content-generation/example_output.json +0 -0
  445. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/content-generation/spec.yaml +0 -0
  446. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/prompt-optimization/README.md +0 -0
  447. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/prompt-optimization/example_input.json +0 -0
  448. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/prompt-optimization/example_output.json +0 -0
  449. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/prompt-optimization/spec.yaml +0 -0
  450. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/rag-accuracy/README.md +0 -0
  451. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/rag-accuracy/example_input.json +0 -0
  452. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/rag-accuracy/example_output.json +0 -0
  453. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/templates/rag-accuracy/spec.yaml +0 -0
  454. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/tool_fragility.py +0 -0
  455. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/type_registry.py +0 -0
  456. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/workflow.py +0 -0
  457. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/scenarios/world_state.py +0 -0
  458. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sdk.py +0 -0
  459. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sdk_models.py +0 -0
  460. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/security/__init__.py +0 -0
  461. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/security/scanner.py +0 -0
  462. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/__init__.py +0 -0
  463. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/app.py +0 -0
  464. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/changelog.py +0 -0
  465. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/cockpit_api.py +0 -0
  466. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/hub_api.py +0 -0
  467. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/knowledge_api.py +0 -0
  468. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/monitor_api.py +0 -0
  469. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/notebook_api.py +0 -0
  470. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/openclaw_api.py +0 -0
  471. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/protocol.py +0 -0
  472. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/run_manager.py +0 -0
  473. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/server/writeup.py +0 -0
  474. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/__init__.py +0 -0
  475. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/action_labels.py +0 -0
  476. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/context_pressure.py +0 -0
  477. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/coordinator.py +0 -0
  478. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/living_docs.py +0 -0
  479. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/memory_consolidation.py +0 -0
  480. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/progress_digest.py +0 -0
  481. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/remote_bridge.py +0 -0
  482. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/skill_registry.py +0 -0
  483. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/store.py +0 -0
  484. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/supervisor.py +0 -0
  485. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/session/types.py +0 -0
  486. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/__init__.py +0 -0
  487. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/attestation.py +0 -0
  488. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/bundle.py +0 -0
  489. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/collector.py +0 -0
  490. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/pipeline.py +0 -0
  491. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/publishers/__init__.py +0 -0
  492. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/publishers/gist.py +0 -0
  493. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/publishers/hf.py +0 -0
  494. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/redactor.py +0 -0
  495. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/sharing/review.py +0 -0
  496. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/simulation/__init__.py +0 -0
  497. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/simulation/export.py +0 -0
  498. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/__init__.py +0 -0
  499. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/artifacts.py +0 -0
  500. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/blob_integration.py +0 -0
  501. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/bootstrap_schema.py +0 -0
  502. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/buffered_writer.py +0 -0
  503. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/factory.py +0 -0
  504. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/row_types.py +0 -0
  505. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/storage/sqlite_store.py +0 -0
  506. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/__init__.py +0 -0
  507. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/autoresearch/__init__.py +0 -0
  508. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/autoresearch/prepare.py +0 -0
  509. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/autoresearch/program.md +0 -0
  510. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/autoresearch/program.py +0 -0
  511. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/autoresearch/train.py +0 -0
  512. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/backends.py +0 -0
  513. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/export.py +0 -0
  514. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/model_registry.py +0 -0
  515. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/runner.py +0 -0
  516. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/training/types.py +0 -0
  517. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/util/__init__.py +0 -0
  518. {autocontext-0.4.0 → autocontext-0.4.2}/src/autocontext/util/json_io.py +0 -0
  519. {autocontext-0.4.0 → autocontext-0.4.2}/tests/conftest.py +0 -0
  520. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ab_runner.py +0 -0
  521. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ab_stats.py +0 -0
  522. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_action_filter.py +0 -0
  523. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_action_filter_integration.py +0 -0
  524. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_action_labels.py +0 -0
  525. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_advancement_contract.py +0 -0
  526. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_e2e.py +0 -0
  527. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_live_e2e.py +0 -0
  528. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_sdk_client.py +0 -0
  529. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_sdk_integration.py +0 -0
  530. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_task.py +0 -0
  531. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_task_export.py +0 -0
  532. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_task_multi_gen.py +0 -0
  533. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agent_task_pipeline.py +0 -0
  534. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_agentos_adapter.py +0 -0
  535. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_aggregate_facets.py +0 -0
  536. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_analysis_injection.py +0 -0
  537. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_anthropic_client_retry.py +0 -0
  538. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_architect_dag_changes.py +0 -0
  539. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_architect_tool_updates.py +0 -0
  540. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_architect_tools.py +0 -0
  541. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_artifact_contracts.py +0 -0
  542. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_artifact_editing.py +0 -0
  543. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_artifact_harness.py +0 -0
  544. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ast_safety.py +0 -0
  545. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_auto_sample_input.py +0 -0
  546. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_backpressure.py +0 -0
  547. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_backpressure_trend.py +0 -0
  548. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_banner_sync.py +0 -0
  549. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_blob_store.py +0 -0
  550. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_blob_store_phase2.py +0 -0
  551. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_blob_store_phase3.py +0 -0
  552. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_bootstrap_snapshot.py +0 -0
  553. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_buffered_artifacts.py +0 -0
  554. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_buffered_writer.py +0 -0
  555. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_ab_test.py +0 -0
  556. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_agent_task.py +0 -0
  557. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_error_output.py +0 -0
  558. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cli_preset.py +0 -0
  559. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_coach_competitor_hints.py +0 -0
  560. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cockpit.py +0 -0
  561. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cockpit_consultation_integration.py +0 -0
  562. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cockpit_notebook_integration.py +0 -0
  563. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_code_strategies.py +0 -0
  564. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_code_strategies_e2e.py +0 -0
  565. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_codex_cli_runtime.py +0 -0
  566. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_config_adaptive.py +0 -0
  567. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_constraint_prompts.py +0 -0
  568. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_consultation.py +0 -0
  569. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_context_budget.py +0 -0
  570. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_context_preparation.py +0 -0
  571. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_context_pressure.py +0 -0
  572. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_coordinator.py +0 -0
  573. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_correlation_issues.py +0 -0
  574. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cost_control_and_presets.py +0 -0
  575. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_credit_assignment.py +0 -0
  576. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_cross_run_inheritance.py +0 -0
  577. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_curator.py +0 -0
  578. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_curator_integration.py +0 -0
  579. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_custom_scenario_spec.py +0 -0
  580. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dag_apply.py +0 -0
  581. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dag_mutation.py +0 -0
  582. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dead_end_registry.py +0 -0
  583. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dead_end_wiring.py +0 -0
  584. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_derive_name.py +0 -0
  585. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_designer_calibration.py +0 -0
  586. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_detect_family_prefers_explicit.py +0 -0
  587. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dict_type_consistency.py +0 -0
  588. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dimension_pinning.py +0 -0
  589. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dimension_threshold.py +0 -0
  590. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_dimensional_scoring.py +0 -0
  591. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_disagreement.py +0 -0
  592. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_discovery_scenario_type.py +0 -0
  593. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_distill_jobs.py +0 -0
  594. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ecosystem_convergence.py +0 -0
  595. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ecosystem_integration.py +0 -0
  596. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ecosystem_runner.py +0 -0
  597. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_elo.py +0 -0
  598. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_enumerate_grid_ctf.py +0 -0
  599. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_enumerate_legal_actions.py +0 -0
  600. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_enumerate_othello.py +0 -0
  601. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_eval_provider_wiring.py +0 -0
  602. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_event_subscribers.py +0 -0
  603. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_evidence_workspace.py +0 -0
  604. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_exploration_mechanisms.py +0 -0
  605. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_export_cli.py +0 -0
  606. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_export_skill_md.py +0 -0
  607. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_factual_confidence.py +0 -0
  608. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_failure_recovery_lessons.py +0 -0
  609. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_failure_report.py +0 -0
  610. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_family_pipeline.py +0 -0
  611. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_freshness_and_fixtures.py +0 -0
  612. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_gate_taxonomy.py +0 -0
  613. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_generation_pipeline.py +0 -0
  614. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_generation_stages.py +0 -0
  615. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_generic_creator.py +0 -0
  616. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/__init__.py +0 -0
  617. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_adapt_applicator.py +0 -0
  618. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_adapt_types.py +0 -0
  619. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_audit_types.py +0 -0
  620. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_audit_writer.py +0 -0
  621. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_controller.py +0 -0
  622. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_cost_calculator.py +0 -0
  623. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_cost_tracker.py +0 -0
  624. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_cost_types.py +0 -0
  625. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_elo.py +0 -0
  626. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_eval_runner.py +0 -0
  627. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_eval_types.py +0 -0
  628. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_evaluator.py +0 -0
  629. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_events.py +0 -0
  630. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_gate.py +0 -0
  631. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_llm_client.py +0 -0
  632. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_meta_advisor.py +0 -0
  633. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_meta_collector.py +0 -0
  634. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_meta_optimizer.py +0 -0
  635. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_meta_profiler.py +0 -0
  636. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_meta_types.py +0 -0
  637. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_output_parser.py +0 -0
  638. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_pipeline_engine.py +0 -0
  639. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_repl_session.py +0 -0
  640. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_repl_types.py +0 -0
  641. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_repl_worker.py +0 -0
  642. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_retry_context.py +0 -0
  643. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_role_dag.py +0 -0
  644. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_scenario_evaluator.py +0 -0
  645. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_subagent.py +0 -0
  646. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_trend_gate.py +0 -0
  647. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_types.py +0 -0
  648. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_harness_versioned_store.py +0 -0
  649. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness/test_output_parser_adoption.py +0 -0
  650. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_coverage.py +0 -0
  651. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_inheritance.py +0 -0
  652. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_loader.py +0 -0
  653. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_mode.py +0 -0
  654. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_model_demotion.py +0 -0
  655. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_mutations.py +0 -0
  656. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_quality.py +0 -0
  657. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_synthesizer.py +0 -0
  658. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_tester.py +0 -0
  659. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_harness_versioning.py +0 -0
  660. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hermes_gateway.py +0 -0
  661. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hermes_protocol_alignment.py +0 -0
  662. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hermes_runtime.py +0 -0
  663. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hint_feedback.py +0 -0
  664. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hint_persistence.py +0 -0
  665. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hint_volume_control.py +0 -0
  666. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_holdout_evaluation.py +0 -0
  667. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hub_api.py +0 -0
  668. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_human_feedback.py +0 -0
  669. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_hypothesis_tree.py +0 -0
  670. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_improvement_loop.py +0 -0
  671. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_improvement_loop_resilience.py +0 -0
  672. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_integration_docs.py +0 -0
  673. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_integration_improvement.py +0 -0
  674. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_intent_validation.py +0 -0
  675. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_interface_conventions.py +0 -0
  676. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_investigation_actions_coerce.py +0 -0
  677. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_investigation_workflow.py +0 -0
  678. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_judge_rubrics.py +0 -0
  679. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_knowledge_api.py +0 -0
  680. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_knowledge_coherence.py +0 -0
  681. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_lesson_applicability.py +0 -0
  682. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_living_docs.py +0 -0
  683. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_loop_controller.py +0 -0
  684. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_loop_integration_snapshot_evidence.py +0 -0
  685. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_match_export.py +0 -0
  686. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_mcp_agent_tasks.py +0 -0
  687. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_mcp_server.py +0 -0
  688. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_mcp_tools.py +0 -0
  689. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_memory_consolidation.py +0 -0
  690. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_mlx_provider.py +0 -0
  691. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_model_registry.py +0 -0
  692. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_model_router.py +0 -0
  693. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_model_router_integration.py +0 -0
  694. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_module_size_limits.py +0 -0
  695. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monitor.py +0 -0
  696. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_e2e.py +0 -0
  697. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_executor.py +0 -0
  698. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_live.py +0 -0
  699. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_repl_integration.py +0 -0
  700. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_repl_live.py +0 -0
  701. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_repl_settings.py +0 -0
  702. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_repl_wiring.py +0 -0
  703. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_repl_worker.py +0 -0
  704. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_monty_settings.py +0 -0
  705. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_multi_gen_stall.py +0 -0
  706. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_mutation_log.py +0 -0
  707. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_negotiation.py +0 -0
  708. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_negotiation_verification.py +0 -0
  709. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_new_scenario_cli.py +0 -0
  710. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_normalized_metrics.py +0 -0
  711. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_notebook_wiring.py +0 -0
  712. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_notifications.py +0 -0
  713. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_objective_guardrail.py +0 -0
  714. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_objective_verification.py +0 -0
  715. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openai_agent_provider.py +0 -0
  716. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openclaw_adapters.py +0 -0
  717. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openclaw_agent_adapter.py +0 -0
  718. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openclaw_discovery.py +0 -0
  719. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openclaw_operations.py +0 -0
  720. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_openclaw_skill.py +0 -0
  721. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_operator_loop_coordination.py +0 -0
  722. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_operator_loop_unsupported.py +0 -0
  723. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_orchestrator_feedback.py +0 -0
  724. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_output_cleaner.py +0 -0
  725. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_param_type_conventions.py +0 -0
  726. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pareto_optimizer.py +0 -0
  727. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_phased_execution.py +0 -0
  728. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_artifacts.py +0 -0
  729. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_protocol_alignment.py +0 -0
  730. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pi_smoke.py +0 -0
  731. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pipeline_wiring.py +0 -0
  732. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_policy_executor.py +0 -0
  733. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_policy_refinement.py +0 -0
  734. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_policy_refinement_integration.py +0 -0
  735. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_preflight.py +0 -0
  736. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_prepare_mlx.py +0 -0
  737. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_preset_named.py +0 -0
  738. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_presets.py +0 -0
  739. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_prevalidation.py +0 -0
  740. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_primeintellect_client.py +0 -0
  741. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_probe_pipeline.py +0 -0
  742. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_program_template.py +0 -0
  743. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_progress_digests.py +0 -0
  744. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_progress_json.py +0 -0
  745. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_protocol.py +0 -0
  746. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_protocol_parity.py +0 -0
  747. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_provider_retry.py +0 -0
  748. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_providers.py +0 -0
  749. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_pydantic_migration.py +0 -0
  750. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rapid_exploration.py +0 -0
  751. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_refinement_prompt.py +0 -0
  752. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_remote_bridge.py +0 -0
  753. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_remove_hardcoded_models.py +0 -0
  754. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_removed_backpressure_modules.py +0 -0
  755. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_removed_harness_modules.py +0 -0
  756. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_replay_narrative_flow.py +0 -0
  757. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_adapter.py +0 -0
  758. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_consultation.py +0 -0
  759. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_eval.py +0 -0
  760. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_hub.py +0 -0
  761. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_persistence.py +0 -0
  762. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_prompt_wiring.py +0 -0
  763. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_protocol.py +0 -0
  764. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_research_runtime.py +0 -0
  765. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_restore_versioning.py +0 -0
  766. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_retry_learning.py +0 -0
  767. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_retry_provider.py +0 -0
  768. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_revise_output_fix.py +0 -0
  769. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rlm_competitor.py +0 -0
  770. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rlm_context_loader.py +0 -0
  771. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rlm_integration.py +0 -0
  772. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rlm_repl_worker.py +0 -0
  773. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rlm_session.py +0 -0
  774. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_role_router.py +0 -0
  775. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rubric_calibration.py +0 -0
  776. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_rubric_drift_calibration.py +0 -0
  777. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_run_trace.py +0 -0
  778. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_runner_integration.py +0 -0
  779. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_runtimes.py +0 -0
  780. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sample_states.py +0 -0
  781. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sandbox.py +0 -0
  782. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_behavioral_contract.py +0 -0
  783. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_capabilities.py +0 -0
  784. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_creator.py +0 -0
  785. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_dispatch.py +0 -0
  786. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_families.py +0 -0
  787. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_routing.py +0 -0
  788. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_templates.py +0 -0
  789. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenario_type_completeness.py +0 -0
  790. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scenarios.py +0 -0
  791. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_schema_evolution_tool_fragility.py +0 -0
  792. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_score_trajectory.py +0 -0
  793. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_scoring_backends.py +0 -0
  794. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sdk.py +0 -0
  795. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_secret_scanner.py +0 -0
  796. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_seed_tools.py +0 -0
  797. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_self_play.py +0 -0
  798. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_serde_conventions.py +0 -0
  799. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_server_health.py +0 -0
  800. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_service_layer.py +0 -0
  801. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_session_notebook.py +0 -0
  802. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_session_report_wiring.py +0 -0
  803. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_session_reports.py +0 -0
  804. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_session_runtime.py +0 -0
  805. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_session_supervisor.py +0 -0
  806. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_settings_cleanup.py +0 -0
  807. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_shared_tools.py +0 -0
  808. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sharing.py +0 -0
  809. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_simulate_bug_fixes.py +0 -0
  810. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_simulation_contract.py +0 -0
  811. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_simulation_spec.py +0 -0
  812. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_skeptic.py +0 -0
  813. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_skill_consolidation.py +0 -0
  814. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_skill_registry.py +0 -0
  815. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_smoke_judge.py +0 -0
  816. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sqlite_store.py +0 -0
  817. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_sqlite_store_bootstrap.py +0 -0
  818. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_ssh_executor.py +0 -0
  819. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stage_preflight.py +0 -0
  820. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stage_probe.py +0 -0
  821. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stage_staged_validation.py +0 -0
  822. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stage_tree_search.py +0 -0
  823. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_staged_runner.py +0 -0
  824. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_staged_validation.py +0 -0
  825. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_staged_validation_storage.py +0 -0
  826. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stages_enriched_retry.py +0 -0
  827. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_stagnation.py +0 -0
  828. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_startup_verification.py +0 -0
  829. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_strategy_package.py +0 -0
  830. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_strategy_package_cli.py +0 -0
  831. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_task_metrics.py +0 -0
  832. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_task_queue_priority.py +0 -0
  833. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_time_budget.py +0 -0
  834. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_timeline_inspector.py +0 -0
  835. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_tool_context_full.py +0 -0
  836. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_tool_validation.py +0 -0
  837. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_tournament_helpers.py +0 -0
  838. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_trace_reporter.py +0 -0
  839. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_train_mlx.py +0 -0
  840. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_train_summary.py +0 -0
  841. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_training_backend.py +0 -0
  842. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_training_export.py +0 -0
  843. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_training_init.py +0 -0
  844. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_training_pi_provider.py +0 -0
  845. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_training_runner.py +0 -0
  846. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_trajectory_harness.py +0 -0
  847. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_translator_simplification.py +0 -0
  848. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_trend_gate_integration.py +0 -0
  849. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_two_tier_tournament.py +0 -0
  850. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_typed_contracts.py +0 -0
  851. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_typed_dict_rows.py +0 -0
  852. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_validity_gate.py +0 -0
  853. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_verification_dataset.py +0 -0
  854. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_weakness_reports.py +0 -0
  855. {autocontext-0.4.0 → autocontext-0.4.2}/tests/test_world_state.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: autocontext
3
- Version: 0.4.0
3
+ Version: 0.4.2
4
4
  Summary: autocontext control plane for iterative strategy evolution.
5
5
  Project-URL: Homepage, https://github.com/greyhaven-ai/autocontext
6
6
  Project-URL: Repository, https://github.com/greyhaven-ai/autocontext
@@ -60,7 +60,7 @@ The intended use is to hand the harness a real task in plain language, let it so
60
60
  pip install autocontext
61
61
  ```
62
62
 
63
- The current PyPI release line is `autocontext==0.4.0`.
63
+ The current PyPI release line is `autocontext==0.4.2`.
64
64
  The PyPI package name is now `autocontext`. The CLI entrypoint remains `autoctx`.
65
65
 
66
66
  ## Working Directory
@@ -82,13 +82,13 @@ The Python package is the full control-plane surface in this repo. It currently
82
82
 
83
83
  - generation-loop execution via `autoctx run`
84
84
  - plain-language simulation via `autoctx simulate`
85
+ - plain-language investigation via `autoctx investigate`
85
86
  - local training workflows via `autoctx export-training-data` and `autoctx train`
86
87
  - scenario creation and materialization via `autoctx new-scenario`
87
88
  - HTTP API and MCP server surfaces via `autoctx serve` and `autoctx mcp-serve`
88
89
 
89
90
  Some newer operator-facing surfaces are currently TypeScript-first:
90
91
 
91
- - `autoctx investigate`
92
92
  - `autoctx analyze`
93
93
  - the interactive terminal UI via `npx autoctx tui`
94
94
 
@@ -105,7 +105,7 @@ source .venv/bin/activate
105
105
  uv sync --group dev
106
106
  ```
107
107
 
108
- Use the repo-level `.env.example` as the reference for available `AUTOCONTEXT_*` settings.
108
+ Use the repo-level `.env.example` as the reference for available `AUTOCONTEXT_*` settings and supported provider-native credential aliases such as `ANTHROPIC_API_KEY`.
109
109
 
110
110
  `operator-in-the-loop` is a runnable scenario family for escalation and clarification experiments. Use it when you want executable operator-loop simulations, judgment evaluation, and live-agent escalation workflow testing.
111
111
 
@@ -120,7 +120,28 @@ Run with Anthropic:
120
120
 
121
121
  ```bash
122
122
  AUTOCONTEXT_AGENT_PROVIDER=anthropic \
123
- AUTOCONTEXT_ANTHROPIC_API_KEY=... \
123
+ ANTHROPIC_API_KEY=... \
124
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
125
+ ```
126
+
127
+ `ANTHROPIC_API_KEY` is the preferred Anthropic credential env var. `AUTOCONTEXT_ANTHROPIC_API_KEY` remains supported as a compatibility alias.
128
+
129
+ Run with Claude CLI (`claude -p` via a local authenticated Claude Code runtime):
130
+
131
+ ```bash
132
+ AUTOCONTEXT_AGENT_PROVIDER=claude-cli \
133
+ AUTOCONTEXT_CLAUDE_MODEL=sonnet \
134
+ AUTOCONTEXT_CLAUDE_TIMEOUT=300 \
135
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
136
+ ```
137
+
138
+ For longer `autoctx judge` / `autoctx improve` prompts on `claude-cli`, use `--timeout <seconds>` or set `AUTOCONTEXT_CLAUDE_TIMEOUT`.
139
+
140
+ Run with Codex CLI (`codex exec` via a local authenticated Codex runtime):
141
+
142
+ ```bash
143
+ AUTOCONTEXT_AGENT_PROVIDER=codex \
144
+ AUTOCONTEXT_CODEX_MODEL=o4-mini \
124
145
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
125
146
  ```
126
147
 
@@ -132,7 +153,9 @@ AUTOCONTEXT_PI_COMMAND=pi \
132
153
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
133
154
  ```
134
155
 
135
- `autoctx simulate` now follows the effective architect-role runtime surface, so `AUTOCONTEXT_ARCHITECT_PROVIDER` and other role-routing overrides apply to live simulation generation as well.
156
+ `autoctx simulate` now follows the effective architect-role runtime surface, so `AUTOCONTEXT_ARCHITECT_PROVIDER`, other role-routing overrides, and per-call `--provider <name>` overrides all apply to live simulation generation.
157
+
158
+ `autoctx investigate` now ships as a first-class Python CLI surface as well. It uses the architect runtime for investigation-spec synthesis and the analyst runtime for hypothesis generation, so role-routing overrides apply there too.
136
159
 
137
160
  Run with Pi RPC (remote Pi agent via HTTP):
138
161
 
@@ -172,6 +195,9 @@ uv run autoctx mcp-serve
172
195
  ```bash
173
196
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
174
197
  uv run autoctx simulate --description "simulate deploying a web service with rollback"
198
+ uv run autoctx simulate --description "simulate deploying a web service with rollback" --provider claude-cli
199
+ uv run autoctx investigate --description "why did conversion drop after Tuesday's release"
200
+ uv run autoctx queue add --task-prompt "Write a 1-line fact about primes" --rubric "correct" --threshold 0.8 --rounds 2
175
201
  uv run autoctx simulate --replay deploy_sim --variables threshold=0.9
176
202
  uv run autoctx list
177
203
  uv run autoctx status <run_id>
@@ -186,10 +212,19 @@ uv run autoctx mcp-serve
186
212
  uv run autoctx wait <condition_id> --json
187
213
  ```
188
214
 
215
+ Saved custom scenarios under `knowledge/_custom_scenarios/` can be rerun and benchmarked by name once their `spec.json` has been persisted, so the `new-scenario` / `solve` workflow lines up with the named `run` and `benchmark` surfaces.
216
+
189
217
  Useful variants:
190
218
 
191
219
  ```bash
192
- AUTOCONTEXT_AGENT_PROVIDER=anthropic AUTOCONTEXT_ANTHROPIC_API_KEY=... \
220
+ AUTOCONTEXT_AGENT_PROVIDER=anthropic ANTHROPIC_API_KEY=... \
221
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
222
+
223
+ AUTOCONTEXT_AGENT_PROVIDER=anthropic \
224
+ ANTHROPIC_API_KEY=sk-ant-primary \
225
+ AUTOCONTEXT_COMPETITOR_PROVIDER=openai-compatible \
226
+ AUTOCONTEXT_COMPETITOR_API_KEY=sk-role \
227
+ AUTOCONTEXT_COMPETITOR_BASE_URL=http://localhost:8000/v1 \
193
228
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
194
229
 
195
230
  AUTOCONTEXT_AGENT_PROVIDER=deterministic AUTOCONTEXT_RLM_ENABLED=true \
@@ -284,7 +319,7 @@ autocontext exposes:
284
319
  - [Agent integration guide](docs/agent-integration.md) — CLI-first integration for external agents, MCP fallback, JSON output reference
285
320
  - [Sandbox modes](docs/sandbox.md)
286
321
  - [MLX host training](docs/mlx-training.md)
287
- - [TypeScript package guide](../ts/README.md) — `investigate`, `analyze`, and interactive TUI surfaces
322
+ - [TypeScript package guide](../ts/README.md) — `analyze`, mission control, and interactive TUI surfaces
288
323
  - [Demo data notes](demo_data/README.md)
289
324
  - [Copy-paste examples](../examples/README.md)
290
325
  - [Change history](../CHANGELOG.md)
@@ -10,7 +10,7 @@ The intended use is to hand the harness a real task in plain language, let it so
10
10
  pip install autocontext
11
11
  ```
12
12
 
13
- The current PyPI release line is `autocontext==0.4.0`.
13
+ The current PyPI release line is `autocontext==0.4.2`.
14
14
  The PyPI package name is now `autocontext`. The CLI entrypoint remains `autoctx`.
15
15
 
16
16
  ## Working Directory
@@ -32,13 +32,13 @@ The Python package is the full control-plane surface in this repo. It currently
32
32
 
33
33
  - generation-loop execution via `autoctx run`
34
34
  - plain-language simulation via `autoctx simulate`
35
+ - plain-language investigation via `autoctx investigate`
35
36
  - local training workflows via `autoctx export-training-data` and `autoctx train`
36
37
  - scenario creation and materialization via `autoctx new-scenario`
37
38
  - HTTP API and MCP server surfaces via `autoctx serve` and `autoctx mcp-serve`
38
39
 
39
40
  Some newer operator-facing surfaces are currently TypeScript-first:
40
41
 
41
- - `autoctx investigate`
42
42
  - `autoctx analyze`
43
43
  - the interactive terminal UI via `npx autoctx tui`
44
44
 
@@ -55,7 +55,7 @@ source .venv/bin/activate
55
55
  uv sync --group dev
56
56
  ```
57
57
 
58
- Use the repo-level `.env.example` as the reference for available `AUTOCONTEXT_*` settings.
58
+ Use the repo-level `.env.example` as the reference for available `AUTOCONTEXT_*` settings and supported provider-native credential aliases such as `ANTHROPIC_API_KEY`.
59
59
 
60
60
  `operator-in-the-loop` is a runnable scenario family for escalation and clarification experiments. Use it when you want executable operator-loop simulations, judgment evaluation, and live-agent escalation workflow testing.
61
61
 
@@ -70,7 +70,28 @@ Run with Anthropic:
70
70
 
71
71
  ```bash
72
72
  AUTOCONTEXT_AGENT_PROVIDER=anthropic \
73
- AUTOCONTEXT_ANTHROPIC_API_KEY=... \
73
+ ANTHROPIC_API_KEY=... \
74
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
75
+ ```
76
+
77
+ `ANTHROPIC_API_KEY` is the preferred Anthropic credential env var. `AUTOCONTEXT_ANTHROPIC_API_KEY` remains supported as a compatibility alias.
78
+
79
+ Run with Claude CLI (`claude -p` via a local authenticated Claude Code runtime):
80
+
81
+ ```bash
82
+ AUTOCONTEXT_AGENT_PROVIDER=claude-cli \
83
+ AUTOCONTEXT_CLAUDE_MODEL=sonnet \
84
+ AUTOCONTEXT_CLAUDE_TIMEOUT=300 \
85
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
86
+ ```
87
+
88
+ For longer `autoctx judge` / `autoctx improve` prompts on `claude-cli`, use `--timeout <seconds>` or set `AUTOCONTEXT_CLAUDE_TIMEOUT`.
89
+
90
+ Run with Codex CLI (`codex exec` via a local authenticated Codex runtime):
91
+
92
+ ```bash
93
+ AUTOCONTEXT_AGENT_PROVIDER=codex \
94
+ AUTOCONTEXT_CODEX_MODEL=o4-mini \
74
95
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
75
96
  ```
76
97
 
@@ -82,7 +103,9 @@ AUTOCONTEXT_PI_COMMAND=pi \
82
103
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
83
104
  ```
84
105
 
85
- `autoctx simulate` now follows the effective architect-role runtime surface, so `AUTOCONTEXT_ARCHITECT_PROVIDER` and other role-routing overrides apply to live simulation generation as well.
106
+ `autoctx simulate` now follows the effective architect-role runtime surface, so `AUTOCONTEXT_ARCHITECT_PROVIDER`, other role-routing overrides, and per-call `--provider <name>` overrides all apply to live simulation generation.
107
+
108
+ `autoctx investigate` now ships as a first-class Python CLI surface as well. It uses the architect runtime for investigation-spec synthesis and the analyst runtime for hypothesis generation, so role-routing overrides apply there too.
86
109
 
87
110
  Run with Pi RPC (remote Pi agent via HTTP):
88
111
 
@@ -122,6 +145,9 @@ uv run autoctx mcp-serve
122
145
  ```bash
123
146
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
124
147
  uv run autoctx simulate --description "simulate deploying a web service with rollback"
148
+ uv run autoctx simulate --description "simulate deploying a web service with rollback" --provider claude-cli
149
+ uv run autoctx investigate --description "why did conversion drop after Tuesday's release"
150
+ uv run autoctx queue add --task-prompt "Write a 1-line fact about primes" --rubric "correct" --threshold 0.8 --rounds 2
125
151
  uv run autoctx simulate --replay deploy_sim --variables threshold=0.9
126
152
  uv run autoctx list
127
153
  uv run autoctx status <run_id>
@@ -136,10 +162,19 @@ uv run autoctx mcp-serve
136
162
  uv run autoctx wait <condition_id> --json
137
163
  ```
138
164
 
165
+ Saved custom scenarios under `knowledge/_custom_scenarios/` can be rerun and benchmarked by name once their `spec.json` has been persisted, so the `new-scenario` / `solve` workflow lines up with the named `run` and `benchmark` surfaces.
166
+
139
167
  Useful variants:
140
168
 
141
169
  ```bash
142
- AUTOCONTEXT_AGENT_PROVIDER=anthropic AUTOCONTEXT_ANTHROPIC_API_KEY=... \
170
+ AUTOCONTEXT_AGENT_PROVIDER=anthropic ANTHROPIC_API_KEY=... \
171
+ uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
172
+
173
+ AUTOCONTEXT_AGENT_PROVIDER=anthropic \
174
+ ANTHROPIC_API_KEY=sk-ant-primary \
175
+ AUTOCONTEXT_COMPETITOR_PROVIDER=openai-compatible \
176
+ AUTOCONTEXT_COMPETITOR_API_KEY=sk-role \
177
+ AUTOCONTEXT_COMPETITOR_BASE_URL=http://localhost:8000/v1 \
143
178
  uv run autoctx solve --description "improve customer-support replies for billing disputes" --gens 3
144
179
 
145
180
  AUTOCONTEXT_AGENT_PROVIDER=deterministic AUTOCONTEXT_RLM_ENABLED=true \
@@ -234,7 +269,7 @@ autocontext exposes:
234
269
  - [Agent integration guide](docs/agent-integration.md) — CLI-first integration for external agents, MCP fallback, JSON output reference
235
270
  - [Sandbox modes](docs/sandbox.md)
236
271
  - [MLX host training](docs/mlx-training.md)
237
- - [TypeScript package guide](../ts/README.md) — `investigate`, `analyze`, and interactive TUI surfaces
272
+ - [TypeScript package guide](../ts/README.md) — `analyze`, mission control, and interactive TUI surfaces
238
273
  - [Demo data notes](demo_data/README.md)
239
274
  - [Copy-paste examples](../examples/README.md)
240
275
  - [Change history](../CHANGELOG.md)
@@ -223,7 +223,7 @@ Configure which LLM provider autocontext uses via environment variables:
223
223
  ```bash
224
224
  # Anthropic (default)
225
225
  AUTOCONTEXT_AGENT_PROVIDER=anthropic \
226
- AUTOCONTEXT_ANTHROPIC_API_KEY=sk-ant-... \
226
+ ANTHROPIC_API_KEY=sk-ant-... \
227
227
  autoctx run --scenario my_task --json
228
228
 
229
229
  # OpenAI-compatible
@@ -267,17 +267,35 @@ AUTOCONTEXT_AGENT_PROVIDER=pi-rpc \
267
267
  AUTOCONTEXT_PI_RPC_ENDPOINT=http://localhost:3284 \
268
268
  AUTOCONTEXT_PI_RPC_API_KEY=your-key \
269
269
  autoctx run --scenario my_task --json
270
+
271
+ # Role-scoped override: competitor uses a separate gateway/key
272
+ AUTOCONTEXT_AGENT_PROVIDER=anthropic \
273
+ ANTHROPIC_API_KEY=sk-ant-primary \
274
+ AUTOCONTEXT_COMPETITOR_PROVIDER=openai-compatible \
275
+ AUTOCONTEXT_COMPETITOR_API_KEY=sk-role \
276
+ AUTOCONTEXT_COMPETITOR_BASE_URL=http://localhost:8000/v1 \
277
+ autoctx run --scenario my_task --json
270
278
  ```
271
279
 
280
+ `ANTHROPIC_API_KEY` is the preferred Anthropic credential env var. `AUTOCONTEXT_ANTHROPIC_API_KEY` remains supported as a compatibility alias.
281
+
272
282
  Key environment variables:
273
283
 
274
284
  | Variable | Purpose |
275
285
  |---|---|
276
286
  | `AUTOCONTEXT_AGENT_PROVIDER` | Agent provider: `anthropic`, `openai-compatible`, `ollama`, `vllm`, `pi`, `pi-rpc`, `deterministic` |
287
+ | `AUTOCONTEXT_AGENT_API_KEY` | Global agent API key override (or use provider-native env vars such as `ANTHROPIC_API_KEY`) |
288
+ | `AUTOCONTEXT_AGENT_BASE_URL` | Global base URL for OpenAI-compatible agent endpoints |
289
+ | `AUTOCONTEXT_COMPETITOR_API_KEY` / `AUTOCONTEXT_COMPETITOR_BASE_URL` | Optional competitor-specific credential and endpoint override |
290
+ | `AUTOCONTEXT_ANALYST_API_KEY` / `AUTOCONTEXT_ANALYST_BASE_URL` | Optional analyst-specific credential and endpoint override |
291
+ | `AUTOCONTEXT_COACH_API_KEY` / `AUTOCONTEXT_COACH_BASE_URL` | Optional coach-specific credential and endpoint override |
292
+ | `AUTOCONTEXT_ARCHITECT_API_KEY` / `AUTOCONTEXT_ARCHITECT_BASE_URL` | Optional architect-specific credential and endpoint override |
277
293
  | `AUTOCONTEXT_JUDGE_PROVIDER` | Judge provider (defaults to `anthropic`) |
278
294
  | `AUTOCONTEXT_JUDGE_API_KEY` | API key for the judge provider |
279
295
  | `AUTOCONTEXT_JUDGE_BASE_URL` | Base URL for OpenAI-compatible judge endpoints |
280
296
  | `AUTOCONTEXT_JUDGE_MODEL` | Override judge model name |
297
+ | `AUTOCONTEXT_CLAUDE_MODEL` | Claude CLI model alias (default: `sonnet`) |
298
+ | `AUTOCONTEXT_CLAUDE_TIMEOUT` | Claude CLI execution timeout in seconds (default: 120) |
281
299
  | `AUTOCONTEXT_MODEL_COMPETITOR` | Override competitor agent model |
282
300
  | `AUTOCONTEXT_DB_PATH` | SQLite database path |
283
301
  | `AUTOCONTEXT_PI_COMMAND` | Path to Pi CLI binary (default: `pi`) |
@@ -530,7 +548,7 @@ Add to your project's `.claude/settings.json`:
530
548
  "args": ["run", "--directory", "/path/to/autocontext", "autoctx", "mcp-serve"],
531
549
  "env": {
532
550
  "AUTOCONTEXT_AGENT_PROVIDER": "anthropic",
533
- "AUTOCONTEXT_ANTHROPIC_API_KEY": "sk-ant-..."
551
+ "ANTHROPIC_API_KEY": "sk-ant-..."
534
552
  }
535
553
  }
536
554
  }
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "autocontext"
7
- version = "0.4.0"
7
+ version = "0.4.2"
8
8
  description = "autocontext control plane for iterative strategy evolution."
9
9
  readme = "README.md"
10
10
  license = { text = "Apache-2.0" }
@@ -4,4 +4,4 @@ from autocontext.sdk import AutoContext
4
4
 
5
5
  __all__ = ["AutoContext", "__version__"]
6
6
 
7
- __version__ = "0.4.0"
7
+ __version__ = "0.4.2"
@@ -15,10 +15,11 @@ Key types:
15
15
 
16
16
  from __future__ import annotations
17
17
 
18
+ import json
18
19
  import statistics
19
20
  from typing import Any
20
21
 
21
- from pydantic import BaseModel, Field, computed_field
22
+ from pydantic import BaseModel, Field, computed_field, field_validator
22
23
 
23
24
  # ---------------------------------------------------------------------------
24
25
  # AC-336: Analyst quality scoring
@@ -39,6 +40,17 @@ class AnalystRating(BaseModel):
39
40
  def overall(self) -> float:
40
41
  return round(statistics.mean([self.actionability, self.specificity, self.correctness]), 2)
41
42
 
43
+ @field_validator("rationale", mode="before")
44
+ @classmethod
45
+ def _coerce_rationale(cls, value: Any) -> str:
46
+ if value is None:
47
+ return ""
48
+ if isinstance(value, str):
49
+ return value
50
+ if isinstance(value, dict | list):
51
+ return json.dumps(value, sort_keys=True)
52
+ return str(value)
53
+
42
54
  def to_dict(self) -> dict[str, Any]:
43
55
  return self.model_dump()
44
56
 
@@ -90,8 +102,7 @@ class ToolUsageTracker:
90
102
  def __init__(self, known_tools: list[str]) -> None:
91
103
  self._tools = known_tools
92
104
  self._records: dict[str, ToolUsageRecord] = {
93
- name: ToolUsageRecord(tool_name=name, used_in_gens=[], last_used=0, total_refs=0)
94
- for name in known_tools
105
+ name: ToolUsageRecord(tool_name=name, used_in_gens=[], last_used=0, total_refs=0) for name in known_tools
95
106
  }
96
107
 
97
108
  def record_generation(self, generation: int, strategy_text: str) -> None:
@@ -110,10 +121,7 @@ class ToolUsageTracker:
110
121
 
111
122
  def to_dict(self) -> dict[str, Any]:
112
123
  return {
113
- "records": {
114
- name: record.to_dict()
115
- for name, record in sorted(self._records.items())
116
- },
124
+ "records": {name: record.to_dict() for name, record in sorted(self._records.items())},
117
125
  }
118
126
 
119
127
  @classmethod
@@ -529,7 +529,11 @@ def build_client_from_settings(
529
529
  ) -> LanguageModelClient:
530
530
  """Construct a LanguageModelClient from AppSettings."""
531
531
  if settings.agent_provider == "anthropic":
532
- api_key = settings.anthropic_api_key or os.getenv("ANTHROPIC_API_KEY", "")
532
+ api_key = (
533
+ settings.anthropic_api_key
534
+ or os.getenv("ANTHROPIC_API_KEY")
535
+ or os.getenv("AUTOCONTEXT_ANTHROPIC_API_KEY", "")
536
+ )
533
537
  if not api_key:
534
538
  raise ValueError(
535
539
  "AUTOCONTEXT_ANTHROPIC_API_KEY or ANTHROPIC_API_KEY is required "
@@ -564,6 +568,30 @@ def build_client_from_settings(
564
568
  model=settings.agent_default_model,
565
569
  )
566
570
  return ProviderBridgeClient(provider, use_provider_default_model=True)
571
+ if settings.agent_provider == "claude-cli":
572
+ from autocontext.agents.provider_bridge import RuntimeBridgeClient
573
+ from autocontext.runtimes.claude_cli import ClaudeCLIConfig, ClaudeCLIRuntime
574
+
575
+ claude_config = ClaudeCLIConfig(
576
+ model=settings.claude_model,
577
+ tools=settings.claude_tools,
578
+ permission_mode=settings.claude_permission_mode,
579
+ session_persistence=settings.claude_session_persistence,
580
+ timeout=settings.claude_timeout,
581
+ )
582
+ return RuntimeBridgeClient(ClaudeCLIRuntime(claude_config))
583
+ if settings.agent_provider == "codex":
584
+ from autocontext.agents.provider_bridge import RuntimeBridgeClient
585
+ from autocontext.runtimes.codex_cli import CodexCLIConfig, CodexCLIRuntime
586
+
587
+ codex_config = CodexCLIConfig(
588
+ model=settings.codex_model,
589
+ approval_mode=settings.codex_approval_mode,
590
+ timeout=settings.codex_timeout,
591
+ workspace=settings.codex_workspace,
592
+ quiet=settings.codex_quiet,
593
+ )
594
+ return RuntimeBridgeClient(CodexCLIRuntime(codex_config))
567
595
  if settings.agent_provider == "pi":
568
596
  from autocontext.agents.provider_bridge import RuntimeBridgeClient
569
597
  from autocontext.providers.scenario_routing import resolve_pi_model
@@ -585,19 +613,20 @@ def build_client_from_settings(
585
613
  if handoff is not None:
586
614
  resolved_model = handoff.checkpoint_path
587
615
 
588
- config = PiCLIConfig(
616
+ pi_config = PiCLIConfig(
589
617
  pi_command=settings.pi_command,
590
618
  timeout=settings.pi_timeout,
591
619
  workspace=settings.pi_workspace,
592
620
  model=resolved_model,
593
621
  )
594
- return RuntimeBridgeClient(PiCLIRuntime(config))
622
+ return RuntimeBridgeClient(PiCLIRuntime(pi_config))
595
623
  if settings.agent_provider == "pi-rpc":
596
624
  from autocontext.agents.provider_bridge import RuntimeBridgeClient
597
625
  from autocontext.runtimes.pi_rpc import PiRPCConfig, PiRPCRuntime
598
626
 
599
627
  rpc_config = PiRPCConfig(
600
628
  pi_command=settings.pi_command,
629
+ timeout=settings.pi_timeout,
601
630
  session_persistence=settings.pi_rpc_session_persistence,
602
631
  )
603
632
  return RuntimeBridgeClient(PiRPCRuntime(rpc_config))