ace-assign 0.71.0 → 0.73.1

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 (197) hide show
  1. checksums.yaml +4 -4
  2. data/.ace-defaults/assign/catalog/steps/auto-merge.step.yml +8 -8
  3. data/.ace-defaults/assign/catalog/steps/create-pr.step.yml +1 -1
  4. data/.ace-defaults/assign/catalog/steps/mark-pr-ready.step.yml +1 -1
  5. data/.ace-defaults/assign/config.yml +0 -13
  6. data/.ace-defaults/assign/presets/fix-bug.yml +1 -1
  7. data/.ace-defaults/assign/presets/work-on-task-ace-development.yml +1 -1
  8. data/.ace-defaults/assign/presets/work-on-task-auto-merge.yml +1 -1
  9. data/.ace-defaults/assign/presets/work-on-task.yml +1 -1
  10. data/CHANGELOG.md +5 -2116
  11. data/README.md +58 -31
  12. data/docs/exit-codes.md +36 -44
  13. data/docs/getting-started.md +9 -4
  14. data/docs/usage.md +129 -522
  15. data/handbook/skills/as-assign-drive/SKILL.md +1 -4
  16. data/handbook/workflow-instructions/assign/drive.wf.md +47 -195
  17. data/handbook/workflow-instructions/assign/prepare.wf.md +1 -1
  18. data/handbook/workflow-instructions/assign/verify-test-suite.wf.md +8 -2
  19. data/lib/ace/assign/cli/commands/assignment_target.rb +2 -15
  20. data/lib/ace/assign/cli/commands/create.rb +1 -8
  21. data/lib/ace/assign/cli/commands/fail.rb +0 -6
  22. data/lib/ace/assign/cli/commands/finish.rb +2 -23
  23. data/lib/ace/assign/cli/commands/fork_session.rb +0 -1
  24. data/lib/ace/assign/cli/commands/select.rb +0 -1
  25. data/lib/ace/assign/cli/commands/start.rb +0 -2
  26. data/lib/ace/assign/cli/commands/status.rb +1 -31
  27. data/lib/ace/assign/cli/commands/step.rb +1 -3
  28. data/lib/ace/assign/cli.rb +1 -85
  29. data/lib/ace/assign/errors.rb +8 -80
  30. data/lib/ace/assign/models/assignment.rb +5 -28
  31. data/lib/ace/assign/molecules/assignment_manager.rb +0 -26
  32. data/lib/ace/assign/molecules/fork_session_launcher.rb +4 -12
  33. data/lib/ace/assign/molecules/lifecycle_exclusion.rb +15 -112
  34. data/lib/ace/assign/molecules/runtime_control_surface_runner.rb +6 -2
  35. data/lib/ace/assign/molecules/skill_assign_source_resolver.rb +9 -0
  36. data/lib/ace/assign/organisms/assignment_executor.rb +0 -6
  37. data/lib/ace/assign/organisms/task_assignment_creator.rb +3 -8
  38. data/lib/ace/assign/version.rb +1 -1
  39. data/lib/ace/assign.rb +0 -6
  40. metadata +22 -176
  41. data/.ace-defaults/assign/presets/close-delivery.yml +0 -57
  42. data/.ace-defaults/assign/presets/deliver-release.yml +0 -60
  43. data/.ace-defaults/assign/presets/integrate-batch.yml +0 -72
  44. data/.ace-defaults/assign/presets/supervise-delivery.yml +0 -69
  45. data/docs/protected-authority.md +0 -282
  46. data/exe/ace-scope-ready +0 -55
  47. data/lib/ace/assign/atoms/assignment_scope.rb +0 -58
  48. data/lib/ace/assign/atoms/attempt_state_machine.rb +0 -84
  49. data/lib/ace/assign/atoms/candidate_limits.rb +0 -20
  50. data/lib/ace/assign/atoms/delivery_parameters.rb +0 -19
  51. data/lib/ace/assign/atoms/evidence_digest.rb +0 -78
  52. data/lib/ace/assign/atoms/fixed_merge_schemas.rb +0 -398
  53. data/lib/ace/assign/atoms/git_blob_batch.rb +0 -59
  54. data/lib/ace/assign/authority/assignment_definition.rb +0 -35
  55. data/lib/ace/assign/authority/assignment_inventory.rb +0 -290
  56. data/lib/ace/assign/authority/campaign_consumer_policy.rb +0 -100
  57. data/lib/ace/assign/authority/campaign_execution.rb +0 -119
  58. data/lib/ace/assign/authority/campaign_round_transfer.rb +0 -82
  59. data/lib/ace/assign/authority/candidate_blob_batch.rb +0 -55
  60. data/lib/ace/assign/authority/candidate_head_comparison.rb +0 -139
  61. data/lib/ace/assign/authority/candidate_transfer.rb +0 -357
  62. data/lib/ace/assign/authority/cleanup_result_protection.rb +0 -53
  63. data/lib/ace/assign/authority/client.rb +0 -257
  64. data/lib/ace/assign/authority/command_execution.rb +0 -180
  65. data/lib/ace/assign/authority/deployment.rb +0 -627
  66. data/lib/ace/assign/authority/deployment_history.rb +0 -146
  67. data/lib/ace/assign/authority/endcap.rb +0 -457
  68. data/lib/ace/assign/authority/endcap_attempts.rb +0 -274
  69. data/lib/ace/assign/authority/endcap_campaign_results.rb +0 -232
  70. data/lib/ace/assign/authority/endcap_campaign_rounds.rb +0 -266
  71. data/lib/ace/assign/authority/endcap_contexts.rb +0 -23
  72. data/lib/ace/assign/authority/endcap_inboxes.rb +0 -37
  73. data/lib/ace/assign/authority/endcap_prepared_work.rb +0 -80
  74. data/lib/ace/assign/authority/endcap_publication.rb +0 -41
  75. data/lib/ace/assign/authority/endcap_results.rb +0 -398
  76. data/lib/ace/assign/authority/endcap_review_requests.rb +0 -183
  77. data/lib/ace/assign/authority/endcap_reviews.rb +0 -130
  78. data/lib/ace/assign/authority/endcap_service_context.rb +0 -38
  79. data/lib/ace/assign/authority/endcap_service_settlement.rb +0 -152
  80. data/lib/ace/assign/authority/evidence_transfer.rb +0 -67
  81. data/lib/ace/assign/authority/execution_scope_observation.rb +0 -903
  82. data/lib/ace/assign/authority/fixed_publication_lifecycle.rb +0 -176
  83. data/lib/ace/assign/authority/fixed_service_lifecycle.rb +0 -594
  84. data/lib/ace/assign/authority/inbox_context_original.rb +0 -113
  85. data/lib/ace/assign/authority/launch_attempt_consumers.rb +0 -51
  86. data/lib/ace/assign/authority/launch_campaign_registration.rb +0 -214
  87. data/lib/ace/assign/authority/launch_control_channel.rb +0 -313
  88. data/lib/ace/assign/authority/launch_control_exclusions.rb +0 -127
  89. data/lib/ace/assign/authority/launch_driver.rb +0 -393
  90. data/lib/ace/assign/authority/launch_input_inhibition.rb +0 -132
  91. data/lib/ace/assign/authority/launch_lifecycle.rb +0 -997
  92. data/lib/ace/assign/authority/launch_prepared_work.rb +0 -122
  93. data/lib/ace/assign/authority/launch_review.rb +0 -91
  94. data/lib/ace/assign/authority/launch_scope_abort.rb +0 -81
  95. data/lib/ace/assign/authority/launch_scope_admission.rb +0 -215
  96. data/lib/ace/assign/authority/launch_scope_close.rb +0 -146
  97. data/lib/ace/assign/authority/launch_scope_parent.rb +0 -44
  98. data/lib/ace/assign/authority/launch_scope_release.rb +0 -859
  99. data/lib/ace/assign/authority/launch_steering.rb +0 -353
  100. data/lib/ace/assign/authority/launch_stop.rb +0 -254
  101. data/lib/ace/assign/authority/maintenance_workspace_retirement.rb +0 -229
  102. data/lib/ace/assign/authority/ordinary_attempt_start.rb +0 -137
  103. data/lib/ace/assign/authority/ordinary_client.rb +0 -70
  104. data/lib/ace/assign/authority/ordinary_completion.rb +0 -104
  105. data/lib/ace/assign/authority/ordinary_effect_settlement.rb +0 -118
  106. data/lib/ace/assign/authority/ordinary_lifecycle.rb +0 -227
  107. data/lib/ace/assign/authority/ordinary_merge_evidence.rb +0 -81
  108. data/lib/ace/assign/authority/ordinary_peer.rb +0 -54
  109. data/lib/ace/assign/authority/ordinary_progress.rb +0 -162
  110. data/lib/ace/assign/authority/ordinary_queue.rb +0 -115
  111. data/lib/ace/assign/authority/ordinary_release_artifacts.rb +0 -143
  112. data/lib/ace/assign/authority/ordinary_results.rb +0 -206
  113. data/lib/ace/assign/authority/ordinary_review_evidence.rb +0 -180
  114. data/lib/ace/assign/authority/ordinary_reviews.rb +0 -214
  115. data/lib/ace/assign/authority/ordinary_server.rb +0 -75
  116. data/lib/ace/assign/authority/ordinary_supervisor.rb +0 -99
  117. data/lib/ace/assign/authority/original_inbox_selection.rb +0 -41
  118. data/lib/ace/assign/authority/posix_acl.rb +0 -59
  119. data/lib/ace/assign/authority/prepared_input.rb +0 -130
  120. data/lib/ace/assign/authority/prepared_queue.rb +0 -185
  121. data/lib/ace/assign/authority/prepared_task_context.rb +0 -116
  122. data/lib/ace/assign/authority/prepared_work.rb +0 -309
  123. data/lib/ace/assign/authority/prepared_worker.rb +0 -69
  124. data/lib/ace/assign/authority/private_directory.rb +0 -33
  125. data/lib/ace/assign/authority/protected_assignment_context.rb +0 -226
  126. data/lib/ace/assign/authority/readiness_hook.rb +0 -120
  127. data/lib/ace/assign/authority/receipt_transfer.rb +0 -48
  128. data/lib/ace/assign/authority/release_artifact_manifest.rb +0 -91
  129. data/lib/ace/assign/authority/retained_input.rb +0 -53
  130. data/lib/ace/assign/authority/router.rb +0 -81
  131. data/lib/ace/assign/authority/server.rb +0 -131
  132. data/lib/ace/assign/authority/service_cleanup_dispatch.rb +0 -88
  133. data/lib/ace/assign/authority/service_cleanup_evidence.rb +0 -180
  134. data/lib/ace/assign/authority/service_delivery_evidence.rb +0 -101
  135. data/lib/ace/assign/authority/service_evidence.rb +0 -286
  136. data/lib/ace/assign/authority/service_publication_evidence.rb +0 -110
  137. data/lib/ace/assign/authority/socket_server.rb +0 -255
  138. data/lib/ace/assign/authority/task_context_entry.rb +0 -32
  139. data/lib/ace/assign/authority/transfer_codec.rb +0 -189
  140. data/lib/ace/assign/cli/commands/attempt/base.rb +0 -84
  141. data/lib/ace/assign/cli/commands/attempt/evidence.rb +0 -28
  142. data/lib/ace/assign/cli/commands/attempt/finish.rb +0 -51
  143. data/lib/ace/assign/cli/commands/attempt/reconcile.rb +0 -49
  144. data/lib/ace/assign/cli/commands/attempt/start.rb +0 -45
  145. data/lib/ace/assign/cli/commands/attempt/status.rb +0 -54
  146. data/lib/ace/assign/cli/commands/authority/inbox_context_principal.rb +0 -25
  147. data/lib/ace/assign/cli/commands/authority/inbox_context_selection.rb +0 -28
  148. data/lib/ace/assign/cli/commands/authority/launch.rb +0 -97
  149. data/lib/ace/assign/cli/commands/authority/serve.rb +0 -31
  150. data/lib/ace/assign/cli/commands/authority/status.rb +0 -26
  151. data/lib/ace/assign/cli/commands/authority/task_context.rb +0 -31
  152. data/lib/ace/assign/cli/commands/authority/task_context_principal.rb +0 -25
  153. data/lib/ace/assign/cli/commands/authority/task_context_selection.rb +0 -30
  154. data/lib/ace/assign/cli/commands/authority/terminate.rb +0 -29
  155. data/lib/ace/assign/cli/commands/authority/worker.rb +0 -23
  156. data/lib/ace/assign/cli/commands/campaign_export_result.rb +0 -55
  157. data/lib/ace/assign/cli/commands/campaign_record_round.rb +0 -57
  158. data/lib/ace/assign/cli/commands/delivery.rb +0 -107
  159. data/lib/ace/assign/cli/commands/inbox_bind.rb +0 -34
  160. data/lib/ace/assign/cli/commands/protected_submission.rb +0 -61
  161. data/lib/ace/assign/cli/commands/resume.rb +0 -38
  162. data/lib/ace/assign/cli/commands/submit_candidate.rb +0 -34
  163. data/lib/ace/assign/cli/commands/submit_result.rb +0 -61
  164. data/lib/ace/assign/models/attempt.rb +0 -178
  165. data/lib/ace/assign/models/attempt_binding.rb +0 -116
  166. data/lib/ace/assign/models/evidence_event.rb +0 -86
  167. data/lib/ace/assign/models/execution_receipt.rb +0 -139
  168. data/lib/ace/assign/molecules/attempt_reconciler.rb +0 -127
  169. data/lib/ace/assign/molecules/attempt_store.rb +0 -201
  170. data/lib/ace/assign/molecules/canonical_attempt_state.rb +0 -151
  171. data/lib/ace/assign/molecules/canonical_evidence.rb +0 -170
  172. data/lib/ace/assign/molecules/canonical_read_commands.rb +0 -84
  173. data/lib/ace/assign/molecules/canonical_read_snapshot.rb +0 -313
  174. data/lib/ace/assign/molecules/evidence_calculator.rb +0 -237
  175. data/lib/ace/assign/molecules/evidence_journal.rb +0 -1899
  176. data/lib/ace/assign/molecules/execution_identity_resolver.rb +0 -137
  177. data/lib/ace/assign/molecules/execution_scope_lineage.rb +0 -345
  178. data/lib/ace/assign/molecules/fixed_effect_reference.rb +0 -31
  179. data/lib/ace/assign/molecules/installed_journal_read.rb +0 -143
  180. data/lib/ace/assign/molecules/journal_input_inhibition.rb +0 -78
  181. data/lib/ace/assign/molecules/journal_mutation.rb +0 -274
  182. data/lib/ace/assign/molecules/journal_prompt_mutation.rb +0 -241
  183. data/lib/ace/assign/molecules/ordinary_merge_cli.rb +0 -68
  184. data/lib/ace/assign/molecules/ordinary_merge_contract.rb +0 -410
  185. data/lib/ace/assign/molecules/original_launch_binding.rb +0 -37
  186. data/lib/ace/assign/molecules/proposal_journal.rb +0 -179
  187. data/lib/ace/assign/molecules/protected_control_exclusion.rb +0 -303
  188. data/lib/ace/assign/molecules/protected_workspace_exclusion.rb +0 -330
  189. data/lib/ace/assign/molecules/protected_workspace_provisioner.rb +0 -164
  190. data/lib/ace/assign/molecules/receipt_verifier.rb +0 -320
  191. data/lib/ace/assign/molecules/terminal_scope_receipt.rb +0 -88
  192. data/lib/ace/assign/organisms/attempt_coordinator.rb +0 -1374
  193. data/lib/ace/assign/organisms/delivery_coordinator.rb +0 -342
  194. data/lib/ace/assign/organisms/ordinary_driver.rb +0 -310
  195. data/lib/ace/assign/organisms/ordinary_merge_consumer.rb +0 -365
  196. data/lib/ace/assign/organisms/prepared_work_builder.rb +0 -194
  197. data/lib/ace/assign/organisms/protected_delivery_coordinator.rb +0 -100
