devsper 2.2.0__tar.gz → 2.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (698) hide show
  1. {devsper-2.2.0 → devsper-2.4.0}/CHANGELOG.md +37 -0
  2. {devsper-2.2.0 → devsper-2.4.0}/PKG-INFO +2 -1
  3. devsper-2.4.0/devsper/README.md +148 -0
  4. {devsper-2.2.0 → devsper-2.4.0}/devsper/__init__.py +5 -1
  5. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/agent.py +405 -33
  6. devsper-2.4.0/devsper/cli/commands/cloud.py +718 -0
  7. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/main.py +319 -70
  8. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/components.py +18 -2
  9. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/run_view.py +76 -2
  10. {devsper-2.2.0 → devsper-2.4.0}/devsper/config/defaults.py +5 -3
  11. {devsper-2.2.0 → devsper-2.4.0}/devsper/config/resolver.py +76 -27
  12. {devsper-2.2.0 → devsper-2.4.0}/devsper/config/schema.py +50 -11
  13. devsper-2.4.0/devsper/connectors/__init__.py +18 -0
  14. devsper-2.4.0/devsper/connectors/base.py +59 -0
  15. devsper-2.4.0/devsper/connectors/registry.py +46 -0
  16. devsper-2.4.0/devsper/connectors/sample_connector.py +74 -0
  17. devsper-2.4.0/devsper/core/__init__.py +2 -0
  18. devsper-2.4.0/devsper/core/agent/__init__.py +4 -0
  19. devsper-2.4.0/devsper/core/agent/runner.py +14 -0
  20. devsper-2.4.0/devsper/core/hitl/__init__.py +4 -0
  21. devsper-2.4.0/devsper/core/hitl/state_machine.py +53 -0
  22. devsper-2.4.0/devsper/core/memory/__init__.py +4 -0
  23. devsper-2.4.0/devsper/core/memory/shared_memory.py +45 -0
  24. devsper-2.4.0/devsper/core/reporting/__init__.py +4 -0
  25. devsper-2.4.0/devsper/core/reporting/publisher.py +53 -0
  26. devsper-2.4.0/devsper/core/runtime/__init__.py +5 -0
  27. devsper-2.4.0/devsper/core/runtime/durability.py +45 -0
  28. devsper-2.4.0/devsper/core/runtime/orchestrator.py +14 -0
  29. devsper-2.4.0/devsper/core/tools/__init__.py +12 -0
  30. devsper-2.4.0/devsper/core/tools/base_tool.py +17 -0
  31. devsper-2.4.0/devsper/core/tools/loader.py +35 -0
  32. devsper-2.4.0/devsper/core/tools/registry.py +49 -0
  33. devsper-2.4.0/devsper/distributed/__init__.py +7 -0
  34. devsper-2.4.0/devsper/distributed/controller.py +70 -0
  35. devsper-2.4.0/devsper/distributed/worker_runtime.py +43 -0
  36. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/context.py +20 -3
  37. devsper-2.4.0/devsper/missions/__init__.py +16 -0
  38. devsper-2.4.0/devsper/missions/base_agent.py +22 -0
  39. devsper-2.4.0/devsper/missions/coding/__init__.py +13 -0
  40. devsper-2.4.0/devsper/missions/coding/architect_agent.py +10 -0
  41. devsper-2.4.0/devsper/missions/coding/coder_agent.py +10 -0
  42. devsper-2.4.0/devsper/missions/coding/debugger_agent.py +10 -0
  43. devsper-2.4.0/devsper/missions/coding/docs_agent.py +10 -0
  44. devsper-2.4.0/devsper/missions/coding/tester_agent.py +10 -0
  45. devsper-2.4.0/devsper/missions/iteration_loop.py +42 -0
  46. devsper-2.4.0/devsper/missions/mission_memory.py +70 -0
  47. devsper-2.4.0/devsper/missions/mission_planner.py +70 -0
  48. devsper-2.4.0/devsper/missions/mission_runner.py +232 -0
  49. devsper-2.4.0/devsper/missions/models.py +60 -0
  50. devsper-2.4.0/devsper/missions/research/__init__.py +6 -0
  51. devsper-2.4.0/devsper/missions/research/editor_agent.py +10 -0
  52. devsper-2.4.0/devsper/missions/research/researcher_agent.py +10 -0
  53. devsper-2.4.0/devsper/missions/research/reviewer_agent.py +10 -0
  54. devsper-2.4.0/devsper/missions/research/writer_agent.py +10 -0
  55. {devsper-2.2.0 → devsper-2.4.0}/devsper/nodes/controller.py +95 -6
  56. devsper-2.4.0/devsper/platform/redis_results_sink.py +181 -0
  57. devsper-2.4.0/devsper/platform/reporter.py +104 -0
  58. {devsper-2.2.0 → devsper-2.4.0}/devsper/platform/request_builder.py +18 -1
  59. {devsper-2.2.0 → devsper-2.4.0}/devsper/platform/runtime_events.py +63 -7
  60. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/base.py +9 -3
  61. devsper-2.4.0/devsper/runtime/__init__.py +34 -0
  62. devsper-2.4.0/devsper/runtime/agent_pool.py +85 -0
  63. devsper-2.4.0/devsper/runtime/agent_runner.py +79 -0
  64. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/clarification_manager.py +16 -0
  65. devsper-2.4.0/devsper/runtime/event_stream.py +58 -0
  66. devsper-2.4.0/devsper/runtime/execution_graph.py +101 -0
  67. devsper-2.4.0/devsper/runtime/executor.py +210 -0
  68. devsper-2.4.0/devsper/runtime/hitl.py +71 -0
  69. devsper-2.4.0/devsper/runtime/model_router.py +44 -0
  70. devsper-2.4.0/devsper/runtime/planner.py +28 -0
  71. devsper-2.4.0/devsper/runtime/retry.py +61 -0
  72. devsper-2.4.0/devsper/runtime/speculative_planner.py +51 -0
  73. devsper-2.4.0/devsper/runtime/state_manager.py +52 -0
  74. devsper-2.4.0/devsper/runtime/task_runner.py +87 -0
  75. devsper-2.4.0/devsper/runtime/tool_runner.py +169 -0
  76. devsper-2.4.0/devsper/server/swarmworker.py +193 -0
  77. devsper-2.4.0/devsper/storage/__init__.py +1 -0
  78. devsper-2.4.0/devsper/storage/uploads/__init__.py +4 -0
  79. devsper-2.4.0/devsper/storage/uploads/store.py +42 -0
  80. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/executor.py +33 -0
  81. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/swarm.py +1 -1
  82. devsper-2.4.0/devsper/tools/__init__.py +40 -0
  83. devsper-2.4.0/devsper/tools/default/__init__.py +15 -0
  84. devsper-2.4.0/devsper/tools/default/fetch_url.py +46 -0
  85. devsper-2.4.0/devsper/tools/default/python_exec.py +37 -0
  86. devsper-2.4.0/devsper/tools/default/read_csv.py +80 -0
  87. devsper-2.4.0/devsper/tools/default/upload_file.py +36 -0
  88. devsper-2.4.0/devsper/tools/default/web_search.py +87 -0
  89. devsper-2.4.0/devsper/tools/hitl_request.py +53 -0
  90. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/store_memory.py +6 -1
  91. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/registry.py +12 -18
  92. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/run_shell_command.py +26 -8
  93. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/tool_runner.py +2 -1
  94. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/app.py +40 -0
  95. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/dashboard_screen.py +19 -0
  96. devsper-2.4.0/devsper/tui/mission_view.py +44 -0
  97. {devsper-2.2.0 → devsper-2.4.0}/devsper/types/event.py +22 -0
  98. {devsper-2.2.0 → devsper-2.4.0}/devsper/utils/event_logger.py +41 -9
  99. {devsper-2.2.0 → devsper-2.4.0}/pyproject.toml +2 -2
  100. devsper-2.4.0/tests/integration/test_controller_restart_hitl.py +37 -0
  101. devsper-2.4.0/tests/integration/test_duplicate_event_delivery.py +45 -0
  102. devsper-2.4.0/tests/integration/test_event_idempotency.py +34 -0
  103. devsper-2.4.0/tests/integration/test_event_retry.py +54 -0
  104. devsper-2.4.0/tests/integration/test_hitl_pause_resume.py +75 -0
  105. devsper-2.4.0/tests/integration/test_sse_reconnect.py +16 -0
  106. devsper-2.4.0/tests/integration/test_sse_stream.py +54 -0
  107. devsper-2.4.0/tests/integration/test_worker_crash_recovery.py +25 -0
  108. devsper-2.4.0/tests/memory/test_memory_context_run_scope.py +16 -0
  109. {devsper-2.2.0 → devsper-2.4.0}/tests/test_clarification.py +86 -6
  110. devsper-2.4.0/tests/test_missions.py +20 -0
  111. {devsper-2.2.0 → devsper-2.4.0}/tests/test_platform_runtime_events.py +17 -1
  112. devsper-2.4.0/tests/tools/test_core_tool_registry.py +25 -0
  113. {devsper-2.2.0 → devsper-2.4.0}/uv.lock +3 -1
  114. devsper-2.2.0/devsper/cli/commands/cloud.py +0 -349
  115. devsper-2.2.0/devsper/runtime/__init__.py +0 -12
  116. devsper-2.2.0/devsper/runtime/executor.py +0 -5
  117. devsper-2.2.0/devsper/tools/__init__.py +0 -33
  118. {devsper-2.2.0 → devsper-2.4.0}/.env.example +0 -0
  119. {devsper-2.2.0 → devsper-2.4.0}/.github/FUNDING.yml +0 -0
  120. {devsper-2.2.0 → devsper-2.4.0}/.github/workflows/pypi-publish.yml +0 -0
  121. {devsper-2.2.0 → devsper-2.4.0}/.github/workflows/release-on-tag.yml +0 -0
  122. {devsper-2.2.0 → devsper-2.4.0}/.github/workflows/worker-release.yml +0 -0
  123. {devsper-2.2.0 → devsper-2.4.0}/.gitignore +0 -0
  124. {devsper-2.2.0 → devsper-2.4.0}/.python-version +0 -0
  125. {devsper-2.2.0 → devsper-2.4.0}/CODE_OF_CONDUCT.md +0 -0
  126. {devsper-2.2.0 → devsper-2.4.0}/CONTRIBUTING.md +0 -0
  127. {devsper-2.2.0 → devsper-2.4.0}/Cargo.lock +0 -0
  128. {devsper-2.2.0 → devsper-2.4.0}/Cargo.toml +0 -0
  129. {devsper-2.2.0 → devsper-2.4.0}/Dockerfile.local-pool +0 -0
  130. {devsper-2.2.0 → devsper-2.4.0}/LICENSE +0 -0
  131. {devsper-2.2.0 → devsper-2.4.0}/README.md +0 -0
  132. {devsper-2.2.0 → devsper-2.4.0}/SECURITY.md +0 -0
  133. {devsper-2.2.0 → devsper-2.4.0}/benchmarks/__init__.py +0 -0
  134. {devsper-2.2.0 → devsper-2.4.0}/benchmarks/bench_dataset_analysis.py +0 -0
  135. {devsper-2.2.0 → devsper-2.4.0}/benchmarks/bench_repository_analysis.py +0 -0
  136. {devsper-2.2.0 → devsper-2.4.0}/benchmarks/bench_research_pipeline.py +0 -0
  137. {devsper-2.2.0 → devsper-2.4.0}/branding/logo.svg +0 -0
  138. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/__init__.py +0 -0
  139. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/client.py +0 -0
  140. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/discovery.py +0 -0
  141. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/server.py +0 -0
  142. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/tool_adapter.py +0 -0
  143. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/a2a/types.py +0 -0
  144. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/critic.py +0 -0
  145. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/identity.py +0 -0
  146. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/message_bus.py +0 -0
  147. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/registry.py +0 -0
  148. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/roles.py +0 -0
  149. {devsper-2.2.0 → devsper-2.4.0}/devsper/agents/run_agent.py +0 -0
  150. {devsper-2.2.0 → devsper-2.4.0}/devsper/analytics/__init__.py +0 -0
  151. {devsper-2.2.0 → devsper-2.4.0}/devsper/analytics/tool_analytics.py +0 -0
  152. {devsper-2.2.0 → devsper-2.4.0}/devsper/audit/__init__.py +0 -0
  153. {devsper-2.2.0 → devsper-2.4.0}/devsper/audit/logger.py +0 -0
  154. {devsper-2.2.0 → devsper-2.4.0}/devsper/budget.py +0 -0
  155. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/__init__.py +0 -0
  156. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/backends/__init__.py +0 -0
  157. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/backends/base.py +0 -0
  158. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/backends/memory.py +0 -0
  159. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/backends/redis.py +0 -0
  160. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/message.py +0 -0
  161. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/schema_version.py +0 -0
  162. {devsper-2.2.0 → devsper-2.4.0}/devsper/bus/topics.py +0 -0
  163. {devsper-2.2.0 → devsper-2.4.0}/devsper/cache/__init__.py +0 -0
  164. {devsper-2.2.0 → devsper-2.4.0}/devsper/cache/embedding_index.py +0 -0
  165. {devsper-2.2.0 → devsper-2.4.0}/devsper/cache/hashing.py +0 -0
  166. {devsper-2.2.0 → devsper-2.4.0}/devsper/cache/store.py +0 -0
  167. {devsper-2.2.0 → devsper-2.4.0}/devsper/cache/task_cache.py +0 -0
  168. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/__init__.py +0 -0
  169. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/export.py +0 -0
  170. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/github_oauth.py +0 -0
  171. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/init.py +0 -0
  172. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/run_progress.py +0 -0
  173. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/__init__.py +0 -0
  174. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/controller_run_view.py +0 -0
  175. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/errors.py +0 -0
  176. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/logging.py +0 -0
  177. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/onboarding.py +0 -0
  178. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/progress.py +0 -0
  179. {devsper-2.2.0 → devsper-2.4.0}/devsper/cli/ui/theme.py +0 -0
  180. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/__init__.py +0 -0
  181. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/election.py +0 -0
  182. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/local.py +0 -0
  183. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/node_info.py +0 -0
  184. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/registry.py +0 -0
  185. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/router.py +0 -0
  186. {devsper-2.2.0 → devsper-2.4.0}/devsper/cluster/state_backend.py +0 -0
  187. {devsper-2.2.0 → devsper-2.4.0}/devsper/compliance/__init__.py +0 -0
  188. {devsper-2.2.0 → devsper-2.4.0}/devsper/compliance/pii.py +0 -0
  189. {devsper-2.2.0 → devsper-2.4.0}/devsper/config/__init__.py +0 -0
  190. {devsper-2.2.0 → devsper-2.4.0}/devsper/config/config_loader.py +0 -0
  191. {devsper-2.2.0 → devsper-2.4.0}/devsper/credentials/__init__.py +0 -0
  192. {devsper-2.2.0 → devsper-2.4.0}/devsper/credentials/cli.py +0 -0
  193. {devsper-2.2.0 → devsper-2.4.0}/devsper/credentials/migration.py +0 -0
  194. {devsper-2.2.0 → devsper-2.4.0}/devsper/credentials/store.py +0 -0
  195. {devsper-2.2.0 → devsper-2.4.0}/devsper/dashboard/__init__.py +0 -0
  196. {devsper-2.2.0 → devsper-2.4.0}/devsper/dashboard/dashboard.py +0 -0
  197. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/__init__.py +0 -0
  198. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/builder.py +0 -0
  199. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/debugger.py +0 -0
  200. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/repo_index.py +0 -0
  201. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/sandbox.py +0 -0
  202. {devsper-2.2.0 → devsper-2.4.0}/devsper/dev/scaffold.py +0 -0
  203. {devsper-2.2.0 → devsper-2.4.0}/devsper/docs/architecture/execution-model.md +0 -0
  204. {devsper-2.2.0 → devsper-2.4.0}/devsper/embeddings/__init__.py +0 -0
  205. {devsper-2.2.0 → devsper-2.4.0}/devsper/embeddings/service.py +0 -0
  206. {devsper-2.2.0 → devsper-2.4.0}/devsper/events.py +0 -0
  207. {devsper-2.2.0 → devsper-2.4.0}/devsper/explainability/__init__.py +0 -0
  208. {devsper-2.2.0 → devsper-2.4.0}/devsper/explainability/decision_tree.py +0 -0
  209. {devsper-2.2.0 → devsper-2.4.0}/devsper/explainability/rationale.py +0 -0
  210. {devsper-2.2.0 → devsper-2.4.0}/devsper/explainability/simulation.py +0 -0
  211. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/__init__.py +0 -0
  212. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/branding.py +0 -0
  213. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/collector.py +0 -0
  214. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/manifest.py +0 -0
  215. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/model.py +0 -0
  216. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/packager.py +0 -0
  217. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/pdf.py +0 -0
  218. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/service.py +0 -0
  219. {devsper-2.2.0 → devsper-2.4.0}/devsper/export/writers.py +0 -0
  220. {devsper-2.2.0 → devsper-2.4.0}/devsper/hitl/__init__.py +0 -0
  221. {devsper-2.2.0 → devsper-2.4.0}/devsper/hitl/approval.py +0 -0
  222. {devsper-2.2.0 → devsper-2.4.0}/devsper/hitl/escalation.py +0 -0
  223. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/__init__.py +0 -0
  224. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/adaptation.py +0 -0
  225. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/analysis/__init__.py +0 -0
  226. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/analysis/analyzer.py +0 -0
  227. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/analysis/cost_estimator.py +0 -0
  228. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/analysis/formatter.py +0 -0
  229. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/analysis/run_report.py +0 -0
  230. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/learning_engine.py +0 -0
  231. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/__init__.py +0 -0
  232. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/base.py +0 -0
  233. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/code_analysis_strategy.py +0 -0
  234. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/data_science_strategy.py +0 -0
  235. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/document_pipeline_strategy.py +0 -0
  236. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/experiment_strategy.py +0 -0
  237. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategies/research_strategy.py +0 -0
  238. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/strategy_selector.py +0 -0
  239. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/synthesis.py +0 -0
  240. {devsper-2.2.0 → devsper-2.4.0}/devsper/intelligence/task_optimizer.py +0 -0
  241. {devsper-2.2.0 → devsper-2.4.0}/devsper/knowledge/__init__.py +0 -0
  242. {devsper-2.2.0 → devsper-2.4.0}/devsper/knowledge/extractor.py +0 -0
  243. {devsper-2.2.0 → devsper-2.4.0}/devsper/knowledge/knowledge_graph.py +0 -0
  244. {devsper-2.2.0 → devsper-2.4.0}/devsper/knowledge/query.py +0 -0
  245. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/__init__.py +0 -0
  246. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/consolidation.py +0 -0
  247. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/embeddings.py +0 -0
  248. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/memory_index.py +0 -0
  249. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/memory_router.py +0 -0
  250. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/memory_store.py +0 -0
  251. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/memory_types.py +0 -0
  252. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/namespaces.py +0 -0
  253. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/platform_memory.py +0 -0
  254. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/redis_memory.py +0 -0
  255. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/scoring.py +0 -0
  256. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/store.py +0 -0
  257. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/summarizer.py +0 -0
  258. {devsper-2.2.0 → devsper-2.4.0}/devsper/memory/supermemory_rust_ranker.py +0 -0
  259. {devsper-2.2.0 → devsper-2.4.0}/devsper/nodes/__init__.py +0 -0
  260. {devsper-2.2.0 → devsper-2.4.0}/devsper/nodes/rpc.py +0 -0
  261. {devsper-2.2.0 → devsper-2.4.0}/devsper/nodes/single.py +0 -0
  262. {devsper-2.2.0 → devsper-2.4.0}/devsper/nodes/worker.py +0 -0
  263. {devsper-2.2.0 → devsper-2.4.0}/devsper/orchestration/__init__.py +0 -0
  264. {devsper-2.2.0 → devsper-2.4.0}/devsper/orchestration/meta_planner.py +0 -0
  265. {devsper-2.2.0 → devsper-2.4.0}/devsper/orchestration/priority_queue.py +0 -0
  266. {devsper-2.2.0 → devsper-2.4.0}/devsper/platform/__init__.py +0 -0
  267. {devsper-2.2.0 → devsper-2.4.0}/devsper/plugins/__init__.py +0 -0
  268. {devsper-2.2.0 → devsper-2.4.0}/devsper/plugins/marketplace/__init__.py +0 -0
  269. {devsper-2.2.0 → devsper-2.4.0}/devsper/plugins/plugin_loader.py +0 -0
  270. {devsper-2.2.0 → devsper-2.4.0}/devsper/plugins/plugin_registry.py +0 -0
  271. {devsper-2.2.0 → devsper-2.4.0}/devsper/policy/client.py +0 -0
  272. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/__init__.py +0 -0
  273. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/config.py +0 -0
  274. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/crypto.py +0 -0
  275. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/local_pool.py +0 -0
  276. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/manager.py +0 -0
  277. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/models.py +0 -0
  278. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/org_pool.py +0 -0
  279. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/profiles/dev.toml +0 -0
  280. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/profiles/local.toml +0 -0
  281. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/profiles/prod.toml +0 -0
  282. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/security.py +0 -0
  283. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/store.py +0 -0
  284. {devsper-2.2.0 → devsper-2.4.0}/devsper/pool/worker_runner.py +0 -0
  285. {devsper-2.2.0 → devsper-2.4.0}/devsper/protocol/__init__.py +0 -0
  286. {devsper-2.2.0 → devsper-2.4.0}/devsper/protocol/client.py +0 -0
  287. {devsper-2.2.0 → devsper-2.4.0}/devsper/protocol/schema.py +0 -0
  288. {devsper-2.2.0 → devsper-2.4.0}/devsper/protocol/server.py +0 -0
  289. {devsper-2.2.0 → devsper-2.4.0}/devsper/protocols/__init__.py +0 -0
  290. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/__init__.py +0 -0
  291. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/anthropic.py +0 -0
  292. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/complexity_router.py +0 -0
  293. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/gemini.py +0 -0
  294. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/github.py +0 -0
  295. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/model_router.py +0 -0
  296. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/openai.py +0 -0
  297. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/__init__.py +0 -0
  298. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/__init__.py +0 -0
  299. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/anthropic_backend.py +0 -0
  300. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/custom_backend.py +0 -0
  301. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/gemini_backend.py +0 -0
  302. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/github_backend.py +0 -0
  303. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/ollama_backend.py +0 -0
  304. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/openai_backend.py +0 -0
  305. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/backends/vllm_backend.py +0 -0
  306. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/base.py +0 -0
  307. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/factory.py +0 -0
  308. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/legacy.py +0 -0
  309. {devsper-2.2.0 → devsper-2.4.0}/devsper/providers/router/router.py +0 -0
  310. {devsper-2.2.0 → devsper-2.4.0}/devsper/reasoning/__init__.py +0 -0
  311. {devsper-2.2.0 → devsper-2.4.0}/devsper/reasoning/graph.py +0 -0
  312. {devsper-2.2.0 → devsper-2.4.0}/devsper/reasoning/nodes.py +0 -0
  313. {devsper-2.2.0 → devsper-2.4.0}/devsper/reasoning/store.py +0 -0
  314. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/health.py +0 -0
  315. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/replay.py +0 -0
  316. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/replay_engine.py +0 -0
  317. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/run_history.py +0 -0
  318. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/task_state.py +0 -0
  319. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/telemetry.py +0 -0
  320. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/trace_tree.py +0 -0
  321. {devsper-2.2.0 → devsper-2.4.0}/devsper/runtime/visualize.py +0 -0
  322. {devsper-2.2.0 → devsper-2.4.0}/devsper/sandbox/__init__.py +0 -0
  323. {devsper-2.2.0 → devsper-2.4.0}/devsper/sandbox/sandbox.py +0 -0
  324. {devsper-2.2.0 → devsper-2.4.0}/devsper/server/__init__.py +0 -0
  325. {devsper-2.2.0 → devsper-2.4.0}/devsper/server/events.py +0 -0
  326. {devsper-2.2.0 → devsper-2.4.0}/devsper/server/topology.py +0 -0
  327. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/checkpointer.py +0 -0
  328. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/map_reduce.py +0 -0
  329. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/planner.py +0 -0
  330. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/prefetcher.py +0 -0
  331. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/scheduler.py +0 -0
  332. {devsper-2.2.0 → devsper-2.4.0}/devsper/swarm/speculation.py +0 -0
  333. {devsper-2.2.0 → devsper-2.4.0}/devsper/telemetry/__init__.py +0 -0
  334. {devsper-2.2.0 → devsper-2.4.0}/devsper/telemetry/otel.py +0 -0
  335. {devsper-2.2.0 → devsper-2.4.0}/devsper/telemetry/pricing.py +0 -0
  336. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/base.py +0 -0
  337. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/__init__.py +0 -0
  338. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/api_surface_extractor.py +0 -0
  339. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/architecture_analyzer.py +0 -0
  340. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/codebase_indexer.py +0 -0
  341. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/dependency_graph_builder.py +0 -0
  342. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/design_pattern_detector.py +0 -0
  343. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/large_function_detector.py +0 -0
  344. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/module_responsibility_mapper.py +0 -0
  345. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/parallel_codebase_analysis.py +0 -0
  346. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/refactor_candidate_detector.py +0 -0
  347. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/repository_semantic_index.py +0 -0
  348. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/code_intelligence/test_coverage_estimator.py +0 -0
  349. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/__init__.py +0 -0
  350. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/analyze_code_complexity.py +0 -0
  351. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/dependency_analyzer.py +0 -0
  352. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/extract_functions.py +0 -0
  353. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/format_python.py +0 -0
  354. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/generate_docstrings.py +0 -0
  355. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/generate_unit_tests.py +0 -0
  356. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/lint_python.py +0 -0
  357. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/refactor_function.py +0 -0
  358. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/repo_structure_map.py +0 -0
  359. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/coding/run_python.py +0 -0
  360. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/__init__.py +0 -0
  361. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/column_type_detection.py +0 -0
  362. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/csv_summary.py +0 -0
  363. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/dataframe_filter.py +0 -0
  364. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/dataframe_groupby.py +0 -0
  365. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/dataframe_stats.py +0 -0
  366. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/dataset_sampling.py +0 -0
  367. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/dataset_schema.py +0 -0
  368. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/json_pretty_print.py +0 -0
  369. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/json_query.py +0 -0
  370. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data/missing_value_report.py +0 -0
  371. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/__init__.py +0 -0
  372. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/correlation_heatmap.py +0 -0
  373. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/dataset_bias_detector.py +0 -0
  374. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/dataset_distribution_report.py +0 -0
  375. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/dataset_drift_detector.py +0 -0
  376. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/dataset_outlier_detector.py +0 -0
  377. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/dataset_profile.py +0 -0
  378. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/distributed_dataset_processor.py +0 -0
  379. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/feature_engineering_suggestions.py +0 -0
  380. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/feature_importance_estimator.py +0 -0
  381. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/model_input_validator.py +0 -0
  382. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/data_science/time_series_analyzer.py +0 -0
  383. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/__init__.py +0 -0
  384. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/_docproc.py +0 -0
  385. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/document_to_markdown.py +0 -0
  386. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/extract_document_images.py +0 -0
  387. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/extract_document_text.py +0 -0
  388. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/extract_equations.py +0 -0
  389. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/extract_tables.py +0 -0
  390. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/summarize_document.py +0 -0
  391. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/write_latex_document.py +0 -0
  392. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/write_markdown_document.py +0 -0
  393. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/documents/write_word_document.py +0 -0
  394. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/__init__.py +0 -0
  395. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/bootstrap_estimator.py +0 -0
  396. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/experiment_report_generator.py +0 -0
  397. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/experiment_tracker.py +0 -0
  398. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/grid_search_runner.py +0 -0
  399. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/model_benchmark_runner.py +0 -0
  400. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/monte_carlo_experiment.py +0 -0
  401. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/parameter_sweep_runner.py +0 -0
  402. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/result_comparator.py +0 -0
  403. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/simulation_runner.py +0 -0
  404. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/statistical_significance_test.py +0 -0
  405. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/experiments/swarm_map_reduce.py +0 -0
  406. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/__init__.py +0 -0
  407. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/append_file.py +0 -0
  408. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/file_hash.py +0 -0
  409. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/file_line_count.py +0 -0
  410. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/file_metadata.py +0 -0
  411. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/file_preview.py +0 -0
  412. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/find_large_files.py +0 -0
  413. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/list_directory.py +0 -0
  414. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/read_file.py +0 -0
  415. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/search_files.py +0 -0
  416. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/filesystem/write_file.py +0 -0
  417. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/__init__.py +0 -0
  418. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/distributed_document_analysis.py +0 -0
  419. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/docproc_corpus_pipeline.py +0 -0
  420. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/repository_semantic_map.py +0 -0
  421. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/research_graph_builder.py +0 -0
  422. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/flagship/swarm_experiment_runner.py +0 -0
  423. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/__init__.py +0 -0
  424. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/citation_graph_builder.py +0 -0
  425. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/concept_frequency_analyzer.py +0 -0
  426. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/corpus_builder.py +0 -0
  427. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/cross_document_entity_linker.py +0 -0
  428. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/document_corpus_summary.py +0 -0
  429. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/document_topic_extractor.py +0 -0
  430. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/knowledge_graph_extractor.py +0 -0
  431. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/knowledge/timeline_extractor.py +0 -0
  432. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/__init__.py +0 -0
  433. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/calculate_expression.py +0 -0
  434. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/correlation.py +0 -0
  435. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/distribution_summary.py +0 -0
  436. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/histogram.py +0 -0
  437. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/linear_regression.py +0 -0
  438. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/matrix_multiply.py +0 -0
  439. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/mean_std.py +0 -0
  440. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/monte_carlo_simulation.py +0 -0
  441. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/polynomial_fit.py +0 -0
  442. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/math/random_sample.py +0 -0
  443. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/mcp/__init__.py +0 -0
  444. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/mcp/adapter.py +0 -0
  445. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/mcp/client.py +0 -0
  446. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/mcp/discovery.py +0 -0
  447. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/__init__.py +0 -0
  448. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/delete_memory.py +0 -0
  449. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/list_memory.py +0 -0
  450. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/search_memory.py +0 -0
  451. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/summarize_memory.py +0 -0
  452. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/memory/tag_memory.py +0 -0
  453. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/pipelines.py +0 -0
  454. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/__init__.py +0 -0
  455. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/arxiv_download.py +0 -0
  456. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/arxiv_search.py +0 -0
  457. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/citation_extractor.py +0 -0
  458. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/duckduckgo_search.py +0 -0
  459. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/paper_metadata_extractor.py +0 -0
  460. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/paper_summarizer.py +0 -0
  461. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/research_question_generator.py +0 -0
  462. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/topic_cluster.py +0 -0
  463. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/web_search.py +0 -0
  464. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research/wikipedia_lookup.py +0 -0
  465. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/__init__.py +0 -0
  466. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/citation_context_extractor.py +0 -0
  467. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/literature_review_generator.py +0 -0
  468. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/methodology_extractor.py +0 -0
  469. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/paper_contribution_extractor.py +0 -0
  470. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/paper_dataset_identifier.py +0 -0
  471. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/paper_method_comparator.py +0 -0
  472. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/paper_similarity_search.py +0 -0
  473. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/paper_trend_analyzer.py +0 -0
  474. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/parallel_document_analyzer.py +0 -0
  475. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/research_gap_finder.py +0 -0
  476. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/research_topic_mapper.py +0 -0
  477. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/research_advanced/swarm_literature_review.py +0 -0
  478. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/scoring/__init__.py +0 -0
  479. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/scoring/report.py +0 -0
  480. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/scoring/scorer.py +0 -0
  481. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/scoring/selector.py +0 -0
  482. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/scoring/store.py +0 -0
  483. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/selector.py +0 -0
  484. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/__init__.py +0 -0
  485. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/cpu_usage.py +0 -0
  486. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/disk_usage.py +0 -0
  487. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/environment_variables.py +0 -0
  488. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/memory_usage.py +0 -0
  489. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/pip_install.py +0 -0
  490. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/pip_search.py +0 -0
  491. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/process_list.py +0 -0
  492. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/python_package_list.py +0 -0
  493. {devsper-2.2.0 → devsper-2.4.0}/devsper/tools/system/system_info.py +0 -0
  494. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/__init__.py +0 -0
  495. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/activity_feed_view.py +0 -0
  496. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/adaptive_tasks_view.py +0 -0
  497. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/agent_role_view.py +0 -0
  498. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/dev_view.py +0 -0
  499. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/inject_screen.py +0 -0
  500. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/knowledge_graph_view.py +0 -0
  501. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/layout.py +0 -0
  502. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/logs_view.py +0 -0
  503. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/memory_view.py +0 -0
  504. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/performance_view.py +0 -0
  505. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/reasoning_graph_view.py +0 -0
  506. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/results_view.py +0 -0
  507. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/swarm_view.py +0 -0
  508. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/task_detail_screen.py +0 -0
  509. {devsper-2.2.0 → devsper-2.4.0}/devsper/tui/task_view.py +0 -0
  510. {devsper-2.2.0 → devsper-2.4.0}/devsper/types/exceptions.py +0 -0
  511. {devsper-2.2.0 → devsper-2.4.0}/devsper/types/swarm.py +0 -0
  512. {devsper-2.2.0 → devsper-2.4.0}/devsper/types/task.py +0 -0
  513. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/__init__.py +0 -0
  514. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/changelog.py +0 -0
  515. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/cli.py +0 -0
  516. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/installer.py +0 -0
  517. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/notifier.py +0 -0
  518. {devsper-2.2.0 → devsper-2.4.0}/devsper/upgrade/version_check.py +0 -0
  519. {devsper-2.2.0 → devsper-2.4.0}/devsper/utils/http.py +0 -0
  520. {devsper-2.2.0 → devsper-2.4.0}/devsper/utils/models.py +0 -0
  521. {devsper-2.2.0 → devsper-2.4.0}/devsper/visualization/__init__.py +0 -0
  522. {devsper-2.2.0 → devsper-2.4.0}/devsper/visualization/dag_export.py +0 -0
  523. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/__init__.py +0 -0
  524. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/conditions.py +0 -0
  525. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/context.py +0 -0
  526. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/loader.py +0 -0
  527. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/resolver.py +0 -0
  528. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/runner.py +0 -0
  529. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/schema.py +0 -0
  530. {devsper-2.2.0 → devsper-2.4.0}/devsper/workflow/validator.py +0 -0
  531. {devsper-2.2.0 → devsper-2.4.0}/devsper.toml +0 -0
  532. {devsper-2.2.0 → devsper-2.4.0}/docker-compose.yml +0 -0
  533. {devsper-2.2.0 → devsper-2.4.0}/examples/__init__.py +0 -0
  534. {devsper-2.2.0 → devsper-2.4.0}/examples/_common.py +0 -0
  535. {devsper-2.2.0 → devsper-2.4.0}/examples/_config.py +0 -0
  536. {devsper-2.2.0 → devsper-2.4.0}/examples/coding/__init__.py +0 -0
  537. {devsper-2.2.0 → devsper-2.4.0}/examples/coding/analyze_repository.py +0 -0
  538. {devsper-2.2.0 → devsper-2.4.0}/examples/coding/generate_docs.py +0 -0
  539. {devsper-2.2.0 → devsper-2.4.0}/examples/coding/refactor_candidates.py +0 -0
  540. {devsper-2.2.0 → devsper-2.4.0}/examples/data_science/__init__.py +0 -0
  541. {devsper-2.2.0 → devsper-2.4.0}/examples/data_science/dataset_analysis.py +0 -0
  542. {devsper-2.2.0 → devsper-2.4.0}/examples/data_science/run_experiments.py +0 -0
  543. {devsper-2.2.0 → devsper-2.4.0}/examples/demo_swarm.py +0 -0
  544. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/README.md +0 -0
  545. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/controller.toml +0 -0
  546. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/parallel_survey.py +0 -0
  547. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/run_controller.py +0 -0
  548. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/run_demo.sh +0 -0
  549. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/run_worker.py +0 -0
  550. {devsper-2.2.0 → devsper-2.4.0}/examples/distributed/worker.toml +0 -0
  551. {devsper-2.2.0 → devsper-2.4.0}/examples/documents/__init__.py +0 -0
  552. {devsper-2.2.0 → devsper-2.4.0}/examples/documents/analyze_documents.py +0 -0
  553. {devsper-2.2.0 → devsper-2.4.0}/examples/experiments/__init__.py +0 -0
  554. {devsper-2.2.0 → devsper-2.4.0}/examples/experiments/monte_carlo_demo.py +0 -0
  555. {devsper-2.2.0 → devsper-2.4.0}/examples/experiments/parameter_sweep.py +0 -0
  556. {devsper-2.2.0 → devsper-2.4.0}/examples/research/__init__.py +0 -0
  557. {devsper-2.2.0 → devsper-2.4.0}/examples/research/literature_review.py +0 -0
  558. {devsper-2.2.0 → devsper-2.4.0}/examples/research/research_gap_analysis.py +0 -0
  559. {devsper-2.2.0 → devsper-2.4.0}/examples/research/research_graph.py +0 -0
  560. {devsper-2.2.0 → devsper-2.4.0}/requirements-docs.txt +0 -0
  561. {devsper-2.2.0 → devsper-2.4.0}/scripts/README.md +0 -0
  562. {devsper-2.2.0 → devsper-2.4.0}/scripts/seed_tool_scores.py +0 -0
  563. {devsper-2.2.0 → devsper-2.4.0}/scripts/test_tool_scoring_cli.sh +0 -0
  564. {devsper-2.2.0 → devsper-2.4.0}/scripts/test_tool_scoring_full.sh +0 -0
  565. {devsper-2.2.0 → devsper-2.4.0}/scripts/test_tool_scoring_smoke.py +0 -0
  566. {devsper-2.2.0 → devsper-2.4.0}/scripts/test_v2_router.py +0 -0
  567. {devsper-2.2.0 → devsper-2.4.0}/supermemory-core/Cargo.toml +0 -0
  568. {devsper-2.2.0 → devsper-2.4.0}/supermemory-core/src/main.rs +0 -0
  569. {devsper-2.2.0 → devsper-2.4.0}/tests/agents/__init__.py +0 -0
  570. {devsper-2.2.0 → devsper-2.4.0}/tests/agents/test_roles.py +0 -0
  571. {devsper-2.2.0 → devsper-2.4.0}/tests/benchmarks/test_v16_perf.py +0 -0
  572. {devsper-2.2.0 → devsper-2.4.0}/tests/intelligence/__init__.py +0 -0
  573. {devsper-2.2.0 → devsper-2.4.0}/tests/intelligence/test_adaptation.py +0 -0
  574. {devsper-2.2.0 → devsper-2.4.0}/tests/intelligence/test_learning_engine.py +0 -0
  575. {devsper-2.2.0 → devsper-2.4.0}/tests/intelligence/test_strategy_selector.py +0 -0
  576. {devsper-2.2.0 → devsper-2.4.0}/tests/intelligence/test_task_optimizer.py +0 -0
  577. {devsper-2.2.0 → devsper-2.4.0}/tests/memory/__init__.py +0 -0
  578. {devsper-2.2.0 → devsper-2.4.0}/tests/memory/test_agent_memory_integration.py +0 -0
  579. {devsper-2.2.0 → devsper-2.4.0}/tests/memory/test_memory_index.py +0 -0
  580. {devsper-2.2.0 → devsper-2.4.0}/tests/memory/test_memory_router.py +0 -0
  581. {devsper-2.2.0 → devsper-2.4.0}/tests/memory/test_memory_store.py +0 -0
  582. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/__init__.py +0 -0
  583. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/fixtures.py +0 -0
  584. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_crypto.py +0 -0
  585. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_e2e_redis_loop.py +0 -0
  586. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_heartbeat_eviction.py +0 -0
  587. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_local_pool.py +0 -0
  588. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_org_pool.py +0 -0
  589. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_priority_chain.py +0 -0
  590. {devsper-2.2.0 → devsper-2.4.0}/tests/pool/test_rate_limiting.py +0 -0
  591. {devsper-2.2.0 → devsper-2.4.0}/tests/reasoning/__init__.py +0 -0
  592. {devsper-2.2.0 → devsper-2.4.0}/tests/reasoning/test_reasoning_graph.py +0 -0
  593. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/__init__.py +0 -0
  594. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_budget.py +0 -0
  595. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_otel_phase1.py +0 -0
  596. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_packager.py +0 -0
  597. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_protocol_schema.py +0 -0
  598. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_replay.py +0 -0
  599. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_replay_engine.py +0 -0
  600. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_telemetry.py +0 -0
  601. {devsper-2.2.0 → devsper-2.4.0}/tests/runtime/test_visualize.py +0 -0
  602. {devsper-2.2.0 → devsper-2.4.0}/tests/test_agent.py +0 -0
  603. {devsper-2.2.0 → devsper-2.4.0}/tests/test_analysis.py +0 -0
  604. {devsper-2.2.0 → devsper-2.4.0}/tests/test_analytics.py +0 -0
  605. {devsper-2.2.0 → devsper-2.4.0}/tests/test_auto_model.py +0 -0
  606. {devsper-2.2.0 → devsper-2.4.0}/tests/test_clarification_multinode.py +0 -0
  607. {devsper-2.2.0 → devsper-2.4.0}/tests/test_config_loader.py +0 -0
  608. {devsper-2.2.0 → devsper-2.4.0}/tests/test_credentials.py +0 -0
  609. {devsper-2.2.0 → devsper-2.4.0}/tests/test_cross_boundary_serialization.py +0 -0
  610. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dag_export.py +0 -0
  611. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_agents.py +0 -0
  612. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_build_cmd.py +0 -0
  613. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_debugger.py +0 -0
  614. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_repo_index.py +0 -0
  615. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_sandbox.py +0 -0
  616. {devsper-2.2.0 → devsper-2.4.0}/tests/test_dev_scaffold.py +0 -0
  617. {devsper-2.2.0 → devsper-2.4.0}/tests/test_distributed_bugs.py +0 -0
  618. {devsper-2.2.0 → devsper-2.4.0}/tests/test_embeddings_service.py +0 -0
  619. {devsper-2.2.0 → devsper-2.4.0}/tests/test_event_logger.py +0 -0
  620. {devsper-2.2.0 → devsper-2.4.0}/tests/test_executor.py +0 -0
  621. {devsper-2.2.0 → devsper-2.4.0}/tests/test_export_runs.py +0 -0
  622. {devsper-2.2.0 → devsper-2.4.0}/tests/test_github_provider.py +0 -0
  623. {devsper-2.2.0 → devsper-2.4.0}/tests/test_init.py +0 -0
  624. {devsper-2.2.0 → devsper-2.4.0}/tests/test_knowledge_graph.py +0 -0
  625. {devsper-2.2.0 → devsper-2.4.0}/tests/test_knowledge_query.py +0 -0
  626. {devsper-2.2.0 → devsper-2.4.0}/tests/test_map_reduce.py +0 -0
  627. {devsper-2.2.0 → devsper-2.4.0}/tests/test_memory_evolution.py +0 -0
  628. {devsper-2.2.0 → devsper-2.4.0}/tests/test_memory_isolation.py +0 -0
  629. {devsper-2.2.0 → devsper-2.4.0}/tests/test_model_router.py +0 -0
  630. {devsper-2.2.0 → devsper-2.4.0}/tests/test_planner.py +0 -0
  631. {devsper-2.2.0 → devsper-2.4.0}/tests/test_plugins.py +0 -0
  632. {devsper-2.2.0 → devsper-2.4.0}/tests/test_protocols.py +0 -0
  633. {devsper-2.2.0 → devsper-2.4.0}/tests/test_router.py +0 -0
  634. {devsper-2.2.0 → devsper-2.4.0}/tests/test_scheduler.py +0 -0
  635. {devsper-2.2.0 → devsper-2.4.0}/tests/test_speculation.py +0 -0
  636. {devsper-2.2.0 → devsper-2.4.0}/tests/test_strategies.py +0 -0
  637. {devsper-2.2.0 → devsper-2.4.0}/tests/test_swarm.py +0 -0
  638. {devsper-2.2.0 → devsper-2.4.0}/tests/test_task_cache.py +0 -0
  639. {devsper-2.2.0 → devsper-2.4.0}/tests/test_tool_scoring.py +0 -0
  640. {devsper-2.2.0 → devsper-2.4.0}/tests/test_tool_selector.py +0 -0
  641. {devsper-2.2.0 → devsper-2.4.0}/tests/test_upgrade.py +0 -0
  642. {devsper-2.2.0 → devsper-2.4.0}/tests/test_v110.py +0 -0
  643. {devsper-2.2.0 → devsper-2.4.0}/tests/test_v16.py +0 -0
  644. {devsper-2.2.0 → devsper-2.4.0}/tests/test_v17.py +0 -0
  645. {devsper-2.2.0 → devsper-2.4.0}/tests/test_v18.py +0 -0
  646. {devsper-2.2.0 → devsper-2.4.0}/tests/test_v19.py +0 -0
  647. {devsper-2.2.0 → devsper-2.4.0}/tests/test_workflow.py +0 -0
  648. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/__init__.py +0 -0
  649. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_code_intelligence_tools.py +0 -0
  650. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_coding_tools.py +0 -0
  651. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_data_science_tools.py +0 -0
  652. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_data_tools.py +0 -0
  653. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_document_tools.py +0 -0
  654. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_experiments_tools.py +0 -0
  655. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_filesystem_tools.py +0 -0
  656. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_flagship_tools.py +0 -0
  657. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_knowledge_tools.py +0 -0
  658. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_math_tools.py +0 -0
  659. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_memory_tools.py +0 -0
  660. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_pipelines.py +0 -0
  661. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_registry.py +0 -0
  662. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_research_advanced_tools.py +0 -0
  663. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_research_tools.py +0 -0
  664. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_system_tools.py +0 -0
  665. {devsper-2.2.0 → devsper-2.4.0}/tests/tools/test_tool_runner.py +0 -0
  666. {devsper-2.2.0 → devsper-2.4.0}/worker/.dockerignore +0 -0
  667. {devsper-2.2.0 → devsper-2.4.0}/worker/Cargo.lock +0 -0
  668. {devsper-2.2.0 → devsper-2.4.0}/worker/Cargo.toml +0 -0
  669. {devsper-2.2.0 → devsper-2.4.0}/worker/Dockerfile +0 -0
  670. {devsper-2.2.0 → devsper-2.4.0}/worker/README.md +0 -0
  671. {devsper-2.2.0 → devsper-2.4.0}/worker/src/budget.rs +0 -0
  672. {devsper-2.2.0 → devsper-2.4.0}/worker/src/bus.rs +0 -0
  673. {devsper-2.2.0 → devsper-2.4.0}/worker/src/claim.rs +0 -0
  674. {devsper-2.2.0 → devsper-2.4.0}/worker/src/clarification.rs +0 -0
  675. {devsper-2.2.0 → devsper-2.4.0}/worker/src/config.rs +0 -0
  676. {devsper-2.2.0 → devsper-2.4.0}/worker/src/controller.rs +0 -0
  677. {devsper-2.2.0 → devsper-2.4.0}/worker/src/election.rs +0 -0
  678. {devsper-2.2.0 → devsper-2.4.0}/worker/src/error.rs +0 -0
  679. {devsper-2.2.0 → devsper-2.4.0}/worker/src/executor.rs +0 -0
  680. {devsper-2.2.0 → devsper-2.4.0}/worker/src/health.rs +0 -0
  681. {devsper-2.2.0 → devsper-2.4.0}/worker/src/heartbeat.rs +0 -0
  682. {devsper-2.2.0 → devsper-2.4.0}/worker/src/lib.rs +0 -0
  683. {devsper-2.2.0 → devsper-2.4.0}/worker/src/main.rs +0 -0
  684. {devsper-2.2.0 → devsper-2.4.0}/worker/src/metrics.rs +0 -0
  685. {devsper-2.2.0 → devsper-2.4.0}/worker/src/reconnect.rs +0 -0
  686. {devsper-2.2.0 → devsper-2.4.0}/worker/src/registry.rs +0 -0
  687. {devsper-2.2.0 → devsper-2.4.0}/worker/src/router.rs +0 -0
  688. {devsper-2.2.0 → devsper-2.4.0}/worker/src/rpc.rs +0 -0
  689. {devsper-2.2.0 → devsper-2.4.0}/worker/src/scheduler.rs +0 -0
  690. {devsper-2.2.0 → devsper-2.4.0}/worker/src/snapshot.rs +0 -0
  691. {devsper-2.2.0 → devsper-2.4.0}/worker/src/telemetry.rs +0 -0
  692. {devsper-2.2.0 → devsper-2.4.0}/worker/src/types/agent.rs +0 -0
  693. {devsper-2.2.0 → devsper-2.4.0}/worker/src/types/event.rs +0 -0
  694. {devsper-2.2.0 → devsper-2.4.0}/worker/src/types/mod.rs +0 -0
  695. {devsper-2.2.0 → devsper-2.4.0}/worker/src/types/node.rs +0 -0
  696. {devsper-2.2.0 → devsper-2.4.0}/worker/src/types/task.rs +0 -0
  697. {devsper-2.2.0 → devsper-2.4.0}/worker/src/worker_node.rs +0 -0
  698. {devsper-2.2.0 → devsper-2.4.0}/worker/tests/integration.rs +0 -0
