forge-autonomy 2.7.34__tar.gz → 2.7.35__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 (335) hide show
  1. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/PKG-INFO +8 -6
  2. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/README.md +7 -5
  3. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/__main__.py +69 -0
  4. forge_autonomy-2.7.35/forge/installed_lifecycle.py +651 -0
  5. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/server_runtime.py +46 -3
  6. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge_autonomy.egg-info/PKG-INFO +8 -6
  7. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge_autonomy.egg-info/SOURCES.txt +2 -0
  8. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/product-version.json +1 -1
  9. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_installed_forge_update.py +21 -2
  10. forge_autonomy-2.7.35/tests/test_installed_lifecycle.py +315 -0
  11. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/MANIFEST.in +0 -0
  12. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/__init__.py +0 -0
  13. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/_version.py +0 -0
  14. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/action_derivation_canary_closure.py +0 -0
  15. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/action_derivation_evidence.py +0 -0
  16. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/action_derivation_qualification.py +0 -0
  17. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/action_derivation_reattempt.py +0 -0
  18. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/ai_architect/__init__.py +0 -0
  19. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/ai_architect/provider_registry.py +0 -0
  20. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/api/installed-health-component-registry-1.0.json +0 -0
  21. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/api/operations-read-openapi-v1.json +0 -0
  22. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/api/operations-read-postman-v1.json +0 -0
  23. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/api/server-openapi-v1.json +0 -0
  24. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/api/server-postman-v1.json +0 -0
  25. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/architecture/__init__.py +0 -0
  26. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/architecture/advisor.py +0 -0
  27. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/architecture/presentation.py +0 -0
  28. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/architecture/workspace.py +0 -0
  29. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/autonomous_orchestrator.py +0 -0
  30. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/business/__init__.py +0 -0
  31. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/business/advisor.py +0 -0
  32. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/business/ingress.py +0 -0
  33. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/business/presentation.py +0 -0
  34. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/business/workspace.py +0 -0
  35. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/canary.py +0 -0
  36. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/capabilities/__init__.py +0 -0
  37. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/capabilities/delegation.py +0 -0
  38. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/completion/__init__.py +0 -0
  39. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/completion/assessor.py +0 -0
  40. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/completion/host_control_observer.py +0 -0
  41. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/completion/mission.py +0 -0
  42. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/completion/repository_observer.py +0 -0
  43. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/constitutional/__init__.py +0 -0
  44. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/constitutional/assessor.py +0 -0
  45. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/core/__init__.py +0 -0
  46. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/core/json_store.py +0 -0
  47. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/decision_evidence/__init__.py +0 -0
  48. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/decision_evidence/repository.py +0 -0
  49. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/dispatcher/__init__.py +0 -0
  50. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/dispatcher/dispatcher.py +0 -0
  51. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/ep_simulator.py +0 -0
  52. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/execution/__init__.py +0 -0
  53. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/execution/loop.py +0 -0
  54. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/execution/presentation.py +0 -0
  55. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/execution_host_configuration.py +0 -0
  56. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/foundation/__init__.py +0 -0
  57. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/foundation/loader.py +0 -0
  58. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/generation_two.py +0 -0
  59. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/generation_two_execution.py +0 -0
  60. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/governance/__init__.py +0 -0
  61. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/governance/execution_policy.py +0 -0
  62. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/governance/profiles.py +0 -0
  63. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/governance_authority.py +0 -0
  64. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/installed_health.py +0 -0
  65. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/intake.py +0 -0
  66. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/integration/__init__.py +0 -0
  67. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/integration/coordinator.py +0 -0
  68. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/integration/repository.py +0 -0
  69. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/knowledge/__init__.py +0 -0
  70. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/knowledge/consumer.py +0 -0
  71. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/knowledge/registry.py +0 -0
  72. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/lifecycle/__init__.py +0 -0
  73. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/lifecycle/store.py +0 -0
  74. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/mission_amendment.py +0 -0
  75. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/mission_cli.py +0 -0
  76. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/mission_scheduler.py +0 -0
  77. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/__init__.py +0 -0
  78. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/action.py +0 -0
  79. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/action_derivation.py +0 -0
  80. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/agent_policy.py +0 -0
  81. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/ai_architect_provider.py +0 -0
  82. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/ai_architect_session.py +0 -0
  83. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/ai_provider_registry.py +0 -0
  84. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/architecture_mission.py +0 -0
  85. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/architecture_reasoning.py +0 -0
  86. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/architecture_review.py +0 -0
  87. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/codex_runtime_prompt.py +0 -0
  88. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/constitutional_validation.py +0 -0
  89. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/criterion_assessment.py +0 -0
  90. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/criterion_observation.py +0 -0
  91. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/decision_evidence.py +0 -0
  92. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/execution_host.py +0 -0
  93. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/foundation.py +0 -0
  94. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/historical_intent.py +0 -0
  95. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/integration.py +0 -0
  96. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/intent.py +0 -0
  97. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/intent_authoring.py +0 -0
  98. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/mission.py +0 -0
  99. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/mission_candidate.py +0 -0
  100. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/mission_completion.py +0 -0
  101. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/mission_planner.py +0 -0
  102. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/mission_recommendation.py +0 -0
  103. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/phase_completion.py +0 -0
  104. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/planning.py +0 -0
  105. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/producer.py +0 -0
  106. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/prompt_artifact.py +0 -0
  107. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/proposal.py +0 -0
  108. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/runtime_prompt.py +0 -0
  109. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/models/solution_template.py +0 -0
  110. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/operations_read_api.py +0 -0
  111. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/operator_identity.py +0 -0
  112. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/__init__.py +0 -0
  113. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/action_derivation.py +0 -0
  114. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/codex_cli_session.py +0 -0
  115. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/durable_derivation.py +0 -0
  116. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/engine.py +0 -0
  117. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/openai_responses.py +0 -0
  118. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planner/provider_adapter.py +0 -0
  119. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planning/__init__.py +0 -0
  120. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planning/loader.py +0 -0
  121. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/planning/registry.py +0 -0
  122. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/portfolio_intelligence.py +0 -0
  123. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/programme_authorization.py +0 -0
  124. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/prompts/__init__.py +0 -0
  125. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/prompts/codex_cli.py +0 -0
  126. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/prompts/generator.py +0 -0
  127. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/proposals/__init__.py +0 -0
  128. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/proposals/generator.py +0 -0
  129. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/provider_context.py +0 -0
  130. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/provider_security.py +0 -0
  131. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/__init__.py +0 -0
  132. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/bootstrap_sequence.py +0 -0
  133. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/criterion_completion.py +0 -0
  134. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/generation_one.py +0 -0
  135. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/qualification/installed_smoke.py +0 -0
  136. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/recommendations/__init__.py +0 -0
  137. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/recommendations/engine.py +0 -0
  138. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/repository_truth.py +0 -0
  139. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/review/__init__.py +0 -0
  140. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/review/engine.py +0 -0
  141. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/__init__.py +0 -0
  142. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/bootstrap.py +0 -0
  143. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/data_root.py +0 -0
  144. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/database.py +0 -0
  145. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/dynamic_mission.py +0 -0
  146. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/evidence.py +0 -0
  147. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/execution_context.py +0 -0
  148. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/health.py +0 -0
  149. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/mission_controller.py +0 -0
  150. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/operational_reset.py +0 -0
  151. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/runner.py +0 -0
  152. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/runtime/service.py +0 -0
  153. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/scheduler/__init__.py +0 -0
  154. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/scheduler/adapter.py +0 -0
  155. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/scheduler/ep_http_adapter.py +0 -0
  156. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/scheduler/ep_v12.py +0 -0
  157. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/scheduler/scheduler.py +0 -0
  158. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/capability-registry-1.0.schema.json +0 -0
  159. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/capability.schema.json +0 -0
  160. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/common.schema.json +0 -0
  161. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/decision-evidence-1.0.schema.json +0 -0
  162. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-goal-0.5.schema.json +0 -0
  163. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-increment-proposal-0.5.schema.json +0 -0
  164. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-mode.schema.json +0 -0
  165. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-plan-0.5.schema.json +0 -0
  166. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-platform-peer-configuration-1.0.schema.json +0 -0
  167. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-platform-peer-configuration-1.1.schema.json +0 -0
  168. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-prompt-artifact-0.7.schema.json +0 -0
  169. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/engineering-proposal-0.6.schema.json +0 -0
  170. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/evidence-reference-0.5.schema.json +0 -0
  171. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/foundation-document.schema.json +0 -0
  172. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/governance-profile.schema.json +0 -0
  173. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/knowledge-source-0.4.schema.json +0 -0
  174. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/knowledge-source.schema.json +0 -0
  175. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/mission-candidate-1.0.schema.json +0 -0
  176. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/mission-candidate-1.1.schema.json +0 -0
  177. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/phase-completion-1.0.schema.json +0 -0
  178. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/planning-document-0.5.schema.json +0 -0
  179. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/repository-catalog.schema.json +0 -0
  180. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/repository.schema.json +0 -0
  181. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/solution-template-1.0.schema.json +0 -0
  182. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/schemas/workspace.schema.json +0 -0
  183. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/secure_store.py +0 -0
  184. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/server_runtime.py +0 -0
  185. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/solutions/__init__.py +0 -0
  186. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/solutions/catalogue.py +0 -0
  187. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/solutions/generator.py +0 -0
  188. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/state/__init__.py +0 -0
  189. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/state/mission_state.py +0 -0
  190. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge/workspace/__init__.py +0 -0
  191. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge_autonomy.egg-info/dependency_links.txt +0 -0
  192. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge_autonomy.egg-info/entry_points.txt +0 -0
  193. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/forge_autonomy.egg-info/top_level.txt +0 -0
  194. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/pyproject.toml +0 -0
  195. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/capability-registry-1.0.schema.json +0 -0
  196. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/capability.schema.json +0 -0
  197. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/common.schema.json +0 -0
  198. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/decision-evidence-1.0.schema.json +0 -0
  199. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-goal-0.5.schema.json +0 -0
  200. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-increment-proposal-0.5.schema.json +0 -0
  201. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-mode.schema.json +0 -0
  202. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-plan-0.5.schema.json +0 -0
  203. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-prompt-artifact-0.7.schema.json +0 -0
  204. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/engineering-proposal-0.6.schema.json +0 -0
  205. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/evidence-reference-0.5.schema.json +0 -0
  206. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/foundation-document.schema.json +0 -0
  207. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/governance-profile.schema.json +0 -0
  208. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/knowledge-source-0.4.schema.json +0 -0
  209. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/knowledge-source.schema.json +0 -0
  210. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/mission-candidate-1.0.schema.json +0 -0
  211. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/mission-candidate-1.1.schema.json +0 -0
  212. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/phase-completion-1.0.schema.json +0 -0
  213. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/planning-document-0.5.schema.json +0 -0
  214. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/repository-catalog.schema.json +0 -0
  215. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/repository.schema.json +0 -0
  216. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/solution-template-1.0.schema.json +0 -0
  217. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/schemas/workspace.schema.json +0 -0
  218. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/setup.cfg +0 -0
  219. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_action_derivation.py +0 -0
  220. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_action_derivation_canary_closure.py +0 -0
  221. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_action_derivation_evidence.py +0 -0
  222. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_action_derivation_qualification.py +0 -0
  223. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_adaptive_action_sizing_design.py +0 -0
  224. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_agent_policy.py +0 -0
  225. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_aggregate_health_roadmap.py +0 -0
  226. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ai_architect_provider.py +0 -0
  227. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ai_architect_session.py +0 -0
  228. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ai_development_projection.py +0 -0
  229. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ai_provider_registry.py +0 -0
  230. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_architecture_reasoning.py +0 -0
  231. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_architecture_review_engine.py +0 -0
  232. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_architecture_workspace.py +0 -0
  233. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_autonomous_orchestrator.py +0 -0
  234. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_bootstrap_adapter.py +0 -0
  235. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_bootstrap_mission_canary.py +0 -0
  236. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_bootstrap_mission_runner.py +0 -0
  237. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_bootstrap_mission_scheduler.py +0 -0
  238. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_bootstrap_sequence_qualification.py +0 -0
  239. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_business_governance_ingress.py +0 -0
  240. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_business_workspace.py +0 -0
  241. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_canonical_data_root.py +0 -0
  242. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_capability_delegation.py +0 -0
  243. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_codex_cli_runtime_prompt.py +0 -0
  244. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_codex_cli_session.py +0 -0
  245. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_constitutional_validation.py +0 -0
  246. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_criterion_assessment_contract.py +0 -0
  247. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_criterion_ep_http_boundary.py +0 -0
  248. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_criterion_planning_context.py +0 -0
  249. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_decision_evidence.py +0 -0
  250. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_default_project_quality_policy.py +0 -0
  251. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_distribution_identity.py +0 -0
  252. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_durable_action_derivation.py +0 -0
  253. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_dynamic_mission_capability.py +0 -0
  254. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_action_architecture.py +0 -0
  255. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_intent_authoring.py +0 -0
  256. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_intent_lifecycle.py +0 -0
  257. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_mission.py +0 -0
  258. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_planning.py +0 -0
  259. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_prompt_artifacts.py +0 -0
  260. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_engineering_proposals.py +0 -0
  261. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ep_http_adapter.py +0 -0
  262. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ep_simulator.py +0 -0
  263. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_ep_simulator_rolling_planning.py +0 -0
  264. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_execution_context.py +0 -0
  265. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_execution_host_configuration.py +0 -0
  266. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_execution_host_contract.py +0 -0
  267. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_execution_loop.py +0 -0
  268. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_existing_release_reconciliation.py +0 -0
  269. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_console_admin_parity_contract.py +0 -0
  270. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_console_configuration_contract.py +0 -0
  271. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_console_hosting_contract.py +0 -0
  272. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_operations_console_roadmap.py +0 -0
  273. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_outer_loop_ci_roadmap.py +0 -0
  274. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_v1_bootstrap_scheduler_contract.py +0 -0
  275. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_forge_v1_implementation_dag.py +0 -0
  276. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_foundation_loader.py +0 -0
  277. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_foundation_models.py +0 -0
  278. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_generation_one_bootstrap_qualification.py +0 -0
  279. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_generation_two_execution.py +0 -0
  280. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_generation_two_mission_intake.py +0 -0
  281. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_governance_authority.py +0 -0
  282. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_governed_coverage.py +0 -0
  283. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_historical_engineering_intent.py +0 -0
  284. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_host_control_completion.py +0 -0
  285. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_inner_loop_ci_contract.py +0 -0
  286. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_installed_dynamic_mission_runtime.py +0 -0
  287. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_integration_coordination.py +0 -0
  288. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_knowledge_consumption.py +0 -0
  289. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_live_project_roadmap_contract.py +0 -0
  290. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_completion_evaluator.py +0 -0
  291. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_controller.py +0 -0
  292. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_dispatcher.py +0 -0
  293. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_planner.py +0 -0
  294. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_recommendation_engine.py +0 -0
  295. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_recommendation_lifecycle.py +0 -0
  296. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_runtime_projection.py +0 -0
  297. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_runtime_scheduler.py +0 -0
  298. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_state_store.py +0 -0
  299. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_mission_status.py +0 -0
  300. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_openai_action_derivation.py +0 -0
  301. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_operational_reset.py +0 -0
  302. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_operations_health.py +0 -0
  303. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_operations_read_api.py +0 -0
  304. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_operator_identity.py +0 -0
  305. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_phase_completion.py +0 -0
  306. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_platform_contract_documents.py +0 -0
  307. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_portfolio_intelligence_operation.py +0 -0
  308. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_producer_contract.py +0 -0
  309. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_product_version_operations.py +0 -0
  310. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_production_release_workflow.py +0 -0
  311. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_productization_reconciliation.py +0 -0
  312. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_programme_authorization.py +0 -0
  313. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_provider_context.py +0 -0
  314. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_provider_security.py +0 -0
  315. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_pypi_distribution_readback.py +0 -0
  316. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_recovered_partial_completion.py +0 -0
  317. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_release_operation.py +0 -0
  318. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_repository_truth.py +0 -0
  319. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_role_aware_conversations_contract.py +0 -0
  320. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_bootstrap.py +0 -0
  321. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_database.py +0 -0
  322. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_evidence.py +0 -0
  323. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_health.py +0 -0
  324. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_instance_persistence.py +0 -0
  325. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_prompt_generation.py +0 -0
  326. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_service.py +0 -0
  327. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_runtime_status_projection.py +0 -0
  328. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_scheduler_dependency_boundary.py +0 -0
  329. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_schemas.py +0 -0
  330. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_secure_store.py +0 -0
  331. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_server_api_contract.py +0 -0
  332. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_server_runtime.py +0 -0
  333. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_solution_templates.py +0 -0
  334. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_substantive_mission_completion.py +0 -0
  335. {forge_autonomy-2.7.34 → forge_autonomy-2.7.35}/tests/test_terminal_continuation_replay.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: forge-autonomy