@@ -54,6 +54,11 @@ module Ace
54
54
  configured_skill_paths = skill_paths || Ace::Assign.config["skill_source_paths"]
55
55
  configured_workflow_paths = workflow_paths || Ace::Assign.config["workflow_source_paths"]
56
56
 
57
+ if Ace::Support::Cli::Toolchain.installed?
58
+ configured_skill_paths = []
59
+ configured_workflow_paths = []
60
+ end
61
+
57
62
  canonical_paths = discover_canonical_skill_source_paths
58
63
  canonical_workflow_paths = discover_canonical_workflow_source_paths
59
64
  override_paths = normalize_paths(configured_skill_paths || [])
@@ -459,6 +464,8 @@ module Ace
459
464
  end
460
465
  end
461
466
 
467
+ return registry_paths.uniq if Ace::Support::Cli::Toolchain.installed?
468
+
462
469
  (registry_paths + discover_package_default_source_paths(package_glob)).uniq
463
470
  end
464
471
 
@@ -501,6 +508,8 @@ module Ace
501
508
  end
502
509
 
503
510
  def external_implicit_source?(source, directory)
511
+ return false if Ace::Support::Cli::Toolchain.installed? && source.origin.to_s == "gem-default"
512
+
504
513
  return false if path_within_project?(directory)