@@ -7,6 +7,43 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.4.0] — 2026-03-31
11
+
12
+ ### Added
13
+
14
+ - **Distributed runtime extension layer** — Added `devsper.distributed` package with controller and worker-runtime wrappers for clean orchestration composition.
15
+ - **Agent pool** — Added `runtime/agent_pool.py` with reusable, worker-aware concurrent agent leasing (`acquire_agent`, `release_agent`, `run_agent`, `run_parallel`).
16
+ - **Model router (runtime layer)** — Added `runtime/model_router.py` for planning/reasoning/validation model routing with fallback chains.
17
+ - **Speculative planner (runtime layer)** — Added `runtime/speculative_planner.py` to predict and stage speculative successor tasks.
18
+ - **Runtime HITL manager** — Added `runtime/hitl.py` for pause/resume and explicit human-input request lifecycle handling.
19
+ - **Execution graph upgrades** — Extended runtime execution graph with worker assignment metadata and distributed lineage tracking.
20
+
21
+ ### Changed
22
+
23
+ - **Executor composition** — Runtime executor now integrates AgentPool, ModelRouter, speculative planning hooks, and distributed assignment tracking while preserving default behavior.
24
+ - **Task runner routing** — Task execution now supports pool-backed agent execution, scoped model routing, and fallback chain handling.
25
+ - **Tool execution control** — Runtime ToolRunner now supports bounded concurrency, dependency-aware batching, per-call timeout, cancellation, and structured results.
26
+ - **Event backpressure handling** — Runtime event stream now uses bounded queues with controlled overflow behavior.
27
+ - **Runtime docs** — Updated runtime architecture docs in `devsper/README.md` with distributed flow, worker/controller lifecycle, and HITL/speculative execution details.
28
+
29
+ ## [2.3.0] — 2026-03-30
30
+
31
+ ### Added
32
+
33
+ - **Autonomous Missions capability layer** — New `devsper.missions` package for long-horizon autonomous execution across research, coding, and experiment workflows.
34
+ - **Mission planner and DAG generation** — Added `missions/mission_planner.py` to break goals into mission tasks, assign role agents, and define dependency graphs.
35
+ - **Research mission workflow** — Added mission agents (`researcher_agent`, `reviewer_agent`, `writer_agent`, `editor_agent`) and end-to-end flow: research → critique → improve → finalize.
36
+ - **Coding mission workflow** — Added mission agents (`architect_agent`, `coder_agent`, `tester_agent`, `debugger_agent`, `docs_agent`) and end-to-end flow: design → code → test → fix → document.
37
+ - **Iteration engine** — Added `missions/iteration_loop.py` for quality-threshold-driven iterative execution with critique/improvement cycles.
38
+ - **Mission memory** — Added `missions/mission_memory.py` to persist research findings, decisions, and experiment artifacts per mission.
39
+ - **Long-running mission support** — Added checkpointing/resume support in `missions/mission_runner.py` plus HITL task-gating callback support.
40
+ - **Mission UI** — Added dashboard `MissionView` and TUI mission execution path (`mission:research ...`, `mission:coding ...`, `mission:experiment ...`) to show goal, DAG, and iteration progress.
41
+
42
+ ### Changed
43
+
44
+ - **SDK surface** — Exported `MissionRunner` from `devsper` package root for straightforward mission execution from Python.
45
+ - **Testing** — Added runtime tests for mission DAG planning and checkpoint creation.
46
+
10
47
  ## [2.2.0] — 2026-03-28
