loopx 1.3.1__tar.gz → 1.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 (2530) hide show
  1. loopx-1.4.0/PKG-INFO +855 -0
  2. loopx-1.4.0/loopx/__init__.py +5 -0
  3. loopx-1.4.0/loopx/bootstrap.py +771 -0
  4. loopx-1.4.0/loopx/bootstrap_command_pack.py +2235 -0
  5. loopx-1.4.0/loopx/canary/planner.py +1953 -0
  6. loopx-1.4.0/loopx/canary/premerge.py +1208 -0
  7. loopx-1.4.0/loopx/canary/runner.py +1174 -0
  8. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/README.md +1394 -0
  9. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/container_binding.py +130 -0
  10. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/experiment_board.py +1053 -0
  11. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/experiment_identity.py +49 -0
  12. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/factorial_contrast.py +581 -0
  13. loopx-1.4.0/loopx/capabilities/benchmark_toolkit/study_projection.py +1386 -0
  14. loopx-1.4.0/loopx/capabilities/change_quality/README.md +247 -0
  15. loopx-1.4.0/loopx/capabilities/change_quality/receipt.py +533 -0
  16. loopx-1.4.0/loopx/capabilities/change_quality/result.py +529 -0
  17. loopx-1.4.0/loopx/capabilities/configuration_ui.py +642 -0
  18. loopx-1.4.0/loopx/capabilities/connector_registry/cli.py +139 -0
  19. loopx-1.4.0/loopx/capabilities/connector_registry/core.py +259 -0
  20. loopx-1.4.0/loopx/capabilities/connector_registry/tests/test_connector_registry.py +251 -0
  21. loopx-1.4.0/loopx/capabilities/content_ops/README.md +191 -0
  22. loopx-1.4.0/loopx/capabilities/content_ops/catalog_entry.py +204 -0
  23. loopx-1.4.0/loopx/capabilities/content_ops/cli.py +679 -0
  24. loopx-1.4.0/loopx/capabilities/content_ops/reference.py +66 -0
  25. loopx-1.4.0/loopx/capabilities/decision_context/assembler.py +911 -0
  26. loopx-1.4.0/loopx/capabilities/decision_context/packets.py +664 -0
  27. loopx-1.4.0/loopx/capabilities/explore/README.md +1173 -0
  28. loopx-1.4.0/loopx/capabilities/explore/README.zh-CN.md +494 -0
  29. loopx-1.4.0/loopx/capabilities/explore/adaptive_replay_planner.py +229 -0
  30. loopx-1.4.0/loopx/capabilities/explore/result_log.py +1051 -0
  31. loopx-1.4.0/loopx/capabilities/explore/result_writeback.py +357 -0
  32. loopx-1.4.0/loopx/capabilities/explore/todo_branch_plan.py +667 -0
  33. loopx-1.4.0/loopx/capabilities/explore/turn_context.py +220 -0
  34. loopx-1.4.0/loopx/capabilities/explore/worker_branch_plan.py +1264 -0
  35. loopx-1.4.0/loopx/capabilities/external_research/README.md +252 -0
  36. loopx-1.4.0/loopx/capabilities/goal_capability_organization/README.md +124 -0
  37. loopx-1.4.0/loopx/capabilities/goal_capability_organization/README.zh-CN.md +104 -0
  38. loopx-1.4.0/loopx/capabilities/issue_fix/explore_projection.py +733 -0
  39. loopx-1.4.0/loopx/capabilities/issue_fix/pr_lifecycle.py +1346 -0
  40. loopx-1.4.0/loopx/capabilities/issue_fix/pr_wait_reconcile.py +92 -0
  41. loopx-1.4.0/loopx/capabilities/machine_configuration/goal_storage.py +82 -0
  42. loopx-1.4.0/loopx/capabilities/machine_configuration/store.py +551 -0
  43. loopx-1.4.0/loopx/capabilities/manager_context/README.md +750 -0
  44. loopx-1.4.0/loopx/capabilities/manager_context/__init__.py +460 -0
  45. loopx-1.4.0/loopx/capabilities/manager_context/discovery.py +122 -0
  46. loopx-1.4.0/loopx/capabilities/manager_context/execution.py +202 -0
  47. loopx-1.4.0/loopx/capabilities/manager_context/goal_notice.py +161 -0
  48. loopx-1.4.0/loopx/capabilities/manager_context/inspection.py +507 -0
  49. loopx-1.4.0/loopx/capabilities/manager_context/roundtrip.py +1461 -0
  50. loopx-1.4.0/loopx/capabilities/manager_context/skills/loopx-manager/SKILL.md +264 -0
  51. loopx-1.4.0/loopx/capabilities/manager_runtime/__init__.py +23 -0
  52. loopx-1.4.0/loopx/capabilities/manager_runtime/machine_profile.py +254 -0
  53. loopx-1.4.0/loopx/capabilities/material_lifecycle/README.md +302 -0
  54. loopx-1.4.0/loopx/capabilities/material_lifecycle/README.zh-CN.md +215 -0
  55. loopx-1.4.0/loopx/capabilities/material_lifecycle/__init__.py +187 -0
  56. loopx-1.4.0/loopx/capabilities/material_lifecycle/_validation.py +187 -0
  57. loopx-1.4.0/loopx/capabilities/material_lifecycle/decision_planning.py +590 -0
  58. loopx-1.4.0/loopx/capabilities/material_lifecycle/revision.py +513 -0
  59. loopx-1.4.0/loopx/capabilities/native_chat/codex_auth.py +119 -0
  60. loopx-1.4.0/loopx/capabilities/native_chat/codex_context.py +163 -0
  61. loopx-1.4.0/loopx/capabilities/native_chat/conversation_bindings.py +425 -0
  62. loopx-1.4.0/loopx/capabilities/native_chat/external_conversations.py +515 -0
  63. loopx-1.4.0/loopx/capabilities/native_chat/project_context.py +165 -0
  64. loopx-1.4.0/loopx/capabilities/native_chat/transports.py +140 -0
  65. loopx-1.4.0/loopx/capabilities/periodic_report/post_writeback_hook.py +635 -0
  66. loopx-1.4.0/loopx/capabilities/periodic_report/stage_completion.py +327 -0
  67. loopx-1.4.0/loopx/capabilities/periodic_report/todo_source.py +91 -0
  68. loopx-1.4.0/loopx/capabilities/pr_review_queue/README.md +1339 -0
  69. loopx-1.4.0/loopx/capabilities/pr_review_queue/approval_closeout.py +110 -0
  70. loopx-1.4.0/loopx/capabilities/pr_review_queue/architecture_assessment.py +108 -0
  71. loopx-1.4.0/loopx/capabilities/pr_review_queue/experiences/README.md +99 -0
  72. loopx-1.4.0/loopx/capabilities/pr_review_queue/experiences/README.zh-CN.md +87 -0
  73. loopx-1.4.0/loopx/capabilities/pr_review_queue/experiences/loopx-project/loopx/pr-5944-v1.json +29 -0
  74. loopx-1.4.0/loopx/capabilities/pr_review_queue/experiences/pr-5944-review-frame.md +58 -0
  75. loopx-1.4.0/loopx/capabilities/pr_review_queue/github_source.py +392 -0
  76. loopx-1.4.0/loopx/capabilities/pr_review_queue/repository_experience.py +178 -0
  77. loopx-1.4.0/loopx/capabilities/pr_review_queue/result_check.py +664 -0
  78. loopx-1.4.0/loopx/capabilities/pr_review_queue/review_contract.py +1571 -0
  79. loopx-1.4.0/loopx/capabilities/progress_review/README.md +273 -0
  80. loopx-1.4.0/loopx/capabilities/progress_review/README.zh-CN.md +153 -0
  81. loopx-1.4.0/loopx/capabilities/progress_review/context.py +107 -0
  82. loopx-1.4.0/loopx/capabilities/progress_review/receipt.py +491 -0
  83. loopx-1.4.0/loopx/capabilities/reward_memory/README.md +861 -0
  84. loopx-1.4.0/loopx/capabilities/reward_memory/README.zh-CN.md +654 -0
  85. loopx-1.4.0/loopx/capabilities/reward_memory/configuration.py +268 -0
  86. loopx-1.4.0/loopx/capabilities/semantic_preference/README.md +432 -0
  87. loopx-1.4.0/loopx/capabilities/semantic_preference/agent_preferences.py +156 -0
  88. loopx-1.4.0/loopx/capabilities/todo_replan_cadence/machine_defaults.py +193 -0
  89. loopx-1.4.0/loopx/chat.py +864 -0
  90. loopx-1.4.0/loopx/chat_action_store.py +1530 -0
  91. loopx-1.4.0/loopx/chat_actions.py +1666 -0
  92. loopx-1.4.0/loopx/chat_agent.py +1635 -0
  93. loopx-1.4.0/loopx/chat_automation_cadence_api.py +304 -0
  94. loopx-1.4.0/loopx/chat_completed_todos.py +230 -0
  95. loopx-1.4.0/loopx/chat_coordination.py +190 -0
  96. loopx-1.4.0/loopx/chat_goal_configuration_api.py +696 -0
  97. loopx-1.4.0/loopx/chat_lark_api.py +848 -0
  98. loopx-1.4.0/loopx/chat_loopx_mode.py +1089 -0
  99. loopx-1.4.0/loopx/chat_manager.py +1081 -0
  100. loopx-1.4.0/loopx/chat_manager_context.py +828 -0
  101. loopx-1.4.0/loopx/chat_manager_details.py +86 -0
  102. loopx-1.4.0/loopx/chat_monitor_actions.py +233 -0
  103. loopx-1.4.0/loopx/chat_runtime.py +2024 -0
  104. loopx-1.4.0/loopx/chat_server.py +1731 -0
  105. loopx-1.4.0/loopx/chat_status_api.py +251 -0
  106. loopx-1.4.0/loopx/chat_store.py +1985 -0
  107. loopx-1.4.0/loopx/chat_todo_actions.py +270 -0
  108. loopx-1.4.0/loopx/chat_todo_detail.py +46 -0
  109. loopx-1.4.0/loopx/claude_goal_mode/README.md +119 -0
  110. loopx-1.4.0/loopx/claude_goal_mode/hooks/goal_policy.py +214 -0
  111. loopx-1.4.0/loopx/claude_goal_mode/hooks/stdio_utf8.py +44 -0
  112. loopx-1.4.0/loopx/claude_goal_mode/scripts/goalmode_cmd.py +281 -0
  113. loopx-1.4.0/loopx/claude_goal_mode/statusline/goal_status.py +99 -0
  114. loopx-1.4.0/loopx/cli.py +993 -0
  115. loopx-1.4.0/loopx/cli_commands/action_help.py +54 -0
  116. loopx-1.4.0/loopx/cli_commands/authority_shadow.py +224 -0
  117. loopx-1.4.0/loopx/cli_commands/automation_cadence.py +129 -0
  118. loopx-1.4.0/loopx/cli_commands/canary.py +720 -0
  119. loopx-1.4.0/loopx/cli_commands/coordination_shadow.py +524 -0
  120. loopx-1.4.0/loopx/cli_commands/delegation.py +99 -0
  121. loopx-1.4.0/loopx/cli_commands/explore.py +767 -0
  122. loopx-1.4.0/loopx/cli_commands/manager_inbox.py +257 -0
  123. loopx-1.4.0/loopx/cli_commands/opencode2_goal_worker.py +218 -0
  124. loopx-1.4.0/loopx/cli_commands/post_writeback.py +275 -0
  125. loopx-1.4.0/loopx/cli_commands/pr_review.py +701 -0
  126. loopx-1.4.0/loopx/cli_commands/project_lifecycle_inputs.py +123 -0
  127. loopx-1.4.0/loopx/cli_commands/project_lifecycle_refresh_state.py +877 -0
  128. loopx-1.4.0/loopx/cli_commands/quota.py +963 -0
  129. loopx-1.4.0/loopx/cli_commands/quota_cache_freshness.py +106 -0
  130. loopx-1.4.0/loopx/cli_commands/quota_context.py +382 -0
  131. loopx-1.4.0/loopx/cli_commands/registry_admin_configure.py +510 -0
  132. loopx-1.4.0/loopx/cli_commands/start_goal.py +361 -0
  133. loopx-1.4.0/loopx/cli_commands/support_control.py +672 -0
  134. loopx-1.4.0/loopx/cli_commands/support_control_chat.py +171 -0
  135. loopx-1.4.0/loopx/cli_commands/task_lease.py +248 -0
  136. loopx-1.4.0/loopx/cli_commands/task_lease_arguments.py +87 -0
  137. loopx-1.4.0/loopx/cli_commands/todo.py +853 -0
  138. loopx-1.4.0/loopx/cli_commands/todo_argument_validation.py +722 -0
  139. loopx-1.4.0/loopx/cli_commands/todo_event.py +196 -0
  140. loopx-1.4.0/loopx/cli_commands/todo_registration.py +487 -0
  141. loopx-1.4.0/loopx/cli_commands/turn_inspection.py +171 -0
  142. loopx-1.4.0/loopx/cli_commands/turn_post_writeback.py +124 -0
  143. loopx-1.4.0/loopx/cli_commands/turn_registration.py +433 -0
  144. loopx-1.4.0/loopx/cli_commands/turn_rendering.py +343 -0
  145. loopx-1.4.0/loopx/cli_commands/turn_run_once.py +928 -0
  146. loopx-1.4.0/loopx/cli_runtime.py +537 -0
  147. loopx-1.4.0/loopx/codex_app_thread_activity.py +441 -0
  148. loopx-1.4.0/loopx/codex_cli_probe.py +1531 -0
  149. loopx-1.4.0/loopx/codex_cli_runtime_probe.py +733 -0
  150. loopx-1.4.0/loopx/collaboration_mcp.py +1956 -0
  151. loopx-1.4.0/loopx/configuration_catalog.py +905 -0
  152. loopx-1.4.0/loopx/configure_goal.py +1555 -0
  153. loopx-1.4.0/loopx/contract.py +1287 -0
  154. loopx-1.4.0/loopx/control_plane/agents/agent_scope.py +1366 -0
  155. loopx-1.4.0/loopx/control_plane/agents/capability_gate.py +201 -0
  156. loopx-1.4.0/loopx/control_plane/agents/execution_facts.py +272 -0
  157. loopx-1.4.0/loopx/control_plane/agents/host_thread_activity.py +418 -0
  158. loopx-1.4.0/loopx/control_plane/agents/management_projection.py +886 -0
  159. loopx-1.4.0/loopx/control_plane/agents/supervisor_event_log.py +126 -0
  160. loopx-1.4.0/loopx/control_plane/capabilities/agent_preferences.ts +185 -0
  161. loopx-1.4.0/loopx/control_plane/capabilities/change_quality_validation.ts +114 -0
  162. loopx-1.4.0/loopx/control_plane/capabilities/content_reference.ts +168 -0
  163. loopx-1.4.0/loopx/control_plane/capabilities/explore_result_writeback.ts +181 -0
  164. loopx-1.4.0/loopx/control_plane/capabilities/explore_turn_context.ts +173 -0
  165. loopx-1.4.0/loopx/control_plane/capabilities/goal_capability_organization.ts +133 -0
  166. loopx-1.4.0/loopx/control_plane/capabilities/pr_review_approval_closeout.ts +134 -0
  167. loopx-1.4.0/loopx/control_plane/capability_hooks.py +854 -0
  168. loopx-1.4.0/loopx/control_plane/capability_hooks.ts +901 -0
  169. loopx-1.4.0/loopx/control_plane/collaboration/README.md +119 -0
  170. loopx-1.4.0/loopx/control_plane/collaboration/conversation_binding.ts +500 -0
  171. loopx-1.4.0/loopx/control_plane/collaboration/conversation_scope.ts +151 -0
  172. loopx-1.4.0/loopx/control_plane/collaboration/delegation.ts +634 -0
  173. loopx-1.4.0/loopx/control_plane/collaboration/delegation_result_use.ts +105 -0
  174. loopx-1.4.0/loopx/control_plane/collaboration/delegation_results.py +197 -0
  175. loopx-1.4.0/loopx/control_plane/collaboration/delegation_validation.py +218 -0
  176. loopx-1.4.0/loopx/control_plane/collaboration/inbox.py +612 -0
  177. loopx-1.4.0/loopx/control_plane/collaboration/links.py +172 -0
  178. loopx-1.4.0/loopx/control_plane/collaboration/peer_context_observation.py +56 -0
  179. loopx-1.4.0/loopx/control_plane/collaboration/result_files.py +121 -0
  180. loopx-1.4.0/loopx/control_plane/collaboration/result_publication.ts +137 -0
  181. loopx-1.4.0/loopx/control_plane/collaboration/semantic_request.ts +120 -0
  182. loopx-1.4.0/loopx/control_plane/collaboration/source_chat_observation.py +53 -0
  183. loopx-1.4.0/loopx/control_plane/collaboration/source_grant_observation.py +191 -0
  184. loopx-1.4.0/loopx/control_plane/coordination/authority_core.py +346 -0
  185. loopx-1.4.0/loopx/control_plane/coordination/authority_source_capture.py +272 -0
  186. loopx-1.4.0/loopx/control_plane/coordination/canonical_snapshot.py +245 -0
  187. loopx-1.4.0/loopx/control_plane/coordination/cold_source_backup.py +85 -0
  188. loopx-1.4.0/loopx/control_plane/coordination/cold_source_import.ts +342 -0
  189. loopx-1.4.0/loopx/control_plane/coordination/cold_source_inspection.ts +181 -0
  190. loopx-1.4.0/loopx/control_plane/coordination/configuration.py +193 -0
  191. loopx-1.4.0/loopx/control_plane/coordination/continuation_adoption.ts +77 -0
  192. loopx-1.4.0/loopx/control_plane/coordination/lease_acquisition_proof.ts +78 -0
  193. loopx-1.4.0/loopx/control_plane/coordination/legacy_writer_fence.py +388 -0
  194. loopx-1.4.0/loopx/control_plane/coordination/legacy_writer_fence.ts +337 -0
  195. loopx-1.4.0/loopx/control_plane/coordination/local_authority_archive.ts +162 -0
  196. loopx-1.4.0/loopx/control_plane/coordination/local_authority_defaults.ts +50 -0
  197. loopx-1.4.0/loopx/control_plane/coordination/local_authority_migration.ts +277 -0
  198. loopx-1.4.0/loopx/control_plane/coordination/local_authority_read.ts +347 -0
  199. loopx-1.4.0/loopx/control_plane/coordination/local_authority_runtime.ts +1545 -0
  200. loopx-1.4.0/loopx/control_plane/coordination/local_authority_shadow_adapter.py +281 -0
  201. loopx-1.4.0/loopx/control_plane/coordination/local_authority_shadow_history.py +492 -0
  202. loopx-1.4.0/loopx/control_plane/coordination/local_authority_shadow_outbox.py +541 -0
  203. loopx-1.4.0/loopx/control_plane/coordination/local_authority_shadow_projection.py +267 -0
  204. loopx-1.4.0/loopx/control_plane/coordination/local_authority_shadow_readback.py +182 -0
  205. loopx-1.4.0/loopx/control_plane/coordination/postgresql_authority_store.ts +894 -0
  206. loopx-1.4.0/loopx/control_plane/coordination/runtime_shadow.py +422 -0
  207. loopx-1.4.0/loopx/control_plane/coordination/runtime_shadow.ts +443 -0
  208. loopx-1.4.0/loopx/control_plane/coordination/runtime_shadow_writer_adapter.py +206 -0
  209. loopx-1.4.0/loopx/control_plane/coordination/shadow_management.py +248 -0
  210. loopx-1.4.0/loopx/control_plane/coordination/shadow_management.ts +833 -0
  211. loopx-1.4.0/loopx/control_plane/coordination/task_lease_acquire.ts +120 -0
  212. loopx-1.4.0/loopx/control_plane/coordination/task_lease_lifecycle.ts +193 -0
  213. loopx-1.4.0/loopx/control_plane/coordination/task_lease_proof.ts +250 -0
  214. loopx-1.4.0/loopx/control_plane/coordination/todo_claim.ts +676 -0
  215. loopx-1.4.0/loopx/control_plane/coordination/todo_create.ts +280 -0
  216. loopx-1.4.0/loopx/control_plane/coordination/todo_execution_dependency.ts +71 -0
  217. loopx-1.4.0/loopx/control_plane/coordination/todo_lifecycle_decision.ts +636 -0
  218. loopx-1.4.0/loopx/control_plane/coordination/todo_monitor_cycle.ts +91 -0
  219. loopx-1.4.0/loopx/control_plane/coordination/todo_monitor_poll.ts +127 -0
  220. loopx-1.4.0/loopx/control_plane/coordination/todo_terminal_lifecycle.ts +1680 -0
  221. loopx-1.4.0/loopx/control_plane/coordination/todo_terminal_reentry.ts +89 -0
  222. loopx-1.4.0/loopx/control_plane/coordination/todo_update_admission.ts +206 -0
  223. loopx-1.4.0/loopx/control_plane/effect_program.py +856 -0
  224. loopx-1.4.0/loopx/control_plane/effect_program.ts +958 -0
  225. loopx-1.4.0/loopx/control_plane/effect_runtime.py +1256 -0
  226. loopx-1.4.0/loopx/control_plane/effect_runtime_errors.ts +129 -0
  227. loopx-1.4.0/loopx/control_plane/effect_runtime_handlers.ts +785 -0
  228. loopx-1.4.0/loopx/control_plane/effect_runtime_io.ts +568 -0
  229. loopx-1.4.0/loopx/control_plane/effect_runtime_server.ts +320 -0
  230. loopx-1.4.0/loopx/control_plane/goals/acceptance.py +410 -0
  231. loopx-1.4.0/loopx/control_plane/goals/acceptance_authority.ts +487 -0
  232. loopx-1.4.0/loopx/control_plane/goals/acceptance_contract.ts +565 -0
  233. loopx-1.4.0/loopx/control_plane/goals/acceptance_lifecycle.ts +87 -0
  234. loopx-1.4.0/loopx/control_plane/goals/botmux_runtime.py +1495 -0
  235. loopx-1.4.0/loopx/control_plane/goals/checkpoint_commit.ts +294 -0
  236. loopx-1.4.0/loopx/control_plane/goals/deletion_service.py +1338 -0
  237. loopx-1.4.0/loopx/control_plane/goals/first_party_host_admission.py +410 -0
  238. loopx-1.4.0/loopx/control_plane/goals/first_party_host_runtime.ts +187 -0
  239. loopx-1.4.0/loopx/control_plane/goals/goal_frontier/__init__.py +1982 -0
  240. loopx-1.4.0/loopx/control_plane/goals/goal_ref_validation.py +22 -0
  241. loopx-1.4.0/loopx/control_plane/goals/goal_vision_policy.py +64 -0
  242. loopx-1.4.0/loopx/control_plane/goals/source_session_recreation.py +602 -0
  243. loopx-1.4.0/loopx/control_plane/goals/source_session_registration.py +400 -0
  244. loopx-1.4.0/loopx/control_plane/goals/source_session_registry_state.py +108 -0
  245. loopx-1.4.0/loopx/control_plane/goals/source_session_turn_effects.py +575 -0
  246. loopx-1.4.0/loopx/control_plane/goals/start_goal_todo_delta.py +251 -0
  247. loopx-1.4.0/loopx/control_plane/goals/vision_checkpoint.ts +923 -0
  248. loopx-1.4.0/loopx/control_plane/heartbeat/budget.py +94 -0
  249. loopx-1.4.0/loopx/control_plane/heartbeat/builder.py +699 -0
  250. loopx-1.4.0/loopx/control_plane/heartbeat/rules.py +113 -0
  251. loopx-1.4.0/loopx/control_plane/heartbeat/task_body.py +821 -0
  252. loopx-1.4.0/loopx/control_plane/operator_provider.py +483 -0
  253. loopx-1.4.0/loopx/control_plane/presentation/action_review_plan.ts +626 -0
  254. loopx-1.4.0/loopx/control_plane/presentation/goal_attention.ts +112 -0
  255. loopx-1.4.0/loopx/control_plane/projects/identity.py +26 -0
  256. loopx-1.4.0/loopx/control_plane/projects/registry.py +702 -0
  257. loopx-1.4.0/loopx/control_plane/quota/automation_cadence.ts +301 -0
  258. loopx-1.4.0/loopx/control_plane/quota/automation_cadence_readback.py +133 -0
  259. loopx-1.4.0/loopx/control_plane/quota/blocked_retry.py +233 -0
  260. loopx-1.4.0/loopx/control_plane/quota/blocked_wait.ts +227 -0
  261. loopx-1.4.0/loopx/control_plane/quota/cli_projection.py +849 -0
  262. loopx-1.4.0/loopx/control_plane/quota/effect_program.py +269 -0
  263. loopx-1.4.0/loopx/control_plane/quota/heartbeat_receipt.py +685 -0
  264. loopx-1.4.0/loopx/control_plane/quota/heartbeat_receipt_identity.ts +225 -0
  265. loopx-1.4.0/loopx/control_plane/quota/ledger_readback.py +112 -0
  266. loopx-1.4.0/loopx/control_plane/quota/live_decision.py +784 -0
  267. loopx-1.4.0/loopx/control_plane/quota/monitor_poll.py +999 -0
  268. loopx-1.4.0/loopx/control_plane/quota/monitor_poll_commit.ts +2454 -0
  269. loopx-1.4.0/loopx/control_plane/quota/prior_turn_closeout.ts +143 -0
  270. loopx-1.4.0/loopx/control_plane/quota/selected_todo_projection.py +156 -0
  271. loopx-1.4.0/loopx/control_plane/quota/settlement.py +446 -0
  272. loopx-1.4.0/loopx/control_plane/quota/settlement_cli.py +465 -0
  273. loopx-1.4.0/loopx/control_plane/quota/settlement_phase.ts +175 -0
  274. loopx-1.4.0/loopx/control_plane/quota/settlement_plan.ts +94 -0
  275. loopx-1.4.0/loopx/control_plane/quota/settlement_readback.ts +1354 -0
  276. loopx-1.4.0/loopx/control_plane/quota/should_run.py +447 -0
  277. loopx-1.4.0/loopx/control_plane/quota/should_run_packet.py +1842 -0
  278. loopx-1.4.0/loopx/control_plane/quota/should_run_prepare.py +955 -0
  279. loopx-1.4.0/loopx/control_plane/quota/spend_commit.py +301 -0
  280. loopx-1.4.0/loopx/control_plane/quota/turn_envelope.ts +943 -0
  281. loopx-1.4.0/loopx/control_plane/quota/turn_envelope_budget.ts +90 -0
  282. loopx-1.4.0/loopx/control_plane/quota/unsettled_host_turn_recovery.ts +507 -0
  283. loopx-1.4.0/loopx/control_plane/rollout_receipt_log.ts +197 -0
  284. loopx-1.4.0/loopx/control_plane/runtime/document_io.py +58 -0
  285. loopx-1.4.0/loopx/control_plane/runtime/node_probe.py +137 -0
  286. loopx-1.4.0/loopx/control_plane/runtime/node_version.ts +14 -0
  287. loopx-1.4.0/loopx/control_plane/runtime/public_safety.py +221 -0
  288. loopx-1.4.0/loopx/control_plane/runtime/run_history.py +146 -0
  289. loopx-1.4.0/loopx/control_plane/runtime/runtime_projection_writer.py +118 -0
  290. loopx-1.4.0/loopx/control_plane/runtime/time.py +119 -0
  291. loopx-1.4.0/loopx/control_plane/runtime_timestamp.ts +91 -0
  292. loopx-1.4.0/loopx/control_plane/scheduler/arbitration.py +198 -0
  293. loopx-1.4.0/loopx/control_plane/scheduler/heartbeat_commit.ts +1050 -0
  294. loopx-1.4.0/loopx/control_plane/scheduler/heartbeat_followup.ts +428 -0
  295. loopx-1.4.0/loopx/control_plane/scheduler/heartbeat_followup_cli.ts +331 -0
  296. loopx-1.4.0/loopx/control_plane/scheduler/legacy_monitor_poll.py +229 -0
  297. loopx-1.4.0/loopx/control_plane/scheduler/monitor_batch.ts +237 -0
  298. loopx-1.4.0/loopx/control_plane/scheduler/monitor_batch_receipts.py +64 -0
  299. loopx-1.4.0/loopx/control_plane/scheduler/monitor_poll_writeback.py +133 -0
  300. loopx-1.4.0/loopx/control_plane/scheduler/scheduler_hint.py +1646 -0
  301. loopx-1.4.0/loopx/control_plane/scheduler/state_store.ts +666 -0
  302. loopx-1.4.0/loopx/control_plane/testing/authority_e2e_rows_stage2c2.py +1231 -0
  303. loopx-1.4.0/loopx/control_plane/testing/cli_output_budget.py +936 -0
  304. loopx-1.4.0/loopx/control_plane/testing/cli_output_differential.py +1056 -0
  305. loopx-1.4.0/loopx/control_plane/testing/cli_output_semantics.py +347 -0
  306. loopx-1.4.0/loopx/control_plane/testing/doubao_model_behavior_actor.py +654 -0
  307. loopx-1.4.0/loopx/control_plane/testing/model_behavior_packet_safety.py +172 -0
  308. loopx-1.4.0/loopx/control_plane/testing/replan_semantic_action_behavior.py +1477 -0
  309. loopx-1.4.0/loopx/control_plane/testing/selected_todo_tool_behavior.py +1193 -0
  310. loopx-1.4.0/loopx/control_plane/todos/active_state_editing.py +244 -0
  311. loopx-1.4.0/loopx/control_plane/todos/active_state_todos.py +192 -0
  312. loopx-1.4.0/loopx/control_plane/todos/authoring_scope.py +97 -0
  313. loopx-1.4.0/loopx/control_plane/todos/authoring_scope.ts +381 -0
  314. loopx-1.4.0/loopx/control_plane/todos/completion_result.py +123 -0
  315. loopx-1.4.0/loopx/control_plane/todos/completion_validation_store.py +188 -0
  316. loopx-1.4.0/loopx/control_plane/todos/context_projection.ts +144 -0
  317. loopx-1.4.0/loopx/control_plane/todos/contract.py +1486 -0
  318. loopx-1.4.0/loopx/control_plane/todos/creation_scope.ts +40 -0
  319. loopx-1.4.0/loopx/control_plane/todos/field_update.ts +251 -0
  320. loopx-1.4.0/loopx/control_plane/todos/frontier_deadline.py +129 -0
  321. loopx-1.4.0/loopx/control_plane/todos/frontier_revision.py +85 -0
  322. loopx-1.4.0/loopx/control_plane/todos/frontier_revision.ts +383 -0
  323. loopx-1.4.0/loopx/control_plane/todos/goal_todo_projection.py +302 -0
  324. loopx-1.4.0/loopx/control_plane/todos/handoff_gate.py +144 -0
  325. loopx-1.4.0/loopx/control_plane/todos/handoff_mode.py +420 -0
  326. loopx-1.4.0/loopx/control_plane/todos/handoff_note.py +150 -0
  327. loopx-1.4.0/loopx/control_plane/todos/handoff_projection.ts +113 -0
  328. loopx-1.4.0/loopx/control_plane/todos/legacy_mutation.py +1520 -0
  329. loopx-1.4.0/loopx/control_plane/todos/line_update.py +364 -0
  330. loopx-1.4.0/loopx/control_plane/todos/list_readback.py +273 -0
  331. loopx-1.4.0/loopx/control_plane/todos/markdown.py +338 -0
  332. loopx-1.4.0/loopx/control_plane/todos/mutation_api.py +595 -0
  333. loopx-1.4.0/loopx/control_plane/todos/mutation_authority.py +412 -0
  334. loopx-1.4.0/loopx/control_plane/todos/mutation_response.py +178 -0
  335. loopx-1.4.0/loopx/control_plane/todos/native_update_plan.ts +110 -0
  336. loopx-1.4.0/loopx/control_plane/todos/path_resolution.py +47 -0
  337. loopx-1.4.0/loopx/control_plane/todos/pr_wait_observation.ts +90 -0
  338. loopx-1.4.0/loopx/control_plane/todos/provider_create.py +223 -0
  339. loopx-1.4.0/loopx/control_plane/todos/provider_projection.py +306 -0
  340. loopx-1.4.0/loopx/control_plane/todos/provider_terminal_lifecycle.py +639 -0
  341. loopx-1.4.0/loopx/control_plane/todos/quota_selection.py +158 -0
  342. loopx-1.4.0/loopx/control_plane/todos/quota_selection.ts +414 -0
  343. loopx-1.4.0/loopx/control_plane/todos/quota_summary.py +851 -0
  344. loopx-1.4.0/loopx/control_plane/todos/resume_condition.py +410 -0
  345. loopx-1.4.0/loopx/control_plane/todos/resume_condition.ts +901 -0
  346. loopx-1.4.0/loopx/control_plane/todos/resume_planning.py +98 -0
  347. loopx-1.4.0/loopx/control_plane/todos/route_continuation.py +38 -0
  348. loopx-1.4.0/loopx/control_plane/todos/succession.ts +275 -0
  349. loopx-1.4.0/loopx/control_plane/todos/succession_warning.py +269 -0
  350. loopx-1.4.0/loopx/control_plane/todos/succession_wire_v1.json +30 -0
  351. loopx-1.4.0/loopx/control_plane/todos/summary_item.py +329 -0
  352. loopx-1.4.0/loopx/control_plane/todos/summary_lanes.ts +176 -0
  353. loopx-1.4.0/loopx/control_plane/todos/summary_projection.ts +245 -0
  354. loopx-1.4.0/loopx/control_plane/todos/text.py +24 -0
  355. loopx-1.4.0/loopx/control_plane/todos/todo_index.py +279 -0
  356. loopx-1.4.0/loopx/control_plane/todos/todo_semantics.py +798 -0
  357. loopx-1.4.0/loopx/control_plane/todos/todo_summary.py +1103 -0
  358. loopx-1.4.0/loopx/control_plane/todos/update_intent.py +84 -0
  359. loopx-1.4.0/loopx/control_plane/todos/work_requirements.ts +129 -0
  360. loopx-1.4.0/loopx/control_plane/turn_driver/codex_cli.py +873 -0
  361. loopx-1.4.0/loopx/control_plane/turn_driver/execution_readback.py +87 -0
  362. loopx-1.4.0/loopx/control_plane/turn_driver/executor.py +1658 -0
  363. loopx-1.4.0/loopx/control_plane/turn_driver/host_candidate.py +315 -0
  364. loopx-1.4.0/loopx/control_plane/turn_driver/host_todo_completion.ts +1049 -0
  365. loopx-1.4.0/loopx/control_plane/turn_driver/journal_store.py +195 -0
  366. loopx-1.4.0/loopx/control_plane/turn_driver/loop_controller.py +707 -0
  367. loopx-1.4.0/loopx/control_plane/turn_driver/managed_step.py +331 -0
  368. loopx-1.4.0/loopx/control_plane/turn_driver/task_validation_failure.ts +34 -0
  369. loopx-1.4.0/loopx/control_plane/turn_driver/turn_contract_generated.py +290 -0
  370. loopx-1.4.0/loopx/control_plane/turn_driver/turn_contract_generated.ts +543 -0
  371. loopx-1.4.0/loopx/control_plane/turn_driver/turn_journal.ts +805 -0
  372. loopx-1.4.0/loopx/control_plane/turn_driver/turn_journal_query.ts +212 -0
  373. loopx-1.4.0/loopx/control_plane/turn_loop_controller_contract_v0.json +497 -0
  374. loopx-1.4.0/loopx/control_plane/work_items/action_selection_contract.py +417 -0
  375. loopx-1.4.0/loopx/control_plane/work_items/autonomous_replan_obligation.py +723 -0
  376. loopx-1.4.0/loopx/control_plane/work_items/capability_monitor_fallback.py +217 -0
  377. loopx-1.4.0/loopx/control_plane/work_items/context_readback.py +181 -0
  378. loopx-1.4.0/loopx/control_plane/work_items/execution_obligation.py +254 -0
  379. loopx-1.4.0/loopx/control_plane/work_items/external_progress_review.py +486 -0
  380. loopx-1.4.0/loopx/control_plane/work_items/governed_transition_proposal.py +746 -0
  381. loopx-1.4.0/loopx/control_plane/work_items/interaction_contract.py +1761 -0
  382. loopx-1.4.0/loopx/control_plane/work_items/interaction_contract.ts +340 -0
  383. loopx-1.4.0/loopx/control_plane/work_items/lifecycle_recovery.py +36 -0
  384. loopx-1.4.0/loopx/control_plane/work_items/local_lease_record.py +221 -0
  385. loopx-1.4.0/loopx/control_plane/work_items/planning_inventory.py +181 -0
  386. loopx-1.4.0/loopx/control_plane/work_items/progress_review_evidence.ts +68 -0
  387. loopx-1.4.0/loopx/control_plane/work_items/replan_context.ts +275 -0
  388. loopx-1.4.0/loopx/control_plane/work_items/replan_context_codec.py +152 -0
  389. loopx-1.4.0/loopx/control_plane/work_items/replan_history_codec.py +242 -0
  390. loopx-1.4.0/loopx/control_plane/work_items/replan_history_settlement.ts +75 -0
  391. loopx-1.4.0/loopx/control_plane/work_items/replan_semantics.ts +384 -0
  392. loopx-1.4.0/loopx/control_plane/work_items/semantic_replan_writeback.py +552 -0
  393. loopx-1.4.0/loopx/control_plane/work_items/task_lease.py +912 -0
  394. loopx-1.4.0/loopx/control_plane/work_items/task_lease_acquire_adapter.py +851 -0
  395. loopx-1.4.0/loopx/control_plane/work_items/task_lease_inspection.ts +122 -0
  396. loopx-1.4.0/loopx/control_plane/work_items/team_plan_adapter.py +292 -0
  397. loopx-1.4.0/loopx/control_plane/work_items/team_plan_authority.ts +111 -0
  398. loopx-1.4.0/loopx/control_plane/work_items/unsettled_host_turn_contract.py +133 -0
  399. loopx-1.4.0/loopx/control_plane/work_items/work_lane_context.py +169 -0
  400. loopx-1.4.0/loopx/diagnose.py +800 -0
  401. loopx-1.4.0/loopx/doctor.py +1419 -0
  402. loopx-1.4.0/loopx/entrypoint.py +128 -0
  403. loopx-1.4.0/loopx/execution_profile.py +382 -0
  404. loopx-1.4.0/loopx/extensions/ego_source_reader.py +514 -0
  405. loopx-1.4.0/loopx/extensions/lark/README.md +513 -0
  406. loopx-1.4.0/loopx/extensions/lark/bot_scopes.py +65 -0
  407. loopx-1.4.0/loopx/extensions/lark/conversation_identity.py +84 -0
  408. loopx-1.4.0/loopx/extensions/lark/docs/realtime-conversation-readiness.md +158 -0
  409. loopx-1.4.0/loopx/extensions/lark/goal_channel_delivery_contract.py +72 -0
  410. loopx-1.4.0/loopx/extensions/lark/goal_channel_transport.py +529 -0
  411. loopx-1.4.0/loopx/extensions/lark/goal_topic_dispatch.py +125 -0
  412. loopx-1.4.0/loopx/extensions/lark/goal_topic_runtime.py +1684 -0
  413. loopx-1.4.0/loopx/extensions/lark/group_history.py +638 -0
  414. loopx-1.4.0/loopx/extensions/lark/identity_shapes.py +60 -0
  415. loopx-1.4.0/loopx/extensions/lark/inbox_reply.py +1111 -0
  416. loopx-1.4.0/loopx/extensions/lark/manager_returns.py +338 -0
  417. loopx-1.4.0/loopx/extensions/lark/outbound.py +433 -0
  418. loopx-1.4.0/loopx/extensions/lark/presentation/markdown_post.py +261 -0
  419. loopx-1.4.0/loopx/extensions/lark/private_conversation_api.py +130 -0
  420. loopx-1.4.0/loopx/extensions/lark/private_conversations.py +769 -0
  421. loopx-1.4.0/loopx/extensions/lark/private_progress.py +74 -0
  422. loopx-1.4.0/loopx/extensions/lark/return_files.py +107 -0
  423. loopx-1.4.0/loopx/extensions/openviking_periodic_report/provider.py +357 -0
  424. loopx-1.4.0/loopx/extensions/openviking_semantic_preference/history_export.py +491 -0
  425. loopx-1.4.0/loopx/extensions/openviking_semantic_preference/provider.py +313 -0
  426. loopx-1.4.0/loopx/extensions/process_runtime.py +256 -0
  427. loopx-1.4.0/loopx/extensions/public_source_reader.py +366 -0
  428. loopx-1.4.0/loopx/feedback.py +623 -0
  429. loopx-1.4.0/loopx/file_lock.py +1163 -0
  430. loopx-1.4.0/loopx/global_registry.py +959 -0
  431. loopx-1.4.0/loopx/goal_portfolio.py +538 -0
  432. loopx-1.4.0/loopx/heartbeat_prequota.py +93 -0
  433. loopx-1.4.0/loopx/history.py +1047 -0
  434. loopx-1.4.0/loopx/operator_gate.py +422 -0
  435. loopx-1.4.0/loopx/orchestration.py +282 -0
  436. loopx-1.4.0/loopx/paths.py +356 -0
  437. loopx-1.4.0/loopx/pr_review.py +1508 -0
  438. loopx-1.4.0/loopx/presentation/README.md +90 -0
  439. loopx-1.4.0/loopx/presentation/answer_instruction.py +39 -0
  440. loopx-1.4.0/loopx/presentation/codex_activity.py +278 -0
  441. loopx-1.4.0/loopx/presentation/configuration_api.py +70 -0
  442. loopx-1.4.0/loopx/presentation/explore_results_api.py +66 -0
  443. loopx-1.4.0/loopx/presentation/goal_storage_api.py +179 -0
  444. loopx-1.4.0/loopx/presentation/public_safety.py +57 -0
  445. loopx-1.4.0/loopx/presentation/renderers/conversation_status_markdown.py +103 -0
  446. loopx-1.4.0/loopx/presentation/renderers/quota_markdown.py +1164 -0
  447. loopx-1.4.0/loopx/presentation/renderers/turn_envelope_markdown.py +73 -0
  448. loopx-1.4.0/loopx/presentation/static_site.py +791 -0
  449. loopx-1.4.0/loopx/project_prompt.py +1291 -0
  450. loopx-1.4.0/loopx/project_uninstall.py +505 -0
  451. loopx-1.4.0/loopx/public_safe_text.py +624 -0
  452. loopx-1.4.0/loopx/python_install_owner.py +90 -0
  453. loopx-1.4.0/loopx/quota.py +1675 -0
  454. loopx-1.4.0/loopx/rollout_event_log.py +628 -0
  455. loopx-1.4.0/loopx/runtime.py +212 -0
  456. loopx-1.4.0/loopx/runtime_activation.py +88 -0
  457. loopx-1.4.0/loopx/self_update.py +1541 -0
  458. loopx-1.4.0/loopx/semantics/development_probe.py +366 -0
  459. loopx-1.4.0/loopx/semantics/project_registry_io_manifest_v1.json +2353 -0
  460. loopx-1.4.0/loopx/semantics/vocabulary_v0.json +1156 -0
  461. loopx-1.4.0/loopx/slash_command_install.py +1567 -0
  462. loopx-1.4.0/loopx/state_backup.py +705 -0
  463. loopx-1.4.0/loopx/state_migration.py +473 -0
  464. loopx-1.4.0/loopx/state_refresh.py +1592 -0
  465. loopx-1.4.0/loopx/status.py +1382 -0
  466. loopx-1.4.0/loopx/todos.py +159 -0
  467. loopx-1.4.0/loopx/upgrade.py +1178 -0
  468. loopx-1.4.0/loopx/web/chat/asset-retention.json +37 -0
  469. loopx-1.4.0/loopx/web/chat/assets/index-BDnFunpe.js +107 -0
  470. loopx-1.4.0/loopx/web/chat/assets/index-CCVdv1fB.css +1 -0
  471. loopx-1.4.0/loopx/web/chat/bundle-manifest.json +519 -0
  472. loopx-1.4.0/loopx/web/chat/index.html +39 -0
  473. loopx-1.4.0/loopx/windows_install.py +560 -0
  474. loopx-1.4.0/loopx/worker_bridge.py +994 -0
  475. loopx-1.4.0/loopx/workflow_skill_install.py +485 -0
  476. loopx-1.4.0/loopx.egg-info/PKG-INFO +855 -0
  477. loopx-1.4.0/loopx.egg-info/SOURCES.txt +2021 -0
  478. loopx-1.4.0/loopx.egg-info/requires.txt +27 -0
  479. loopx-1.4.0/pyproject.toml +205 -0
  480. loopx-1.4.0/setup.py +70 -0
  481. loopx-1.4.0/skills/loopx-benchmark/SKILL.md +292 -0
  482. loopx-1.4.0/skills/loopx-benchmark/agents/openai.yaml +4 -0
  483. loopx-1.4.0/skills/loopx-change-quality/SKILL.md +212 -0
  484. loopx-1.4.0/skills/loopx-performance-diagnosis/SKILL.md +58 -0
  485. loopx-1.4.0/skills/loopx-performance-diagnosis/agents/openai.yaml +4 -0
  486. loopx-1.4.0/skills/loopx-pr-review/SKILL.md +180 -0
  487. loopx-1.4.0/skills/loopx-self-repair/references/repair-patterns.md +313 -0
  488. loopx-1.4.0/tests/test_archive_installer_commit_response.py +365 -0
  489. loopx-1.4.0/tests/test_ark_managed_agent_host.py +508 -0
  490. loopx-1.4.0/tests/test_automation_cadence.py +167 -0
  491. loopx-1.4.0/tests/test_chat_activity.py +363 -0
  492. loopx-1.4.0/tests/test_chat_agent.py +1445 -0
  493. loopx-1.4.0/tests/test_chat_automation_cadence_api.py +330 -0
  494. loopx-1.4.0/tests/test_chat_codex_auth.py +195 -0
  495. loopx-1.4.0/tests/test_chat_codex_context.py +115 -0
  496. loopx-1.4.0/tests/test_chat_codex_home.py +134 -0
  497. loopx-1.4.0/tests/test_chat_completed_todos.py +273 -0
  498. loopx-1.4.0/tests/test_chat_conversation_bindings.py +629 -0
  499. loopx-1.4.0/tests/test_chat_delegation_journey.py +232 -0
  500. loopx-1.4.0/tests/test_chat_explore_results.py +128 -0
  501. loopx-1.4.0/tests/test_chat_intake_evaluation.py +368 -0
  502. loopx-1.4.0/tests/test_chat_loopx_mode.py +570 -0
  503. loopx-1.4.0/tests/test_chat_machine_configuration_api.py +853 -0
  504. loopx-1.4.0/tests/test_chat_manager_context.py +1624 -0
  505. loopx-1.4.0/tests/test_chat_manager_details.py +142 -0
  506. loopx-1.4.0/tests/test_chat_manager_inspection.py +605 -0
  507. loopx-1.4.0/tests/test_chat_manager_model_adoption.py +308 -0
  508. loopx-1.4.0/tests/test_chat_operation_actions.py +1385 -0
  509. loopx-1.4.0/tests/test_chat_ordinary_project.py +333 -0
  510. loopx-1.4.0/tests/test_chat_path_redaction.py +237 -0
  511. loopx-1.4.0/tests/test_chat_project_context.py +44 -0
  512. loopx-1.4.0/tests/test_chat_project_coordination.py +330 -0
  513. loopx-1.4.0/tests/test_chat_queue_preparation.py +444 -0
  514. loopx-1.4.0/tests/test_chat_response_parsing.py +119 -0
  515. loopx-1.4.0/tests/test_chat_session_active_turn.py +2028 -0
  516. loopx-1.4.0/tests/test_chat_todo_detail.py +96 -0
  517. loopx-1.4.0/tests/test_chat_transport_composition.py +231 -0
  518. loopx-1.4.0/tests/test_claude_goal_mode_stdio_utf8.py +202 -0
  519. loopx-1.4.0/tests/test_cli_stdio_utf8.py +175 -0
  520. loopx-1.4.0/tests/test_codex_app_apply_rrule.py +667 -0
  521. loopx-1.4.0/tests/test_collaboration_goal_instance.py +1334 -0
  522. loopx-1.4.0/tests/test_contract_public_boundary_prefilter.py +283 -0
  523. loopx-1.4.0/tests/test_contract_scan_unreadable_files.py +114 -0
  524. loopx-1.4.0/tests/test_conversation_status_presentation.py +164 -0
  525. loopx-1.4.0/tests/test_delegation_preflight.py +1157 -0
  526. loopx-1.4.0/tests/test_delegation_result_use.py +256 -0
  527. loopx-1.4.0/tests/test_delegation_stop_recovery.py +314 -0
  528. loopx-1.4.0/tests/test_delegation_task_revalidation.py +176 -0
  529. loopx-1.4.0/tests/test_doctor_installation_scope.py +275 -0
  530. loopx-1.4.0/tests/test_dsh_goal_mode.py +1281 -0
  531. loopx-1.4.0/tests/test_ego_source_reader.py +911 -0
  532. loopx-1.4.0/tests/test_explore_replay_runtime.py +1750 -0
  533. loopx-1.4.0/tests/test_explore_source_history_reconcile.py +295 -0
  534. loopx-1.4.0/tests/test_explore_todo_readiness.py +106 -0
  535. loopx-1.4.0/tests/test_file_lock.py +601 -0
  536. loopx-1.4.0/tests/test_global_registry_write_serialization.py +776 -0
  537. loopx-1.4.0/tests/test_goal_attention.py +90 -0
  538. loopx-1.4.0/tests/test_goal_portfolio.py +518 -0
  539. loopx-1.4.0/tests/test_host_thread_activity.py +950 -0
  540. loopx-1.4.0/tests/test_int_number_non_finite.py +17 -0
  541. loopx-1.4.0/tests/test_kunluncode_goal_mode.py +1751 -0
  542. loopx-1.4.0/tests/test_lark_private_agents.py +479 -0
  543. loopx-1.4.0/tests/test_lark_private_conversations.py +1488 -0
  544. loopx-1.4.0/tests/test_lark_private_feedback.py +151 -0
  545. loopx-1.4.0/tests/test_lark_private_progress.py +670 -0
  546. loopx-1.4.0/tests/test_lark_private_status.py +225 -0
  547. loopx-1.4.0/tests/test_loop_turn_controller_contract.py +442 -0
  548. loopx-1.4.0/tests/test_loop_turn_loop_controller.py +1354 -0
  549. loopx-1.4.0/tests/test_loopx_turn_codex_cli.py +1410 -0
  550. loopx-1.4.0/tests/test_loopx_turn_driver.py +3812 -0
  551. loopx-1.4.0/tests/test_loopx_turn_executor.py +4137 -0
  552. loopx-1.4.0/tests/test_loopx_turn_journal_inspection.py +942 -0
  553. loopx-1.4.0/tests/test_manager_agent_discovery.py +264 -0
  554. loopx-1.4.0/tests/test_manager_context_execution.py +437 -0
  555. loopx-1.4.0/tests/test_manager_context_handoff.py +881 -0
  556. loopx-1.4.0/tests/test_manager_context_roundtrip.py +1372 -0
  557. loopx-1.4.0/tests/test_manager_handoff_message.py +95 -0
  558. loopx-1.4.0/tests/test_manager_ssh_evidence.py +830 -0
  559. loopx-1.4.0/tests/test_material_candidate_revision.py +454 -0
  560. loopx-1.4.0/tests/test_native_steward_private.py +501 -0
  561. loopx-1.4.0/tests/test_native_steward_runtime.py +166 -0
  562. loopx-1.4.0/tests/test_opencode2_goal_worker_cli.py +155 -0
  563. loopx-1.4.0/tests/test_operator_markdown_renderers.py +127 -0
  564. loopx-1.4.0/tests/test_operator_provider.py +269 -0
  565. loopx-1.4.0/tests/test_peer_collaboration.py +930 -0
  566. loopx-1.4.0/tests/test_pr_review_github_scan.py +2160 -0
  567. loopx-1.4.0/tests/test_progress_review_criterion_binding.py +185 -0
  568. loopx-1.4.0/tests/test_public_source_reader.py +385 -0
  569. loopx-1.4.0/tests/test_python_ci_workflow.py +500 -0
  570. loopx-1.4.0/tests/test_python_install_owner_platform.py +220 -0
  571. loopx-1.4.0/tests/test_quota_bound_wait_recovery.py +298 -0
  572. loopx-1.4.0/tests/test_runtime_archive.py +51 -0
  573. loopx-1.4.0/tests/test_runtime_archive_concurrency.py +625 -0
  574. loopx-1.4.0/tests/test_score_numeric_overflow.py +21 -0
  575. loopx-1.4.0/tests/test_self_update_runtime_activation.py +917 -0
  576. loopx-1.4.0/tests/test_slash_command_install.py +1365 -0
  577. loopx-1.4.0/tests/test_stage2c_dependency_lock.py +59 -0
  578. loopx-1.4.0/tests/test_state_backup.py +177 -0
  579. loopx-1.4.0/tests/test_static_site_presentation.py +324 -0
  580. loopx-1.4.0/tests/test_steward_team_plan_apply.py +677 -0
  581. loopx-1.4.0/tests/test_todo_deferred_lease_recovery.py +158 -0
  582. loopx-1.4.0/tests/test_turn_envelope.py +1200 -0
  583. loopx-1.4.0/tests/test_windows_install.py +617 -0
  584. loopx-1.4.0/tests/test_worker_bridge.py +31 -0
  585. loopx-1.4.0/tests/test_workflow_skill_install.py +552 -0
  586. loopx-1.4.0/tests/test_workspace_story_demo.py +124 -0
  587. loopx-1.3.1/PKG-INFO +0 -845
  588. loopx-1.3.1/loopx/__init__.py +0 -5
  589. loopx-1.3.1/loopx/bootstrap.py +0 -759
  590. loopx-1.3.1/loopx/bootstrap_command_pack.py +0 -2235
  591. loopx-1.3.1/loopx/canary/planner.py +0 -1936
  592. loopx-1.3.1/loopx/canary/premerge.py +0 -1211
  593. loopx-1.3.1/loopx/canary/runner.py +0 -1135
  594. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/README.md +0 -1375
  595. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/container_binding.py +0 -124
  596. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/experiment_board.py +0 -1039
  597. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/experiment_identity.py +0 -33
  598. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/factorial_contrast.py +0 -512
  599. loopx-1.3.1/loopx/capabilities/benchmark_toolkit/study_projection.py +0 -1376
  600. loopx-1.3.1/loopx/capabilities/change_quality/README.md +0 -198
  601. loopx-1.3.1/loopx/capabilities/change_quality/receipt.py +0 -507
  602. loopx-1.3.1/loopx/capabilities/change_quality/result.py +0 -493
  603. loopx-1.3.1/loopx/capabilities/configuration_ui.py +0 -640
  604. loopx-1.3.1/loopx/capabilities/connector_registry/cli.py +0 -132
  605. loopx-1.3.1/loopx/capabilities/connector_registry/core.py +0 -256
  606. loopx-1.3.1/loopx/capabilities/connector_registry/tests/test_connector_registry.py +0 -137
  607. loopx-1.3.1/loopx/capabilities/content_ops/README.md +0 -181
  608. loopx-1.3.1/loopx/capabilities/content_ops/catalog_entry.py +0 -166
  609. loopx-1.3.1/loopx/capabilities/content_ops/cli.py +0 -649
  610. loopx-1.3.1/loopx/capabilities/decision_context/assembler.py +0 -910
  611. loopx-1.3.1/loopx/capabilities/decision_context/packets.py +0 -669
  612. loopx-1.3.1/loopx/capabilities/explore/README.md +0 -976
  613. loopx-1.3.1/loopx/capabilities/explore/README.zh-CN.md +0 -466
  614. loopx-1.3.1/loopx/capabilities/explore/adaptive_replay_planner.py +0 -221
  615. loopx-1.3.1/loopx/capabilities/explore/result_log.py +0 -1010
  616. loopx-1.3.1/loopx/capabilities/explore/todo_branch_plan.py +0 -650
  617. loopx-1.3.1/loopx/capabilities/explore/turn_context.py +0 -163
  618. loopx-1.3.1/loopx/capabilities/explore/worker_branch_plan.py +0 -1257
  619. loopx-1.3.1/loopx/capabilities/external_research/README.md +0 -178
  620. loopx-1.3.1/loopx/capabilities/goal_capability_organization/README.md +0 -86
  621. loopx-1.3.1/loopx/capabilities/goal_capability_organization/README.zh-CN.md +0 -70
  622. loopx-1.3.1/loopx/capabilities/issue_fix/explore_projection.py +0 -710
  623. loopx-1.3.1/loopx/capabilities/issue_fix/pr_lifecycle.py +0 -1345
  624. loopx-1.3.1/loopx/capabilities/machine_configuration/goal_storage.py +0 -79
  625. loopx-1.3.1/loopx/capabilities/machine_configuration/store.py +0 -549
  626. loopx-1.3.1/loopx/capabilities/manager_context/README.md +0 -656
  627. loopx-1.3.1/loopx/capabilities/manager_context/__init__.py +0 -454
  628. loopx-1.3.1/loopx/capabilities/manager_context/discovery.py +0 -111
  629. loopx-1.3.1/loopx/capabilities/manager_context/execution.py +0 -144
  630. loopx-1.3.1/loopx/capabilities/manager_context/goal_notice.py +0 -161
  631. loopx-1.3.1/loopx/capabilities/manager_context/inspection.py +0 -443
  632. loopx-1.3.1/loopx/capabilities/manager_context/roundtrip.py +0 -1338
  633. loopx-1.3.1/loopx/capabilities/manager_context/skills/loopx-manager/SKILL.md +0 -256
  634. loopx-1.3.1/loopx/capabilities/manager_runtime/__init__.py +0 -21
  635. loopx-1.3.1/loopx/capabilities/manager_runtime/machine_profile.py +0 -228
  636. loopx-1.3.1/loopx/capabilities/material_lifecycle/README.md +0 -268
  637. loopx-1.3.1/loopx/capabilities/material_lifecycle/README.zh-CN.md +0 -208
  638. loopx-1.3.1/loopx/capabilities/material_lifecycle/__init__.py +0 -169
  639. loopx-1.3.1/loopx/capabilities/material_lifecycle/_validation.py +0 -193
  640. loopx-1.3.1/loopx/capabilities/material_lifecycle/decision_planning.py +0 -470
  641. loopx-1.3.1/loopx/capabilities/native_chat/conversation_bindings.py +0 -310
  642. loopx-1.3.1/loopx/capabilities/native_chat/external_conversations.py +0 -411
  643. loopx-1.3.1/loopx/capabilities/native_chat/project_context.py +0 -149
  644. loopx-1.3.1/loopx/capabilities/periodic_report/post_writeback_hook.py +0 -577
  645. loopx-1.3.1/loopx/capabilities/periodic_report/stage_completion.py +0 -290
  646. loopx-1.3.1/loopx/capabilities/periodic_report/todo_source.py +0 -71
  647. loopx-1.3.1/loopx/capabilities/pr_review_queue/README.md +0 -1214
  648. loopx-1.3.1/loopx/capabilities/pr_review_queue/approval_closeout.py +0 -98
  649. loopx-1.3.1/loopx/capabilities/pr_review_queue/github_source.py +0 -269
  650. loopx-1.3.1/loopx/capabilities/pr_review_queue/result_check.py +0 -627
  651. loopx-1.3.1/loopx/capabilities/pr_review_queue/review_contract.py +0 -1523
  652. loopx-1.3.1/loopx/capabilities/progress_review/README.md +0 -252
  653. loopx-1.3.1/loopx/capabilities/progress_review/README.zh-CN.md +0 -137
  654. loopx-1.3.1/loopx/capabilities/progress_review/context.py +0 -65
  655. loopx-1.3.1/loopx/capabilities/progress_review/receipt.py +0 -480
  656. loopx-1.3.1/loopx/capabilities/reward_memory/README.md +0 -852
  657. loopx-1.3.1/loopx/capabilities/reward_memory/README.zh-CN.md +0 -646
  658. loopx-1.3.1/loopx/capabilities/reward_memory/configuration.py +0 -229
  659. loopx-1.3.1/loopx/capabilities/semantic_preference/README.md +0 -401
  660. loopx-1.3.1/loopx/capabilities/semantic_preference/agent_preferences.py +0 -142
  661. loopx-1.3.1/loopx/capabilities/todo_replan_cadence/machine_defaults.py +0 -158
  662. loopx-1.3.1/loopx/chat.py +0 -797
  663. loopx-1.3.1/loopx/chat_action_store.py +0 -1530
  664. loopx-1.3.1/loopx/chat_actions.py +0 -1598
  665. loopx-1.3.1/loopx/chat_agent.py +0 -1262
  666. loopx-1.3.1/loopx/chat_automation_cadence_api.py +0 -250
  667. loopx-1.3.1/loopx/chat_completed_todos.py +0 -230
  668. loopx-1.3.1/loopx/chat_coordination.py +0 -154
  669. loopx-1.3.1/loopx/chat_goal_configuration_api.py +0 -688
  670. loopx-1.3.1/loopx/chat_lark_api.py +0 -844
  671. loopx-1.3.1/loopx/chat_loopx_mode.py +0 -1071
  672. loopx-1.3.1/loopx/chat_manager.py +0 -1061
  673. loopx-1.3.1/loopx/chat_manager_context.py +0 -649
  674. loopx-1.3.1/loopx/chat_manager_details.py +0 -86
  675. loopx-1.3.1/loopx/chat_monitor_actions.py +0 -233
  676. loopx-1.3.1/loopx/chat_runtime.py +0 -2008
  677. loopx-1.3.1/loopx/chat_server.py +0 -1713
  678. loopx-1.3.1/loopx/chat_status_api.py +0 -241
  679. loopx-1.3.1/loopx/chat_store.py +0 -1968
  680. loopx-1.3.1/loopx/chat_todo_actions.py +0 -270
  681. loopx-1.3.1/loopx/chat_todo_detail.py +0 -46
  682. loopx-1.3.1/loopx/claude_goal_mode/README.md +0 -112
  683. loopx-1.3.1/loopx/claude_goal_mode/hooks/goal_policy.py +0 -212
  684. loopx-1.3.1/loopx/claude_goal_mode/scripts/goalmode_cmd.py +0 -279
  685. loopx-1.3.1/loopx/claude_goal_mode/statusline/goal_status.py +0 -97
  686. loopx-1.3.1/loopx/cli.py +0 -993
  687. loopx-1.3.1/loopx/cli_commands/authority_shadow.py +0 -219
  688. loopx-1.3.1/loopx/cli_commands/automation_cadence.py +0 -109
  689. loopx-1.3.1/loopx/cli_commands/canary.py +0 -707
  690. loopx-1.3.1/loopx/cli_commands/coordination_shadow.py +0 -442
  691. loopx-1.3.1/loopx/cli_commands/delegation.py +0 -97
  692. loopx-1.3.1/loopx/cli_commands/explore.py +0 -761
  693. loopx-1.3.1/loopx/cli_commands/manager_inbox.py +0 -249
  694. loopx-1.3.1/loopx/cli_commands/opencode2_goal_worker.py +0 -217
  695. loopx-1.3.1/loopx/cli_commands/post_writeback.py +0 -262
  696. loopx-1.3.1/loopx/cli_commands/pr_review.py +0 -694
  697. loopx-1.3.1/loopx/cli_commands/project_lifecycle_inputs.py +0 -99
  698. loopx-1.3.1/loopx/cli_commands/project_lifecycle_refresh_state.py +0 -851
  699. loopx-1.3.1/loopx/cli_commands/quota.py +0 -950
  700. loopx-1.3.1/loopx/cli_commands/quota_context.py +0 -372
  701. loopx-1.3.1/loopx/cli_commands/registry_admin_configure.py +0 -501
  702. loopx-1.3.1/loopx/cli_commands/start_goal.py +0 -362
  703. loopx-1.3.1/loopx/cli_commands/support_control.py +0 -666
  704. loopx-1.3.1/loopx/cli_commands/support_control_chat.py +0 -165
  705. loopx-1.3.1/loopx/cli_commands/task_lease.py +0 -264
  706. loopx-1.3.1/loopx/cli_commands/todo.py +0 -814
  707. loopx-1.3.1/loopx/cli_commands/todo_argument_validation.py +0 -721
  708. loopx-1.3.1/loopx/cli_commands/todo_event.py +0 -196
  709. loopx-1.3.1/loopx/cli_commands/todo_registration.py +0 -482
  710. loopx-1.3.1/loopx/cli_commands/turn_inspection.py +0 -73
  711. loopx-1.3.1/loopx/cli_commands/turn_registration.py +0 -418
  712. loopx-1.3.1/loopx/cli_commands/turn_rendering.py +0 -323
  713. loopx-1.3.1/loopx/cli_commands/turn_run_once.py +0 -920
  714. loopx-1.3.1/loopx/cli_runtime.py +0 -526
  715. loopx-1.3.1/loopx/codex_app_thread_activity.py +0 -295
  716. loopx-1.3.1/loopx/codex_cli_probe.py +0 -1531
  717. loopx-1.3.1/loopx/codex_cli_runtime_probe.py +0 -733
  718. loopx-1.3.1/loopx/collaboration_mcp.py +0 -1971
  719. loopx-1.3.1/loopx/configuration_catalog.py +0 -904
  720. loopx-1.3.1/loopx/configure_goal.py +0 -1555
  721. loopx-1.3.1/loopx/contract.py +0 -1263
  722. loopx-1.3.1/loopx/control_plane/agents/agent_scope.py +0 -1367
  723. loopx-1.3.1/loopx/control_plane/agents/capability_gate.py +0 -200
  724. loopx-1.3.1/loopx/control_plane/agents/execution_facts.py +0 -267
  725. loopx-1.3.1/loopx/control_plane/agents/host_thread_activity.py +0 -140
  726. loopx-1.3.1/loopx/control_plane/agents/management_projection.py +0 -884
  727. loopx-1.3.1/loopx/control_plane/agents/supervisor_event_log.py +0 -126
  728. loopx-1.3.1/loopx/control_plane/capabilities/agent_preferences.ts +0 -170
  729. loopx-1.3.1/loopx/control_plane/capabilities/explore_turn_context.ts +0 -87
  730. loopx-1.3.1/loopx/control_plane/capabilities/goal_capability_organization.ts +0 -100
  731. loopx-1.3.1/loopx/control_plane/capabilities/pr_review_approval_closeout.ts +0 -95
  732. loopx-1.3.1/loopx/control_plane/capability_hooks.py +0 -843
  733. loopx-1.3.1/loopx/control_plane/capability_hooks.ts +0 -888
  734. loopx-1.3.1/loopx/control_plane/collaboration/README.md +0 -106
  735. loopx-1.3.1/loopx/control_plane/collaboration/conversation_binding.ts +0 -414
  736. loopx-1.3.1/loopx/control_plane/collaboration/conversation_scope.ts +0 -104
  737. loopx-1.3.1/loopx/control_plane/collaboration/delegation.ts +0 -619
  738. loopx-1.3.1/loopx/control_plane/collaboration/delegation_results.py +0 -147
  739. loopx-1.3.1/loopx/control_plane/collaboration/delegation_validation.py +0 -77
  740. loopx-1.3.1/loopx/control_plane/collaboration/inbox.py +0 -609
  741. loopx-1.3.1/loopx/control_plane/collaboration/links.py +0 -172
  742. loopx-1.3.1/loopx/control_plane/collaboration/peer_context_observation.py +0 -60
  743. loopx-1.3.1/loopx/control_plane/collaboration/result_publication.ts +0 -92
  744. loopx-1.3.1/loopx/control_plane/collaboration/semantic_request.ts +0 -120
  745. loopx-1.3.1/loopx/control_plane/collaboration/source_grant_observation.py +0 -188
  746. loopx-1.3.1/loopx/control_plane/coordination/authority_core.py +0 -419
  747. loopx-1.3.1/loopx/control_plane/coordination/authority_source_capture.py +0 -21
  748. loopx-1.3.1/loopx/control_plane/coordination/canonical_snapshot.py +0 -244
  749. loopx-1.3.1/loopx/control_plane/coordination/configuration.py +0 -25
  750. loopx-1.3.1/loopx/control_plane/coordination/continuation_adoption.ts +0 -72
  751. loopx-1.3.1/loopx/control_plane/coordination/lease_acquisition_proof.ts +0 -73
  752. loopx-1.3.1/loopx/control_plane/coordination/legacy_writer_fence.py +0 -336
  753. loopx-1.3.1/loopx/control_plane/coordination/legacy_writer_fence.ts +0 -325
  754. loopx-1.3.1/loopx/control_plane/coordination/local_authority_archive.ts +0 -162
  755. loopx-1.3.1/loopx/control_plane/coordination/local_authority_defaults.ts +0 -50
  756. loopx-1.3.1/loopx/control_plane/coordination/local_authority_migration.ts +0 -226
  757. loopx-1.3.1/loopx/control_plane/coordination/local_authority_read.ts +0 -181
  758. loopx-1.3.1/loopx/control_plane/coordination/local_authority_runtime.ts +0 -1535
  759. loopx-1.3.1/loopx/control_plane/coordination/local_authority_shadow_adapter.py +0 -491
  760. loopx-1.3.1/loopx/control_plane/coordination/local_authority_shadow_outbox.py +0 -991
  761. loopx-1.3.1/loopx/control_plane/coordination/local_authority_shadow_projection.py +0 -257
  762. loopx-1.3.1/loopx/control_plane/coordination/postgresql_authority_store.ts +0 -876
  763. loopx-1.3.1/loopx/control_plane/coordination/runtime_shadow.py +0 -720
  764. loopx-1.3.1/loopx/control_plane/coordination/runtime_shadow.ts +0 -385
  765. loopx-1.3.1/loopx/control_plane/coordination/runtime_shadow_writer_adapter.py +0 -253
  766. loopx-1.3.1/loopx/control_plane/coordination/shadow_management.py +0 -244
  767. loopx-1.3.1/loopx/control_plane/coordination/shadow_management.ts +0 -755
  768. loopx-1.3.1/loopx/control_plane/coordination/task_lease_acquire.ts +0 -115
  769. loopx-1.3.1/loopx/control_plane/coordination/task_lease_lifecycle.ts +0 -170
  770. loopx-1.3.1/loopx/control_plane/coordination/task_lease_proof.ts +0 -183
  771. loopx-1.3.1/loopx/control_plane/coordination/todo_claim.ts +0 -670
  772. loopx-1.3.1/loopx/control_plane/coordination/todo_create.ts +0 -259
  773. loopx-1.3.1/loopx/control_plane/coordination/todo_lifecycle_decision.ts +0 -624
  774. loopx-1.3.1/loopx/control_plane/coordination/todo_monitor_cycle.ts +0 -85
  775. loopx-1.3.1/loopx/control_plane/coordination/todo_monitor_poll.ts +0 -222
  776. loopx-1.3.1/loopx/control_plane/coordination/todo_terminal_lifecycle.ts +0 -1628
  777. loopx-1.3.1/loopx/control_plane/coordination/todo_update_admission.ts +0 -167
  778. loopx-1.3.1/loopx/control_plane/effect_program.py +0 -853
  779. loopx-1.3.1/loopx/control_plane/effect_program.ts +0 -956
  780. loopx-1.3.1/loopx/control_plane/effect_runtime.py +0 -1264
  781. loopx-1.3.1/loopx/control_plane/effect_runtime_errors.ts +0 -129
  782. loopx-1.3.1/loopx/control_plane/effect_runtime_handlers.ts +0 -760
  783. loopx-1.3.1/loopx/control_plane/effect_runtime_io.ts +0 -533
  784. loopx-1.3.1/loopx/control_plane/effect_runtime_server.ts +0 -319
  785. loopx-1.3.1/loopx/control_plane/goals/acceptance.py +0 -366
  786. loopx-1.3.1/loopx/control_plane/goals/acceptance_authority.ts +0 -213
  787. loopx-1.3.1/loopx/control_plane/goals/acceptance_contract.ts +0 -473
  788. loopx-1.3.1/loopx/control_plane/goals/botmux_runtime.py +0 -1495
  789. loopx-1.3.1/loopx/control_plane/goals/checkpoint_commit.ts +0 -294
  790. loopx-1.3.1/loopx/control_plane/goals/deletion_service.py +0 -1317
  791. loopx-1.3.1/loopx/control_plane/goals/first_party_host_admission.py +0 -350
  792. loopx-1.3.1/loopx/control_plane/goals/first_party_host_runtime.ts +0 -171
  793. loopx-1.3.1/loopx/control_plane/goals/goal_frontier/__init__.py +0 -1954
  794. loopx-1.3.1/loopx/control_plane/goals/goal_ref_validation.py +0 -22
  795. loopx-1.3.1/loopx/control_plane/goals/goal_vision_policy.py +0 -50
  796. loopx-1.3.1/loopx/control_plane/goals/source_session_recreation.py +0 -504
  797. loopx-1.3.1/loopx/control_plane/goals/source_session_registration.py +0 -400
  798. loopx-1.3.1/loopx/control_plane/goals/source_session_registry_state.py +0 -108
  799. loopx-1.3.1/loopx/control_plane/goals/source_session_turn_effects.py +0 -575
  800. loopx-1.3.1/loopx/control_plane/goals/start_goal_todo_delta.py +0 -232
  801. loopx-1.3.1/loopx/control_plane/goals/vision_checkpoint.ts +0 -918
  802. loopx-1.3.1/loopx/control_plane/heartbeat/budget.py +0 -81
  803. loopx-1.3.1/loopx/control_plane/heartbeat/builder.py +0 -676
  804. loopx-1.3.1/loopx/control_plane/heartbeat/rules.py +0 -112
  805. loopx-1.3.1/loopx/control_plane/heartbeat/task_body.py +0 -808
  806. loopx-1.3.1/loopx/control_plane/operator_provider.py +0 -475
  807. loopx-1.3.1/loopx/control_plane/presentation/action_review_plan.ts +0 -544
  808. loopx-1.3.1/loopx/control_plane/presentation/goal_attention.ts +0 -73
  809. loopx-1.3.1/loopx/control_plane/projects/registry.py +0 -701
  810. loopx-1.3.1/loopx/control_plane/quota/automation_cadence.ts +0 -248
  811. loopx-1.3.1/loopx/control_plane/quota/blocked_retry.py +0 -225
  812. loopx-1.3.1/loopx/control_plane/quota/blocked_wait.ts +0 -196
  813. loopx-1.3.1/loopx/control_plane/quota/cli_projection.py +0 -821
  814. loopx-1.3.1/loopx/control_plane/quota/effect_program.py +0 -268
  815. loopx-1.3.1/loopx/control_plane/quota/heartbeat_receipt.py +0 -629
  816. loopx-1.3.1/loopx/control_plane/quota/heartbeat_receipt_identity.ts +0 -182
  817. loopx-1.3.1/loopx/control_plane/quota/ledger_readback.py +0 -109
  818. loopx-1.3.1/loopx/control_plane/quota/live_decision.py +0 -749
  819. loopx-1.3.1/loopx/control_plane/quota/monitor_poll.py +0 -984
  820. loopx-1.3.1/loopx/control_plane/quota/monitor_poll_commit.ts +0 -2448
  821. loopx-1.3.1/loopx/control_plane/quota/selected_todo_projection.py +0 -142
  822. loopx-1.3.1/loopx/control_plane/quota/settlement.py +0 -438
  823. loopx-1.3.1/loopx/control_plane/quota/settlement_cli.py +0 -450
  824. loopx-1.3.1/loopx/control_plane/quota/settlement_phase.ts +0 -170
  825. loopx-1.3.1/loopx/control_plane/quota/settlement_plan.ts +0 -84
  826. loopx-1.3.1/loopx/control_plane/quota/settlement_readback.ts +0 -1243
  827. loopx-1.3.1/loopx/control_plane/quota/should_run.py +0 -419
  828. loopx-1.3.1/loopx/control_plane/quota/should_run_packet.py +0 -1672
  829. loopx-1.3.1/loopx/control_plane/quota/should_run_prepare.py +0 -947
  830. loopx-1.3.1/loopx/control_plane/quota/spend_commit.py +0 -275
  831. loopx-1.3.1/loopx/control_plane/quota/turn_envelope.ts +0 -924
  832. loopx-1.3.1/loopx/control_plane/quota/turn_envelope_budget.ts +0 -90
  833. loopx-1.3.1/loopx/control_plane/quota/unsettled_host_turn_recovery.ts +0 -601
  834. loopx-1.3.1/loopx/control_plane/rollout_receipt_log.ts +0 -142
  835. loopx-1.3.1/loopx/control_plane/runtime/public_safety.py +0 -213
  836. loopx-1.3.1/loopx/control_plane/runtime/run_history.py +0 -145
  837. loopx-1.3.1/loopx/control_plane/runtime/runtime_projection_writer.py +0 -119
  838. loopx-1.3.1/loopx/control_plane/runtime/time.py +0 -56
  839. loopx-1.3.1/loopx/control_plane/runtime_timestamp.ts +0 -88
  840. loopx-1.3.1/loopx/control_plane/scheduler/arbitration.py +0 -193
  841. loopx-1.3.1/loopx/control_plane/scheduler/heartbeat_commit.ts +0 -994
  842. loopx-1.3.1/loopx/control_plane/scheduler/heartbeat_followup.ts +0 -430
  843. loopx-1.3.1/loopx/control_plane/scheduler/heartbeat_followup_cli.ts +0 -331
  844. loopx-1.3.1/loopx/control_plane/scheduler/monitor_poll_writeback.py +0 -280
  845. loopx-1.3.1/loopx/control_plane/scheduler/scheduler_hint.py +0 -1512
  846. loopx-1.3.1/loopx/control_plane/scheduler/state_store.ts +0 -641
  847. loopx-1.3.1/loopx/control_plane/testing/authority_e2e_rows_stage2c2.py +0 -1231
  848. loopx-1.3.1/loopx/control_plane/testing/cli_output_budget.py +0 -922
  849. loopx-1.3.1/loopx/control_plane/testing/cli_output_differential.py +0 -996
  850. loopx-1.3.1/loopx/control_plane/testing/cli_output_semantics.py +0 -295
  851. loopx-1.3.1/loopx/control_plane/testing/doubao_model_behavior_actor.py +0 -650
  852. loopx-1.3.1/loopx/control_plane/testing/model_behavior_packet_safety.py +0 -144
  853. loopx-1.3.1/loopx/control_plane/testing/replan_semantic_action_behavior.py +0 -1461
  854. loopx-1.3.1/loopx/control_plane/testing/selected_todo_tool_behavior.py +0 -1181
  855. loopx-1.3.1/loopx/control_plane/todos/active_state_editing.py +0 -294
  856. loopx-1.3.1/loopx/control_plane/todos/active_state_todos.py +0 -189
  857. loopx-1.3.1/loopx/control_plane/todos/authoring_scope.py +0 -73
  858. loopx-1.3.1/loopx/control_plane/todos/authoring_scope.ts +0 -368
  859. loopx-1.3.1/loopx/control_plane/todos/completion_result.py +0 -123
  860. loopx-1.3.1/loopx/control_plane/todos/completion_validation_store.py +0 -188
  861. loopx-1.3.1/loopx/control_plane/todos/context_projection.ts +0 -52
  862. loopx-1.3.1/loopx/control_plane/todos/contract.py +0 -1499
  863. loopx-1.3.1/loopx/control_plane/todos/field_update.ts +0 -229
  864. loopx-1.3.1/loopx/control_plane/todos/frontier_deadline.py +0 -132
  865. loopx-1.3.1/loopx/control_plane/todos/frontier_revision.py +0 -112
  866. loopx-1.3.1/loopx/control_plane/todos/frontier_revision.ts +0 -303
  867. loopx-1.3.1/loopx/control_plane/todos/goal_todo_projection.py +0 -301
  868. loopx-1.3.1/loopx/control_plane/todos/handoff_gate.py +0 -203
  869. loopx-1.3.1/loopx/control_plane/todos/handoff_mode.py +0 -418
  870. loopx-1.3.1/loopx/control_plane/todos/handoff_note.py +0 -202
  871. loopx-1.3.1/loopx/control_plane/todos/line_update.py +0 -463
  872. loopx-1.3.1/loopx/control_plane/todos/list_readback.py +0 -256
  873. loopx-1.3.1/loopx/control_plane/todos/markdown.py +0 -312
  874. loopx-1.3.1/loopx/control_plane/todos/mutation_authority.py +0 -430
  875. loopx-1.3.1/loopx/control_plane/todos/native_update_plan.ts +0 -101
  876. loopx-1.3.1/loopx/control_plane/todos/path_resolution.py +0 -30
  877. loopx-1.3.1/loopx/control_plane/todos/provider_create.py +0 -200
  878. loopx-1.3.1/loopx/control_plane/todos/provider_projection.py +0 -306
  879. loopx-1.3.1/loopx/control_plane/todos/provider_terminal_lifecycle.py +0 -649
  880. loopx-1.3.1/loopx/control_plane/todos/quota_selection.py +0 -86
  881. loopx-1.3.1/loopx/control_plane/todos/quota_selection.ts +0 -200
  882. loopx-1.3.1/loopx/control_plane/todos/quota_summary.py +0 -1043
  883. loopx-1.3.1/loopx/control_plane/todos/resume_condition.py +0 -390
  884. loopx-1.3.1/loopx/control_plane/todos/resume_condition.ts +0 -832
  885. loopx-1.3.1/loopx/control_plane/todos/resume_planning.py +0 -96
  886. loopx-1.3.1/loopx/control_plane/todos/route_continuation.py +0 -175
  887. loopx-1.3.1/loopx/control_plane/todos/succession.ts +0 -211
  888. loopx-1.3.1/loopx/control_plane/todos/succession_warning.py +0 -258
  889. loopx-1.3.1/loopx/control_plane/todos/succession_wire_v1.json +0 -26
  890. loopx-1.3.1/loopx/control_plane/todos/summary_item.py +0 -284
  891. loopx-1.3.1/loopx/control_plane/todos/summary_lanes.ts +0 -164
  892. loopx-1.3.1/loopx/control_plane/todos/summary_projection.ts +0 -210
  893. loopx-1.3.1/loopx/control_plane/todos/text.py +0 -29
  894. loopx-1.3.1/loopx/control_plane/todos/todo_index.py +0 -273
  895. loopx-1.3.1/loopx/control_plane/todos/todo_semantics.py +0 -877
  896. loopx-1.3.1/loopx/control_plane/todos/todo_summary.py +0 -1055
  897. loopx-1.3.1/loopx/control_plane/todos/update_intent.py +0 -109
  898. loopx-1.3.1/loopx/control_plane/todos/work_requirements.ts +0 -127
  899. loopx-1.3.1/loopx/control_plane/turn_driver/codex_cli.py +0 -864
  900. loopx-1.3.1/loopx/control_plane/turn_driver/execution_readback.py +0 -86
  901. loopx-1.3.1/loopx/control_plane/turn_driver/executor.py +0 -1600
  902. loopx-1.3.1/loopx/control_plane/turn_driver/host_candidate.py +0 -282
  903. loopx-1.3.1/loopx/control_plane/turn_driver/host_todo_completion.ts +0 -1043
  904. loopx-1.3.1/loopx/control_plane/turn_driver/journal_store.py +0 -154
  905. loopx-1.3.1/loopx/control_plane/turn_driver/loop_controller.py +0 -688
  906. loopx-1.3.1/loopx/control_plane/turn_driver/managed_step.py +0 -329
  907. loopx-1.3.1/loopx/control_plane/turn_driver/turn_contract_generated.py +0 -283
  908. loopx-1.3.1/loopx/control_plane/turn_driver/turn_contract_generated.ts +0 -524
  909. loopx-1.3.1/loopx/control_plane/turn_driver/turn_journal.ts +0 -818
  910. loopx-1.3.1/loopx/control_plane/turn_driver/turn_journal_query.ts +0 -160
  911. loopx-1.3.1/loopx/control_plane/turn_loop_controller_contract_v0.json +0 -478
  912. loopx-1.3.1/loopx/control_plane/work_items/action_selection_contract.py +0 -416
  913. loopx-1.3.1/loopx/control_plane/work_items/autonomous_replan_obligation.py +0 -722
  914. loopx-1.3.1/loopx/control_plane/work_items/capability_monitor_fallback.py +0 -221
  915. loopx-1.3.1/loopx/control_plane/work_items/execution_obligation.py +0 -240
  916. loopx-1.3.1/loopx/control_plane/work_items/external_progress_review.py +0 -486
  917. loopx-1.3.1/loopx/control_plane/work_items/governed_transition_proposal.py +0 -750
  918. loopx-1.3.1/loopx/control_plane/work_items/interaction_contract.py +0 -1727
  919. loopx-1.3.1/loopx/control_plane/work_items/interaction_contract.ts +0 -153
  920. loopx-1.3.1/loopx/control_plane/work_items/local_lease_record.py +0 -221
  921. loopx-1.3.1/loopx/control_plane/work_items/planning_inventory.py +0 -187
  922. loopx-1.3.1/loopx/control_plane/work_items/replan_context.ts +0 -196
  923. loopx-1.3.1/loopx/control_plane/work_items/replan_context_codec.py +0 -136
  924. loopx-1.3.1/loopx/control_plane/work_items/replan_history_codec.py +0 -245
  925. loopx-1.3.1/loopx/control_plane/work_items/replan_history_settlement.ts +0 -50
  926. loopx-1.3.1/loopx/control_plane/work_items/replan_semantics.ts +0 -296
  927. loopx-1.3.1/loopx/control_plane/work_items/semantic_replan_writeback.py +0 -543
  928. loopx-1.3.1/loopx/control_plane/work_items/task_lease.py +0 -912
  929. loopx-1.3.1/loopx/control_plane/work_items/task_lease_acquire_adapter.py +0 -849
  930. loopx-1.3.1/loopx/control_plane/work_items/task_lease_inspection.ts +0 -116
  931. loopx-1.3.1/loopx/control_plane/work_items/team_plan_adapter.py +0 -232
  932. loopx-1.3.1/loopx/control_plane/work_items/team_plan_authority.ts +0 -62
  933. loopx-1.3.1/loopx/control_plane/work_items/unsettled_host_turn_contract.py +0 -115
  934. loopx-1.3.1/loopx/control_plane/work_items/work_lane_context.py +0 -178
  935. loopx-1.3.1/loopx/diagnose.py +0 -780
  936. loopx-1.3.1/loopx/doctor.py +0 -1392
  937. loopx-1.3.1/loopx/entrypoint.py +0 -93
  938. loopx-1.3.1/loopx/execution_profile.py +0 -382
  939. loopx-1.3.1/loopx/extensions/ego_source_reader.py +0 -326
  940. loopx-1.3.1/loopx/extensions/lark/README.md +0 -481
  941. loopx-1.3.1/loopx/extensions/lark/bot_scopes.py +0 -66
  942. loopx-1.3.1/loopx/extensions/lark/conversation_identity.py +0 -61
  943. loopx-1.3.1/loopx/extensions/lark/docs/realtime-conversation-readiness.md +0 -133
  944. loopx-1.3.1/loopx/extensions/lark/goal_channel_delivery_contract.py +0 -73
  945. loopx-1.3.1/loopx/extensions/lark/goal_channel_transport.py +0 -529
  946. loopx-1.3.1/loopx/extensions/lark/goal_topic_dispatch.py +0 -118
  947. loopx-1.3.1/loopx/extensions/lark/goal_topic_runtime.py +0 -1663
  948. loopx-1.3.1/loopx/extensions/lark/group_history.py +0 -612
  949. loopx-1.3.1/loopx/extensions/lark/identity_shapes.py +0 -49
  950. loopx-1.3.1/loopx/extensions/lark/inbox_reply.py +0 -992
  951. loopx-1.3.1/loopx/extensions/lark/manager_returns.py +0 -272
  952. loopx-1.3.1/loopx/extensions/lark/outbound.py +0 -425
  953. loopx-1.3.1/loopx/extensions/lark/presentation/markdown_post.py +0 -200
  954. loopx-1.3.1/loopx/extensions/lark/private_conversation_api.py +0 -88
  955. loopx-1.3.1/loopx/extensions/lark/private_conversations.py +0 -494
  956. loopx-1.3.1/loopx/extensions/openviking_periodic_report/provider.py +0 -355
  957. loopx-1.3.1/loopx/extensions/openviking_semantic_preference/history_export.py +0 -484
  958. loopx-1.3.1/loopx/extensions/openviking_semantic_preference/provider.py +0 -311
  959. loopx-1.3.1/loopx/extensions/process_runtime.py +0 -256
  960. loopx-1.3.1/loopx/feedback.py +0 -625
  961. loopx-1.3.1/loopx/file_lock.py +0 -1127
  962. loopx-1.3.1/loopx/global_registry.py +0 -942
  963. loopx-1.3.1/loopx/goal_portfolio.py +0 -518
  964. loopx-1.3.1/loopx/heartbeat_prequota.py +0 -80
  965. loopx-1.3.1/loopx/history.py +0 -1011
  966. loopx-1.3.1/loopx/operator_gate.py +0 -423
  967. loopx-1.3.1/loopx/orchestration.py +0 -279
  968. loopx-1.3.1/loopx/paths.py +0 -333
  969. loopx-1.3.1/loopx/pr_review.py +0 -1501
  970. loopx-1.3.1/loopx/presentation/README.md +0 -85
  971. loopx-1.3.1/loopx/presentation/answer_instruction.py +0 -20
  972. loopx-1.3.1/loopx/presentation/codex_activity.py +0 -254
  973. loopx-1.3.1/loopx/presentation/configuration_api.py +0 -61
  974. loopx-1.3.1/loopx/presentation/public_safety.py +0 -73
  975. loopx-1.3.1/loopx/presentation/renderers/conversation_status_markdown.py +0 -66
  976. loopx-1.3.1/loopx/presentation/renderers/quota_markdown.py +0 -1155
  977. loopx-1.3.1/loopx/presentation/renderers/turn_envelope_markdown.py +0 -52
  978. loopx-1.3.1/loopx/presentation/static_site.py +0 -682
  979. loopx-1.3.1/loopx/project_prompt.py +0 -1283
  980. loopx-1.3.1/loopx/project_uninstall.py +0 -458
  981. loopx-1.3.1/loopx/public_safe_text.py +0 -509
  982. loopx-1.3.1/loopx/python_install_owner.py +0 -55
  983. loopx-1.3.1/loopx/quota.py +0 -1671
  984. loopx-1.3.1/loopx/rollout_event_log.py +0 -624
  985. loopx-1.3.1/loopx/runtime.py +0 -112
  986. loopx-1.3.1/loopx/runtime_activation.py +0 -74
  987. loopx-1.3.1/loopx/self_update.py +0 -1537
  988. loopx-1.3.1/loopx/semantics/development_probe.py +0 -366
  989. loopx-1.3.1/loopx/semantics/project_registry_io_manifest_v1.json +0 -2297
  990. loopx-1.3.1/loopx/semantics/vocabulary_v0.json +0 -1168
  991. loopx-1.3.1/loopx/slash_command_install.py +0 -1568
  992. loopx-1.3.1/loopx/state_backup.py +0 -642
  993. loopx-1.3.1/loopx/state_migration.py +0 -473
  994. loopx-1.3.1/loopx/state_refresh.py +0 -1542
  995. loopx-1.3.1/loopx/status.py +0 -1381
  996. loopx-1.3.1/loopx/todos.py +0 -1873
  997. loopx-1.3.1/loopx/upgrade.py +0 -1175
  998. loopx-1.3.1/loopx/web/chat/asset-retention.json +0 -37
  999. loopx-1.3.1/loopx/web/chat/assets/index-BRfKm20a.css +0 -1
  1000. loopx-1.3.1/loopx/web/chat/assets/index-CH9N99qE.js +0 -105
  1001. loopx-1.3.1/loopx/web/chat/bundle-manifest.json +0 -497
  1002. loopx-1.3.1/loopx/web/chat/index.html +0 -39
  1003. loopx-1.3.1/loopx/windows_install.py +0 -459
  1004. loopx-1.3.1/loopx/worker_bridge.py +0 -989
  1005. loopx-1.3.1/loopx/workflow_skill_install.py +0 -478
  1006. loopx-1.3.1/loopx.egg-info/PKG-INFO +0 -845
  1007. loopx-1.3.1/loopx.egg-info/SOURCES.txt +0 -1942
  1008. loopx-1.3.1/loopx.egg-info/requires.txt +0 -15
  1009. loopx-1.3.1/pyproject.toml +0 -192
  1010. loopx-1.3.1/setup.py +0 -42
  1011. loopx-1.3.1/skills/loopx-benchmark/SKILL.md +0 -219
  1012. loopx-1.3.1/skills/loopx-benchmark/agents/openai.yaml +0 -4
  1013. loopx-1.3.1/skills/loopx-change-quality/SKILL.md +0 -203
  1014. loopx-1.3.1/skills/loopx-performance-diagnosis/SKILL.md +0 -50
  1015. loopx-1.3.1/skills/loopx-performance-diagnosis/agents/openai.yaml +0 -4
  1016. loopx-1.3.1/skills/loopx-pr-review/SKILL.md +0 -180
  1017. loopx-1.3.1/skills/loopx-self-repair/references/repair-patterns.md +0 -311
  1018. loopx-1.3.1/tests/test_archive_installer_commit_response.py +0 -284
  1019. loopx-1.3.1/tests/test_ark_managed_agent_host.py +0 -508
  1020. loopx-1.3.1/tests/test_automation_cadence.py +0 -139
  1021. loopx-1.3.1/tests/test_chat_activity.py +0 -267
  1022. loopx-1.3.1/tests/test_chat_agent.py +0 -663
  1023. loopx-1.3.1/tests/test_chat_automation_cadence_api.py +0 -209
  1024. loopx-1.3.1/tests/test_chat_codex_home.py +0 -99
  1025. loopx-1.3.1/tests/test_chat_completed_todos.py +0 -273
  1026. loopx-1.3.1/tests/test_chat_conversation_bindings.py +0 -269
  1027. loopx-1.3.1/tests/test_chat_delegation_journey.py +0 -226
  1028. loopx-1.3.1/tests/test_chat_intake_evaluation.py +0 -287
  1029. loopx-1.3.1/tests/test_chat_loopx_mode.py +0 -558
  1030. loopx-1.3.1/tests/test_chat_machine_configuration_api.py +0 -853
  1031. loopx-1.3.1/tests/test_chat_manager_context.py +0 -1266
  1032. loopx-1.3.1/tests/test_chat_manager_details.py +0 -105
  1033. loopx-1.3.1/tests/test_chat_manager_inspection.py +0 -484
  1034. loopx-1.3.1/tests/test_chat_manager_model_adoption.py +0 -305
  1035. loopx-1.3.1/tests/test_chat_operation_actions.py +0 -1378
  1036. loopx-1.3.1/tests/test_chat_ordinary_project.py +0 -272
  1037. loopx-1.3.1/tests/test_chat_path_redaction.py +0 -110
  1038. loopx-1.3.1/tests/test_chat_project_coordination.py +0 -213
  1039. loopx-1.3.1/tests/test_chat_queue_preparation.py +0 -293
  1040. loopx-1.3.1/tests/test_chat_response_parsing.py +0 -63
  1041. loopx-1.3.1/tests/test_chat_session_active_turn.py +0 -2027
  1042. loopx-1.3.1/tests/test_chat_todo_detail.py +0 -95
  1043. loopx-1.3.1/tests/test_codex_app_apply_rrule.py +0 -467
  1044. loopx-1.3.1/tests/test_collaboration_goal_instance.py +0 -1293
  1045. loopx-1.3.1/tests/test_contract_public_boundary_prefilter.py +0 -112
  1046. loopx-1.3.1/tests/test_contract_scan_unreadable_files.py +0 -111
  1047. loopx-1.3.1/tests/test_conversation_status_presentation.py +0 -87
  1048. loopx-1.3.1/tests/test_delegation_preflight.py +0 -1156
  1049. loopx-1.3.1/tests/test_delegation_result_use.py +0 -141
  1050. loopx-1.3.1/tests/test_delegation_stop_recovery.py +0 -313
  1051. loopx-1.3.1/tests/test_doctor_installation_scope.py +0 -239
  1052. loopx-1.3.1/tests/test_dsh_goal_mode.py +0 -1148
  1053. loopx-1.3.1/tests/test_ego_source_reader.py +0 -365
  1054. loopx-1.3.1/tests/test_explore_replay_runtime.py +0 -1735
  1055. loopx-1.3.1/tests/test_explore_source_history_reconcile.py +0 -159
  1056. loopx-1.3.1/tests/test_file_lock.py +0 -468
  1057. loopx-1.3.1/tests/test_global_registry_write_serialization.py +0 -565
  1058. loopx-1.3.1/tests/test_goal_attention.py +0 -74
  1059. loopx-1.3.1/tests/test_goal_portfolio.py +0 -498
  1060. loopx-1.3.1/tests/test_host_thread_activity.py +0 -364
  1061. loopx-1.3.1/tests/test_kunluncode_goal_mode.py +0 -1751
  1062. loopx-1.3.1/tests/test_lark_private_agents.py +0 -278
  1063. loopx-1.3.1/tests/test_lark_private_conversations.py +0 -654
  1064. loopx-1.3.1/tests/test_lark_private_feedback.py +0 -150
  1065. loopx-1.3.1/tests/test_lark_private_status.py +0 -196
  1066. loopx-1.3.1/tests/test_loop_turn_controller_contract.py +0 -424
  1067. loopx-1.3.1/tests/test_loop_turn_loop_controller.py +0 -1314
  1068. loopx-1.3.1/tests/test_loopx_turn_codex_cli.py +0 -1364
  1069. loopx-1.3.1/tests/test_loopx_turn_driver.py +0 -3713
  1070. loopx-1.3.1/tests/test_loopx_turn_executor.py +0 -4131
  1071. loopx-1.3.1/tests/test_loopx_turn_journal_inspection.py +0 -684
  1072. loopx-1.3.1/tests/test_manager_agent_discovery.py +0 -214
  1073. loopx-1.3.1/tests/test_manager_context_execution.py +0 -367
  1074. loopx-1.3.1/tests/test_manager_context_handoff.py +0 -814
  1075. loopx-1.3.1/tests/test_manager_context_roundtrip.py +0 -1307
  1076. loopx-1.3.1/tests/test_manager_ssh_evidence.py +0 -830
  1077. loopx-1.3.1/tests/test_native_steward_private.py +0 -492
  1078. loopx-1.3.1/tests/test_opencode2_goal_worker_cli.py +0 -128
  1079. loopx-1.3.1/tests/test_operator_markdown_renderers.py +0 -106
  1080. loopx-1.3.1/tests/test_operator_provider.py +0 -212
  1081. loopx-1.3.1/tests/test_peer_collaboration.py +0 -899
  1082. loopx-1.3.1/tests/test_pr_review_github_scan.py +0 -1993
  1083. loopx-1.3.1/tests/test_python_ci_workflow.py +0 -447
  1084. loopx-1.3.1/tests/test_quota_bound_wait_recovery.py +0 -298
  1085. loopx-1.3.1/tests/test_self_update_runtime_activation.py +0 -849
  1086. loopx-1.3.1/tests/test_slash_command_install.py +0 -1360
  1087. loopx-1.3.1/tests/test_state_backup.py +0 -152
  1088. loopx-1.3.1/tests/test_static_site_presentation.py +0 -262
  1089. loopx-1.3.1/tests/test_steward_team_plan_apply.py +0 -653
  1090. loopx-1.3.1/tests/test_turn_envelope.py +0 -1163
  1091. loopx-1.3.1/tests/test_windows_install.py +0 -490
  1092. loopx-1.3.1/tests/test_workflow_skill_install.py +0 -495
  1093. loopx-1.3.1/tests/test_workspace_story_demo.py +0 -111
  1094. {loopx-1.3.1 → loopx-1.4.0}/LICENSE +0 -0
  1095. {loopx-1.3.1 → loopx-1.4.0}/LICENSE-MIT +0 -0
  1096. {loopx-1.3.1 → loopx-1.4.0}/MANIFEST.in +0 -0
  1097. {loopx-1.3.1 → loopx-1.4.0}/NOTICE +0 -0
  1098. {loopx-1.3.1 → loopx-1.4.0}/README.md +0 -0
  1099. {loopx-1.3.1 → loopx-1.4.0}/loopx/activation_qualification.py +0 -0
  1100. {loopx-1.3.1 → loopx-1.4.0}/loopx/agent_onboarding.py +0 -0
  1101. {loopx-1.3.1 → loopx-1.4.0}/loopx/agent_registry.py +0 -0
  1102. {loopx-1.3.1 → loopx-1.4.0}/loopx/agy_goal_mode/README.md +0 -0
  1103. {loopx-1.3.1 → loopx-1.4.0}/loopx/agy_goal_mode/__init__.py +0 -0
  1104. {loopx-1.3.1 → loopx-1.4.0}/loopx/ark_managed_agent_host.py +0 -0
  1105. {loopx-1.3.1 → loopx-1.4.0}/loopx/attached_session.py +0 -0
  1106. {loopx-1.3.1 → loopx-1.4.0}/loopx/attached_session_api.py +0 -0
  1107. {loopx-1.3.1 → loopx-1.4.0}/loopx/authority.py +0 -0
  1108. {loopx-1.3.1 → loopx-1.4.0}/loopx/boundary_authority.py +0 -0
  1109. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/__init__.py +0 -0
  1110. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/maintainability_ratchet.py +0 -0
  1111. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/package_profiles.py +0 -0
  1112. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/qualification_profiles.py +0 -0
  1113. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/quality_surface_catalog.py +0 -0
  1114. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/release_profiles.py +0 -0
  1115. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/smoke_health.py +0 -0
  1116. {loopx-1.3.1 → loopx-1.4.0}/loopx/canary/smoke_profiles.py +0 -0
  1117. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/README.md +0 -0
  1118. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/__init__.py +0 -0
  1119. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/README.md +0 -0
  1120. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/__init__.py +0 -0
  1121. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/catalog_entry.py +0 -0
  1122. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/cli.py +0 -0
  1123. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/core.py +0 -0
  1124. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/agent_turn_recall/runtime.py +0 -0
  1125. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/__init__.py +0 -0
  1126. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/adaptive_concurrency.py +0 -0
  1127. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/artifacts.py +0 -0
  1128. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/behavior_finding.py +0 -0
  1129. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/catalog_entry.py +0 -0
  1130. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/concurrency_envelope.py +0 -0
  1131. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/continuation.py +0 -0
  1132. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/environment_access.py +0 -0
  1133. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/four_arm_contract.py +0 -0
  1134. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/integrity.py +0 -0
  1135. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/native_codex_goal.py +0 -0
  1136. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/native_codex_isolation.py +0 -0
  1137. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/native_codex_profile.py +0 -0
  1138. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/provider_gateway.py +0 -0
  1139. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/public_trajectory.py +0 -0
  1140. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/reward_contract.py +0 -0
  1141. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/run_permissions.py +0 -0
  1142. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/runtime_continuity.py +0 -0
  1143. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/runtime_observation.py +0 -0
  1144. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/source_revision_fence.py +0 -0
  1145. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/traex_evidence.py +0 -0
  1146. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/benchmark_toolkit/treatment_continuation.py +0 -0
  1147. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/catalog.py +0 -0
  1148. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/__init__.py +0 -0
  1149. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/catalog_entry.py +0 -0
  1150. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/cli.py +0 -0
  1151. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/context.py +0 -0
  1152. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/goal_configuration.py +0 -0
  1153. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/machine_defaults.py +0 -0
  1154. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/oracles.py +0 -0
  1155. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/policy.py +0 -0
  1156. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/scope.py +0 -0
  1157. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/change_quality/shadow.py +0 -0
  1158. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/configuration_backup.py +0 -0
  1159. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/configuration_inspection.py +0 -0
  1160. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/connector_registry/README.md +0 -0
  1161. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/connector_registry/__init__.py +0 -0
  1162. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/connector_registry/catalog_entry.py +0 -0
  1163. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/__init__.py +0 -0
  1164. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/connector_packets.py +0 -0
  1165. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/experiences/x-composer-preflight-v1.json +0 -0
  1166. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/item_lifecycle.py +0 -0
  1167. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/layout.py +0 -0
  1168. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/markdown.py +0 -0
  1169. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/schemas.py +0 -0
  1170. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/social_browser_x.py +0 -0
  1171. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/surface.py +0 -0
  1172. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/content_ops/templates/layout-catalog-v0.json +0 -0
  1173. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/context_providers/__init__.py +0 -0
  1174. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/context_providers/base.py +0 -0
  1175. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/context_providers/factory.py +0 -0
  1176. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/context_providers/openviking.py +0 -0
  1177. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/context_providers/service_ownership.py +0 -0
  1178. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/README.md +0 -0
  1179. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/README.zh-CN.md +0 -0
  1180. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/__init__.py +0 -0
  1181. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/architecture.py +0 -0
  1182. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/capture.py +0 -0
  1183. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/capture_recovery.py +0 -0
  1184. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/catalog_entry.py +0 -0
  1185. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/cli.py +0 -0
  1186. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/cursor_commit.py +0 -0
  1187. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/extension_provider.py +0 -0
  1188. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/freshness.py +0 -0
  1189. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/outcome_feedback.py +0 -0
  1190. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/private_state.py +0 -0
  1191. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/profile.py +0 -0
  1192. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/providers.py +0 -0
  1193. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/review_settlement.py +0 -0
  1194. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/runtime.py +0 -0
  1195. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/decision_context/sources.py +0 -0
  1196. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/deep_research/README.md +0 -0
  1197. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/deep_research/__init__.py +0 -0
  1198. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/deep_research/catalog_entry.py +0 -0
  1199. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/deep_research/runtime.py +0 -0
  1200. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/documentation.py +0 -0
  1201. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/__init__.py +0 -0
  1202. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/activation.py +0 -0
  1203. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/catalog_entry.py +0 -0
  1204. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/child_replay_runtime.py +0 -0
  1205. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/composition_frontier.py +0 -0
  1206. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/counterfactual_runtime.py +0 -0
  1207. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/episode_runtime.py +0 -0
  1208. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/harness_checkpoint.py +0 -0
  1209. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/harness_gate.py +0 -0
  1210. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/harness_runtime.py +0 -0
  1211. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/replay_metrics.py +0 -0
  1212. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/replay_runtime.py +0 -0
  1213. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/research_evidence.py +0 -0
  1214. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/resource_portfolio.py +0 -0
  1215. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/router_state.py +0 -0
  1216. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/source_history_reconcile.py +0 -0
  1217. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/speculative_scheduler.py +0 -0
  1218. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/todo_evidence.py +0 -0
  1219. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/explore/trace_runtime.py +0 -0
  1220. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/external_research/__init__.py +0 -0
  1221. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/external_research/catalog_entry.py +0 -0
  1222. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/external_research/cli.py +0 -0
  1223. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/external_research/projection.py +0 -0
  1224. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/goal_capability_organization/__init__.py +0 -0
  1225. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/goal_capability_organization/catalog_entry.py +0 -0
  1226. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/goal_capability_organization/goal_configuration.py +0 -0
  1227. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/goal_inspection.py +0 -0
  1228. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/integration_branch/README.md +0 -0
  1229. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/integration_branch/__init__.py +0 -0
  1230. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/integration_branch/catalog_entry.py +0 -0
  1231. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/integration_branch/cli.py +0 -0
  1232. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/integration_branch/core.py +0 -0
  1233. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/README.md +0 -0
  1234. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/README.zh-CN.md +0 -0
  1235. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/__init__.py +0 -0
  1236. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/acceptance_loop.py +0 -0
  1237. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/candidate_evidence.py +0 -0
  1238. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/candidate_preflight.py +0 -0
  1239. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/catalog_entry.py +0 -0
  1240. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/cli.py +0 -0
  1241. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/cli_input.py +0 -0
  1242. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/content_ops_cli.py +0 -0
  1243. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/discovered_issue_promotion.py +0 -0
  1244. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/openviking-pilot-handoff.md +0 -0
  1245. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-acceptance-loop-v0.md +0 -0
  1246. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-discovered-issue-promotion-v0.md +0 -0
  1247. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-metrics-projection-v0.md +0 -0
  1248. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-reviewer-notification-sinks-v0.md +0 -0
  1249. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-reviewer-recommendation-v0.md +0 -0
  1250. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-reviewer-request-v0.md +0 -0
  1251. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/protocols/issue-fix-workflow-contract-v0.md +0 -0
  1252. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/docs/state-kernel-domain-state-case-study.zh-CN.md +0 -0
  1253. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/feasibility.py +0 -0
  1254. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/github_public.py +0 -0
  1255. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/intake_surface.py +0 -0
  1256. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/metadata_preview.py +0 -0
  1257. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/metrics_projection.py +0 -0
  1258. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/metrics_supplement.py +0 -0
  1259. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/metrics_supplement_cli.py +0 -0
  1260. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/outcome_projection.py +0 -0
  1261. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/periodic_report.py +0 -0
  1262. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_description.py +0 -0
  1263. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_gate_reconcile.py +0 -0
  1264. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_gate_reconcile_cli.py +0 -0
  1265. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_lifecycle_rollout.py +0 -0
  1266. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_monitor_materialization.py +0 -0
  1267. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/pr_review_ack.py +0 -0
  1268. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/provider_hooks.py +0 -0
  1269. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/repository_commit_evidence.py +0 -0
  1270. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/repository_context.py +0 -0
  1271. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/repository_memory.py +0 -0
  1272. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/repository_memory_provider.py +0 -0
  1273. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/repository_snapshot.py +0 -0
  1274. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reviewer_cli.py +0 -0
  1275. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reviewer_notification.py +0 -0
  1276. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reviewer_notification_drain.py +0 -0
  1277. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reviewer_recommendation.py +0 -0
  1278. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reviewer_request.py +0 -0
  1279. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/reward_memory.py +0 -0
  1280. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/issue_fix/workflow_plan.py +0 -0
  1281. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/machine_configuration/__init__.py +0 -0
  1282. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/machine_configuration/builtins.py +0 -0
  1283. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/machine_configuration/cli.py +0 -0
  1284. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/machine_configuration/contract.py +0 -0
  1285. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/answer_contract.py +0 -0
  1286. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/evidence_export.py +0 -0
  1287. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/goal_attention.py +0 -0
  1288. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/presentation.py +0 -0
  1289. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/ssh_evidence.py +0 -0
  1290. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/team_plan.py +0 -0
  1291. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/manager_context/tracking.py +0 -0
  1292. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/apply.py +0 -0
  1293. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/architecture.py +0 -0
  1294. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/catalog_entry.py +0 -0
  1295. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/cli.py +0 -0
  1296. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/explore_execution.py +0 -0
  1297. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/intake.py +0 -0
  1298. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/inventory.py +0 -0
  1299. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/lifecycle.py +0 -0
  1300. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/ownership.py +0 -0
  1301. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/preparation.py +0 -0
  1302. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/project_skill.py +0 -0
  1303. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/ranking.py +0 -0
  1304. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/readable_projection.py +0 -0
  1305. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/rebuild.py +0 -0
  1306. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/material_lifecycle/settlement.py +0 -0
  1307. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/multi_subagent/__init__.py +0 -0
  1308. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/multi_subagent/cli.py +0 -0
  1309. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/multi_subagent/codex_host_capacity.py +0 -0
  1310. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/multi_subagent/native_child_receipts.py +0 -0
  1311. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/native_chat/__init__.py +0 -0
  1312. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/performance_diagnosis/README.md +0 -0
  1313. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/performance_diagnosis/README.zh-CN.md +0 -0
  1314. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/performance_diagnosis/__init__.py +0 -0
  1315. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/performance_diagnosis/catalog_entry.py +0 -0
  1316. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/performance_diagnosis/cli.py +0 -0
  1317. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/README.md +0 -0
  1318. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/__init__.py +0 -0
  1319. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/adapters.py +0 -0
  1320. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/archive.py +0 -0
  1321. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/audience.py +0 -0
  1322. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/bindings.py +0 -0
  1323. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/cadence.py +0 -0
  1324. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/cadence_journal.py +0 -0
  1325. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/cadence_runtime.py +0 -0
  1326. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/catalog_entry.py +0 -0
  1327. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/cli.py +0 -0
  1328. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/core.py +0 -0
  1329. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/extension_envelope.py +0 -0
  1330. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/goal_configuration.py +0 -0
  1331. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/incremental.py +0 -0
  1332. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/machine_defaults.py +0 -0
  1333. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/machine_store.py +0 -0
  1334. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/pending_intent.py +0 -0
  1335. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/presets.py +0 -0
  1336. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/profile.py +0 -0
  1337. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/project_progress.py +0 -0
  1338. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/project_progress_snapshot.py +0 -0
  1339. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/request_action.py +0 -0
  1340. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/runtime_producer.py +0 -0
  1341. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/triggers.py +0 -0
  1342. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/periodic_report/workspace.py +0 -0
  1343. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/__init__.py +0 -0
  1344. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/catalog_entry.py +0 -0
  1345. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/check_attempts.py +0 -0
  1346. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/core.py +0 -0
  1347. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/goal_configuration.py +0 -0
  1348. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/machine_defaults.py +0 -0
  1349. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/merge_readiness.py +0 -0
  1350. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/order.py +0 -0
  1351. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/readiness_observation.py +0 -0
  1352. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/review_body.py +0 -0
  1353. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/scheduling.py +0 -0
  1354. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/pr_review_queue/selection_execution.py +0 -0
  1355. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/progress_review/__init__.py +0 -0
  1356. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/progress_review/catalog_entry.py +0 -0
  1357. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/progress_review/goal_configuration.py +0 -0
  1358. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/progress_review/policy.py +0 -0
  1359. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/project_skill_delivery/README.md +0 -0
  1360. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/project_skill_delivery/__init__.py +0 -0
  1361. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/project_skill_delivery/catalog_entry.py +0 -0
  1362. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/project_skill_delivery/cli.py +0 -0
  1363. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/project_skill_delivery/core.py +0 -0
  1364. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/README.md +0 -0
  1365. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/__init__.py +0 -0
  1366. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/catalog_entry.py +0 -0
  1367. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/scan_cli.py +0 -0
  1368. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/scanner.py +0 -0
  1369. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/public_safe_outbound/tests/test_scanner.py +0 -0
  1370. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/registry.py +0 -0
  1371. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/README.md +0 -0
  1372. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/README.zh-CN.md +0 -0
  1373. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/__init__.py +0 -0
  1374. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/catalog_entry.py +0 -0
  1375. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/docs/local-retention-v0.md +0 -0
  1376. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/envelope.py +0 -0
  1377. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/fixture.py +0 -0
  1378. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/intake.py +0 -0
  1379. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/ledger.py +0 -0
  1380. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/projection.py +0 -0
  1381. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reliability_diagnostics/receipt.py +0 -0
  1382. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/README.md +0 -0
  1383. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/__init__.py +0 -0
  1384. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/catalog_entry.py +0 -0
  1385. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/cli.py +0 -0
  1386. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/git_hook.py +0 -0
  1387. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/interaction_hook.py +0 -0
  1388. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/ledger.py +0 -0
  1389. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/policy.py +0 -0
  1390. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/repository_change_window/repository.py +0 -0
  1391. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/__init__.py +0 -0
  1392. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/application.py +0 -0
  1393. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/architecture.py +0 -0
  1394. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/candidate_review.py +0 -0
  1395. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/catalog_entry.py +0 -0
  1396. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/cli.py +0 -0
  1397. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/codex_app_outcome.py +0 -0
  1398. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/decision.py +0 -0
  1399. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/dogfood.py +0 -0
  1400. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/evaluation.py +0 -0
  1401. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/evaluation_fixtures.py +0 -0
  1402. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/experience_quality.py +0 -0
  1403. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/experiment.py +0 -0
  1404. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/feedback_hint.py +0 -0
  1405. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/health.py +0 -0
  1406. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/ingestion.py +0 -0
  1407. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/memory_utility.py +0 -0
  1408. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/outbound.py +0 -0
  1409. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/outcome_lifecycle.py +0 -0
  1410. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/read_authority.py +0 -0
  1411. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/registry.py +0 -0
  1412. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/runtime_hooks.py +0 -0
  1413. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/scoped_feedback.py +0 -0
  1414. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/utility_projection_validation.py +0 -0
  1415. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/reward_memory/utility_reducer.py +0 -0
  1416. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/__init__.py +0 -0
  1417. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/catalog_entry.py +0 -0
  1418. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/cli.py +0 -0
  1419. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/contract.py +0 -0
  1420. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/docs/openviking-project-peer.md +0 -0
  1421. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/semantic_preference/reward_memory.py +0 -0
  1422. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/steward_executor/__init__.py +0 -0
  1423. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/steward_executor/allocation.py +0 -0
  1424. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/steward_executor/machine_defaults.py +0 -0
  1425. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/todo_replan_cadence/__init__.py +0 -0
  1426. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/todo_replan_cadence/goal_configuration.py +0 -0
  1427. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/README.md +0 -0
  1428. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/__init__.py +0 -0
  1429. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/catalog_entry.py +0 -0
  1430. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/cli.py +0 -0
  1431. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/docs/agent-reach-ops-source-map.md +0 -0
  1432. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/docs/finance-market-snapshot-probe.md +0 -0
  1433. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/finance_extension_migration.py +0 -0
  1434. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/install_check.py +0 -0
  1435. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/planner.py +0 -0
  1436. {loopx-1.3.1 → loopx-1.4.0}/loopx/capabilities/value_connectors/source_map.py +0 -0
  1437. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_acp.py +0 -0
  1438. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_action_normalization.py +0 -0
  1439. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_attachments.py +0 -0
  1440. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_codex_goal.py +0 -0
  1441. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_dsh.py +0 -0
  1442. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_endpoint_catalog.py +0 -0
  1443. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_endpoints.py +0 -0
  1444. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_event_cache.py +0 -0
  1445. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_goal_lifecycle_actions.py +0 -0
  1446. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_goal_subagent_api.py +0 -0
  1447. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_ingress.py +0 -0
  1448. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_machine_configuration_api.py +0 -0
  1449. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_manager_history.py +0 -0
  1450. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_operator_provider_api.py +0 -0
  1451. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_providers.py +0 -0
  1452. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_session_open.py +0 -0
  1453. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_ssh_source_api.py +0 -0
  1454. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_usage_statistics_api.py +0 -0
  1455. {loopx-1.3.1 → loopx-1.4.0}/loopx/chat_workspace_directory.py +0 -0
  1456. {loopx-1.3.1 → loopx-1.4.0}/loopx/claude_goal_mode/__init__.py +0 -0
  1457. {loopx-1.3.1 → loopx-1.4.0}/loopx/claude_goal_mode/hooks/goal_state.py +0 -0
  1458. {loopx-1.3.1 → loopx-1.4.0}/loopx/claude_goal_mode/mcp/loopx_mcp.py +0 -0
  1459. {loopx-1.3.1 → loopx-1.4.0}/loopx/claude_goal_mode/scripts/connect.py +0 -0
  1460. {loopx-1.3.1 → loopx-1.4.0}/loopx/claude_goal_mode/scripts/install.py +0 -0
  1461. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/__init__.py +0 -0
  1462. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/_host_thread.py +0 -0
  1463. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/agent_capabilities.py +0 -0
  1464. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/agent_context.py +0 -0
  1465. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/agent_directory.py +0 -0
  1466. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/authority_archive.py +0 -0
  1467. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/automation_prompts.py +0 -0
  1468. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_boundary.py +0 -0
  1469. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_concurrency.py +0 -0
  1470. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_continuation.py +0 -0
  1471. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_dispatch.py +0 -0
  1472. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_experiment_board.py +0 -0
  1473. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/benchmark_study.py +0 -0
  1474. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/bootstrap_connect.py +0 -0
  1475. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/canary_release_qualification.py +0 -0
  1476. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/capability.py +0 -0
  1477. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/configuration_backup.py +0 -0
  1478. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/dash.py +0 -0
  1479. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/deepresearch.py +0 -0
  1480. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/doctor.py +0 -0
  1481. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/dreaming.py +0 -0
  1482. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/explore_feishu_commands.py +0 -0
  1483. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/explore_planning_commands.py +0 -0
  1484. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/extension.py +0 -0
  1485. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/first_run_report.py +0 -0
  1486. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_acceptance.py +0 -0
  1487. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_actions.py +0 -0
  1488. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_amendment_proposal.py +0 -0
  1489. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_channel.py +0 -0
  1490. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_channel_operation.py +0 -0
  1491. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_channel_runtime.py +0 -0
  1492. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/goal_lifecycle.py +0 -0
  1493. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/handoff_mode.py +0 -0
  1494. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/handoff_restore.py +0 -0
  1495. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/history.py +0 -0
  1496. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/host_mode_plan.py +0 -0
  1497. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/lark_inbox.py +0 -0
  1498. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/lark_kanban.py +0 -0
  1499. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/ml_experiment.py +0 -0
  1500. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/presentation.py +0 -0
  1501. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/preset.py +0 -0
  1502. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/project.py +0 -0
  1503. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/project_lifecycle.py +0 -0
  1504. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/project_lifecycle_sinks.py +0 -0
  1505. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_action_selection.py +0 -0
  1506. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_capture.py +0 -0
  1507. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_failure_report.py +0 -0
  1508. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_host_poll.py +0 -0
  1509. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_monitor_poll.py +0 -0
  1510. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_registration.py +0 -0
  1511. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_request.py +0 -0
  1512. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_reward_memory.py +0 -0
  1513. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/quota_scheduler_followup.py +0 -0
  1514. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/ready_score.py +0 -0
  1515. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/registry_admin.py +0 -0
  1516. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/registry_admin_lifecycle.py +0 -0
  1517. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/registry_admin_peer.py +0 -0
  1518. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/registry_admin_thread_resolution.py +0 -0
  1519. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/registry_authority.py +0 -0
  1520. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/reliability_diagnostics.py +0 -0
  1521. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/review_batch.py +0 -0
  1522. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/shared_goal_alignment.py +0 -0
  1523. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/slash_commands.py +0 -0
  1524. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter.py +0 -0
  1525. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_bootstrap.py +0 -0
  1526. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_bootstrap_registration.py +0 -0
  1527. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_runtime_idle.py +0 -0
  1528. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_scheduler.py +0 -0
  1529. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_session_runtime.py +0 -0
  1530. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_visible_common.py +0 -0
  1531. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_visible_driver.py +0 -0
  1532. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/starter_visible_pilot.py +0 -0
  1533. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/status.py +0 -0
  1534. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/status_registration.py +0 -0
  1535. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/summary_all.py +0 -0
  1536. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_agent_runtime.py +0 -0
  1537. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_backup.py +0 -0
  1538. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_chat_endpoint.py +0 -0
  1539. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_heartbeat_registration.py +0 -0
  1540. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_promotion.py +0 -0
  1541. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_registry.py +0 -0
  1542. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_supervisor.py +0 -0
  1543. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/support_control_update.py +0 -0
  1544. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/todo_continuation.py +0 -0
  1545. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn.py +0 -0
  1546. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_cadence.py +0 -0
  1547. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_decision.py +0 -0
  1548. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_dsh_host.py +0 -0
  1549. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_managed_step.py +0 -0
  1550. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_selection.py +0 -0
  1551. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/turn_todo_writeback.py +0 -0
  1552. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/usage_ping.py +0 -0
  1553. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/version.py +0 -0
  1554. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/worker_bridge.py +0 -0
  1555. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_commands/workflow_skills.py +0 -0
  1556. {loopx-1.3.1 → loopx-1.4.0}/loopx/cli_rollout.py +0 -0
  1557. {loopx-1.3.1 → loopx-1.4.0}/loopx/codex_cli_probe_markdown.py +0 -0
  1558. {loopx-1.3.1 → loopx-1.4.0}/loopx/codex_cli_scheduler.py +0 -0
  1559. {loopx-1.3.1 → loopx-1.4.0}/loopx/command_invocation.py +0 -0
  1560. {loopx-1.3.1 → loopx-1.4.0}/loopx/configuration_transaction.py +0 -0
  1561. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/__init__.py +0 -0
  1562. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/actor_identity.py +0 -0
  1563. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agent_context.py +0 -0
  1564. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agent_context.ts +0 -0
  1565. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/__init__.py +0 -0
  1566. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/agent_lane_recommendation.py +0 -0
  1567. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/agent_scope_frontier.generated.ts +0 -0
  1568. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/agent_scope_frontier.py +0 -0
  1569. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/capability_gate.ts +0 -0
  1570. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/capability_memory.py +0 -0
  1571. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/capability_memory.ts +0 -0
  1572. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/delivery_workspace.py +0 -0
  1573. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/delivery_workspace.ts +0 -0
  1574. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/directory.py +0 -0
  1575. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/identity.py +0 -0
  1576. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/legacy_migration.py +0 -0
  1577. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/material_frontier.py +0 -0
  1578. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/material_handoff.py +0 -0
  1579. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/profile.py +0 -0
  1580. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/runtime_model.py +0 -0
  1581. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/subagent_activity.py +0 -0
  1582. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/supervisor.py +0 -0
  1583. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/supervisor_event_append.ts +0 -0
  1584. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/supervisor_events.py +0 -0
  1585. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/supervisor_inject.py +0 -0
  1586. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/work_mode.py +0 -0
  1587. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/agents/workspace_guard.py +0 -0
  1588. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/__init__.py +0 -0
  1589. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/explore_configuration.ts +0 -0
  1590. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/explore_research.ts +0 -0
  1591. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/external_evidence.ts +0 -0
  1592. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/issue_fix_monitor_reconciliation.ts +0 -0
  1593. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/native_child_admission.ts +0 -0
  1594. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/performance_diagnosis.ts +0 -0
  1595. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/performance_profile.ts +0 -0
  1596. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/periodic_report_progress.ts +0 -0
  1597. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/pr_review_order.ts +0 -0
  1598. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/capabilities/reward_memory_decision.ts +0 -0
  1599. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/chat_turn_acceptance.py +0 -0
  1600. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/__init__.py +0 -0
  1601. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/chat_mode.ts +0 -0
  1602. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/conversation_reply_context.ts +0 -0
  1603. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/conversation_trigger.ts +0 -0
  1604. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_context.py +0 -0
  1605. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_inventory.py +0 -0
  1606. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_preview_bridge.ts +0 -0
  1607. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_preview_transport.py +0 -0
  1608. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_preview_worker.py +0 -0
  1609. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_stop_lease.py +0 -0
  1610. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/delegation_stop_signal.py +0 -0
  1611. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/goal_draft.ts +0 -0
  1612. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/goal_instance_lifecycle.ts +0 -0
  1613. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/goal_instance_scope.py +0 -0
  1614. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/inbox_receipts.ts +0 -0
  1615. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/operation_handoff.py +0 -0
  1616. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/operation_wake.py +0 -0
  1617. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/peer_context.ts +0 -0
  1618. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/peer_host_route.py +0 -0
  1619. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/peer_route_selection.ts +0 -0
  1620. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/peers.py +0 -0
  1621. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/project_conversation.ts +0 -0
  1622. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/return_delivery.ts +0 -0
  1623. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/collaboration/source_grants.ts +0 -0
  1624. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/configuration_backup.ts +0 -0
  1625. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/content_digest.py +0 -0
  1626. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/content_digest.ts +0 -0
  1627. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/__init__.py +0 -0
  1628. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_archive.ts +0 -0
  1629. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_archive_audit.ts +0 -0
  1630. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_archive_read.ts +0 -0
  1631. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_format_inspection.ts +0 -0
  1632. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_format_upgrade.ts +0 -0
  1633. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_journal_scan.ts +0 -0
  1634. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_source.ts +0 -0
  1635. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_state_log.ts +0 -0
  1636. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_store.ts +0 -0
  1637. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_store_codec.ts +0 -0
  1638. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/authority_store_transactions.ts +0 -0
  1639. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/canonical_snapshot_page.ts +0 -0
  1640. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/command_receipt.ts +0 -0
  1641. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/continuation_note.ts +0 -0
  1642. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_projection.ts +0 -0
  1643. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_state_contract.generated.ts +0 -0
  1644. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_state_contract.py +0 -0
  1645. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_state_contract.ts +0 -0
  1646. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_state_contract_generated.py +0 -0
  1647. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/coordination_state_contract_v0.json +0 -0
  1648. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/file_authority_journal.ts +0 -0
  1649. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/file_authority_migration.ts +0 -0
  1650. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/file_authority_store.ts +0 -0
  1651. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_facts.ts +0 -0
  1652. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_legacy_plan.ts +0 -0
  1653. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_migration.ts +0 -0
  1654. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_policy.ts +0 -0
  1655. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_runtime.ts +0 -0
  1656. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_transaction.ts +0 -0
  1657. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_mode_vocabulary.ts +0 -0
  1658. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/handoff_policy_migration.ts +0 -0
  1659. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/lease_claim_transfer.ts +0 -0
  1660. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/legacy_writer_lock_paths.ts +0 -0
  1661. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_archive_attempt.ts +0 -0
  1662. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority.py +0 -0
  1663. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority_provider.ts +0 -0
  1664. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority_shadow.ts +0 -0
  1665. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority_shadow_identity.ts +0 -0
  1666. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority_shadow_outbox.ts +0 -0
  1667. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_authority_write.ts +0 -0
  1668. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/local_snapshot.py +0 -0
  1669. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/new_goal_initialization.ts +0 -0
  1670. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/nokv_authority_store.ts +0 -0
  1671. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/nokv_jsonl_helper.py +0 -0
  1672. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/nokv_jsonl_transport.ts +0 -0
  1673. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/ownership_observation.ts +0 -0
  1674. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/postgresql_authority_service.ts +0 -0
  1675. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/promotion_handoff_migration.ts +0 -0
  1676. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/promotion_receipt.ts +0 -0
  1677. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/promotion_review.py +0 -0
  1678. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/reviewed_promotion_plan.ts +0 -0
  1679. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_drain.ts +0 -0
  1680. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_drain_files.ts +0 -0
  1681. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_drain_plan.ts +0 -0
  1682. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_entry_delivery.ts +0 -0
  1683. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_entry_evidence.ts +0 -0
  1684. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_goal_scope.py +0 -0
  1685. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_lock_host.py +0 -0
  1686. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/shadow_registry_source.ts +0 -0
  1687. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/source_projection.ts +0 -0
  1688. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/source_transfer.ts +0 -0
  1689. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/sqlite_authority_migration.ts +0 -0
  1690. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/sqlite_authority_store.ts +0 -0
  1691. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/sqlite_backup.ts +0 -0
  1692. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/sqlite_runtime.ts +0 -0
  1693. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/task_lease_state.ts +0 -0
  1694. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_acceptance_restoration.ts +0 -0
  1695. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_agents.ts +0 -0
  1696. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_archive.ts +0 -0
  1697. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_archive_selection.ts +0 -0
  1698. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_blocked_lifecycle.ts +0 -0
  1699. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_continuation.ts +0 -0
  1700. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_deferred_lifecycle.ts +0 -0
  1701. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_presentation.ts +0 -0
  1702. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_successor_derivation.ts +0 -0
  1703. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_update.ts +0 -0
  1704. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_update_intent.ts +0 -0
  1705. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/coordination/todo_write_scopes.ts +0 -0
  1706. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/digest_envelope.py +0 -0
  1707. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/effect_runtime_compile_cache.ts +0 -0
  1708. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/effect_runtime_snapshot.ts +0 -0
  1709. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goal_agent_context.ts +0 -0
  1710. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/__init__.py +0 -0
  1711. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/acceptance_observation.py +0 -0
  1712. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/activation.py +0 -0
  1713. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/activation_service.py +0 -0
  1714. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/active_state_metadata.py +0 -0
  1715. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/active_state_sections.py +0 -0
  1716. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/artifact_lifecycle.py +0 -0
  1717. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/chat_session_lifecycle.ts +0 -0
  1718. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/checkpoint_authority.ts +0 -0
  1719. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/checkpoint_context_io.py +0 -0
  1720. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/checkpoint_read_context.ts +0 -0
  1721. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/configure_goal_service.py +0 -0
  1722. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/contract_health.py +0 -0
  1723. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/coordination_observation.py +0 -0
  1724. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/dreaming.py +0 -0
  1725. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/global_registry_health.py +0 -0
  1726. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/global_registry_shadow.py +0 -0
  1727. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_amendment_proposal.py +0 -0
  1728. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_amendment_proposal.ts +0 -0
  1729. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_channel.py +0 -0
  1730. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_channel_projection.py +0 -0
  1731. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/acceptance.py +0 -0
  1732. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/ack_policy.py +0 -0
  1733. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/fallback_disposition.py +0 -0
  1734. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/long_todo_chain.py +0 -0
  1735. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/outcome_continuity.py +0 -0
  1736. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/replan_rules.py +0 -0
  1737. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/semantic_history.py +0 -0
  1738. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_frontier/terminal.py +0 -0
  1739. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_instance_identity.ts +0 -0
  1740. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_vision.py +0 -0
  1741. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_vision_read_model.py +0 -0
  1742. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_vision_state.py +0 -0
  1743. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_vision_wait.py +0 -0
  1744. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/goal_vision_wait_projection.py +0 -0
  1745. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/legacy_event_source.py +0 -0
  1746. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/operator_actions.py +0 -0
  1747. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/operator_actions.ts +0 -0
  1748. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/orphaned_goal_state.py +0 -0
  1749. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/path_resolution.py +0 -0
  1750. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/shared_goal_alignment.py +0 -0
  1751. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/shared_goal_alignment.ts +0 -0
  1752. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/shared_goal_work.ts +0 -0
  1753. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/shared_goal_work_source.py +0 -0
  1754. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/source_session_binding.py +0 -0
  1755. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/source_session_lifetime.ts +0 -0
  1756. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/source_session_services.py +0 -0
  1757. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/ssh_lifecycle_transport.py +0 -0
  1758. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/start_contract.py +0 -0
  1759. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/state_resolution.py +0 -0
  1760. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/task_planning.py +0 -0
  1761. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/vision_checkpoint.py +0 -0
  1762. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/goals/vision_wait_coverage.ts +0 -0
  1763. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/governed_capability.ts +0 -0
  1764. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/__init__.py +0 -0
  1765. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/cross_runtime_impl_review.py +0 -0
  1766. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/delivery_contract.py +0 -0
  1767. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/handoff_fragments.py +0 -0
  1768. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/handoff_runs.py +0 -0
  1769. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/project_agent_context.py +0 -0
  1770. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/project_handoff.py +0 -0
  1771. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/review_batch.py +0 -0
  1772. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/handoff/review_packet_context.py +0 -0
  1773. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/agent.py +0 -0
  1774. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/agent_input.py +0 -0
  1775. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/automation_upgrade.py +0 -0
  1776. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/bootstrap_prompt.py +0 -0
  1777. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/host.py +0 -0
  1778. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/installed_prompt_update.py +0 -0
  1779. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/prompt_upgrade_hook.py +0 -0
  1780. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/heartbeat/visible_goal.py +0 -0
  1781. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/host_adapter_settlement.py +0 -0
  1782. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/operator_credential.py +0 -0
  1783. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/operator_inbox_binding.py +0 -0
  1784. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/post_writeback_composition_retry.py +0 -0
  1785. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/post_writeback_hook_transaction.ts +0 -0
  1786. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/presentation/decision_notice.ts +0 -0
  1787. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/presentation/todo_request_content.ts +0 -0
  1788. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/progress_scope.py +0 -0
  1789. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projection_envelope.ts +0 -0
  1790. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projection_envelope_facts.py +0 -0
  1791. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projects/__init__.py +0 -0
  1792. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projects/contract.py +0 -0
  1793. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projects/registration_state.py +0 -0
  1794. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/projects/registry_codec.py +0 -0
  1795. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/__init__.py +0 -0
  1796. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/_supporting_projections.py +0 -0
  1797. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/accounting_admission.py +0 -0
  1798. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/accounting_artifact_transaction.ts +0 -0
  1799. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/blocked_transition_notice.py +0 -0
  1800. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/codex_session_usage.py +0 -0
  1801. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/decision_summary.py +0 -0
  1802. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/effective_action.generated.ts +0 -0
  1803. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/effective_action.py +0 -0
  1804. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/error_codes.py +0 -0
  1805. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/goal_boundary.py +0 -0
  1806. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/heartbeat_recommendation.py +0 -0
  1807. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/host_poll_receipts.py +0 -0
  1808. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/monitor_poll_lease_transport.py +0 -0
  1809. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/peer_orchestration.ts +0 -0
  1810. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/policy_constants.py +0 -0
  1811. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/projection_repair.py +0 -0
  1812. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/recent_runs.py +0 -0
  1813. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/refresh_external_delivery.py +0 -0
  1814. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/refresh_external_delivery.ts +0 -0
  1815. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/refresh_recovery.ts +0 -0
  1816. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/scheduler_ack.py +0 -0
  1817. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/scoped_override.ts +0 -0
  1818. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/settlement_precedence.py +0 -0
  1819. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/settlement_validation.py +0 -0
  1820. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/settlement_workspace_causality.py +0 -0
  1821. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/settlement_workspace_causality.ts +0 -0
  1822. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/slot_accounting.py +0 -0
  1823. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/source_admission.ts +0 -0
  1824. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/spend_commit.ts +0 -0
  1825. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/spend_sources.py +0 -0
  1826. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/stall_repair.py +0 -0
  1827. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/states.py +0 -0
  1828. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/task_orchestration.py +0 -0
  1829. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/task_orchestration_admission.py +0 -0
  1830. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/turn_envelope.py +0 -0
  1831. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/unsettled_host_turn.py +0 -0
  1832. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/usage_collector.py +0 -0
  1833. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/usage_summary.py +0 -0
  1834. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/void_commit.py +0 -0
  1835. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/quota/void_commit.ts +0 -0
  1836. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/reward_memory.py +0 -0
  1837. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/__init__.py +0 -0
  1838. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/agent_evidence_history.py +0 -0
  1839. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/decision_freshness.py +0 -0
  1840. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/event_ledger.py +0 -0
  1841. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/execution_identity.ts +0 -0
  1842. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/file_paths.py +0 -0
  1843. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/file_reads.py +0 -0
  1844. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/goal_project_route.py +0 -0
  1845. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/local_state_migration.py +0 -0
  1846. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/local_state_write_correctness.py +0 -0
  1847. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/promotion_readiness.py +0 -0
  1848. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/receipt_log_snapshot.ts +0 -0
  1849. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/run_artifacts.py +0 -0
  1850. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/run_compaction.py +0 -0
  1851. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/run_context_retention.py +0 -0
  1852. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/run_index_duplicates.py +0 -0
  1853. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/run_index_rebuild.py +0 -0
  1854. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/runtime_projection_route.py +0 -0
  1855. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/session_runtime.py +0 -0
  1856. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/shared_runtime_material_projection.py +0 -0
  1857. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/shared_runtime_refresh_projection.py +0 -0
  1858. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/stale_latest_run.py +0 -0
  1859. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/status_classifications.py +0 -0
  1860. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/status_projection_cache.py +0 -0
  1861. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/stride_observation.py +0 -0
  1862. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/trajectory_hygiene.py +0 -0
  1863. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics.ts +0 -0
  1864. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_cli.ts +0 -0
  1865. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_codex.ts +0 -0
  1866. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_contract.ts +0 -0
  1867. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_cycles.ts +0 -0
  1868. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_diagnostics.ts +0 -0
  1869. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_goal_contract.ts +0 -0
  1870. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_goals.ts +0 -0
  1871. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_installation.ts +0 -0
  1872. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/usage_statistics_installation_contract.ts +0 -0
  1873. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime/validation_command.py +0 -0
  1874. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/runtime_decode.ts +0 -0
  1875. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/__init__.py +0 -0
  1876. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/app_automation_compat.py +0 -0
  1877. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/automation_liveness.py +0 -0
  1878. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/execution_context.py +0 -0
  1879. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/external_evidence_observation.py +0 -0
  1880. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/heartbeat_commit_cli.ts +0 -0
  1881. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/monitor_display.py +0 -0
  1882. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/monitor_successor.ts +0 -0
  1883. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/monitor_todo.py +0 -0
  1884. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/monitor_wait.py +0 -0
  1885. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/provider_monitor_poll.py +0 -0
  1886. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/state.py +0 -0
  1887. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/state_transition_rules.py +0 -0
  1888. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/state_transition_rules.ts +0 -0
  1889. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/scheduler/time.py +0 -0
  1890. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/settlement_driver.py +0 -0
  1891. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/__init__.py +0 -0
  1892. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/active_state_projection.py +0 -0
  1893. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/adapter_status_vocabulary.py +0 -0
  1894. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/agent_lane_projection.py +0 -0
  1895. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/attention_projection.py +0 -0
  1896. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/autonomous_replan_projection.py +0 -0
  1897. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/collection.py +0 -0
  1898. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/contract_projection.py +0 -0
  1899. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/dreaming_projection.py +0 -0
  1900. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/goal_attention_projection.py +0 -0
  1901. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/lifecycle_projection.py +0 -0
  1902. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/monitor_display_projection.py +0 -0
  1903. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/registry_health_projection.py +0 -0
  1904. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/run_projection.py +0 -0
  1905. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/runtime_summaries.py +0 -0
  1906. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/ssh_host_catalog.py +0 -0
  1907. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/status/ssh_tunnel.py +0 -0
  1908. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/subagent_context.ts +0 -0
  1909. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/__init__.py +0 -0
  1910. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/action_portfolio_scenarios.py +0 -0
  1911. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/actual_default_model_behavior_portfolio.py +0 -0
  1912. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/authority_e2e_fixtures.py +0 -0
  1913. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/authority_e2e_ladder.py +0 -0
  1914. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/authority_e2e_row_support.py +0 -0
  1915. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/authority_e2e_rows_stage2c.py +0 -0
  1916. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/canary_harness.py +0 -0
  1917. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/capability_monitor_repair_tool_behavior.py +0 -0
  1918. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/continuation_verb_guard.py +0 -0
  1919. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/control_plane_composition_scenarios.py +0 -0
  1920. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/decision_replay.py +0 -0
  1921. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/host_prompt_behavior.py +0 -0
  1922. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/model_behavior_action_oracles.py +0 -0
  1923. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/model_behavior_corpus.py +0 -0
  1924. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/model_behavior_qualification.py +0 -0
  1925. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/model_behavior_retained_cases.py +0 -0
  1926. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/model_tool_behavior.py +0 -0
  1927. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/onboarding_model_behavior_qualification.py +0 -0
  1928. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/quota_fixtures.py +0 -0
  1929. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/quota_should_run_parity.py +0 -0
  1930. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/release_commit_qualification.py +0 -0
  1931. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/replan_vision_closeout_behavior.py +0 -0
  1932. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/scoped_gate_successor_tool_behavior.py +0 -0
  1933. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/terminal_settlement_tool_behavior.py +0 -0
  1934. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/turn_journal_characterization.py +0 -0
  1935. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/testing/vision_shell_host.py +0 -0
  1936. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/__init__.py +0 -0
  1937. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/active_state_todo_parser.py +0 -0
  1938. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/addition.py +0 -0
  1939. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/agent_scope.ts +0 -0
  1940. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/archive_capture.ts +0 -0
  1941. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/compact_projection.py +0 -0
  1942. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completed_archive.py +0 -0
  1943. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_fence.py +0 -0
  1944. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_fence.ts +0 -0
  1945. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_policy.py +0 -0
  1946. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_policy.ts +0 -0
  1947. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_state.py +0 -0
  1948. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_state.ts +0 -0
  1949. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_transaction.py +0 -0
  1950. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_transaction.ts +0 -0
  1951. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation.py +0 -0
  1952. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation_accountability.py +0 -0
  1953. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation_declaration.ts +0 -0
  1954. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation_plan.ts +0 -0
  1955. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation_projection.py +0 -0
  1956. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/completion_validation_revision.ts +0 -0
  1957. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/decision_metadata.ts +0 -0
  1958. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/decision_scope.py +0 -0
  1959. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/decision_scope.ts +0 -0
  1960. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/durable_completion.py +0 -0
  1961. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/external_wait_contract.py +0 -0
  1962. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/handoff_mode_source.py +0 -0
  1963. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/legacy_continuation_policy_migration.ts +0 -0
  1964. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/list_projection.py +0 -0
  1965. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/machine_region.py +0 -0
  1966. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/machine_section_projection.py +0 -0
  1967. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/monitor_metadata.py +0 -0
  1968. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/monitor_metadata.ts +0 -0
  1969. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/next_action.ts +0 -0
  1970. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/next_action_runtime.py +0 -0
  1971. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/priority.ts +0 -0
  1972. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/projection.py +0 -0
  1973. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/projection_delivery.ts +0 -0
  1974. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/projection_document.py +0 -0
  1975. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/provider_handoff_mode.py +0 -0
  1976. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/provider_update.py +0 -0
  1977. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/public_update.ts +0 -0
  1978. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/resume_planning.ts +0 -0
  1979. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/standing_decision.py +0 -0
  1980. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/standing_decision.ts +0 -0
  1981. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/successor_derivation.py +0 -0
  1982. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/todo_block_codec.py +0 -0
  1983. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/unblock_resume.py +0 -0
  1984. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/update_source.py +0 -0
  1985. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/user_completion.ts +0 -0
  1986. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/user_completion_types.ts +0 -0
  1987. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/user_gate.py +0 -0
  1988. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/write_correctness.py +0 -0
  1989. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/todos/write_hint.py +0 -0
  1990. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/__init__.py +0 -0
  1991. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/chat_turn_acceptance.ts +0 -0
  1992. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/codex_operation_host.py +0 -0
  1993. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/codex_sessions.py +0 -0
  1994. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/command_validation.py +0 -0
  1995. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/delegated_cli.py +0 -0
  1996. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/delivery_continuity.py +0 -0
  1997. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/delivery_continuity.ts +0 -0
  1998. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/driver.py +0 -0
  1999. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/execution_profile.py +0 -0
  2000. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_binding.py +0 -0
  2001. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_failure.py +0 -0
  2002. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_interaction.ts +0 -0
  2003. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_process.ts +0 -0
  2004. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_process_bridge.ts +0 -0
  2005. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_process_group.ts +0 -0
  2006. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/host_process_transport.py +0 -0
  2007. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/lane_fence.py +0 -0
  2008. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/leased_host_process.ts +0 -0
  2009. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/post_settlement.py +0 -0
  2010. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/recovery.py +0 -0
  2011. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/selection_rejection.ts +0 -0
  2012. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/session_recovery.py +0 -0
  2013. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/settlement.py +0 -0
  2014. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/settlement.ts +0 -0
  2015. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/settlement_provider.ts +0 -0
  2016. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/subagent_execution_topology.py +0 -0
  2017. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/subagent_host_adapter.py +0 -0
  2018. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/transaction.py +0 -0
  2019. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/turn_journal_attempt_contract.ts +0 -0
  2020. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/turn_journal_effect_readback.ts +0 -0
  2021. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/turn_journal_effects.ts +0 -0
  2022. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_driver/turn_journal_runtime.py +0 -0
  2023. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/turn_transaction_contract.json +0 -0
  2024. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/__init__.py +0 -0
  2025. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/accountable_settlement.py +0 -0
  2026. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/action_portfolio.py +0 -0
  2027. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/action_portfolio.ts +0 -0
  2028. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/attention_fields.py +0 -0
  2029. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/attention_item.py +0 -0
  2030. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/attention_queue.py +0 -0
  2031. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/attention_routing.py +0 -0
  2032. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/autonomous_candidates.py +0 -0
  2033. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/autonomous_replan_ack.py +0 -0
  2034. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/backlog_hygiene.py +0 -0
  2035. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/canonical_task_lease_lifecycle.ts +0 -0
  2036. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/delivery_batch_scale.py +0 -0
  2037. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/delivery_history.py +0 -0
  2038. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/delivery_history.ts +0 -0
  2039. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/delivery_outcome.py +0 -0
  2040. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/delivery_outcome.ts +0 -0
  2041. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/goal_route_hint.py +0 -0
  2042. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/issue_meta_surface.py +0 -0
  2043. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/lifecycle.py +0 -0
  2044. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/operation_agent_handoff.ts +0 -0
  2045. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/operator_inbox.py +0 -0
  2046. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/pending_capability_intent.ts +0 -0
  2047. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/planning_horizon.ts +0 -0
  2048. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/planning_inventory.ts +0 -0
  2049. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/planning_relations.ts +0 -0
  2050. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/primary_action.py +0 -0
  2051. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/progress_observation.py +0 -0
  2052. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/progress_result.py +0 -0
  2053. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/progress_review_policy.py +0 -0
  2054. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/project_asset.py +0 -0
  2055. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/recommendation_source_io.py +0 -0
  2056. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/refresh_recommendation.py +0 -0
  2057. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/refresh_recommendation.ts +0 -0
  2058. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/repair_delta.py +0 -0
  2059. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/replan_history.ts +0 -0
  2060. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/replan_history_snapshot.ts +0 -0
  2061. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/replan_settlement.py +0 -0
  2062. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/replan_settlement.ts +0 -0
  2063. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/repository_delivery.ts +0 -0
  2064. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/runtime_capability_reentry.py +0 -0
  2065. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/status_contract.py +0 -0
  2066. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_graph.py +0 -0
  2067. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_graph.ts +0 -0
  2068. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_acquire.ts +0 -0
  2069. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_acquire_cli.ts +0 -0
  2070. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_acquire_decision.ts +0 -0
  2071. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_eligibility.ts +0 -0
  2072. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_lifecycle.ts +0 -0
  2073. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_lifecycle_decision.ts +0 -0
  2074. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_lifecycle_request.ts +0 -0
  2075. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_operation_identity.ts +0 -0
  2076. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_repository.ts +0 -0
  2077. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/task_lease_workspace.ts +0 -0
  2078. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/team_plan.ts +0 -0
  2079. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/user_action_frontier.py +0 -0
  2080. {loopx-1.3.1 → loopx-1.4.0}/loopx/control_plane/work_items/work_lane.py +0 -0
  2081. {loopx-1.3.1 → loopx-1.4.0}/loopx/dash_server.py +0 -0
  2082. {loopx-1.3.1 → loopx-1.4.0}/loopx/dashboard_launcher.py +0 -0
  2083. {loopx-1.3.1 → loopx-1.4.0}/loopx/demo.py +0 -0
  2084. {loopx-1.3.1 → loopx-1.4.0}/loopx/desktop_installation.py +0 -0
  2085. {loopx-1.3.1 → loopx-1.4.0}/loopx/doctor_git.py +0 -0
  2086. {loopx-1.3.1 → loopx-1.4.0}/loopx/domain_packs/__init__.py +0 -0
  2087. {loopx-1.3.1 → loopx-1.4.0}/loopx/domain_packs/issue_fix.py +0 -0
  2088. {loopx-1.3.1 → loopx-1.4.0}/loopx/domain_packs/ml_experiment.py +0 -0
  2089. {loopx-1.3.1 → loopx-1.4.0}/loopx/domain_state.py +0 -0
  2090. {loopx-1.3.1 → loopx-1.4.0}/loopx/dreaming.py +0 -0
  2091. {loopx-1.3.1 → loopx-1.4.0}/loopx/dsh_goal_mode/README.md +0 -0
  2092. {loopx-1.3.1 → loopx-1.4.0}/loopx/dsh_goal_mode/__init__.py +0 -0
  2093. {loopx-1.3.1 → loopx-1.4.0}/loopx/dsh_goal_mode/__main__.py +0 -0
  2094. {loopx-1.3.1 → loopx-1.4.0}/loopx/dsh_goal_mode/host_failure_map.py +0 -0
  2095. {loopx-1.3.1 → loopx-1.4.0}/loopx/dsh_goal_mode/turn_host_adapter.py +0 -0
  2096. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/README.md +0 -0
  2097. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/__init__.py +0 -0
  2098. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/planner_worker/__init__.py +0 -0
  2099. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/planner_worker/contract.py +0 -0
  2100. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/planner_worker/runtime.py +0 -0
  2101. {loopx-1.3.1 → loopx-1.4.0}/loopx/experiments/planner_worker/traex.py +0 -0
  2102. {loopx-1.3.1 → loopx-1.4.0}/loopx/explore_graph.py +0 -0
  2103. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/__init__.py +0 -0
  2104. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/bundled.py +0 -0
  2105. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/capability_admission.py +0 -0
  2106. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/codex_native_child.py +0 -0
  2107. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/entrypoint_surface.py +0 -0
  2108. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/execution_envelope.py +0 -0
  2109. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/external_connector_provider.py +0 -0
  2110. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/external_connector_runtime.py +0 -0
  2111. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/governed_capability_execution.py +0 -0
  2112. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/hook_adapters.py +0 -0
  2113. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/__init__.py +0 -0
  2114. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/app_setup.py +0 -0
  2115. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/card_callback.py +0 -0
  2116. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/cli_resolution.py +0 -0
  2117. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/docs/lark-event-inbox.md +0 -0
  2118. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/docs/owner-controlled-bots.md +0 -0
  2119. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/document_comment_provider.py +0 -0
  2120. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/event_collector.py +0 -0
  2121. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/event_collector_routes.py +0 -0
  2122. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/event_collector_runtime.py +0 -0
  2123. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/event_inbox.py +0 -0
  2124. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/extension.toml +0 -0
  2125. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel.py +0 -0
  2126. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_blocked_notice.py +0 -0
  2127. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_contracts.py +0 -0
  2128. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_lifecycle.py +0 -0
  2129. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_message_delivery.py +0 -0
  2130. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_notice.py +0 -0
  2131. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_notification.py +0 -0
  2132. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_operation.py +0 -0
  2133. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_runtime.py +0 -0
  2134. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_setup.py +0 -0
  2135. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_channel_targets.py +0 -0
  2136. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_batch.py +0 -0
  2137. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_connections.py +0 -0
  2138. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_edit.py +0 -0
  2139. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_inbox.py +0 -0
  2140. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_routing.py +0 -0
  2141. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/goal_topic_runtime_service.py +0 -0
  2142. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/group_history_cursor.py +0 -0
  2143. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/inbox_reactions.py +0 -0
  2144. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/manager_context.py +0 -0
  2145. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/manager_reply_delivery.py +0 -0
  2146. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/manager_reply_format.py +0 -0
  2147. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/manager_reply_parts.py +0 -0
  2148. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/manager_routing.py +0 -0
  2149. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/miaoda_report.py +0 -0
  2150. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/periodic_report_cli.py +0 -0
  2151. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/periodic_report_delivery.py +0 -0
  2152. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/periodic_report_request.py +0 -0
  2153. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/__init__.py +0 -0
  2154. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_results.py +0 -0
  2155. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_singleflight.py +0 -0
  2156. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_source_guard.py +0 -0
  2157. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_stage_document.py +0 -0
  2158. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_visual_integrity.py +0 -0
  2159. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_visual_readback.py +0 -0
  2160. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/explore_visual_styles.py +0 -0
  2161. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/issue_fix_surface.py +0 -0
  2162. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/kanban.py +0 -0
  2163. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/message_card.py +0 -0
  2164. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/periodic_report.py +0 -0
  2165. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/projection_rows.py +0 -0
  2166. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/record_io.py +0 -0
  2167. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/sink_visibility.py +0 -0
  2168. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/sync_receipt.py +0 -0
  2169. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/presentation/team_plan.py +0 -0
  2170. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/private_images.py +0 -0
  2171. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/private_json.py +0 -0
  2172. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/provider.py +0 -0
  2173. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/reviewer_notification.py +0 -0
  2174. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/routed_inbox.py +0 -0
  2175. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/team_plan_confirmation.py +0 -0
  2176. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/lark/turn_start_sync.py +0 -0
  2177. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/manifest.py +0 -0
  2178. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_periodic_report/__init__.py +0 -0
  2179. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_periodic_report/activation.py +0 -0
  2180. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_periodic_report/extension.toml +0 -0
  2181. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_periodic_report/sink.py +0 -0
  2182. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_semantic_preference/__init__.py +0 -0
  2183. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_semantic_preference/extension.toml +0 -0
  2184. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/openviking_semantic_preference/project_peer.py +0 -0
  2185. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/presentation.py +0 -0
  2186. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/public_github_research.py +0 -0
  2187. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/readiness.py +0 -0
  2188. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/runtime.py +0 -0
  2189. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/runtime_location.py +0 -0
  2190. {loopx-1.3.1 → loopx-1.4.0}/loopx/extensions/scaffold.py +0 -0
  2191. {loopx-1.3.1 → loopx-1.4.0}/loopx/global_risks.py +0 -0
  2192. {loopx-1.3.1 → loopx-1.4.0}/loopx/global_todos.py +0 -0
  2193. {loopx-1.3.1 → loopx-1.4.0}/loopx/goal_mode_context.py +0 -0
  2194. {loopx-1.3.1 → loopx-1.4.0}/loopx/goal_mode_mcp.py +0 -0
  2195. {loopx-1.3.1 → loopx-1.4.0}/loopx/handoff_budget.py +0 -0
  2196. {loopx-1.3.1 → loopx-1.4.0}/loopx/heartbeat_prompt.py +0 -0
  2197. {loopx-1.3.1 → loopx-1.4.0}/loopx/help_surface.py +0 -0
  2198. {loopx-1.3.1 → loopx-1.4.0}/loopx/host_loop_activation.py +0 -0
  2199. {loopx-1.3.1 → loopx-1.4.0}/loopx/host_loop_activation_skill_facade.py +0 -0
  2200. {loopx-1.3.1 → loopx-1.4.0}/loopx/host_mode_planner.py +0 -0
  2201. {loopx-1.3.1 → loopx-1.4.0}/loopx/install_contract.py +0 -0
  2202. {loopx-1.3.1 → loopx-1.4.0}/loopx/interface_budget.py +0 -0
  2203. {loopx-1.3.1 → loopx-1.4.0}/loopx/kiro_cli_goal_mode/README.md +0 -0
  2204. {loopx-1.3.1 → loopx-1.4.0}/loopx/kiro_cli_goal_mode/__init__.py +0 -0
  2205. {loopx-1.3.1 → loopx-1.4.0}/loopx/kiro_cli_goal_mode/mcp_server.py +0 -0
  2206. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/README.md +0 -0
  2207. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/__init__.py +0 -0
  2208. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/app_server.py +0 -0
  2209. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/cli.py +0 -0
  2210. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/context.py +0 -0
  2211. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/control_plane.py +0 -0
  2212. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/guards.py +0 -0
  2213. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/runtime.py +0 -0
  2214. {loopx-1.3.1 → loopx-1.4.0}/loopx/kunluncode_goal_mode/server.py +0 -0
  2215. {loopx-1.3.1 → loopx-1.4.0}/loopx/lexical_retrieval.py +0 -0
  2216. {loopx-1.3.1 → loopx-1.4.0}/loopx/long_task_cadence.py +0 -0
  2217. {loopx-1.3.1 → loopx-1.4.0}/loopx/materials.py +0 -0
  2218. {loopx-1.3.1 → loopx-1.4.0}/loopx/ml_experiment.py +0 -0
  2219. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode2_goal_mode/README.md +0 -0
  2220. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode2_goal_mode/__init__.py +0 -0
  2221. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode2_goal_mode/opencode2-goal-worker.mjs +0 -0
  2222. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode_goal_mode/README.md +0 -0
  2223. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode_goal_mode/__init__.py +0 -0
  2224. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode_goal_mode/goal-bridge-runtime.mjs +0 -0
  2225. {loopx-1.3.1 → loopx-1.4.0}/loopx/opencode_goal_mode/loopx-goal.js +0 -0
  2226. {loopx-1.3.1 → loopx-1.4.0}/loopx/pi_goal_mode/README.md +0 -0
  2227. {loopx-1.3.1 → loopx-1.4.0}/loopx/pi_goal_mode/__init__.py +0 -0
  2228. {loopx-1.3.1 → loopx-1.4.0}/loopx/pi_goal_mode/installation.py +0 -0
  2229. {loopx-1.3.1 → loopx-1.4.0}/loopx/pi_goal_mode/loopx-goal.ts +0 -0
  2230. {loopx-1.3.1 → loopx-1.4.0}/loopx/pi_goal_mode/pi-goal-loop-runtime.mjs +0 -0
  2231. {loopx-1.3.1 → loopx-1.4.0}/loopx/pr_review_merge_readiness.py +0 -0
  2232. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/__init__.py +0 -0
  2233. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/chat_bundle.py +0 -0
  2234. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/configuration_backup_api.py +0 -0
  2235. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/explore_views.py +0 -0
  2236. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/goal_ownership_api.py +0 -0
  2237. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/markdown.py +0 -0
  2238. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/projection_source_reconcile.py +0 -0
  2239. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/projections/__init__.py +0 -0
  2240. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/projections/session_dash.py +0 -0
  2241. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/__init__.py +0 -0
  2242. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/goal_acceptance_observation_markdown.py +0 -0
  2243. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/goal_artifact_lifecycle_markdown.py +0 -0
  2244. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/goal_channel_html.py +0 -0
  2245. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/periodic_report_html.py +0 -0
  2246. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/periodic_report_markdown.py +0 -0
  2247. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/quota_event_markdown.py +0 -0
  2248. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/reward_memory_markdown.py +0 -0
  2249. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/session_dash_html.py +0 -0
  2250. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/status_markdown.py +0 -0
  2251. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/renderers/trajectory_hygiene_markdown.py +0 -0
  2252. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/sinks/__init__.py +0 -0
  2253. {loopx-1.3.1 → loopx-1.4.0}/loopx/presentation/sinks/openviking_periodic_report.py +0 -0
  2254. {loopx-1.3.1 → loopx-1.4.0}/loopx/presets.py +0 -0
  2255. {loopx-1.3.1 → loopx-1.4.0}/loopx/project_alias.py +0 -0
  2256. {loopx-1.3.1 → loopx-1.4.0}/loopx/project_map.py +0 -0
  2257. {loopx-1.3.1 → loopx-1.4.0}/loopx/promotion_gate.py +0 -0
  2258. {loopx-1.3.1 → loopx-1.4.0}/loopx/ready_score.py +0 -0
  2259. {loopx-1.3.1 → loopx-1.4.0}/loopx/reasoning_effort.py +0 -0
  2260. {loopx-1.3.1 → loopx-1.4.0}/loopx/registry.py +0 -0
  2261. {loopx-1.3.1 → loopx-1.4.0}/loopx/registry_writability.py +0 -0
  2262. {loopx-1.3.1 → loopx-1.4.0}/loopx/release_candidate.py +0 -0
  2263. {loopx-1.3.1 → loopx-1.4.0}/loopx/release_manifest.py +0 -0
  2264. {loopx-1.3.1 → loopx-1.4.0}/loopx/repository_identity.py +0 -0
  2265. {loopx-1.3.1 → loopx-1.4.0}/loopx/review_packet.py +0 -0
  2266. {loopx-1.3.1 → loopx-1.4.0}/loopx/self_update_download.py +0 -0
  2267. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/__init__.py +0 -0
  2268. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/consumer_report.py +0 -0
  2269. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/field_use.py +0 -0
  2270. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/goal_instance_binding_inventory_v1.json +0 -0
  2271. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/incident_v0.json +0 -0
  2272. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/inventory.py +0 -0
  2273. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/production.py +0 -0
  2274. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/project_registry_io.py +0 -0
  2275. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/python_production.py +0 -0
  2276. {loopx-1.3.1 → loopx-1.4.0}/loopx/semantics/turn_contract_witness.py +0 -0
  2277. {loopx-1.3.1 → loopx-1.4.0}/loopx/session_runtime.py +0 -0
  2278. {loopx-1.3.1 → loopx-1.4.0}/loopx/skill_install_readback.py +0 -0
  2279. {loopx-1.3.1 → loopx-1.4.0}/loopx/slash_command_files.py +0 -0
  2280. {loopx-1.3.1 → loopx-1.4.0}/loopx/slash_commands.py +0 -0
  2281. {loopx-1.3.1 → loopx-1.4.0}/loopx/state_projection.py +0 -0
  2282. {loopx-1.3.1 → loopx-1.4.0}/loopx/status_server.py +0 -0
  2283. {loopx-1.3.1 → loopx-1.4.0}/loopx/summary_all.py +0 -0
  2284. {loopx-1.3.1 → loopx-1.4.0}/loopx/thread_agent_binding.py +0 -0
  2285. {loopx-1.3.1 → loopx-1.4.0}/loopx/turn_identity.py +0 -0
  2286. {loopx-1.3.1 → loopx-1.4.0}/loopx/usage_goal.py +0 -0
  2287. {loopx-1.3.1 → loopx-1.4.0}/loopx/usage_ping.py +0 -0
  2288. {loopx-1.3.1 → loopx-1.4.0}/loopx/visible_governance.py +0 -0
  2289. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2 +0 -0
  2290. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2 +0 -0
  2291. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2 +0 -0
  2292. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-latin-wght-normal-BgDaEnEv.woff2 +0 -0
  2293. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2 +0 -0
  2294. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2 +0 -0
  2295. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2 +0 -0
  2296. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2 +0 -0
  2297. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2 +0 -0
  2298. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2 +0 -0
  2299. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2 +0 -0
  2300. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/index-nrFgbJ8f.js +0 -0
  2301. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/index-u-XMM_oz.css +0 -0
  2302. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/assets/performance-diagnosis-worker-CH0503IW.js +0 -0
  2303. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/manifest.webmanifest +0 -0
  2304. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/pwa/icon-192.png +0 -0
  2305. {loopx-1.3.1 → loopx-1.4.0}/loopx/web/chat/pwa/icon-512.png +0 -0
  2306. {loopx-1.3.1 → loopx-1.4.0}/loopx/zcode_goal_mode/README.md +0 -0
  2307. {loopx-1.3.1 → loopx-1.4.0}/loopx/zcode_goal_mode/__init__.py +0 -0
  2308. {loopx-1.3.1 → loopx-1.4.0}/loopx.egg-info/dependency_links.txt +0 -0
  2309. {loopx-1.3.1 → loopx-1.4.0}/loopx.egg-info/entry_points.txt +0 -0
  2310. {loopx-1.3.1 → loopx-1.4.0}/loopx.egg-info/top_level.txt +0 -0
  2311. {loopx-1.3.1 → loopx-1.4.0}/setup.cfg +0 -0
  2312. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-benchmark/.loopx-skill-scope +0 -0
  2313. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-change-quality/.loopx-skill-scope +0 -0
  2314. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-change-quality/agents/openai.yaml +0 -0
  2315. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-doc-registry/.loopx-skill-scope +0 -0
  2316. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-doc-registry/SKILL.md +0 -0
  2317. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-doc-registry/agents/openai.yaml +0 -0
  2318. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-material/.loopx-skill-scope +0 -0
  2319. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-material/SKILL.md +0 -0
  2320. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-material/agents/openai.yaml +0 -0
  2321. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-performance-diagnosis/.loopx-skill-scope +0 -0
  2322. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-program/.loopx-skill-scope +0 -0
  2323. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-program/SKILL.md +0 -0
  2324. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-program/agents/openai.yaml +0 -0
  2325. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-program/references/snapshot-contract.md +0 -0
  2326. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-program/scripts/diff_snapshot.py +0 -0
  2327. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-review/.loopx-skill-scope +0 -0
  2328. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-pr-review/agents/openai.yaml +0 -0
  2329. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-project/.loopx-skill-scope +0 -0
  2330. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-project/SKILL.md +0 -0
  2331. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-project/agents/openai.yaml +0 -0
  2332. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/.loopx-skill-scope +0 -0
  2333. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/SKILL.md +0 -0
  2334. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/agents/openai.yaml +0 -0
  2335. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/references/pattern-lookup.md +0 -0
  2336. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/references/targeted-diagnostics.md +0 -0
  2337. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/references/upstream-issue-escalation.md +0 -0
  2338. {loopx-1.3.1 → loopx-1.4.0}/skills/loopx-self-repair/scripts/find_pattern.py +0 -0
  2339. {loopx-1.3.1 → loopx-1.4.0}/tests/test_agent_onboarding_pi_host.py +0 -0
  2340. {loopx-1.3.1 → loopx-1.4.0}/tests/test_agent_onboarding_unconnected_project.py +0 -0
  2341. {loopx-1.3.1 → loopx-1.4.0}/tests/test_agy_host_surface.py +0 -0
  2342. {loopx-1.3.1 → loopx-1.4.0}/tests/test_ark_managed_agent_issue_fix_matrix.py +0 -0
  2343. {loopx-1.3.1 → loopx-1.4.0}/tests/test_attached_session_broker.py +0 -0
  2344. {loopx-1.3.1 → loopx-1.4.0}/tests/test_attached_session_cli.py +0 -0
  2345. {loopx-1.3.1 → loopx-1.4.0}/tests/test_attached_session_goal_instance.py +0 -0
  2346. {loopx-1.3.1 → loopx-1.4.0}/tests/test_auto_research_artifact_receipt.py +0 -0
  2347. {loopx-1.3.1 → loopx-1.4.0}/tests/test_auto_research_control.py +0 -0
  2348. {loopx-1.3.1 → loopx-1.4.0}/tests/test_capability_code_maps.py +0 -0
  2349. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_codex_goal.py +0 -0
  2350. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_delegation_wake.py +0 -0
  2351. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_delegation_wake_scope.py +0 -0
  2352. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_dsh_adapter.py +0 -0
  2353. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_event_buffer.py +0 -0
  2354. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_event_cursor.py +0 -0
  2355. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_event_retention.py +0 -0
  2356. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_executor_profile.py +0 -0
  2357. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_goal_configuration_api.py +0 -0
  2358. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_goal_draft.py +0 -0
  2359. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_image_attachments.py +0 -0
  2360. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_image_http.py +0 -0
  2361. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_lark_api_contract.py +0 -0
  2362. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_manager_report.py +0 -0
  2363. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_server_cors.py +0 -0
  2364. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_startup_isolation.py +0 -0
  2365. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_store_input_validation.py +0 -0
  2366. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_team_evidence.py +0 -0
  2367. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_team_plan_action.py +0 -0
  2368. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_todo_priority.py +0 -0
  2369. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_turn_steering.py +0 -0
  2370. {loopx-1.3.1 → loopx-1.4.0}/tests/test_chat_turn_wait.py +0 -0
  2371. {loopx-1.3.1 → loopx-1.4.0}/tests/test_ci_resource_policy.py +0 -0
  2372. {loopx-1.3.1 → loopx-1.4.0}/tests/test_claude_goal_release_qualification.py +0 -0
  2373. {loopx-1.3.1 → loopx-1.4.0}/tests/test_cli_argument_diagnostics.py +0 -0
  2374. {loopx-1.3.1 → loopx-1.4.0}/tests/test_cli_entrypoint.py +0 -0
  2375. {loopx-1.3.1 → loopx-1.4.0}/tests/test_codeowners.py +0 -0
  2376. {loopx-1.3.1 → loopx-1.4.0}/tests/test_codex_operation_host.py +0 -0
  2377. {loopx-1.3.1 → loopx-1.4.0}/tests/test_collaboration_demo.py +0 -0
  2378. {loopx-1.3.1 → loopx-1.4.0}/tests/test_collaboration_mcp.py +0 -0
  2379. {loopx-1.3.1 → loopx-1.4.0}/tests/test_collaboration_sidecar_scan.py +0 -0
  2380. {loopx-1.3.1 → loopx-1.4.0}/tests/test_command_invocation.py +0 -0
  2381. {loopx-1.3.1 → loopx-1.4.0}/tests/test_configuration_backup.py +0 -0
  2382. {loopx-1.3.1 → loopx-1.4.0}/tests/test_content_ops_item_lifecycle.py +0 -0
  2383. {loopx-1.3.1 → loopx-1.4.0}/tests/test_content_ops_lifecycle.py +0 -0
  2384. {loopx-1.3.1 → loopx-1.4.0}/tests/test_content_ops_queue_status.py +0 -0
  2385. {loopx-1.3.1 → loopx-1.4.0}/tests/test_context_handoff_publication.py +0 -0
  2386. {loopx-1.3.1 → loopx-1.4.0}/tests/test_contract_credential_pattern_precision.py +0 -0
  2387. {loopx-1.3.1 → loopx-1.4.0}/tests/test_contract_scan_missing_roots.py +0 -0
  2388. {loopx-1.3.1 → loopx-1.4.0}/tests/test_contributing_guide.py +0 -0
  2389. {loopx-1.3.1 → loopx-1.4.0}/tests/test_dashboard_command.py +0 -0
  2390. {loopx-1.3.1 → loopx-1.4.0}/tests/test_dco_workflow.py +0 -0
  2391. {loopx-1.3.1 → loopx-1.4.0}/tests/test_decision_context_material.py +0 -0
  2392. {loopx-1.3.1 → loopx-1.4.0}/tests/test_deepresearch_command.py +0 -0
  2393. {loopx-1.3.1 → loopx-1.4.0}/tests/test_default_public_scan_root.py +0 -0
  2394. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_acceptance_diagnostics.py +0 -0
  2395. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_authority_recheck.py +0 -0
  2396. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_cli.py +0 -0
  2397. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_inventory.py +0 -0
  2398. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_lease_lifetime.py +0 -0
  2399. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_preview_reuse.py +0 -0
  2400. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delegation_stop_nested_host.py +0 -0
  2401. {loopx-1.3.1 → loopx-1.4.0}/tests/test_delivery_review.py +0 -0
  2402. {loopx-1.3.1 → loopx-1.4.0}/tests/test_dependency_security_boundaries.py +0 -0
  2403. {loopx-1.3.1 → loopx-1.4.0}/tests/test_desktop_installation.py +0 -0
  2404. {loopx-1.3.1 → loopx-1.4.0}/tests/test_dev_book_reader_checkpoints.py +0 -0
  2405. {loopx-1.3.1 → loopx-1.4.0}/tests/test_distribution_runtime_identity.py +0 -0
  2406. {loopx-1.3.1 → loopx-1.4.0}/tests/test_doctor_git_encoding.py +0 -0
  2407. {loopx-1.3.1 → loopx-1.4.0}/tests/test_doctor_install_freshness.py +0 -0
  2408. {loopx-1.3.1 → loopx-1.4.0}/tests/test_doctor_promotion_readiness.py +0 -0
  2409. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_counterfactual_runtime.py +0 -0
  2410. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_episode_runtime.py +0 -0
  2411. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_monitor_lane_budget.py +0 -0
  2412. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_owner_board_views.py +0 -0
  2413. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_presentation_views.py +0 -0
  2414. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_replay_compatibility.py +0 -0
  2415. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_resource_portfolio.py +0 -0
  2416. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_router_acceptance.py +0 -0
  2417. {loopx-1.3.1 → loopx-1.4.0}/tests/test_explore_worker_topic_affinity.py +0 -0
  2418. {loopx-1.3.1 → loopx-1.4.0}/tests/test_external_scheduler_worker.py +0 -0
  2419. {loopx-1.3.1 → loopx-1.4.0}/tests/test_feedback_goal_id_validation.py +0 -0
  2420. {loopx-1.3.1 → loopx-1.4.0}/tests/test_feedback_run_selection.py +0 -0
  2421. {loopx-1.3.1 → loopx-1.4.0}/tests/test_file_lock_cross_process.py +0 -0
  2422. {loopx-1.3.1 → loopx-1.4.0}/tests/test_gemini_cursor_host_surfaces.py +0 -0
  2423. {loopx-1.3.1 → loopx-1.4.0}/tests/test_global_risks.py +0 -0
  2424. {loopx-1.3.1 → loopx-1.4.0}/tests/test_global_todos.py +0 -0
  2425. {loopx-1.3.1 → loopx-1.4.0}/tests/test_goal_acceptance_contract_rendering.py +0 -0
  2426. {loopx-1.3.1 → loopx-1.4.0}/tests/test_goal_mode_mcp_completion_validation.py +0 -0
  2427. {loopx-1.3.1 → loopx-1.4.0}/tests/test_goal_mode_mcp_settlement.py +0 -0
  2428. {loopx-1.3.1 → loopx-1.4.0}/tests/test_handoff_fragments.py +0 -0
  2429. {loopx-1.3.1 → loopx-1.4.0}/tests/test_handoff_receiver.py +0 -0
  2430. {loopx-1.3.1 → loopx-1.4.0}/tests/test_history_artifact_observation.py +0 -0
  2431. {loopx-1.3.1 → loopx-1.4.0}/tests/test_history_chronology.py +0 -0
  2432. {loopx-1.3.1 → loopx-1.4.0}/tests/test_history_index_write_serialization.py +0 -0
  2433. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_loop_activation.py +0 -0
  2434. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_loop_runtime_parity.py +0 -0
  2435. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_mode_planner.py +0 -0
  2436. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_parity_smoke.py +0 -0
  2437. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_poll_receipts.py +0 -0
  2438. {loopx-1.3.1 → loopx-1.4.0}/tests/test_host_vision_recovery.py +0 -0
  2439. {loopx-1.3.1 → loopx-1.4.0}/tests/test_inbox_pagination.py +0 -0
  2440. {loopx-1.3.1 → loopx-1.4.0}/tests/test_inbox_receipt_recovery.py +0 -0
  2441. {loopx-1.3.1 → loopx-1.4.0}/tests/test_independent_delegation_validation.py +0 -0
  2442. {loopx-1.3.1 → loopx-1.4.0}/tests/test_install_copy_fallback.py +0 -0
  2443. {loopx-1.3.1 → loopx-1.4.0}/tests/test_kiro_cli_host_surface.py +0 -0
  2444. {loopx-1.3.1 → loopx-1.4.0}/tests/test_kiro_cli_mcp.py +0 -0
  2445. {loopx-1.3.1 → loopx-1.4.0}/tests/test_lark_private_compatibility.py +0 -0
  2446. {loopx-1.3.1 → loopx-1.4.0}/tests/test_lark_private_images.py +0 -0
  2447. {loopx-1.3.1 → loopx-1.4.0}/tests/test_lark_private_timeouts.py +0 -0
  2448. {loopx-1.3.1 → loopx-1.4.0}/tests/test_lexical_retrieval.py +0 -0
  2449. {loopx-1.3.1 → loopx-1.4.0}/tests/test_license_metadata.py +0 -0
  2450. {loopx-1.3.1 → loopx-1.4.0}/tests/test_local_delegation.py +0 -0
  2451. {loopx-1.3.1 → loopx-1.4.0}/tests/test_local_state_migration.py +0 -0
  2452. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_launcher_python_selection.py +0 -0
  2453. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_text_io_utf8.py +0 -0
  2454. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_error_readback.py +0 -0
  2455. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_host_failure.py +0 -0
  2456. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_managed_step.py +0 -0
  2457. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_settlement_parity.py +0 -0
  2458. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_settlement_recovery.py +0 -0
  2459. {loopx-1.3.1 → loopx-1.4.0}/tests/test_loopx_turn_transaction.py +0 -0
  2460. {loopx-1.3.1 → loopx-1.4.0}/tests/test_managed_research_scenario.py +0 -0
  2461. {loopx-1.3.1 → loopx-1.4.0}/tests/test_managed_research_team.py +0 -0
  2462. {loopx-1.3.1 → loopx-1.4.0}/tests/test_manager_channel_binding.py +0 -0
  2463. {loopx-1.3.1 → loopx-1.4.0}/tests/test_manager_context_tracking.py +0 -0
  2464. {loopx-1.3.1 → loopx-1.4.0}/tests/test_manager_team_plan_guidance.py +0 -0
  2465. {loopx-1.3.1 → loopx-1.4.0}/tests/test_ml_experiment_volc_packet.py +0 -0
  2466. {loopx-1.3.1 → loopx-1.4.0}/tests/test_native_goal_release_qualification.py +0 -0
  2467. {loopx-1.3.1 → loopx-1.4.0}/tests/test_native_steward_ingress.py +0 -0
  2468. {loopx-1.3.1 → loopx-1.4.0}/tests/test_nokv_jsonl_helper.py +0 -0
  2469. {loopx-1.3.1 → loopx-1.4.0}/tests/test_opencode2_goal_worker.py +0 -0
  2470. {loopx-1.3.1 → loopx-1.4.0}/tests/test_opencode_goal_bridge.py +0 -0
  2471. {loopx-1.3.1 → loopx-1.4.0}/tests/test_packaged_skill_metadata.py +0 -0
  2472. {loopx-1.3.1 → loopx-1.4.0}/tests/test_pi_goal_mode.py +0 -0
  2473. {loopx-1.3.1 → loopx-1.4.0}/tests/test_postgresql_integration_workflow.py +0 -0
  2474. {loopx-1.3.1 → loopx-1.4.0}/tests/test_pr_program_snapshot.py +0 -0
  2475. {loopx-1.3.1 → loopx-1.4.0}/tests/test_pr_program_snapshot_diff.py +0 -0
  2476. {loopx-1.3.1 → loopx-1.4.0}/tests/test_project_lifecycle_refresh_state_ownership.py +0 -0
  2477. {loopx-1.3.1 → loopx-1.4.0}/tests/test_project_organization_identity.py +0 -0
  2478. {loopx-1.3.1 → loopx-1.4.0}/tests/test_project_skill_cli.py +0 -0
  2479. {loopx-1.3.1 → loopx-1.4.0}/tests/test_projection_envelope.py +0 -0
  2480. {loopx-1.3.1 → loopx-1.4.0}/tests/test_public_package_lock_boundary.py +0 -0
  2481. {loopx-1.3.1 → loopx-1.4.0}/tests/test_python_discovery.py +0 -0
  2482. {loopx-1.3.1 → loopx-1.4.0}/tests/test_register_agent_fresh_identity.py +0 -0
  2483. {loopx-1.3.1 → loopx-1.4.0}/tests/test_registry_git_probe.py +0 -0
  2484. {loopx-1.3.1 → loopx-1.4.0}/tests/test_release_candidate.py +0 -0
  2485. {loopx-1.3.1 → loopx-1.4.0}/tests/test_release_smoke_archive_helpers.py +0 -0
  2486. {loopx-1.3.1 → loopx-1.4.0}/tests/test_repair_pattern_lookup.py +0 -0
  2487. {loopx-1.3.1 → loopx-1.4.0}/tests/test_repository_identity.py +0 -0
  2488. {loopx-1.3.1 → loopx-1.4.0}/tests/test_review_sla_report.py +0 -0
  2489. {loopx-1.3.1 → loopx-1.4.0}/tests/test_reward_memory_pipeline.py +0 -0
  2490. {loopx-1.3.1 → loopx-1.4.0}/tests/test_rollout_event_log_loading.py +0 -0
  2491. {loopx-1.3.1 → loopx-1.4.0}/tests/test_runtime_subprocess_utf8.py +0 -0
  2492. {loopx-1.3.1 → loopx-1.4.0}/tests/test_scheduler_native_launcher.py +0 -0
  2493. {loopx-1.3.1 → loopx-1.4.0}/tests/test_self_update_download.py +0 -0
  2494. {loopx-1.3.1 → loopx-1.4.0}/tests/test_session_runtime_key_classification.py +0 -0
  2495. {loopx-1.3.1 → loopx-1.4.0}/tests/test_skill_delivery_parity.py +0 -0
  2496. {loopx-1.3.1 → loopx-1.4.0}/tests/test_skill_discovery_reconciliation.py +0 -0
  2497. {loopx-1.3.1 → loopx-1.4.0}/tests/test_smoke_suite.py +0 -0
  2498. {loopx-1.3.1 → loopx-1.4.0}/tests/test_sonarcloud_workflow.py +0 -0
  2499. {loopx-1.3.1 → loopx-1.4.0}/tests/test_ssh_tunnel_source.py +0 -0
  2500. {loopx-1.3.1 → loopx-1.4.0}/tests/test_state_file_containment.py +0 -0
  2501. {loopx-1.3.1 → loopx-1.4.0}/tests/test_state_migration.py +0 -0
  2502. {loopx-1.3.1 → loopx-1.4.0}/tests/test_state_refresh_agent_lane_action.py +0 -0
  2503. {loopx-1.3.1 → loopx-1.4.0}/tests/test_state_refresh_projections.py +0 -0
  2504. {loopx-1.3.1 → loopx-1.4.0}/tests/test_status_server_cors.py +0 -0
  2505. {loopx-1.3.1 → loopx-1.4.0}/tests/test_status_server_extension_projection.py +0 -0
  2506. {loopx-1.3.1 → loopx-1.4.0}/tests/test_status_server_fast_path.py +0 -0
  2507. {loopx-1.3.1 → loopx-1.4.0}/tests/test_status_server_periodic_report_workspace.py +0 -0
  2508. {loopx-1.3.1 → loopx-1.4.0}/tests/test_status_server_ssh_hosts.py +0 -0
  2509. {loopx-1.3.1 → loopx-1.4.0}/tests/test_steward_team_plan_preview.py +0 -0
  2510. {loopx-1.3.1 → loopx-1.4.0}/tests/test_subagent_host_adapter.py +0 -0
  2511. {loopx-1.3.1 → loopx-1.4.0}/tests/test_summary_all.py +0 -0
  2512. {loopx-1.3.1 → loopx-1.4.0}/tests/test_support_control_promotion_ownership.py +0 -0
  2513. {loopx-1.3.1 → loopx-1.4.0}/tests/test_support_control_update_ownership.py +0 -0
  2514. {loopx-1.3.1 → loopx-1.4.0}/tests/test_task_lease_worktree.py +0 -0
  2515. {loopx-1.3.1 → loopx-1.4.0}/tests/test_thread_agent_binding.py +0 -0
  2516. {loopx-1.3.1 → loopx-1.4.0}/tests/test_todo_write_serialization.py +0 -0
  2517. {loopx-1.3.1 → loopx-1.4.0}/tests/test_trajectory_hygiene.py +0 -0
  2518. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_default_host_binding.py +0 -0
  2519. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_lane_fence.py +0 -0
  2520. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_loop_disposition.py +0 -0
  2521. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_machine_credential.py +0 -0
  2522. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_managed_executor_binding.py +0 -0
  2523. {loopx-1.3.1 → loopx-1.4.0}/tests/test_turn_route_action_classification.py +0 -0
  2524. {loopx-1.3.1 → loopx-1.4.0}/tests/test_usage_collector.py +0 -0
  2525. {loopx-1.3.1 → loopx-1.4.0}/tests/test_usage_goal.py +0 -0
  2526. {loopx-1.3.1 → loopx-1.4.0}/tests/test_usage_ping.py +0 -0
  2527. {loopx-1.3.1 → loopx-1.4.0}/tests/test_visible_goal_terminal_settlement.py +0 -0
  2528. {loopx-1.3.1 → loopx-1.4.0}/tests/test_windows_atomic_writes.py +0 -0
  2529. {loopx-1.3.1 → loopx-1.4.0}/tests/test_worker_command_validation.py +0 -0
  2530. {loopx-1.3.1 → loopx-1.4.0}/tests/test_zcode_host_surface.py +0 -0