3
- Version: 2.7.34
3
+ Version: 2.7.35
4
4
  Summary: Forge mission planning, producer contracts, and evidence interpretation runtime.
5
5
  Author: Forge maintainers
6
6
  License-Expression: Apache-2.0
@@ -125,14 +125,16 @@ cryptographic peer identity; preflight reports the latter as `NOT_ASSERTED`.
125
125
 
126
126
  ## Bounded installed maintenance
127
127
 
128
- The product-owned external controller for the selected Forge 2.7.21 to 2.7.22
129
- installation transition is documented in the
128
+ The product-owned external update controller is documented in the
130
129
  [installed update runbook](docs/operations/FORGE_INSTALLED_UPDATE_RUNBOOK.md) and
131
130
  [sanitized Forge 2.7.22 release/installation completion record](docs/operations/FORGE_2_7_22_RELEASE_INSTALLATION_COMPLETION.md).
132
131
  It stages an exact qualified wheel, backs up and migrates the selected runtime,
133
- and atomically activates a versioned slot. It is not packaged as a Forge
134
- Runtime command and does not replace Forge Platform's normal installer/update
135
- composition boundary.
132
+ and atomically activates a versioned slot. The packaged
133
+ [Forge Server Runtime lifecycle V1 contract](docs/architecture/FORGE_SERVER_RUNTIME_LIFECYCLE_V1.md)
134
+ adds the separate read-only exact-candidate update decision and the durable,
135
+ idempotent exact-instance uninstall dispatcher. Forge Platform still owns
136
+ service supervision and immutable runtime-slot layout; it may not replace
137
+ either product decision with version comparison or filesystem deletion.
136
138
 