505
514
  return false if explicit_registration?(source)
506
515
 
@@ -68,12 +68,6 @@ module Ace
68
68
 
69
69
  assignment_config = config["assignment"] || {}
70
70
  steps_config = config["steps"] || []
71
- if config.key?("delivery")
72
- Atoms::DeliveryParameters.validate(config["delivery"])
73
- unless Array(steps_config).any? { |step| %w[create-pr update-pr-desc mark-pr-ready].include?(step["name"]) }
74
- raise ArgumentError, "Explicit delivery inputs require remote steps"
75
- end
76
- end
77
71
 
78
72
  raise Error, "No steps defined in config" if steps_config.empty?
79
73
 
@@ -21,7 +21,7 @@ module Ace
21
21
  @executor = executor || AssignmentExecutor.new
22
22
  end
23
23
 
24
- def call(task_refs:, preset_name: DEFAULT_PRESET, primary_task_ref: nil, delivery_parameters: nil, project_id: nil)
24
+ def call(task_refs:, preset_name: DEFAULT_PRESET, primary_task_ref: nil, project_id: nil)
25
25
  requested_refs = normalize_requested_refs(task_refs)
26
26
  raise Ace::Support::Cli::Error, "--task requires at least one task reference" if requested_refs.empty?
27
27
 