loopx-1.4.0/PKG-INFO ADDED
@@ -0,0 +1,855 @@
1
+ Metadata-Version: 2.4
2
+ Name: loopx
3
+ Version: 1.4.0
4
+ Summary: A Loop Engineering control plane for long-running agent goals (requires Node.js 22.22.3+).
5
+ Author: LoopX contributors
6
+ License-Expression: Apache-2.0
7
+ Project-URL: Homepage, https://loopx-project.github.io/loopx/
8
+ Project-URL: Documentation, https://loopx-project.github.io/loopx/docs/
9
+ Project-URL: Repository, https://github.com/loopx-project/loopx
10
+ Project-URL: Issues, https://github.com/loopx-project/loopx/issues
11
+ Project-URL: Changelog, https://github.com/loopx-project/loopx/releases
12
+ Requires-Python: >=3.11
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ License-File: NOTICE
16
+ License-File: LICENSE-MIT
17
+ Provides-Extra: ego-source-reader
18
+ Requires-Dist: mcp==1.28.1; extra == "ego-source-reader"
19
+ Provides-Extra: public-source-reader
20
+ Requires-Dist: mcp==1.28.1; extra == "public-source-reader"
21
+ Requires-Dist: resvg-py==0.5.0; extra == "public-source-reader"
22
+ Requires-Dist: defusedxml==0.7.1; extra == "public-source-reader"
23
+ Requires-Dist: pillow<13,>=11; extra == "public-source-reader"
24
+ Provides-Extra: deepseek-harness
25
+ Requires-Dist: deepseek-harness-sdk==0.1.5rc1; extra == "deepseek-harness"
26
+ Provides-Extra: test
27
+ Requires-Dist: resvg-py==0.5.0; extra == "test"
28
+ Requires-Dist: defusedxml==0.7.1; extra == "test"
29
+ Requires-Dist: pillow<13,>=11; extra == "test"
30
+ Requires-Dist: jsonschema<5,>=4.23; extra == "test"
31
+ Requires-Dist: mcp==1.28.1; extra == "test"
32
+ Requires-Dist: pyyaml<7,>=6; extra == "test"
33
+ Requires-Dist: types-jsonschema<5,>=4.23; extra == "test"
34
+ Requires-Dist: pytest<10,>=9.0.3; extra == "test"
35
+ Requires-Dist: pytest-cov<7,>=5; extra == "test"
36
+ Requires-Dist: pytest-xdist<4,>=3; extra == "test"
37
+ Requires-Dist: pytest-split<0.12,>=0.11; extra == "test"
38
+ Requires-Dist: ruff<0.16,>=0.12; extra == "test"
39
+ Requires-Dist: mypy<2,>=1.18; extra == "test"
40
+ Dynamic: license-file
41
+
42
+ <div align="center">
43
+
44
+ <h1 align="center">LoopX</h1>
45
+
46
+ **Give your agents a goal. Keep the work moving.**
47
+
48
+ The open, local-first control plane for long-horizon agents and personal agent teams.<br>
49
+ <sub>Keep goals, decisions and evidence across sessions. Work with Codex, Claude Code, DeepSeek Harness and other supported runtimes.</sub>
50
+
51
+ [![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](LICENSE) [![Release](https://img.shields.io/github/v/release/loopx-project/loopx?filter=v*&display_name=tag)](https://github.com/loopx-project/loopx/releases/latest) [![GitHub contributors](https://img.shields.io/github/contributors-anon/loopx-project/loopx?color=blue)](https://github.com/loopx-project/loopx/graphs/contributors) [![Discord](https://img.shields.io/badge/Discord-Join-5865F2?logo=discord&logoColor=white)](https://discord.gg/XmGgQyCFZd) [![TypeScript core](https://img.shields.io/badge/core-TypeScript-3178C6?logo=typescript&logoColor=white)](docs/architecture/rfcs/typescript-control-plane-migration-v0.md) [![Python](https://img.shields.io/badge/python-3.11%2B-blue.svg)](pyproject.toml) [![Local first](https://img.shields.io/badge/control--plane-local--first-brightgreen.svg)](docs/public-private-boundary.md) [![Loop Agents](https://img.shields.io/badge/status-loop%20agents%20supported-brightgreen.svg)](docs/product/release-readiness.md)
52
+
53
+ <a href="https://trendshift.io/repositories/102379"><img src="https://trendshift.io/api/badge/repositories/102379" alt="loopx-project/loopx on Trendshift" width="220" height="48"></a>
54
+
55
+ [Get started](#try-loopx) · [Workspace](#meet-the-personal-agent-workspace) · [LHTB results](#lhtb-results) · [Docs](https://loopx-project.github.io/loopx/docs/) · [简体中文](README.zh-CN.md)
56
+
57
+ <a href="docs/assets/personal-workspace/loopx-dashboard-launch.mp4"><img src="docs/assets/personal-workspace/workspace-hero.webp" alt="LoopX Personal Agent Workspace: a Work map showing task dependencies, responsible agents, progress and decisions waiting for the owner" width="960"></a><br>
58
+ <sub>Source-built App on an authored <a href="demo/workspace/README.md">Workspace stories replay</a>; no live Agent execution · <a href="docs/assets/personal-workspace/loopx-dashboard-launch.mp4">watch the 32-second walkthrough</a></sub>
59
+
60
+ **Start in Codex App in two steps.** Install once:
61
+
62
+ ```bash
63
+ python3 -m pip install --upgrade loopx && loopx workflow-skills --install
64
+ ```
65
+
66
+ Restart Codex App, then type this in a thread opened on your project:
67
+
68
+ ```text
69
+ $loopx fix the open PR review feedback and keep the patch reviewable
70
+ ```
71
+
72
+ <sub>LoopX connects the project, plans the work as Todos and sets up the heartbeat that keeps it moving. Claude Code uses <code>/loopx &lt;complex task&gt;</code> · <a href="#try-loopx">other Agent hosts</a></sub>
73
+
74
+ **[LHTB](https://zli12321.github.io/LHTB/index.html) · 46 tasks · GPT-5.6 Sol:** LoopX 1.0.3 Heartbeat reaches **0.4948 mean reward** — **+17.3% vs Plain Codex**, **+10.6% vs native Codex Goal**.<br>
75
+ <sub><a href="#lhtb-results">Results and pass rates ↓</a></sub>
76
+
77
+ </div>
78
+
79
+ ---
80
+
81
+ **More verified work. Less human attention.** LoopX gives agents durable goals,
82
+ bounded continuation, peer ownership and recoverable handoffs. Your runtime
83
+ provides the model and tools; LoopX keeps track of what to do next, what is
84
+ accepted, and when to ask you.
85
+
86
+ <a id="learn-loopx"></a>
87
+
88
+ | What you want to do | Start here |
89
+ | --- | --- |
90
+ | Keep a coding or research agent working across sessions | [Install and start](#try-loopx) |
91
+ | Manage personal projects, schedules and decisions in one place | [Personal Agent Workspace](#meet-the-personal-agent-workspace) |
92
+ | Let agents collaborate and deliver verifiable results | [Agent collaboration guide](docs/product/use-cases/cross-runtime/README.md) |
93
+
94
+ ## Meet the Personal Agent Workspace
95
+
96
+ Keep long-horizon goals in one local-first workspace. Goals, attention,
97
+ conversations, tasks, files, schedules, and recovery stay durable across days,
98
+ restarts, and harnesses. Reopen a project, inspect the previous turn’s state
99
+ and evidence, and continue the next permitted action.
100
+
101
+ LoopX 1.0 brings these long-horizon control states into the Personal Workspace. It gives you one place to:
102
+
103
+ - see what needs you, what is running, what is being watched, and what is
104
+ scheduled or stopped;
105
+ - configure Goal capabilities, distinguish machine defaults from Goal overrides,
106
+ and preview changes before applying them;
107
+ - steer a live turn, queue a message, or use the async inbox from a connected
108
+ Lark conversation with explicit Goal/Agent/session routing;
109
+ - inspect deliverable files, periodic reports, and their supporting evidence;
110
+ - continue across Codex, Claude Code, direct-model, and other registered Agent
111
+ sessions without losing Goal state or evidence;
112
+ - review protected changes through typed preview, explicit confirmation, and
113
+ receipts while LoopX state—not the browser—remains authoritative.
114
+
115
+ For Manager group conversations, LoopX keeps message visibility separate from
116
+ Turn authority; see the bilingual [Lark Manager context and authority
117
+ contract](docs/reference/protocols/lark-manager-context-authority-v0.md).
118
+
119
+ ```bash
120
+ loopx dashboard
121
+ ```
122
+
123
+ `loopx dashboard` is the supported browser/PWA launch path. You can also download
124
+ native desktop previews from the [1.0 release](https://github.com/loopx-project/loopx/releases/tag/v1.0.0);
125
+ they reuse the same loopback services and Goal state. Apple Silicon macOS supports
126
+ signed App updates that pair the shell with its bundled runtime, plus repair and
127
+ recovery. Python 3.11+ is required; the App is ad-hoc signed, not notarized.
128
+ Windows preview installers currently use manual updates and a separately installed CLI.
129
+ [Desktop installation, updates, and source development](apps/desktop/loopx-control-plane/README.md).
130
+
131
+ <details>
132
+ <summary>Capability settings and reproducible workspace scenarios</summary>
133
+
134
+ <img src="docs/assets/personal-workspace/capability-1.0.webp" alt="Real Workspace recording: configure child-task capacity and allowed responsibility domains" width="960">
135
+
136
+ From a source checkout, run `python -m demo.workspace serve` to explore a community
137
+ event, a home-energy comparison, and a neighborhood website release. Each has four
138
+ work roles, 18 tasks, two decisions, and two watches. The screenshot above comes
139
+ from this reproducible workspace. [Scenarios and replay instructions](demo/workspace/README.md).
140
+
141
+ </details>
142
+
143
+ [Watch the full 32-second walkthrough](docs/assets/personal-workspace/loopx-dashboard-launch.mp4)
144
+ · [Read the workspace guide](docs/guides/personal-workspace-user-guide.md)
145
+ · [Try the five-minute tour](docs/guides/personal-workspace-trial-guide.md)
146
+
147
+ <a id="how-it-works"></a>
148
+
149
+ ## Why LoopX
150
+
151
+ An agent can finish a task in one session. Long-running work is harder:
152
+ objectives change, owner decisions appear, evidence goes stale, agents hand work
153
+ to peers, and a scheduler can keep spending after no useful transition remains.
154
+ Chat memory and a timer are not enough to govern that.
155
+
156
+ LoopX keeps the durable control state in one compact layer:
157
+
158
+ <picture>
159
+ <source media="(max-width: 640px)" srcset="docs/assets/harness-neutral.en.mobile.svg">
160
+ <img src="docs/assets/harness-neutral.en.svg" alt="Your harness runs the turn. LoopX carries the work." width="1200">
161
+ </picture>
162
+
163
+ Agent runtimes execute the work. LoopX governs the state that lets engineering,
164
+ research, discovery, and operations loops continue across runs. It is not
165
+ another agent framework or a provider-specific orchestration runtime.
166
+
167
+ <picture>
168
+ <source media="(max-width: 640px)" srcset="docs/assets/control-plane-board.en.mobile.svg">
169
+ <img src="docs/assets/control-plane-board.en.svg" alt="One turn is a governed state transition—not just a timer." width="1200">
170
+ </picture>
171
+
172
+ A useful mental model is an
173
+ **[agent-native Kanban for long-running work](docs/development/control-plane-course/00-concept-primer.md)**.
174
+ Cards carry identity, authority, evidence, and continuation. Moves are validated
175
+ operators such as claim, gate, monitor, and writeback. The board is a
176
+ projection; LoopX state remains the source of truth.
177
+
178
+ Registered agents are peers. Claims, leases, task boundaries, capabilities, and
179
+ typed continuation decide who acts next; no durable leader identity is
180
+ required.
181
+
182
+ LoopX is useful when you run:
183
+
184
+ - multi-day engineering, research, benchmark, or experiment objectives;
185
+ - issue and PR loops that must preserve scope, evidence, and review state;
186
+ - recurring heartbeat or monitor work;
187
+ - projects with owner, safety, publication, or private-data gates;
188
+ - peer-agent teams where ownership, leases, and handoff matter;
189
+ - creator, research, or operations workflows whose progress must remain
190
+ legible to a non-engineering operator.
191
+
192
+ LoopX is not an autonomous production controller. Dangerous permissions,
193
+ publishing, production writes, and final ownership stay with the human.
194
+
195
+ ### Personal Agents, Teams, and Self-Improving Workflows
196
+
197
+ [Meta Muse](https://about.fb.com/news/2026/09/introducing-muse-personal-ai-agent/)
198
+ and [Grok Bot](https://x.ai/news/introducing-grok-bot) make persistent personal
199
+ agents and delegated work a familiar product idea. LoopX approaches that space
200
+ as an open, provider-neutral control plane for agents you already run—not as a
201
+ hosted replacement for either product.
202
+
203
+ - **Personal agent:** use the shipped Workspace and connected Lark surfaces to
204
+ inspect goals, steer work and resolve decisions. The
205
+ [persistent steward and semantic handoff RFC](docs/architecture/rfcs/capable-manager-semantic-handoff-v0.md)
206
+ extends this toward one capable front door for a team; the complete journey
207
+ remains under qualification.
208
+ - **Agent team:** share goals without erasing worker ownership. Claims, evidence
209
+ and explicit returns keep implementation and review connected. See the
210
+ [three-agent collaboration demo](examples/collaboration-delivery/README.md)
211
+ for a bounded example, including corrections and two review rounds.
212
+ - **Self-improving workflows:** connect feedback to the next attempt through
213
+ [Reward Memory](loopx/capabilities/reward_memory/README.md), and evaluate
214
+ candidate changes through [Explore](loopx/capabilities/explore/README.md).
215
+ Both are optional. The link to **recursive self-improvement (RSI)** is the
216
+ engineering loop—propose, test, review, retain—not a claim that LoopX has
217
+ demonstrated autonomous model improvement or compounding capability gains.
218
+
219
+ A personal steward is an interaction role, not a second source of authority.
220
+ Background execution still needs an available host and configured runtime.
221
+ The [overall roadmap](docs/architecture/rfcs/loopx-overall-roadmap-v0.md)
222
+ separates shipped foundations from the next end-to-end acceptance milestones.
223
+
224
+ <a id="see-it-in-action"></a>
225
+
226
+ ## Evidence
227
+
228
+ <a id="lhtb-results"></a>
229
+
230
+ ### LHTB: Higher Mean Reward With the Same Model
231
+
232
+ **LoopX 1.0.3 Heartbeat reaches 0.4948 mean reward across 46 matched tasks:**
233
+ **+17.3% over Plain Codex** and **+10.6% over native Codex Goal**.
234
+ All three use GPT-5.6 Sol, max reasoning effort, and disabled Web Search.
235
+ [Long-Horizon Terminal-Bench](https://zli12321.github.io/LHTB/index.html) goes beyond coding: these tasks span research
236
+ reproduction, scientific simulation, multimodal analysis, professional
237
+ workflows, games, and systems work.
238
+
239
+ | Execution mode | Mean reward ↑ | Strict pass rate (≥0.95) | Pass rate (≥0.80) |
240
+ | --- | ---: | ---: | ---: |
241
+ | Plain Codex | 0.4218 | 7/46 (15.2%) | 12/46 (26.1%) |
242
+ | Native Codex Goal | 0.4475 | 4/46 (8.7%) | 14/46 (30.4%) |
243
+ | **LoopX 1.0.3 Heartbeat** | **0.4948** | **7/46 (15.2%)** | **15/46 (32.6%)** |
244
+
245
+ The ≥0.80 threshold is a supplementary, post-hoc view; ≥0.95 remains the
246
+ benchmark's strict solved threshold. No score in this study equals 0.80, so
247
+ these counts also match the study brief's >0.80 view.
248
+
249
+ Against native Goal, task-level rewards improve on **23**, tie on **13**, and
250
+ regress on **10** tasks. Strict solves match Plain Codex, so the mean gain is
251
+ not a claim that every task improves or that more tasks are fully solved than
252
+ Plain. Mean reward also credits partial progress.
253
+
254
+ One effective trial per task and mode; designated replacement trials and
255
+ unequal runtime/budgets, including longer budgets for some Heartbeat replacements.
256
+ These are observed system results, not an equal-budget efficiency result or
257
+ an isolated causal estimate of LoopX's effect.
258
+
259
+ [Interactive results, task comparisons and methodology](https://loopx-project.github.io/loopx/benchmarks/lhtb/)
260
+ · [Five-arm study and limits](benchmark/LHTB/studies/five-arm-gpt56sol-max/README.md)
261
+ · [Public task-level scores](benchmark/LHTB/studies/five-arm-gpt56sol-max/data.json)
262
+
263
+ Beyond benchmarks, LoopX also has inspectable long-running project evidence.
264
+ The public OpenViking contribution sequence and the redacted, owner-run
265
+ Auto ML showcase each span **200+ hours of elapsed loop lifetime**, preserving
266
+ bounded turns, decisions, and evidence updates. This measures wall-clock project
267
+ time, not continuous model execution or unattended production autonomy. Open
268
+ each visual to inspect the public-safe task graph, evidence branches, and
269
+ cross-turn decisions; each case states its source and reproducibility boundary.
270
+
271
+ <details>
272
+ <summary>Earlier 200+ hour project trajectories: OpenViking and ML experiments</summary>
273
+
274
+ ### Open-Source Issue Fix
275
+
276
+ **200+ hour public contribution arc: PR delivery and reusable fix knowledge
277
+ evolve together.**
278
+
279
+ <a href="docs/assets/long-running-loop-openviking-trajectory.png">
280
+ <img src="docs/assets/long-running-loop-openviking-trajectory.png" alt="Open-source issue-fix trajectory linking focused PR delivery with reusable LoopX capabilities" width="760">
281
+ </a>
282
+
283
+ LoopX's creator uses this path as an
284
+ [OpenViking contributor](https://github.com/volcengine/OpenViking/pulls?q=is%3Apr+author%3Ahuangruiteng).
285
+ The represented public contribution sequence spans more than 200 elapsed hours
286
+ from its first PR creation to the latest represented review or update. The
287
+ [Issue-Fix capability](loopx/capabilities/issue_fix/README.md) keeps rolling
288
+ repository context, revision-stamped fix knowledge, and reviewer-facing
289
+ preferences separate; linked PRs plus current checkout source and tests remain
290
+ authoritative.
291
+
292
+ ### Auto ML Experiment
293
+
294
+ **Redacted owner-run showcase: a 200+ hour experiment arc keeps hypotheses,
295
+ matched evidence, invalid lineages, running replicates, and promote/stop gates
296
+ visible in one graph.**
297
+
298
+ <a href="docs/assets/long-running-loop-ml-experiment-trajectory.png">
299
+ <img src="docs/assets/long-running-loop-ml-experiment-trajectory.png" alt="Auto ML Experiment trajectory with experiment lineages, evidence gates, and promotion decisions" width="760">
300
+ </a>
301
+
302
+ The redacted public-safe graph preserves decision lineage across that 200+ hour
303
+ elapsed window. It is an owner-run showcase, not a claim of continuous compute,
304
+ independent reproduction, or a production result.
305
+
306
+ </details>
307
+
308
+ ### Used In Real Projects
309
+
310
+ - **Independent user · `>13h` C++ accuracy run.** The user reported that a
311
+ multi-stage task stayed aligned, triggered public research, adopted a
312
+ [public code-memory tool](https://github.com/DeusData/codebase-memory-mcp),
313
+ and improved final precision. [Read the evidence boundary](docs/showcases/cases/independent-cpp-accuracy-long-run.md).
314
+ - **Independent user · `4d` unattended run.** The user reported four days
315
+ without human intervention, useful ongoing work, and a periodic report
316
+ surface. [Read the redacted case](docs/showcases/cases/independent-four-day-unattended-agent.md).
317
+ - **Independent user · `7` merged PRs.** A LoopX-attributed Engine refactor is
318
+ visible in a [public issue](https://github.com/zilliztech/mfs/issues/166) and
319
+ seven merged PRs; attribution and the reported `1B+` token scale remain user
320
+ reports. [Inspect the case](docs/showcases/cases/independent-public-engine-refactor.md).
321
+
322
+ These are the three strongest current cases, not the full inventory. Browse the
323
+ [complete Showcase catalog](docs/showcases/README.md) for contributor cases,
324
+ creator dogfooding, reproducible demos, and explicit evidence-strength labels.
325
+
326
+ ### Exploratory Benchmark Studies
327
+
328
+ - **[SWE-Marathon](https://loopx-project.github.io/loopx/benchmarks/swe-marathon/):**
329
+ Five execution modes on 15 matched tasks compare self-verification, scores,
330
+ and cost. More self-verification did not consistently yield higher scores.
331
+ - **[LHTB × LoopX](https://loopx-project.github.io/loopx/benchmarks/lhtb/):**
332
+ The [results above](#lhtb-results) lead into five execution mechanisms,
333
+ task-level comparisons, regressions, and exploratory task-type analysis.
334
+ - **[DeepSWE behavior analysis](https://loopx-project.github.io/loopx/benchmarks/deepswe/behavior-discovery/)** (Chinese):
335
+ Selected cases examine how domain hints relate to requirement retention and
336
+ verification choices, offering mechanism hypotheses for further testing.
337
+
338
+ SWE-Marathon and LHTB have one effective trial per task and mode; DeepSWE uses
339
+ selected cases and post-hoc analysis.
340
+
341
+ More inspectable surfaces:
342
+
343
+ - the [public homepage](https://loopx-project.github.io/loopx/) for the product
344
+ narrative, quick start, and long-running evidence;
345
+ - the [complete Showcase catalog](docs/showcases/README.md) and its
346
+ [bilingual hosted index](docs/showcases/index.html);
347
+ - the [Agent collaboration guide](docs/product/use-cases/cross-runtime/README.md) for dependent artifacts, independent review and returned results;
348
+ - the public [user manual](https://my.feishu.cn/wiki/CaL5wMk9ui17ngkWzeUcMlAYnZg).
349
+
350
+ <a id="quick-start"></a>
351
+
352
+ ## Try LoopX
353
+
354
+ Install once:
355
+
356
+ ```bash
357
+ python3 -m pip install --upgrade loopx && loopx workflow-skills --install
358
+ ```
359
+
360
+ ### Start From Your Agent
361
+
362
+ Restart your Agent host, then start from a session opened on your project:
363
+
364
+ | Host | Type |
365
+ | --- | --- |
366
+ | Codex App, Codex CLI | `$loopx <complex task>` |
367
+ | Claude Code | `/loopx <complex task>` |
368
+ | DeepSeek Harness | Install the [native DSH plugin](packages/dsh-loopx-plugin/README.md), select the `loopx` skill, then describe the task |
369
+
370
+ LoopX reuses existing project state or connects the project, plans the work as
371
+ Todos and sets up the host's loop. `loopx status` shows the goal, any decision
372
+ waiting for you and the next Todo; `loopx doctor` diagnoses the install.
373
+
374
+ Requires Python 3.11+ and Node.js 22.22.3+ (24 LTS recommended).
375
+ [Installing LoopX](docs/guides/installing-loopx.md) covers native Windows,
376
+ `pipx`, upgrades, rollback and uninstall.
377
+
378
+ <details>
379
+ <summary><b>Other hosts, loop drivers and custom runners</b></summary>
380
+
381
+ | Host | Recommended start | Loop driver |
382
+ | --- | --- | --- |
383
+ | Codex App | `$loopx <complex task>`, or choose `loopx` from `/skills`, in a thread opened on the project. | Codex App heartbeat automation, refreshed from `quota should-run.scheduler_hint` |
384
+ | Codex App over SSH | `loopx agent-onboard --agent-type codex-app-ssh --project .` | The returned visible `/goal <task_body>` |
385
+ | Codex CLI | Start `codex` in the project, then `$loopx <complex task>` or `/skills`. | Visible `/goal <task_body>`; no hidden headless execution by default |
386
+ | Claude Code | Install the opt-in adapter, then run `/loopx <task>` followed by `/loop`. | Native Claude Code `/loop` gated by LoopX |
387
+ | KunlunCode | Run `loopx-kunluncode connect --project . --goal-id <goal-id> --agent-id <registered-agent-id>`, add a bounded todo, then run `loopx-kunluncode run --project .`. | Native Goal Pro through app-server; LoopX writes completion and quota only after strict verification |
388
+ | OpenCode | Install the static command facade; opt in to `--with-goal-bridge` for recurring goals. | OpenCode command facade and explicit goal bridge |
389
+ | Pi | Install the opt-in goal extension with `loopx slash-commands --install --surface pi`, then use `/loopx <task>` from a trusted Pi session. | Visible Pi goal extension gated by LoopX quota (`loopx_goal_activate` + `agent_settled` continuation) |
390
+ | ZCode | Install the skill facade with `loopx slash-commands --install --surface zcode`, then invoke the `$loopx` skill (or `/loopx <complex task>`) from a ZCode session in the project. | The ZCode session's own turn loop; every continuation enters through `quota should-run` |
391
+ | Antigravity CLI (agy) | Install the skill facade with `loopx slash-commands --install --surface agy`, then invoke the `loopx` skill (or `/loopx <complex task>`) from an `agy` session in the project. | The session's native `/goal` loop (audited until `<!-- GOAL_COMPLETE -->`) with `schedule` self-wakes while the session lives; the facade instructs every turn/wake to re-enter through `quota should-run` — advisory pacing, not a host-enforced gate |
392
+ | Kiro CLI | Install the skill facade with `loopx slash-commands --install --surface kiro-cli`, then run `/loopx <complex task>` from a `kiro-cli` session in the project. | The session's native `/goal --max <N> <task_body> Done when: <criteria>` loop, with the acceptance criteria stated inside the goal statement because the host derives them from it, bounded by the host's own iteration budget (default 5) and settled through the built-in `goal` completion contract; the facade instructs every turn and iteration to re-enter through `quota should-run` — advisory pacing, not a host-enforced gate |
393
+ | DeepSeek Harness (dsh) | Install the [native DSH plugin](packages/dsh-loopx-plugin/README.md), select the `loopx` skill, and describe the task. The [dsh goal-mode adapter](loopx/dsh_goal_mode/README.md) remains available for headless turns. | Native same-session continuation and GoalBar, or headless dsh segments; both remain gated by LoopX authority |
394
+ | Cursor, shell, or custom runner | `loopx start-goal --guided --project . --goal-text "<task>"`, or call LoopX from your runner. | Your shell, scheduler, or runner |
395
+
396
+ The exact, copy-ready setup messages and host recovery paths live in
397
+ [Getting Started](docs/guides/getting-started.md). Host integrations can inspect
398
+ the [Codex App host command registry contract](docs/reference/protocols/codex-app-host-command-registry-v0.md),
399
+ the [Codex CLI packaged install path](docs/product/runtimes/codex-cli/codex-cli-packaged-install.md),
400
+ the [Claude Code adapter](loopx/claude_goal_mode/README.md), the
401
+ [KunlunCode native Goal adapter](loopx/kunluncode_goal_mode/README.md), the
402
+ [Kiro CLI goal-mode adapter](loopx/kiro_cli_goal_mode/README.md), or the
403
+ [DeepSeek Harness turn adapter](loopx/dsh_goal_mode/README.md).
404
+
405
+ See the [60-second DSH × LoopX Replan recording and reproducible
406
+ fixture](docs/showcases/cases/dsh-loopx-replan-demo.md) for the native path:
407
+ install the plugin, select one skill, change a material constraint, and inspect
408
+ the preserved decision trail.
409
+
410
+ For custom runners, start with the
411
+ [minimal custom runtime example](docs/guides/minimal-custom-runtime-example.md)
412
+ (`python3 examples/custom-runtime-minimal-cli-turn-smoke.py`), then the full
413
+ [Embed LoopX in Your Agent Runner](docs/guides/custom-agent-runner-integration.md)
414
+ guide and the [worker bridge install contract](docs/integrations/worker-bridge-install-contract.md).
415
+ The core tick is deliberately small:
416
+
417
+ ```text
418
+ loopx quota should-run # should this registered agent act now?
419
+ loopx todo claim # who owns this slice?
420
+ loopx todo update # what changed?
421
+ loopx refresh-state # what should the next turn see?
422
+ loopx quota spend-slot # account for a completed, validated slice
423
+ ```
424
+
425
+ Clone-based install is only for contributors who want the live canary wrapper:
426
+
427
+ ```bash
428
+ git clone https://github.com/loopx-project/loopx ~/loopx
429
+ ~/loopx/scripts/install-local.sh
430
+ loopx doctor
431
+ ```
432
+
433
+ </details>
434
+
435
+ ### First-Run Feedback
436
+
437
+ If LoopX works for you, a one-minute public issue helps us learn what a real
438
+ first run looks like. It is optional, contains no telemetry, and should not
439
+ include logs, paths, credentials, internal project names, or goal contents:
440
+
441
+ - [First-run feedback](https://github.com/loopx-project/loopx/issues/new?template=first_run.yml)
442
+ - [Usage story for longer runs](https://github.com/loopx-project/loopx/issues/new?template=usage_story.yml)
443
+
444
+ `loopx first-run-report` prints the same prefilled link locally without
445
+ sending anything.
446
+
447
+ Basic usage statistics default on after first-use disclosure: a daily random-ID
448
+ heartbeat for platform support and continued use, plus separate ID-free CLI
449
+ counts. No content is collected. Disable both in Settings → Capability Center
450
+ or with `loopx usage-ping disable` / `LOOPX_USAGE_PING=0`; inspect payloads with
451
+ `loopx usage-ping status`. See [Basic usage statistics](docs/reference/usage-ping.md).
452
+
453
+ <a id="capability-surface"></a>
454
+
455
+ ## Capabilities
456
+
457
+ LoopX keeps the architecture explicit so the same governed outcome can survive
458
+ a change of agent harness or external provider. The terms describe different
459
+ boundaries rather than interchangeable kinds of plugin:
460
+
461
+ | Boundary | Meaning | Go deeper |
462
+ | --- | --- | --- |
463
+ | **Kernel** | Owns durable goal, todo, gate, evidence, quota, recovery, and scheduling truth. | [Architecture](docs/architecture.md) |
464
+ | **Capability** | Defines a stable, provider-neutral contract for producing one bounded, verifiable caller outcome from LoopX state. | [Capability catalog](loopx/capabilities/README.md) |
465
+ | **Provider** | Calls an external system or local implementation and returns bounded observations, effect results, and readback. | [Provider responsibilities](docs/reference/extensions.md#runtime-responsibilities) |
466
+ | **Extension** | Packages and operates an optional provider through explicit install, readiness, enable, upgrade, disable, and rollback lifecycle. | [Extension lifecycle](docs/reference/extensions.md#runtime-lifecycle) |
467
+
468
+ Host declarations such as `--available-capability shell` describe observed
469
+ execution support. They are runtime capacities in this product map, not product
470
+ capabilities and not permission grants. The effective capability still applies
471
+ its own policy and authority checks before proposing a transition.
472
+
473
+ ### Core Control-Plane Promises
474
+
475
+ The Kernel folds its mechanics into five questions. Each question delivers one
476
+ product promise on top of any agent harness: objective → long-horizon state;
477
+ next → semantic decisions; human judgment → human-agent collaboration;
478
+ evidence → recovery; continuation → governance.
479
+
480
+ | Question | What LoopX keeps visible |
481
+ | --- | --- |
482
+ | What is the objective? | The active goal, explicit scope, and current authority. |
483
+ | What happens next? | Ordered user and agent todos, ownership, claims, and leases. |
484
+ | What needs human judgment? | Concrete user gates instead of a vague "waiting for owner." |
485
+ | What evidence changed? | Compact run history, validation, blockers, and accepted writeback. |
486
+ | May the loop continue? | Quota, capabilities, safe fallback, scheduler hints, and stop conditions. |
487
+
488
+ ### Control-Plane Surface
489
+
490
+ | Surface | What it does | Start with |
491
+ | --- | --- | --- |
492
+ | Goal state and status | Tracks active state, todos, claims, gates, evidence, run history, and first-screen attention. | `loopx status`, `loopx diagnose`, `loopx review-packet` |
493
+ | Quota and interaction contract | Decides whether a turn should deliver, ask, wait, self-repair, or stay quiet. | `loopx quota should-run`, [quota allocation](docs/quota-allocation.md) |
494
+ | Agent runtime bridges | Keeps Codex App, Codex CLI, Claude Code, and generic workers aligned with the same guard. | `loopx heartbeat-prompt`, `loopx codex-cli-bootstrap-message`, `loopx worker-bridge` |
495
+ | Operator surfaces | Renders compact status without making the browser the state authority. | `loopx serve-status`, [dashboard](apps/presentation/dashboard/README.md) |
496
+ | Session dash | Starts a live single-page panel that tracks fleet progress: sessions, their goals, and each goal's status/todo progress, with result statistics; auto-refreshes in place. | `loopx dash`, [session dash design](docs/product/surfaces/session-dash-panel-design.md) |
497
+ | External projections | Projects todos and gates into collaboration surfaces while LoopX remains authoritative. | `loopx lark-kanban`, [Lark Kanban adapter](docs/integrations/lark-kanban-control-plane-adapter.md) |
498
+ | Domain capabilities | Packages repeatable work lanes such as issue fixing, content operations, value connector planning, ML experiment advice, benchmark evidence, and Explore. | `loopx issue-fix`, `loopx content-ops`, `loopx value-connectors`, `loopx ml-experiment`, `loopx benchmark`, [Explore](loopx/capabilities/explore/README.md) |
499
+ | Experimental context learning | Lets named registered agents trial provider-neutral Reward Memory through ignored, default-off project configuration. OpenViking is one provider option, not a global dependency. | `loopx reward-memory experiment-status`, [Reward Memory architecture](loopx/capabilities/reward_memory/README.md) |
500
+ | Governance patterns | Captures reusable routing, gate, evidence, projection, and planning shapes. | [interaction patterns](docs/concepts/interaction-pattern-catalog.md), [state model](docs/state-interaction-model.md) |
501
+
502
+ The shipped primitives include lifetime goals, concrete user gates, audited safe
503
+ fallbacks, peer todo ownership, quota and steering, compact run history,
504
+ evidence-backed handoff, a read-first management surface, project-level value
505
+ signals, and public/private boundary checks.
506
+
507
+ ### Product Capability Paths
508
+
509
+ Capabilities turn those generic primitives into outcome-owned work lanes. Start
510
+ from the outcome, then inspect the current registered implementation and its
511
+ write boundary:
512
+
513
+ | You need to... | Capability | Start with |
514
+ | --- | --- | --- |
515
+ | Turn a public issue into a reviewable, evidence-backed change | [Issue Fix](loopx/capabilities/issue_fix/README.md) | `loopx capability show issue-fix --format json` |
516
+ | Qualify the exact final diff before delivery | [Change Quality](loopx/capabilities/change_quality/README.md) | `loopx capability show change-quality-qualification --format json` |
517
+ | Notice busy-but-off-goal work rounds before the periodic review | [Progress-Review Sentinel](loopx/capabilities/progress_review/README.md) | `loopx capability show progress-review-sentinel --format json` |
518
+ | Preserve a changing stack of already reviewed branches | [Integration Branch](loopx/capabilities/integration_branch/README.md) | `loopx capability show integration-branch-reconcile --format json` |
519
+ | Explore uncertain research without losing hypotheses and findings | [Explore](loopx/capabilities/explore/README.md) | `loopx capability show explore --format json` |
520
+ | Rebase decisions on current evidence and verified outcomes | [Decision Context](loopx/capabilities/decision_context/README.md) | `loopx capability show decision-context --format json` |
521
+ | Produce scheduled or progress-triggered reports with receipts | [Periodic Report](loopx/capabilities/periodic_report/README.md) | `loopx capability show periodic-report --format json` |
522
+
523
+ Run `loopx capability list --format json` for the authoritative catalog in the
524
+ installed release. A capability detail reports its user value, maturity,
525
+ provider readiness, entry commands, write boundaries, protocols, and durable
526
+ validation. Browse the [human-readable capability index](loopx/capabilities/README.md)
527
+ to choose by outcome; use [Extensions and Capabilities](docs/reference/extensions.md)
528
+ when installing or building a provider.
529
+
530
+ ### Runtime Responsibilities
531
+
532
+ | Role | Responsibility |
533
+ | --- | --- |
534
+ | **Agent** | Plans, analyzes, uses tools, and performs one bounded action through a host/runtime. |
535
+ | **Provider** | Calls external systems and returns observations, effect results, and readback. |
536
+ | **Capability** | Defines the caller outcome, normalizes provider output, validates it, and proposes a typed transition. |
537
+ | **Kernel** | Owns durable todos, gates, monitors, accepted writeback, quota, recovery, and scheduling. |
538
+
539
+ The execution path is `Agent -> Capability -> Provider`; the control path
540
+ returns `Provider readback -> Capability transition -> Kernel`. An extension is
541
+ how an optional provider is packaged and managed, not another control-plane
542
+ owner. See [Architecture](docs/architecture.md) and
543
+ [Extensions and Capabilities](docs/reference/extensions.md).
544
+
545
+ ## Advanced Paths
546
+
547
+ The first useful loop does not require every optional surface. Add these only
548
+ when the work needs them.
549
+
550
+ Inspect the current goal's read-only capability catalog before enabling an
551
+ advanced path:
552
+
553
+ ```bash
554
+ loopx configure-goal --goal-id <goal-id>
555
+ ```
556
+
557
+ Without `--execute`, this reports current/default state, fit, boundaries, and
558
+ copyable commands without changing project state.
559
+
560
+ ### Recurring Work Presets
561
+
562
+ Safe presets cover daily triage, changelog drafts, and PR watching. Start with
563
+ the [beginner preset guide](docs/product/foundations/beginner-loop-presets.md).
564
+
565
+ ```bash
566
+ loopx preset list
567
+ loopx preset show daily-triage
568
+ ```
569
+
570
+ Preset inspection is read-only. For a connected recurring goal,
571
+ `loopx ready-score --goal-id <goal-id> --agent-id <agent-id>` reports whether
572
+ the loop is ready to run repeatedly.
573
+
574
+ ### Governed Turns
575
+
576
+ LoopX can generate one pure, bounded turn decision from a validated receipt,
577
+ fresh quota state, and a provider-neutral budget. The current Codex CLI
578
+ quickstart and activation contract are documented in
579
+ [LoopX Turn for Codex CLI](docs/product/runtimes/codex-cli/loopx-turn-codex-cli-quickstart.md).
580
+
581
+ ### Explore Graph and Harness
582
+
583
+ Explore is supported, optional, and default-off. It works best when a task has
584
+ a measurable offline evaluation, baseline, treatment, and guardrails; it is not
585
+ a substitute for production approval. Start with the
586
+ [Explore capability](loopx/capabilities/explore/README.md) and its
587
+ [Lark presentation mapping](loopx/capabilities/explore/README.md#presentation-sink-lark-mapping).
588
+
589
+ ### Review Agent Work
590
+
591
+ Use `loopx review-packet` for a compact owner-facing view of decisions,
592
+ evidence, validation, and unresolved gates. The
593
+ [intelligent management surface](docs/product/surfaces/intelligent-management-surface.md)
594
+ describes the operator model; the
595
+ [project-level reward model](docs/product/foundations/project-level-reward-model.md)
596
+ describes conservative value signals across output quantity, quality, token
597
+ cost, and user attention cost.
598
+
599
+ For a concrete peer workflow, start with the
600
+ [Agent collaboration guide](docs/product/use-cases/cross-runtime/README.md):
601
+ a builder consumes an analyst's artifact, obtains independent review, handles
602
+ an owner correction and returns the checked result. The guide distinguishes
603
+ the runnable same-host example from the earlier cross-runtime design sketch.
604
+
605
+ ### App and Projection Paths
606
+
607
+ - Local read-first UI: [dashboard guide](apps/presentation/dashboard/README.md)
608
+ - Public product overview: [public homepage](https://loopx-project.github.io/loopx/)
609
+ - Documentation portal: [hosted docs](https://loopx-project.github.io/loopx/docs/)
610
+ - Feishu/Lark projection: [Lark Kanban adapter](docs/integrations/lark-kanban-control-plane-adapter.md)
611
+ - Generic host integration: [integration guide](docs/integration.md)
612
+ - Custom multi-agent runner:
613
+ [minimal custom runtime example](docs/guides/minimal-custom-runtime-example.md),
614
+ then [custom runner integration](docs/guides/custom-agent-runner-integration.md)
615
+
616
+ Optional projections make state easier to inspect; they do not become the
617
+ source of truth.
618
+
619
+ ### Operating and Recovery
620
+
621
+ Start daily inspection with:
622
+
623
+ ```bash
624
+ loopx status
625
+ loopx history --goal-id your-project-goal
626
+ loopx quota should-run --goal-id your-project-goal
627
+ ```
628
+
629
+ Automatic turns must check quota first and append spend only after validated
630
+ writeback. Quiet skips, preflight failures, and dry-run previews do not spend.
631
+ When a user gate blocks one lane, a separately audited safe fallback may
632
+ continue, but it must not bypass the gate.
633
+
634
+ Peer agents use `loopx todo claim` before delivery and `loopx todo update`
635
+ after validation so ownership and evidence remain visible.
636
+
637
+ Scheduler cadence follows `quota should-run.scheduler_hint`; installed Codex
638
+ App automations acknowledge the current hint through the returned
639
+ `ack_hint.cli_args`. Collision recovery, monitor semantics, self-repair, and
640
+ the exact operator commands are maintained in
641
+ [Getting Started](docs/guides/getting-started.md),
642
+ [Quota Allocation](docs/quota-allocation.md), and
643
+ [Long-Task Cadence Policy](docs/operations/long-task-cadence-policy.md).
644
+
645
+ Before publishing public docs or examples:
646
+
647
+ ```bash
648
+ loopx check \
649
+ --scan-path README.md \
650
+ --scan-path docs/ \
651
+ --scan-path examples/
652
+ ```
653
+
654
+ ## Current Technical Directions
655
+
656
+ LoopX has three active strategic programs plus an architecture and research
657
+ incubator. These are direction signals, not delivery promises; `main`, released
658
+ artifacts, and stable reference contracts remain the source of shipped truth.
659
+
660
+ - **Long-Horizon Benchmarks and Evidence:** reproducible capability evidence
661
+ and controlled mechanism research across complementary benchmark
662
+ environments. [Direction tracker](https://github.com/loopx-project/loopx/issues/3243)
663
+ - **Operator Surface and IM Integration:** an operator workspace, session
664
+ records, and bounded collaboration surfaces. The Personal Workspace is
665
+ shipped; unified steward, execution, and recovery journeys remain under
666
+ qualification, with `@maxliux5` as implementation lead.
667
+ [Direction tracker](https://github.com/loopx-project/loopx/issues/3244)
668
+ - **Shared Goal Authority and Cross-host Coordination:** provider-neutral
669
+ coordination for explicitly shared goals, with NoKV as an unpromoted
670
+ provider candidate rather than a new control-plane authority.
671
+ [Direction tracker](https://github.com/loopx-project/loopx/issues/3245)
672
+ - **Architecture and Research Incubator:** Effect Program hardening,
673
+ TypeScript parity migration, hierarchical stride, research exploration,
674
+ human attention, artifact lifecycle, and memory utility work at explicitly
675
+ different maturity levels.
676
+ [Direction tracker](https://github.com/loopx-project/loopx/issues/3246)
677
+
678
+ Read the canonical
679
+ [Technical Directions map](docs/project/technical-directions.md) for stages,
680
+ promotion gates, contributor-safe cuts, and ownership boundaries. Use the
681
+ pinned [GitHub Discussion](https://github.com/loopx-project/loopx/discussions/2851)
682
+ for community discussion. Core control-plane reliability continues as the
683
+ shared foundation beneath these programs.
684
+
685
+ ## Advanced Documentation
686
+
687
+ [Product website](https://loopx-project.github.io/loopx/) · [Blog](https://loopx-project.github.io/loopx/blog/) · [Developer Book](https://loopx-project.github.io/loopx/docs/book/en/)
688
+
689
+ Start with the path that matches your current task. Use the hosted
690
+ [documentation portal](https://loopx-project.github.io/loopx/docs/) for the
691
+ published docs site; the [documentation index](docs/README.md) remains the
692
+ complete source map. This list stays selective; each category index owns its
693
+ deeper documents and versioned protocols.
694
+
695
+ ### Use and Operate
696
+
697
+ - [Getting Started](docs/guides/getting-started.md): install, connect,
698
+ diagnose, daily workflow, heartbeats, dashboard, development, and commands.
699
+ - [User Manual](https://my.feishu.cn/wiki/CaL5wMk9ui17ngkWzeUcMlAYnZg):
700
+ public onboarding, concepts, FAQ, and selected cases.
701
+ - [Operations](docs/operations/README.md): goal continuation, todo, cadence,
702
+ attention, and authority workflows.
703
+ - [Quota Allocation](docs/quota-allocation.md) and
704
+ [Heartbeat Automation Prompt](docs/heartbeat-automation-prompt.md): scheduler
705
+ eligibility, spend, and scheduled continuation.
706
+ - [Dashboard](apps/presentation/dashboard/README.md) and
707
+ [Status Data Contract](docs/status-data-contract.md): operator-facing state
708
+ and projection contracts.
709
+ - [Release Readiness](docs/product/release-readiness.md): install/update paths,
710
+ compatibility gates, release notes, and safe-to-depend-on surfaces.
711
+
712
+ ### Understand the Control Plane
713
+
714
+ - [Architecture](docs/architecture.md): lifetime-goal invariant and kernel.
715
+ - [State Interaction Model](docs/state-interaction-model.md): actors, stores,
716
+ interaction contract, and writeback.
717
+ - [Concepts](docs/concepts/README.md): reusable routing, gate, evidence,
718
+ projection, and planning patterns.
719
+ - [Product Foundations](docs/product/foundations/README.md): Loop Engineering
720
+ principles, project-level reward, and reward-style replanning.
721
+ - [Product Vision](docs/product/vision.md): the broader Loop Agent direction.
722
+
723
+ ### Integrate and Extend
724
+
725
+ - [Integration Guide](docs/integration.md)
726
+ - [Minimal Custom Runtime Example](docs/guides/minimal-custom-runtime-example.md)
727
+ - [Custom Agent Runner Integration](docs/guides/custom-agent-runner-integration.md)
728
+ - [Integrations](docs/integrations/README.md): runtime, host, collaboration, and
729
+ external-system adapters, including worker bridge and Lark.
730
+ - [Extensions and Capabilities](docs/reference/extensions.md)
731
+
732
+ ### Build and Review LoopX
733
+
734
+ - [Developer Guide](docs/development/README.md): contributor workflows,
735
+ benchmark development, documentation layout, and quality gates.
736
+ - [Reference and Protocols](docs/reference/README.md): stable contracts and
737
+ versioned implementation protocols, including host command and reward memory
738
+ architecture.
739
+ - [Control-Plane Developer Course](docs/development/control-plane-course/README.md):
740
+ nine Chinese, code-led lectures.
741
+ - [Testing and Quality](docs/development/testing-and-quality.md): validation
742
+ layers and risk-based checks.
743
+ - [Public/Private Boundary](docs/public-private-boundary.md): safe fixtures,
744
+ examples, evidence, and publication.
745
+
746
+ ### Inspect Outcomes
747
+
748
+ - [Showcase Catalog](docs/showcases/README.md): public-safe cases and evidence
749
+ labels.
750
+ - [Research and Evidence](docs/research/README.md): benchmark investigations
751
+ and source-backed findings.
752
+ - [Update Notes](docs/update-notes/README.md): public-safe progress notes.
753
+
754
+ ### Project and Community
755
+
756
+ - [Current Technical Directions](docs/project/technical-directions.md)
757
+ - [Project Governance](.github/GOVERNANCE.md)
758
+ - [Contributing](CONTRIBUTING.md) and [Contributor Tasks](docs/development/contributor-tasks.md)
759
+ - [Authors and Contributors](docs/project/authors.md)
760
+ - [Project History](docs/project/history.md)
761
+ - [Name and Marks](docs/project/trademarks.md)
762
+ - [Brand Guide for External Use](docs/project/brand-guide.md): how projects and companies may reference LoopX, its integrations, and its artwork
763
+ - [ADOPTERS](ADOPTERS.md): voluntary self-attested adoption directory
764
+ - [Ecosystem Adoption](docs/community/ecosystem-adoption.md) - integrations,
765
+ sampling, and derivatives we observe and track
766
+
767
+ ## Partner Projects
768
+
769
+ LoopX welcomes collaboration with other open-source projects to build the
770
+ long-running agent ecosystem. Our confirmed partners include:
771
+
772
+ - [OpenViking](https://github.com/volcengine/OpenViking) - Self-evolving
773
+ context database for AI agents
774
+ - [NoKV](https://github.com/NoKV-Lab/NoKV) - AI native distributed file system
775
+
776
+ <a id="community--feedback"></a>
777
+
778
+ ## Community and Feedback
779
+
780
+ LoopX is already running real long-running agent goals and is under active
781
+ development. The most useful feedback comes from real long-running agent
782
+ projects: where the control plane helped, where it felt heavy, and which gates
783
+ or handoffs disappeared from view.
784
+
785
+ - Use [GitHub Issues](https://github.com/loopx-project/loopx/issues) for
786
+ reproducible bugs, install problems, and feature requests.
787
+ - Open PRs for docs fixes, showcase writeups, and small public-safe examples.
788
+ - Join the [Discord community](https://discord.gg/XmGgQyCFZd), or use Lark or
789
+ WeChat below.
790
+
791
+ See [Support](.github/SUPPORT.md) for channel routing, service boundaries, and
792
+ official publication sources.
793
+
794
+ <p align="center">
795
+ <a href="docs/assets/loopx-lark-developer-group.png"><img src="docs/assets/loopx-lark-developer-group.png" alt="LoopX Lark developer group QR code" width="280"></a>
796
+ <a href="docs/assets/loopx-wechat-contact.png"><img src="docs/assets/loopx-wechat-contact.png" alt="LoopX WeChat contact QR code" width="220"></a>
797
+ </p>
798
+ <p align="center">
799
+ <sub><strong>Lark:</strong> scan to join directly<br><strong>WeChat: <code>huangrt00</code></strong> · mention LoopX in the friend request</sub>
800
+ </p>
801
+
802
+ ## Contributing
803
+
804
+ External contributors should start with
805
+ [Contributor Tasks](docs/development/contributor-tasks.md) for public, claimable work and
806
+ [Contributing](CONTRIBUTING.md) for setup, validation, and boundary rules.
807
+ Project roles and public history are recorded in
808
+ [Governance](.github/GOVERNANCE.md),
809
+ [Authors and Contributors](docs/project/authors.md), and
810
+ [Project History](docs/project/history.md).
811
+
812
+ LoopX keeps local active state separate from the public repository. Do not
813
+ commit `.loopx/`, legacy `.codex/goals/`, live `ACTIVE_GOAL_STATE.md`, raw benchmark
814
+ traces, credentials, private logs, or operator artifacts.
815
+
816
+ ## Current Status
817
+
818
+ LoopX 1.0 is a usable local control plane for long-running agent work and is
819
+ entering broader adoption. It is not a full agent platform, an agent runtime, or
820
+ an autonomous production controller.
821
+
822
+ Today LoopX ships a durable state kernel for goals, typed todos and decision
823
+ scopes, peer claims and leases, evidence and writeback, quota-aware scheduling,
824
+ and cross-turn continuation. Guided start, recurring heartbeat, isolated Codex
825
+ CLI turns, evidence-backed Issue-Fix admission, optional Explore and auto
826
+ research paths, public validation canaries, and the multi-project Personal
827
+ Workspace all build on that shared control state.
828
+
829
+ Support levels remain explicit. The state and CLI contracts are the stable
830
+ center; several host integrations and advanced paths are optional, default-off,
831
+ or experimental. LoopX does not grant credentials, approve destructive or
832
+ production actions, publish on a user's behalf without authorization, or turn
833
+ an unverified run into evidence of success.
834
+
835
+ Current investment is organized through the
836
+ [Technical Directions map](docs/project/technical-directions.md): long-horizon
837
+ benchmark evidence, operator surface and IM integration, shared-goal cross-host
838
+ coordination, and an explicitly staged architecture and research incubator.
839
+
840
+ ## Star History
841
+
842
+ <p align="center">
843
+ <a href="https://github.com/loopx-project/loopx/stargazers"><img src="https://loopx-project.github.io/loopx/site-assets/star-history.svg" alt="LoopX GitHub star history from verified snapshots" width="800"></a><br>
844
+ <sub>Generated every six hours from GitHub's official stargazer timestamps using a repository-authorized workflow. A snapshot is published only when the fetched rows match GitHub's current star count; GitHub's image cache may delay refreshes.</sub>
845
+ </p>
846
+
847
+ ## License
848
+
849
+ Apache License 2.0 beginning with `v0.4.8`. See [LICENSE](LICENSE) and
850
+ [NOTICE](NOTICE). Releases through `v0.4.7` remain under their original MIT
851
+ terms; the historical text and notice are preserved in
852
+ [LICENSE-MIT](LICENSE-MIT). The [licensing policy](docs/project/licensing.md)
853
+ explains the version, contribution, patent-grant, and open-core boundaries.
854
+
855
+ [osai-verify: eb42dd9cf910399988f0]: #