137
139
  The later [MISSION-0017 vertical release and installation completion](docs/operations/MISSION_0017_VERTICAL_RELEASE_INSTALLATION_COMPLETION.md)
138
140
  records the isolated two-Action qualification, protected Forge and EP product
@@ -108,14 +108,16 @@ cryptographic peer identity; preflight reports the latter as `NOT_ASSERTED`.
108
108
 
109
109
  ## Bounded installed maintenance
110
110
 
111
- The product-owned external controller for the selected Forge 2.7.21 to 2.7.22
112
- installation transition is documented in the
111
+ The product-owned external update controller is documented in the
113
112
  [installed update runbook](docs/operations/FORGE_INSTALLED_UPDATE_RUNBOOK.md) and
114
113
  [sanitized Forge 2.7.22 release/installation completion record](docs/operations/FORGE_2_7_22_RELEASE_INSTALLATION_COMPLETION.md).
115
114
  It stages an exact qualified wheel, backs up and migrates the selected runtime,
116
- and atomically activates a versioned slot. It is not packaged as a Forge
117
- Runtime command and does not replace Forge Platform's normal installer/update
118
- composition boundary.
115
+ and atomically activates a versioned slot. The packaged
116
+ [Forge Server Runtime lifecycle V1 contract](docs/architecture/FORGE_SERVER_RUNTIME_LIFECYCLE_V1.md)
117
+ adds the separate read-only exact-candidate update decision and the durable,
118
+ idempotent exact-instance uninstall dispatcher. Forge Platform still owns
119
+ service supervision and immutable runtime-slot layout; it may not replace
120
+ either product decision with version comparison or filesystem deletion.
119
121
 