@@ -48,14 +48,10 @@ module Ace
48
48
  validate_parameters!(preset, params)
49
49
 
50
50
  steps = Atoms::PresetExpander.expand(preset, params)
51
- delivery = delivery_parameters && Atoms::DeliveryParameters.validate(delivery_parameters)
52
- if delivery && !steps.any? { |step| %w[create-pr update-pr-desc mark-pr-ready].include?(step["name"]) }
53
- raise ArgumentError, "Explicit delivery inputs require a remote-capable preset"
54
- end
55
51
  job_path = write_job_file(
56
52
  session_name: "#{preset_name}-#{primary_ref}",
57
53
  description: preset["description"],
58
- steps: steps, delivery: delivery
54
+ steps: steps
59
55
  )
60
56
 
61
57
  start_options = {task_id: primary_ref}
@@ -153,7 +149,7 @@ module Ace
153
149
  raise Ace::Support::Cli::Error, errors.join(", ")
154
150
  end
155
151
 
156
- def write_job_file(session_name:, description:, steps:, delivery: nil)
152
+ def write_job_file(session_name:, description:, steps:)
157
153
  job = {
158
154
  "session" => {
159
155
  "name" => session_name,
@@ -162,7 +158,6 @@ module Ace
162
158
  "steps" => steps
163
159
  }
164
160
 
165
- job["delivery"] = delivery if delivery
166
161
  dir = File.join(Ace::Assign.cache_dir, "jobs")
167
162
  FileUtils.mkdir_p(dir)
168
163
  path = File.join(dir, "#{session_name}-#{SecureRandom.hex(4)}-job.yml")
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Assign
5
- VERSION = "0.71.0"
5
+ VERSION = "0.73.1"
6
6
  end
7
7
  end
data/lib/ace/assign.rb CHANGED
@@ -96,9 +96,3 @@ module Ace
96
96
  private_class_method :load_gem_defaults_fallback
97
97
  end
98
98
  end
99
-
100
- require_relative "assign/atoms/delivery_parameters"
101
- require_relative "assign/molecules/ordinary_merge_contract"
102
- require_relative "assign/molecules/ordinary_merge_cli"
103
- require_relative "assign/organisms/ordinary_merge_consumer"
104
- require_relative "assign/organisms/delivery_coordinator"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ace-assign
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.71.0
4
+ version: 0.73.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-10-16 00:00:00.000000000 Z
10
+ date: 2026-10-20 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-llm-providers-cli
@@ -78,6 +78,9 @@ dependencies:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
80
  version: '0.6'
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: 0.6.10
81
84
  type: :runtime
82
85
  prerelease: false
83
86
  version_requirements: !ruby/object:Gem::Requirement
@@ -85,6 +88,9 @@ dependencies:
85
88
  - - "~>"
86
89
  - !ruby/object:Gem::Version
87
90
  version: '0.6'
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: 0.6.10
88
94
  - !ruby/object:Gem::Dependency
89
95
  name: ace-support-core
90
96
  requirement: !ruby/object:Gem::Requirement
@@ -120,6 +126,9 @@ dependencies:
120
126
  - - "~>"
121
127
  - !ruby/object:Gem::Version
122
128
  version: '0.28'
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: 0.28.8
123
132
  type: :runtime
124
133
  prerelease: false
125
134
  version_requirements: !ruby/object:Gem::Requirement
@@ -127,6 +136,9 @@ dependencies:
127
136
  - - "~>"
128
137
  - !ruby/object:Gem::Version
129
138
  version: '0.28'
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: 0.28.8
130
142
  - !ruby/object:Gem::Dependency
131
143
  name: ace-b36ts
132
144
  requirement: !ruby/object:Gem::Requirement
@@ -141,20 +153,6 @@ dependencies:
141
153
  - - "~>"
142
154
  - !ruby/object:Gem::Version
143
155
  version: '0.14'
144
- - !ruby/object:Gem::Dependency
145
- name: ace-support-markdown
146
- requirement: !ruby/object:Gem::Requirement
147
- requirements:
148
- - - "~>"
149
- - !ruby/object:Gem::Version
150
- version: '0.3'
151
- type: :runtime
152
- prerelease: false
153
- version_requirements: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - "~>"
156
- - !ruby/object:Gem::Version
157
- version: '0.3'
158
156
  - !ruby/object:Gem::Dependency
159
157
  name: ace-llm
160
158
  requirement: !ruby/object:Gem::Requirement
@@ -175,14 +173,14 @@ dependencies:
175
173
  requirements:
176
174
  - - "~>"
177
175
  - !ruby/object:Gem::Version
178
- version: 0.61.0
176
+ version: 0.62.0
179
177
  type: :runtime
180
178
  prerelease: false
181
179
  version_requirements: !ruby/object:Gem::Requirement
182
180
  requirements:
183
181
  - - "~>"
184
182
  - !ruby/object:Gem::Version
185
- version: 0.61.0
183
+ version: 0.62.0
186
184
  - !ruby/object:Gem::Dependency
187
185
  name: ace-task
188
186
  requirement: !ruby/object:Gem::Requirement
@@ -246,6 +244,9 @@ dependencies:
246
244
  - - "~>"
247
245
  - !ruby/object:Gem::Version
248
246
  version: '0.6'
247
+ - - ">="
248
+ - !ruby/object:Gem::Version
249
+ version: 0.8.1
249
250
  type: :runtime
250
251
  prerelease: false
251
252
  version_requirements: !ruby/object:Gem::Requirement
@@ -253,6 +254,9 @@ dependencies:
253
254
  - - "~>"
254
255
  - !ruby/object:Gem::Version
255
256
  version: '0.6'
257
+ - - ">="
258
+ - !ruby/object:Gem::Version
259
+ version: 0.8.1
256
260
  - !ruby/object:Gem::Dependency
257
261
  name: ace-support-test-helpers
258
262
  requirement: !ruby/object:Gem::Requirement
@@ -302,7 +306,6 @@ email:
302
306
  - mc@cs3b.com
303
307
  executables:
304
308
  - ace-assign
305
- - ace-scope-ready
306
309
  extensions: []
307
310
  extra_rdoc_files: []
308
311
  files:
@@ -345,13 +348,9 @@ files:
345
348
  - ".ace-defaults/assign/catalog/steps/verify-test.step.yml"
346
349
  - ".ace-defaults/assign/catalog/steps/work-on-task.step.yml"
347
350
  - ".ace-defaults/assign/config.yml"
348
- - ".ace-defaults/assign/presets/close-delivery.yml"
349
- - ".ace-defaults/assign/presets/deliver-release.yml"
350
351
  - ".ace-defaults/assign/presets/fix-bug.yml"
351
- - ".ace-defaults/assign/presets/integrate-batch.yml"
352
352
  - ".ace-defaults/assign/presets/quick-implement.yml"
353
353
  - ".ace-defaults/assign/presets/release-only.yml"
354
- - ".ace-defaults/assign/presets/supervise-delivery.yml"
355
354
  - ".ace-defaults/assign/presets/work-on-docs.yml"
356
355
  - ".ace-defaults/assign/presets/work-on-task-ace-development.yml"
357
356
  - ".ace-defaults/assign/presets/work-on-task-auto-merge.yml"
@@ -371,10 +370,8 @@ files:
371
370
  - docs/exit-codes.md
372
371
  - docs/getting-started.md
373
372
  - docs/handbook.md
374
- - docs/protected-authority.md
375
373
  - docs/usage.md
376
374
  - exe/ace-assign
377
- - exe/ace-scope-ready
378
375
  - handbook/guides/fork-context.g.md
379
376
  - handbook/skills/as-assign-add-task/SKILL.md
380
377
  - handbook/skills/as-assign-compose/SKILL.md
@@ -403,15 +400,8 @@ files:
403
400
  - handbook/workflow-instructions/assign/verify-test-suite.wf.md
404
401
  - lib/ace/assign.rb
405
402
  - lib/ace/assign/atoms/assign_frontmatter_parser.rb
406
- - lib/ace/assign/atoms/assignment_scope.rb
407
- - lib/ace/assign/atoms/attempt_state_machine.rb
408
- - lib/ace/assign/atoms/candidate_limits.rb
409
403
  - lib/ace/assign/atoms/catalog_loader.rb
410
404
  - lib/ace/assign/atoms/composition_rules.rb
411
- - lib/ace/assign/atoms/delivery_parameters.rb
412
- - lib/ace/assign/atoms/evidence_digest.rb
413
- - lib/ace/assign/atoms/fixed_merge_schemas.rb
414
- - lib/ace/assign/atoms/git_blob_batch.rb
415
405
  - lib/ace/assign/atoms/number_generator.rb
416
406
  - lib/ace/assign/atoms/preset_expander.rb
417
407
  - lib/ace/assign/atoms/preset_loader.rb
@@ -420,180 +410,36 @@ files:
420
410
  - lib/ace/assign/atoms/step_numbering.rb
421
411
  - lib/ace/assign/atoms/step_sorter.rb
422
412
  - lib/ace/assign/atoms/tree_formatter.rb
423
- - lib/ace/assign/authority/assignment_definition.rb
424
- - lib/ace/assign/authority/assignment_inventory.rb
425
- - lib/ace/assign/authority/campaign_consumer_policy.rb
426
- - lib/ace/assign/authority/campaign_execution.rb
427
- - lib/ace/assign/authority/campaign_round_transfer.rb
428
- - lib/ace/assign/authority/candidate_blob_batch.rb
429
- - lib/ace/assign/authority/candidate_head_comparison.rb
430
- - lib/ace/assign/authority/candidate_transfer.rb
431
- - lib/ace/assign/authority/cleanup_result_protection.rb
432
- - lib/ace/assign/authority/client.rb
433
- - lib/ace/assign/authority/command_execution.rb
434
- - lib/ace/assign/authority/deployment.rb
435
- - lib/ace/assign/authority/deployment_history.rb
436
- - lib/ace/assign/authority/endcap.rb
437
- - lib/ace/assign/authority/endcap_attempts.rb
438
- - lib/ace/assign/authority/endcap_campaign_results.rb
439
- - lib/ace/assign/authority/endcap_campaign_rounds.rb
440
- - lib/ace/assign/authority/endcap_contexts.rb
441
- - lib/ace/assign/authority/endcap_inboxes.rb
442
- - lib/ace/assign/authority/endcap_prepared_work.rb
443
- - lib/ace/assign/authority/endcap_publication.rb
444
- - lib/ace/assign/authority/endcap_results.rb
445
- - lib/ace/assign/authority/endcap_review_requests.rb
446
- - lib/ace/assign/authority/endcap_reviews.rb
447
- - lib/ace/assign/authority/endcap_service_context.rb
448
- - lib/ace/assign/authority/endcap_service_settlement.rb
449
- - lib/ace/assign/authority/evidence_transfer.rb
450
- - lib/ace/assign/authority/execution_scope_observation.rb
451
- - lib/ace/assign/authority/fixed_publication_lifecycle.rb
452
- - lib/ace/assign/authority/fixed_service_lifecycle.rb
453
- - lib/ace/assign/authority/inbox_context_original.rb
454
- - lib/ace/assign/authority/launch_attempt_consumers.rb
455
- - lib/ace/assign/authority/launch_campaign_registration.rb
456
- - lib/ace/assign/authority/launch_control_channel.rb
457
- - lib/ace/assign/authority/launch_control_exclusions.rb
458
- - lib/ace/assign/authority/launch_driver.rb
459
- - lib/ace/assign/authority/launch_input_inhibition.rb
460
- - lib/ace/assign/authority/launch_lifecycle.rb
461
- - lib/ace/assign/authority/launch_prepared_work.rb
462
- - lib/ace/assign/authority/launch_review.rb
463
- - lib/ace/assign/authority/launch_scope_abort.rb
464
- - lib/ace/assign/authority/launch_scope_admission.rb
465
- - lib/ace/assign/authority/launch_scope_close.rb
466
- - lib/ace/assign/authority/launch_scope_parent.rb
467
- - lib/ace/assign/authority/launch_scope_release.rb
468
- - lib/ace/assign/authority/launch_steering.rb
469
- - lib/ace/assign/authority/launch_stop.rb
470
- - lib/ace/assign/authority/maintenance_workspace_retirement.rb
471
- - lib/ace/assign/authority/ordinary_attempt_start.rb
472
- - lib/ace/assign/authority/ordinary_client.rb
473
- - lib/ace/assign/authority/ordinary_completion.rb
474
- - lib/ace/assign/authority/ordinary_effect_settlement.rb
475
- - lib/ace/assign/authority/ordinary_lifecycle.rb
476
- - lib/ace/assign/authority/ordinary_merge_evidence.rb
477
- - lib/ace/assign/authority/ordinary_peer.rb
478
- - lib/ace/assign/authority/ordinary_progress.rb
479
- - lib/ace/assign/authority/ordinary_queue.rb
480
- - lib/ace/assign/authority/ordinary_release_artifacts.rb
481
- - lib/ace/assign/authority/ordinary_results.rb
482
- - lib/ace/assign/authority/ordinary_review_evidence.rb
483
- - lib/ace/assign/authority/ordinary_reviews.rb
484
- - lib/ace/assign/authority/ordinary_server.rb
485
- - lib/ace/assign/authority/ordinary_supervisor.rb
486
- - lib/ace/assign/authority/original_inbox_selection.rb
487
- - lib/ace/assign/authority/posix_acl.rb
488
- - lib/ace/assign/authority/prepared_input.rb
489
- - lib/ace/assign/authority/prepared_queue.rb
490
- - lib/ace/assign/authority/prepared_task_context.rb
491
- - lib/ace/assign/authority/prepared_work.rb
492
- - lib/ace/assign/authority/prepared_worker.rb
493
- - lib/ace/assign/authority/private_directory.rb
494
- - lib/ace/assign/authority/protected_assignment_context.rb
495
- - lib/ace/assign/authority/readiness_hook.rb
496
- - lib/ace/assign/authority/receipt_transfer.rb
497
- - lib/ace/assign/authority/release_artifact_manifest.rb
498
- - lib/ace/assign/authority/retained_input.rb
499
- - lib/ace/assign/authority/router.rb
500
- - lib/ace/assign/authority/server.rb
501
- - lib/ace/assign/authority/service_cleanup_dispatch.rb
502
- - lib/ace/assign/authority/service_cleanup_evidence.rb
503
- - lib/ace/assign/authority/service_delivery_evidence.rb
504
- - lib/ace/assign/authority/service_evidence.rb
505
- - lib/ace/assign/authority/service_publication_evidence.rb
506
- - lib/ace/assign/authority/socket_server.rb
507
- - lib/ace/assign/authority/task_context_entry.rb
508
- - lib/ace/assign/authority/transfer_codec.rb
509
413
  - lib/ace/assign/cli.rb
510
414
  - lib/ace/assign/cli/commands/add.rb
511
415
  - lib/ace/assign/cli/commands/assignment_target.rb
512
- - lib/ace/assign/cli/commands/attempt/base.rb
513
- - lib/ace/assign/cli/commands/attempt/evidence.rb
514
- - lib/ace/assign/cli/commands/attempt/finish.rb
515
- - lib/ace/assign/cli/commands/attempt/reconcile.rb
516
- - lib/ace/assign/cli/commands/attempt/start.rb
517
- - lib/ace/assign/cli/commands/attempt/status.rb
518
- - lib/ace/assign/cli/commands/authority/inbox_context_principal.rb
519
- - lib/ace/assign/cli/commands/authority/inbox_context_selection.rb
520
- - lib/ace/assign/cli/commands/authority/launch.rb
521
- - lib/ace/assign/cli/commands/authority/serve.rb
522
- - lib/ace/assign/cli/commands/authority/status.rb
523
- - lib/ace/assign/cli/commands/authority/task_context.rb
524
- - lib/ace/assign/cli/commands/authority/task_context_principal.rb
525
- - lib/ace/assign/cli/commands/authority/task_context_selection.rb
526
- - lib/ace/assign/cli/commands/authority/terminate.rb
527
- - lib/ace/assign/cli/commands/authority/worker.rb
528
- - lib/ace/assign/cli/commands/campaign_export_result.rb
529
- - lib/ace/assign/cli/commands/campaign_record_round.rb
530
416
  - lib/ace/assign/cli/commands/create.rb
531
- - lib/ace/assign/cli/commands/delivery.rb
532
417
  - lib/ace/assign/cli/commands/fail.rb
533
418
  - lib/ace/assign/cli/commands/finish.rb
534
419
  - lib/ace/assign/cli/commands/fork_run.rb
535
420
  - lib/ace/assign/cli/commands/fork_session.rb
536
- - lib/ace/assign/cli/commands/inbox_bind.rb
537
421
  - lib/ace/assign/cli/commands/list.rb
538
- - lib/ace/assign/cli/commands/protected_submission.rb
539
- - lib/ace/assign/cli/commands/resume.rb
540
422
  - lib/ace/assign/cli/commands/retry_cmd.rb
541
423
  - lib/ace/assign/cli/commands/select.rb
542
424
  - lib/ace/assign/cli/commands/start.rb
543
425
  - lib/ace/assign/cli/commands/status.rb
544
426
  - lib/ace/assign/cli/commands/step.rb
545
- - lib/ace/assign/cli/commands/submit_candidate.rb
546
- - lib/ace/assign/cli/commands/submit_result.rb
547
427
  - lib/ace/assign/errors.rb
548
428
  - lib/ace/assign/models/assignment.rb
549
429
  - lib/ace/assign/models/assignment_info.rb
550
- - lib/ace/assign/models/attempt.rb
551
- - lib/ace/assign/models/attempt_binding.rb
552
- - lib/ace/assign/models/evidence_event.rb
553
- - lib/ace/assign/models/execution_receipt.rb
554
430
  - lib/ace/assign/models/queue_state.rb
555
431
  - lib/ace/assign/models/step.rb
556
432
  - lib/ace/assign/molecules/assignment_discoverer.rb
557
433
  - lib/ace/assign/molecules/assignment_manager.rb
558
- - lib/ace/assign/molecules/attempt_reconciler.rb
559
- - lib/ace/assign/molecules/attempt_store.rb
560
- - lib/ace/assign/molecules/canonical_attempt_state.rb
561
- - lib/ace/assign/molecules/canonical_evidence.rb
562
- - lib/ace/assign/molecules/canonical_read_commands.rb
563
- - lib/ace/assign/molecules/canonical_read_snapshot.rb
564
- - lib/ace/assign/molecules/evidence_calculator.rb
565
- - lib/ace/assign/molecules/evidence_journal.rb
566
- - lib/ace/assign/molecules/execution_identity_resolver.rb
567
- - lib/ace/assign/molecules/execution_scope_lineage.rb
568
- - lib/ace/assign/molecules/fixed_effect_reference.rb
569
434
  - lib/ace/assign/molecules/fork_session_launcher.rb
570
- - lib/ace/assign/molecules/installed_journal_read.rb
571
- - lib/ace/assign/molecules/journal_input_inhibition.rb
572
- - lib/ace/assign/molecules/journal_mutation.rb
573
- - lib/ace/assign/molecules/journal_prompt_mutation.rb
574
435
  - lib/ace/assign/molecules/lifecycle_exclusion.rb
575
- - lib/ace/assign/molecules/ordinary_merge_cli.rb
576
- - lib/ace/assign/molecules/ordinary_merge_contract.rb
577
- - lib/ace/assign/molecules/original_launch_binding.rb
578
436
  - lib/ace/assign/molecules/preset_inferrer.rb
579
- - lib/ace/assign/molecules/proposal_journal.rb
580
- - lib/ace/assign/molecules/protected_control_exclusion.rb
581
- - lib/ace/assign/molecules/protected_workspace_exclusion.rb
582
- - lib/ace/assign/molecules/protected_workspace_provisioner.rb
583
437
  - lib/ace/assign/molecules/queue_scanner.rb
584
- - lib/ace/assign/molecules/receipt_verifier.rb
585
438
  - lib/ace/assign/molecules/runtime_control_surface_runner.rb
586
439
  - lib/ace/assign/molecules/skill_assign_source_resolver.rb
587
440
  - lib/ace/assign/molecules/step_renumberer.rb
588
441
  - lib/ace/assign/molecules/step_writer.rb
589
- - lib/ace/assign/molecules/terminal_scope_receipt.rb
590
442
  - lib/ace/assign/organisms/assignment_executor.rb
591
- - lib/ace/assign/organisms/attempt_coordinator.rb
592
- - lib/ace/assign/organisms/delivery_coordinator.rb
593
- - lib/ace/assign/organisms/ordinary_driver.rb
594
- - lib/ace/assign/organisms/ordinary_merge_consumer.rb
595
- - lib/ace/assign/organisms/prepared_work_builder.rb
596
- - lib/ace/assign/organisms/protected_delivery_coordinator.rb
597
443
  - lib/ace/assign/organisms/task_assignment_creator.rb
598
444
  - lib/ace/assign/version.rb
599
445
  homepage: https://github.com/cs3b/ace
@@ -1,57 +0,0 @@
1
- # Close only an accepted delivery scope after preservation and writer checks.
2
- # Usage: ace-assign create --task TASK[,TASK...] --preset close-delivery
3
-
4
- name: close-delivery
5
- description: Preserve delivery evidence and work, prove quiescence, and close only accepted delivery scope
6
-
7
- parameters:
8
- taskrefs:
9
- required: true
10
- type: array
11
- description: Producer task references whose accepted delivery scope is being closed
12
-
13
- steps:
14
- - name: preserve-delivery-record
15
- number: "010"
16
- instructions: |
17
- For producer task references {{taskrefs}}, preserve accepted evidence and work
18
- before any cleanup: exact source heads, decision records, tests, independent
19
- review, integration/release manifests, operation references, callbacks, receipts,
20
- blockers, and uncertain effects. Verify the durable destinations and retain the
21
- delivery tag and producer references so archived delivery remains discoverable.
22
- Do not change producer task status or reparent producer tasks.
23
-
24
- - name: verify-no-surviving-writers
25
- number: "020"
26
- instructions: |
27
- Execute current canonical status checks for every assignment, attempt, worker,
28
- reviewer, integrator, publisher, callback handler, worktree, and other scoped
29
- actor. Require positive evidence of no surviving writers. Missing, unreadable,
30
- active, or uncertain lifecycle state blocks closure and cleanup; a quiet terminal
31
- or completed worker is not proof.
32
-
33
- - name: verify-accepted-scope
34
- number: "030"
35
- instructions: |
36
- Compare the requested closure against the accepted delivery scope and project
37
- decision record. Confirm every intended outcome has an attributable accepted
38
- receipt and every excluded, deferred, blocked, or uncertain item remains visible.
39
- Close only the accepted delivery scope; never close producer work, unrelated
40
- delivery tasks, or a broader release because one path succeeded.
41
-
42
- - name: reference-host-operations
43
- number: "040"
44
- instructions: |
45
- Preserve references to host-owned root installation, deployment, service, and
46
- cleanup operations. This preset neither performs nor claims those effects. A
47
- missing root receipt remains attributable to the host owner and blocks only the
48
- scope that requires it.
49
-
50
- - name: close-accepted-delivery
51
- number: "050"
52
- instructions: |
53
- After preservation, no-surviving-writers proof, and full accepted-scope
54
- reconciliation, close and archive only this delivery record through the existing
55
- task/Assign owner. Preserve the delivery tag, producer references, and evidence
56
- links. Do not infer implementation-parent or producer task status changes.
57
-
@@ -1,60 +0,0 @@
1
- # Prepare a stable release cut from an explicitly accepted producer set.
2
- # Usage: ace-assign create --task TASK[,TASK...] --preset deliver-release
3
-
4
- name: deliver-release
5
- description: Deliver a bound release cut through the project-authorized publisher and installation owners
6
-
7
- parameters:
8
- taskrefs:
9
- required: true
10
- type: array
11
- description: Producer task references contributing to the accepted release source set
12
-
13
- steps:
14
- - name: bind-release-cut
15
- number: "010"
16
- instructions: |
17
- From producer task references {{taskrefs}}, record one immutable release manifest
18
- containing the exact accepted source set (repository/ref and commit SHA for every
19
- member), every package name and version, every artifact digest with algorithm,
20
- the decision actor and timestamp, and the policy/plan revision plus evidence
21
- references that accepted the cut. Reject incomplete or ambiguous bindings.
22
- Once accepted, do not add later merges or silently replace a source, version, or
23
- artifact; make a new release-cut decision instead.
24
-
25
- - name: verify-release-evidence
26
- number: "020"
27
- instructions: |
28
- Verify tests and independent review are current for every exact source head in the
29
- manifest. Reconcile target movement and provenance before preparation. A moved or
30
- rebuilt source requires renewed evidence and a newly bound artifact digest.
31
-
32
- - name: prepare-release-artifacts
33
- number: "030"
34
- instructions: |
35
- Perform only project-authorized local release preparation. Build artifacts from
36
- the bound source set, verify the declared package name and version, compute the
37
- final artifact digest, and update the manifest before it is accepted. Preparation
38
- is not publication, installation, deployment, or proof of any of those effects.
39
-
40
- - name: request-authorized-publication
41
- number: "040"
42
- instructions: |
43
- Resolve the concrete publication workflow and executor from project policy and
44
- invoke that existing workflow with the exact accepted manifest through the separate
45
- publication authority. This step grants no credentials or permission by itself.
46
- Missing publisher identity, executable binding, or admission is BLOCKED(provision, owner).
47
- Use the project's existing publisher, dependency order and scoped HITL OTP route.
48
- Record the accepted operation reference and reconciliation path before WAIT.
49
- Track published, pending and uncertain artifacts separately. Verify registry version
50
- and digest before retry; never republish an already matching artifact or repeat an
51
- uncertain effect blindly. Keep delivery open after partial or unknown publication.
52
-
53
- - name: record-release-outcome
54
- number: "050"
55
- instructions: |
56
- Record only attributable publication, installation, or deployment receipts from
57
- their owning authorities, each bound to the exact manifest. Host-owned root
58
- effects remain referenced external operations. Keep later merges outside this
59
- release outcome.
60
-
@@ -1,72 +0,0 @@
1
- # Select and integrate an ordered batch from existing producer tasks.
2
- # Usage: ace-assign create --task TASK[,TASK...] --preset integrate-batch
3
-
4
- name: integrate-batch
5
- description: Select a dependency-valid integration batch and renew exact-head evidence after candidate movement
6
-
7
- parameters:
8
- taskrefs:
9
- required: true
10
- type: array
11
- description: Existing producer task references eligible for batch selection
12
-
13
- steps:
14
- - name: select-integration-batch
15
- number: "010"
16
- instructions: |
17
- Resolve the current project delivery guide and evaluate producer task references
18
- {{taskrefs}}. Record the ordered eligible set, selected entries in intended
19
- integration order, deferred entries with reasons, decision actor and timestamp,
20
- policy/plan revision, and evidence references. Bind each selected entry to its
21
- exact candidate head SHA and the current target branch SHA. Do not derive order
22
- from completion time and do not reparent producer tasks.
23
-
24
- - name: delegate-candidate-update
25
- number: "020"
26
- instructions: |
27
- When the target branch moved or a selected candidate needs rebase, conflict
28
- resolution, or another head-changing update, delegate that update to an
29
- attributable executor. Retain the old and new exact candidate head SHA and the
30
- declared delta. Do not perform integration from evidence bound to the old head.
31
-
32
- - name: delegate-renewed-evidence
33
- number: "030"
34
- instructions: |
35
- Require an initial independent reviewer verdict, then record an accepted-head
36
- assessment after every candidate movement. Retain old/new head and base SHAs,
37
- the executed range-diff/content comparison, full repository context, risks and
38
- fresh relevant tests. Proven identical rebases may carry the initial review;
39
- patch-id alone is insufficient. An integrator may accept a minor safe correction
40
- with recorded reasoning and tests. Material or uncertain changes, including small
41
- authority/security changes, require independent delta review. Keep the initial
42
- review and formal forge approval actor/state/SHA separate from this assessment.
43
- Post and read back the evidence before merge; use the exact accepted head in the
44
- server-side merge guard. Failed publication of evidence blocks integration.
45
-
46
- - name: reevaluate-integration-readiness
47
- number: "040"
48
- instructions: |
49
- Re-read dependency state, candidate and target branch heads, evidence,
50
- authorization, transport, and grouping constraints immediately before requesting
51
- integration. Any change voids prior eligibility and requires a new complete
52
- selection decision record. Defer every candidate whose exact-head evidence is no
53
- longer current.
54
-
55
- - name: request-integration
56
- number: "050"
57
- instructions: |
58
- Request integration only through the project's authorized integrator, preserving
59
- the exact ordered candidates and target binding. This step grants no merge
60
- authority. Missing provision is BLOCKED(provision, owner). After a request is
61
- accepted, WAIT requires its durable operation reference and exact reconciliation
62
- path. On an uncertain effect, reconcile the original operation and never repeat
63
- the merge request blindly.
64
-
65
- - name: record-integration-result
66
- number: "060"
67
- instructions: |
68
- Record the authoritative result and resulting target head for each selected entry,
69
- or the attributable blocker. Re-evaluate remaining candidates against the moved
70
- target before another effect; successful integration does not select a release cut
71
- or authorize publication.
72
-