11
48
 
12
49
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devsper
3
- Version: 2.2.0
3
+ Version: 2.4.0
4
4
  Summary: Orchestrate distributed swarms of AI agents that collaboratively solve complex tasks.
5
5
  Project-URL: Homepage, https://github.com/devsper-com/runtime
6
6
  Project-URL: Documentation, https://docs.devsper.com
@@ -17,6 +17,7 @@ Classifier: Programming Language :: Python :: 3.12
17
17
  Classifier: Programming Language :: Python :: 3.13
18
18
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
19
19
  Requires-Python: >=3.12
20
+ Requires-Dist: duckduckgo-search>=8.1.1
20
21
  Requires-Dist: httpx>=0.27.0
21
22
  Requires-Dist: keyring>=24.0
22
23
  Requires-Dist: langchain-anthropic>=1.3.4
@@ -0,0 +1,148 @@
1
+ # Devsper Runtime Core
2
+
3
+ Devsper runtime is built as a modular orchestration core with bounded concurrency, dynamic DAG mutation, and event-stream-driven observability.
4
+
5
+ ## Runtime Architecture Diagram
6
+
7
+ ```text
8
+ User Task
9
+ |
10
+ v
11
+ Swarm.run()
12
+ |
13
+ v
14
+ Planner -> Scheduler (DAG)
15
+ |
16
+ v
17
+ Runtime Executor ------------------------------+
18
+ | |
19
+ +-> RuntimeStateManager |
20
+ +-> ExecutionGraph |
21
+ +-> RuntimeEventStream -> EventLog -> SSE |
22
+ +-> TaskRunner |
23
+ +-> AgentRunner (optional stream-tool loop)
24
+ +-> Agent
25
+ +-> ToolRunner / tools.tool_runner
26
+ ```
27
+
28
+ ## Core Components
29
+
30
+ - `swarm/swarm.py`
31
+ - Public entrypoint (`Swarm`), config/wiring, planning and execution bootstrap.
32
+ - `runtime/executor.py`
33
+ - Event-driven scheduler loop, bounded parallel execution, cancellation propagation, dynamic task injection.
34
+ - `runtime/state_manager.py`
35
+ - Concurrency-safe task state transitions and runtime DAG mutation entrypoint.
36
+ - `runtime/execution_graph.py`
37
+ - Execution graph with lineage, edges, attempts, and status transitions.
38
+ - `runtime/planner.py`
39
+ - Runtime wrapper for dynamic planner expansion and parent-child lineage.
40
+ - `runtime/task_runner.py`
41
+ - Task lifecycle orchestration with scoped retries and fallback model handling.
42
+ - `runtime/agent_runner.py`
43
+ - Async agent wrapper with optional streaming tool invocation loop.
44
+ - `runtime/tool_runner.py`
45
+ - Parallel tool scheduler with bounded concurrency, dependency-aware batching, timeout, and cancellation.
46
+ - `runtime/event_stream.py`
47
+ - In-process stream with queue backpressure policy (drop-oldest on overflow).
48
+ - `runtime/retry.py`
49
+ - Retry scopes (`tool`, `agent`, `task`, `model_fallback`) and backoff policies.
50
+
51
+ ## Execution Lifecycle
52
+
53
+ 1. `Swarm.run()` creates root task, plans subtasks, and builds scheduler DAG.
54
+ 2. Executor emits `EXECUTOR_STARTED` and begins bounded task dispatch.
55
+ 3. Ready tasks transition to running through `RuntimeStateManager`.
56
+ 4. `TaskRunner` executes with scoped retries.
57
+ 5. `AgentRunner` may invoke tools (normal or streaming tool loop).
58
+ 6. Task completion/failure updates scheduler + execution graph.
59
+ 7. Adaptive mode can inject follow-up tasks at runtime.
60
+ 8. Executor emits `EXECUTOR_FINISHED` and `RUN_COMPLETED`.
61
+
62
+ ## Tool Calling Flow
63
+
64
+ 1. Agent determines tool intent from model output.
65
+ 2. Tool calls are parsed and scheduled.
66
+ 3. `ToolRunner.run_many(...)` executes calls in parallel with:
67
+ - `max_concurrency` semaphore
68
+ - dependency constraints (`depends_on`)
69
+ - per-call timeouts
70
+ - cancellation checks
71
+ 4. Results are isolated per call and fed back into agent loop.
72
+
73
+ ## Planner Flow
74
+
75
+ 1. Initial decomposition by `swarm/planner.py`.
76
+ 2. Runtime execution completes a task.
77
+ 3. `RuntimePlanner.expand(...)` optionally creates follow-up tasks.
78
+ 4. `RuntimeStateManager.add_tasks(...)` mutates DAG safely.
79
+ 5. `ExecutionGraph` records lineage from parent task.
80
+
81
+ ## Concurrency Model
82
+
83
+ - Bounded executor workers (`worker_count`).
84
+ - Bounded tool concurrency (`ToolRunner` semaphore).
85
+ - Queue backpressure in event streaming (`max_queue_size` with controlled dropping).
86
+ - Cooperative pause/resume and cancellation propagation across runtime loops.
87
+ - Lock-guarded scheduler mutations via `RuntimeStateManager`.
88
+
89
+ ## Distributed Runtime Architecture
90
+
91
+ ```text
92
+ Controller
93
+ |
94
+ v
95
+ Worker Pool
96
+ |
97
+ v
98
+ Worker Runtime
99
+ |
100
+ v
101
+ Runtime Executor
102
+ |
103
+ v
104
+ Agent Pool
105
+ |
106
+ v
107
+ Tool Runner
108
+ ```
109
+
110
+ - `distributed/controller.py`
111
+ - Worker registry, health state, load-aware assignment, reassignment hooks.
112
+ - `distributed/worker_runtime.py`
113
+ - Worker-local runtime composition: `Executor`, `AgentPool`, `ModelRouter`, `ToolRunner`.
114
+ - Existing multi-node transport/control remains in `nodes/controller.py` and `nodes/worker.py`.
115
+
116
+ ## Worker Lifecycle
117
+
118
+ 1. Worker registers with controller.
119
+ 2. Controller assigns tasks based on health and load.
120
+ 3. Worker executes task locally through runtime executor stack.
121
+ 4. Worker returns completion/failure.
122
+ 5. Controller updates worker/task state and reassigns on failure.
123
+
124
+ ## Controller Lifecycle
125
+
126
+ 1. Track worker registration and health.
127
+ 2. Assign ready tasks using load-aware strategy.
128
+ 3. Handle failures and perform retry/reassignment.
129
+ 4. Maintain global execution progress via event/log channels.
130
+
131
+ ## Agent Pool
132
+
133
+ - `AgentPool` manages reusable agent instances per worker.
134
+ - Supports `acquire_agent`, `release_agent`, `run_agent`, and `run_parallel`.
135
+ - Enables worker-local, concurrent, reuse-based execution.
136
+
137
+ ## Speculative Execution
138
+
139
+ - `SpeculativePlanner` predicts likely successor tasks.
140
+ - Executor marks/schedules speculative tasks early.
141
+ - Unused speculative branches can be cancelled on dependency failure.
142
+
143
+ ## HITL Flow
144
+
145
+ 1. Agent indicates human input is required.
146
+ 2. Runtime emits HITL/clarification event.
147
+ 3. Task pauses until response or timeout.
148
+ 4. Execution resumes or fails based on response policy.
@@ -20,7 +20,7 @@ except Exception: # pragma: no cover - missing dist metadata (e.g. bare checkou
20
20
 
21
21
  from devsper.config import get_config
22
22
 
23
- __all__ = ["Swarm", "get_config", "__version__"]
23
+ __all__ = ["Swarm", "MissionRunner", "get_config", "__version__"]
24
24
 
25
25
 
26
26
  def __getattr__(name: str):
@@ -29,4 +29,8 @@ def __getattr__(name: str):
29
29
  from devsper.swarm.swarm import Swarm # local import
30
30
 
31
31
  return Swarm
32
+ if name == "MissionRunner":
33
+ from devsper.missions import MissionRunner # local import
34
+
35
+ return MissionRunner
32
36
  raise AttributeError(name)