120
122
  The later [MISSION-0017 vertical release and installation completion](docs/operations/MISSION_0017_VERTICAL_RELEASE_INSTALLATION_COMPLETION.md)
121
123
  records the isolated two-Action qualification, protected Forge and EP product
@@ -115,6 +115,32 @@ def main(argv: list[str] | None = None) -> int:
115
115
  provider_context_configure.add_argument("--provider-config-home", required=True)
116
116
  provider_context_configure.add_argument("--profile")
117
117
  provider_context_configure.add_argument("--expected-digest")
118
+ update_assess = server_commands.add_parser(
119
+ "update-assess", help="assess one exact installed update without mutation"
120
+ )
121
+ update_assess.add_argument("--runtime-id", required=True)
122
+ update_assess.add_argument("--installation-id", required=True)
123
+ update_assess.add_argument("--installed-version", required=True)
124
+ update_assess.add_argument("--installed-source", required=True)
125
+ update_assess.add_argument("--installed-artifact-digest", required=True)
126
+ update_assess.add_argument("--candidate-version", required=True)
127
+ update_assess.add_argument("--candidate-source", required=True)
128
+ update_assess.add_argument("--candidate-wheel", required=True)
129
+ update_assess.add_argument("--candidate-artifact-digest", required=True)
130
+ uninstall = server_commands.add_parser(
131
+ "uninstall", help="durably remove one exact quiescent Forge instance"
132
+ )
133
+ uninstall.add_argument("--operation-id", required=True)
134
+ uninstall.add_argument("--instances-root", required=True)
135
+ uninstall.add_argument("--instance-id", required=True)
136
+ uninstall.add_argument("--runtime-id", required=True)
137
+ uninstall.add_argument("--installation-id", required=True)
138
+ uninstall_status = server_commands.add_parser(
139
+ "uninstall-status", help="read one durable uninstall operation"
140
+ )
141
+ uninstall_status.add_argument("--operation-id", required=True)
142
+ uninstall_status.add_argument("--instances-root", required=True)
143
+ uninstall_status.add_argument("--instance-id", required=True)
118
144
  reset = server_commands.add_parser("reset", help="operate the Forge-owned operational-history reset")
119
145
  reset_commands = reset.add_subparsers(dest="reset_command", required=True)
120
146
  reset_commands.add_parser("preview", help="inspect a read-only reset plan")
@@ -247,6 +273,49 @@ def main(argv: list[str] | None = None) -> int:
247
273
  return 0
248
274
  except (OSError, ValueError, RuntimeError, PermissionError) as error:
249
275
  return _failure("server provider-context", error)
276
+ if args.command == "server" and args.server_command == "update-assess":
277
+ if args.data_root is None:
278
+ return _failure("server update-assess", ValueError("--data-root is required for update assessment"))
279
+ from .installed_lifecycle import UpdateAssessmentRequest, assess_update
280
+ result = assess_update(UpdateAssessmentRequest(
281
+ data_root=args.data_root,
282
+ runtime_id=args.runtime_id,
283
+ installation_id=args.installation_id,
284
+ installed_version=args.installed_version,
285
+ installed_source=args.installed_source,
286
+ installed_artifact_digest=args.installed_artifact_digest,
287
+ candidate_version=args.candidate_version,
288
+ candidate_source=args.candidate_source,
289
+ candidate_wheel=args.candidate_wheel,
290
+ candidate_artifact_digest=args.candidate_artifact_digest,
291
+ ))
292
+ print(json.dumps(result, sort_keys=True))
293
+ return 0
294
+ if args.command == "server" and args.server_command == "uninstall":
295
+ if args.data_root is None:
296
+ return _failure("server uninstall", ValueError("--data-root is required for uninstall"))
297
+ try:
298
+ from .installed_lifecycle import InstalledLifecycleError, InstalledUninstallDispatcher, UninstallRequest
299
+ result = InstalledUninstallDispatcher(UninstallRequest(
300
+ operation_id=args.operation_id,
301
+ instance_id=args.instance_id,
302
+ runtime_id=args.runtime_id,
303
+ installation_id=args.installation_id,
304
+ data_root=args.data_root,
305
+ instances_root=args.instances_root,
306
+ )).run()
307
+ print(json.dumps(result, sort_keys=True))
308
+ return 0
309
+ except (InstalledLifecycleError, OSError, sqlite3.Error, PermissionError, ValueError) as error:
310
+ return _failure("server uninstall", error)
311
+ if args.command == "server" and args.server_command == "uninstall-status":
312
+ try:
313
+ from .installed_lifecycle import InstalledLifecycleError, uninstall_status
314
+ result = uninstall_status(args.instances_root, args.instance_id, args.operation_id)
315
+ print(json.dumps(result, sort_keys=True))
316
+ return 0
317
+ except (InstalledLifecycleError, OSError, PermissionError, ValueError) as error:
318
+ return _failure("server uninstall-status", error)
250
319
  if args.command == "health":
251
320
  if args.data_root is None:
252
321
  return _failure("health snapshot", ValueError("--data-root is required for health snapshot"))