ace-assign 0.63.1 → 0.66.0

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 (147) hide show
  1. checksums.yaml +4 -4
  2. data/.ace-defaults/assign/catalog/steps/auto-merge.step.yml +11 -0
  3. data/.ace-defaults/assign/catalog/steps/create-pr.step.yml +2 -2
  4. data/.ace-defaults/assign/catalog/steps/mark-pr-ready.step.yml +1 -1
  5. data/.ace-defaults/assign/catalog/steps/release-minor.step.yml +4 -2
  6. data/.ace-defaults/assign/catalog/steps/release.step.yml +4 -2
  7. data/.ace-defaults/assign/catalog/steps/update-pr-desc.step.yml +1 -1
  8. data/.ace-defaults/assign/presets/fix-bug.yml +15 -3
  9. data/.ace-defaults/assign/presets/work-on-task-ace-development.yml +16 -4
  10. data/.ace-defaults/assign/presets/work-on-task-auto-merge.yml +15 -3
  11. data/.ace-defaults/assign/presets/work-on-task.yml +16 -4
  12. data/CHANGELOG.md +62 -0
  13. data/docs/demo/canonical-skill-source.tape.yml +4 -4
  14. data/docs/protected-authority.md +282 -0
  15. data/docs/usage.md +205 -3
  16. data/exe/ace-scope-ready +55 -0
  17. data/handbook/workflow-instructions/assign/drive.wf.md +28 -3
  18. data/handbook/workflow-instructions/assign/prepare.wf.md +2 -2
  19. data/lib/ace/assign/atoms/attempt_state_machine.rb +8 -0
  20. data/lib/ace/assign/atoms/delivery_parameters.rb +19 -0
  21. data/lib/ace/assign/authority/assignment_inventory.rb +290 -0
  22. data/lib/ace/assign/authority/campaign_consumer_policy.rb +100 -0
  23. data/lib/ace/assign/authority/campaign_execution.rb +119 -0
  24. data/lib/ace/assign/authority/campaign_round_transfer.rb +82 -0
  25. data/lib/ace/assign/authority/candidate_transfer.rb +327 -0
  26. data/lib/ace/assign/authority/cleanup_result_protection.rb +53 -0
  27. data/lib/ace/assign/authority/client.rb +257 -0
  28. data/lib/ace/assign/authority/deployment.rb +627 -0
  29. data/lib/ace/assign/authority/deployment_history.rb +146 -0
  30. data/lib/ace/assign/authority/endcap.rb +455 -0
  31. data/lib/ace/assign/authority/endcap_attempts.rb +274 -0
  32. data/lib/ace/assign/authority/endcap_campaign_results.rb +232 -0
  33. data/lib/ace/assign/authority/endcap_campaign_rounds.rb +266 -0
  34. data/lib/ace/assign/authority/endcap_contexts.rb +23 -0
  35. data/lib/ace/assign/authority/endcap_inboxes.rb +37 -0
  36. data/lib/ace/assign/authority/endcap_prepared_work.rb +80 -0
  37. data/lib/ace/assign/authority/endcap_publication.rb +207 -0
  38. data/lib/ace/assign/authority/endcap_results.rb +398 -0
  39. data/lib/ace/assign/authority/endcap_review_requests.rb +183 -0
  40. data/lib/ace/assign/authority/endcap_reviews.rb +130 -0
  41. data/lib/ace/assign/authority/endcap_service_settlement.rb +152 -0
  42. data/lib/ace/assign/authority/endcap_services.rb +598 -0
  43. data/lib/ace/assign/authority/evidence_transfer.rb +67 -0
  44. data/lib/ace/assign/authority/execution_scope_observation.rb +903 -0
  45. data/lib/ace/assign/authority/inbox_context_original.rb +113 -0
  46. data/lib/ace/assign/authority/launch_attempt_consumers.rb +51 -0
  47. data/lib/ace/assign/authority/launch_campaign_registration.rb +214 -0
  48. data/lib/ace/assign/authority/launch_control_channel.rb +313 -0
  49. data/lib/ace/assign/authority/launch_control_exclusions.rb +141 -0
  50. data/lib/ace/assign/authority/launch_driver.rb +393 -0
  51. data/lib/ace/assign/authority/launch_input_inhibition.rb +132 -0
  52. data/lib/ace/assign/authority/launch_lifecycle.rb +997 -0
  53. data/lib/ace/assign/authority/launch_prepared_work.rb +122 -0
  54. data/lib/ace/assign/authority/launch_review.rb +91 -0
  55. data/lib/ace/assign/authority/launch_scope_abort.rb +81 -0
  56. data/lib/ace/assign/authority/launch_scope_admission.rb +215 -0
  57. data/lib/ace/assign/authority/launch_scope_close.rb +146 -0
  58. data/lib/ace/assign/authority/launch_scope_parent.rb +44 -0
  59. data/lib/ace/assign/authority/launch_scope_release.rb +859 -0
  60. data/lib/ace/assign/authority/launch_steering.rb +353 -0
  61. data/lib/ace/assign/authority/launch_stop.rb +254 -0
  62. data/lib/ace/assign/authority/maintenance_workspace_retirement.rb +229 -0
  63. data/lib/ace/assign/authority/original_inbox_selection.rb +41 -0
  64. data/lib/ace/assign/authority/posix_acl.rb +59 -0
  65. data/lib/ace/assign/authority/prepared_input.rb +130 -0
  66. data/lib/ace/assign/authority/prepared_queue.rb +185 -0
  67. data/lib/ace/assign/authority/prepared_task_context.rb +116 -0
  68. data/lib/ace/assign/authority/prepared_work.rb +304 -0
  69. data/lib/ace/assign/authority/prepared_worker.rb +69 -0
  70. data/lib/ace/assign/authority/private_directory.rb +33 -0
  71. data/lib/ace/assign/authority/protected_assignment_context.rb +226 -0
  72. data/lib/ace/assign/authority/readiness_hook.rb +120 -0
  73. data/lib/ace/assign/authority/receipt_transfer.rb +48 -0
  74. data/lib/ace/assign/authority/router.rb +76 -0
  75. data/lib/ace/assign/authority/server.rb +300 -0
  76. data/lib/ace/assign/authority/service_cleanup_dispatch.rb +88 -0
  77. data/lib/ace/assign/authority/service_cleanup_evidence.rb +180 -0
  78. data/lib/ace/assign/authority/service_delivery_evidence.rb +101 -0
  79. data/lib/ace/assign/authority/service_evidence.rb +286 -0
  80. data/lib/ace/assign/authority/service_publication_evidence.rb +110 -0
  81. data/lib/ace/assign/authority/task_context_entry.rb +32 -0
  82. data/lib/ace/assign/authority/transfer_codec.rb +187 -0
  83. data/lib/ace/assign/cli/commands/assignment_target.rb +15 -2
  84. data/lib/ace/assign/cli/commands/attempt/base.rb +49 -0
  85. data/lib/ace/assign/cli/commands/attempt/finish.rb +20 -4
  86. data/lib/ace/assign/cli/commands/attempt/reconcile.rb +11 -0
  87. data/lib/ace/assign/cli/commands/authority/inbox_context_principal.rb +25 -0
  88. data/lib/ace/assign/cli/commands/authority/inbox_context_selection.rb +28 -0
  89. data/lib/ace/assign/cli/commands/authority/launch.rb +97 -0
  90. data/lib/ace/assign/cli/commands/authority/serve.rb +31 -0
  91. data/lib/ace/assign/cli/commands/authority/status.rb +26 -0
  92. data/lib/ace/assign/cli/commands/authority/task_context.rb +31 -0
  93. data/lib/ace/assign/cli/commands/authority/task_context_principal.rb +25 -0
  94. data/lib/ace/assign/cli/commands/authority/task_context_selection.rb +30 -0
  95. data/lib/ace/assign/cli/commands/authority/terminate.rb +29 -0
  96. data/lib/ace/assign/cli/commands/authority/worker.rb +23 -0
  97. data/lib/ace/assign/cli/commands/campaign_export_result.rb +55 -0
  98. data/lib/ace/assign/cli/commands/campaign_record_round.rb +57 -0
  99. data/lib/ace/assign/cli/commands/create.rb +11 -1
  100. data/lib/ace/assign/cli/commands/delivery.rb +107 -0
  101. data/lib/ace/assign/cli/commands/fail.rb +6 -0
  102. data/lib/ace/assign/cli/commands/finish.rb +23 -2
  103. data/lib/ace/assign/cli/commands/fork_session.rb +6 -2
  104. data/lib/ace/assign/cli/commands/inbox_bind.rb +34 -0
  105. data/lib/ace/assign/cli/commands/protected_submission.rb +61 -0
  106. data/lib/ace/assign/cli/commands/resume.rb +38 -0
  107. data/lib/ace/assign/cli/commands/select.rb +2 -0
  108. data/lib/ace/assign/cli/commands/start.rb +2 -0
  109. data/lib/ace/assign/cli/commands/status.rb +4 -2
  110. data/lib/ace/assign/cli/commands/step.rb +3 -1
  111. data/lib/ace/assign/cli/commands/submit_candidate.rb +34 -0
  112. data/lib/ace/assign/cli/commands/submit_result.rb +61 -0
  113. data/lib/ace/assign/cli.rb +56 -4
  114. data/lib/ace/assign/errors.rb +139 -0
  115. data/lib/ace/assign/models/assignment.rb +26 -4
  116. data/lib/ace/assign/models/evidence_event.rb +4 -2
  117. data/lib/ace/assign/molecules/assignment_manager.rb +12 -2
  118. data/lib/ace/assign/molecules/attempt_reconciler.rb +51 -12
  119. data/lib/ace/assign/molecules/canonical_attempt_state.rb +151 -0
  120. data/lib/ace/assign/molecules/canonical_evidence.rb +153 -0
  121. data/lib/ace/assign/molecules/canonical_read_snapshot.rb +374 -0
  122. data/lib/ace/assign/molecules/evidence_journal.rb +922 -91
  123. data/lib/ace/assign/molecules/execution_identity_resolver.rb +49 -9
  124. data/lib/ace/assign/molecules/execution_scope_lineage.rb +345 -0
  125. data/lib/ace/assign/molecules/fork_session_launcher.rb +16 -6
  126. data/lib/ace/assign/molecules/journal_input_inhibition.rb +78 -0
  127. data/lib/ace/assign/molecules/journal_mutation.rb +271 -0
  128. data/lib/ace/assign/molecules/journal_prompt_mutation.rb +241 -0
  129. data/lib/ace/assign/molecules/lifecycle_exclusion.rb +182 -26
  130. data/lib/ace/assign/molecules/original_launch_binding.rb +37 -0
  131. data/lib/ace/assign/molecules/proposal_journal.rb +151 -0
  132. data/lib/ace/assign/molecules/protected_control_exclusion.rb +303 -0
  133. data/lib/ace/assign/molecules/protected_workspace_exclusion.rb +330 -0
  134. data/lib/ace/assign/molecules/protected_workspace_provisioner.rb +164 -0
  135. data/lib/ace/assign/molecules/queue_scanner.rb +26 -11
  136. data/lib/ace/assign/molecules/receipt_verifier.rb +68 -32
  137. data/lib/ace/assign/molecules/step_writer.rb +27 -5
  138. data/lib/ace/assign/molecules/terminal_scope_receipt.rb +88 -0
  139. data/lib/ace/assign/organisms/assignment_executor.rb +10 -4
  140. data/lib/ace/assign/organisms/attempt_coordinator.rb +302 -13
  141. data/lib/ace/assign/organisms/delivery_coordinator.rb +342 -0
  142. data/lib/ace/assign/organisms/prepared_work_builder.rb +194 -0
  143. data/lib/ace/assign/organisms/protected_delivery_coordinator.rb +100 -0
  144. data/lib/ace/assign/organisms/task_assignment_creator.rb +11 -4
  145. data/lib/ace/assign/version.rb +1 -1
  146. data/lib/ace/assign.rb +4 -102
  147. metadata +186 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d743c208ce34b070929c7c5cc2acdd200289e7a82e3e2acd62129ec1d22daa5
4
- data.tar.gz: 3b4e13b527152e703f7a489f0c7b123b0676c682f6eccb3bd6f30680cf96ace2
3
+ metadata.gz: 72c3ae204cb6b8b4ee165ba56ca4a9820a28e417b94d74e423048cae1cecc73e
4
+ data.tar.gz: b9b4e043e80071b3d9335876e9d0a4981ac2a532d2db70216050b8d279665cc8
5
5
  SHA512:
6
- metadata.gz: eeba37f93e80112453a79322c0496b6dc5753f5da072556575836a142827c2a3724848978eec0025598babbe1077def70f77fee49df79dd5ae6f54ea668fdd2d
7
- data.tar.gz: f78cf53f13cbb76fb67d7a72756189063fa39d0dddb8eb3b55c28e7acd16377e0fc0a486b126fafe926791905871610800f719d166a55a1e2e65431fe62a3724
6
+ metadata.gz: 51cabda59e2bf66a9b3fb4e9f78670db06e239d290dd7d97ccc98eb43160dc24fd83c6a58b26fb400f7ff4b35e274ea81e625d1469c575c863ee1db50f0b23da
7
+ data.tar.gz: d95a4198c73b1769e21329230b1df943c87826d08905fa1b5f783334b89cc24e6bd3d3dd011f787560f8f6b8859058892cfed2ee254966b73e9d71aad5aba2ba
@@ -0,0 +1,11 @@
1
+ name: auto-merge
2
+ description: Consume an authorized exact-candidate merge through the delivery owner
3
+ workflow: wfi://assign/drive
4
+ instructions: |
5
+ Merge only when separately authorized and the existing merge checks pass.
6
+ For an original protected worker, follow the protected delivery rule in
7
+ wfi://assign/drive using the admitted assignment, attempt and scope. Retain
8
+ exact approved candidate and request selectors. Request the installed service,
9
+ inspect canonical status, and consume its succeeded result with ace-assign
10
+ delivery. Never execute another provider effect during result consumption.
11
+ Refused, unavailable or uncertain delivery leaves this step unfinished.
@@ -1,3 +1,3 @@
1
1
  name: create-pr
2
- skill: as-github-pr-create
3
- instructions: "Create the pull request with --draft before PR review begins."
2
+ skill: as-git-pr-create
3
+ instructions: "Use ace-assign delivery --assignment ID --attempt ATTEMPT --operation create --title TITLE --body-file DESCRIPTION. The canonical workflow creates or reconciles a draft by default before independent review."
@@ -1,6 +1,6 @@
1
1
  name: mark-pr-ready
2
2
  description: Mark a reviewed draft pull request ready after the review completion rule
3
- instructions: "After the review completion rule is met and appropriate tests have passed, run gh pr ready on the draft PR."
3
+ instructions: "After the review completion rule is met and appropriate tests have passed, run ace-assign delivery --assignment ID --attempt ATTEMPT --operation ready --tests TEST-REF --review REVIEW-REF with accepted exact-head evidence."
4
4
  prerequisites:
5
5
  - name: review-pr
6
6
  strength: required
@@ -1,5 +1,5 @@
1
1
  name: release-minor
2
- description: Release modified packages and update CHANGELOGs following semver
2
+ description: Prepare modified package versions and CHANGELOGs; publication is separate
3
3
 
4
4
  prerequisites:
5
5
  - name: verify-test
@@ -17,7 +17,9 @@ when_to_skip:
17
17
  - "No version-worthy changes since last release"
18
18
  - "Release is handled externally"
19
19
 
20
- workflow: wfi://release/publish
20
+ workflow: wfi://release/bump-version
21
21
 
22
22
  effort: light
23
23
  tags: [git, versioning, release]
24
+
25
+ instructions: "Prepare version/changelog changes only. Do not publish gems, deploy, or create a release merely because delivery completes."
@@ -1,5 +1,5 @@
1
1
  name: release
2
- description: Release modified packages and update CHANGELOGs following semver
2
+ description: Prepare modified package versions and CHANGELOGs; publication is separate
3
3
 
4
4
  prerequisites:
5
5
  - name: work-on-task
@@ -17,7 +17,9 @@ when_to_skip:
17
17
  - "No version-worthy changes since last release"
18
18
  - "Release is handled externally"
19
19
 
20
- workflow: wfi://release/publish
20
+ workflow: wfi://release/bump-version
21
21
 
22
22
  effort: light
23
23
  tags: [git, versioning, release]
24
+
25
+ instructions: "Prepare version/changelog changes only. Do not publish gems, deploy, or create a release merely because delivery completes."
@@ -1,5 +1,5 @@
1
1
  name: update-pr-desc
2
- skill: as-github-pr-update
2
+ skill: as-git-pr-update
3
3
  description: Update PR description with implementation summary and final state
4
4
  intent:
5
5
  phrases:
@@ -5,6 +5,18 @@ name: fix-bug
5
5
  description: Fix an issue, verify tests, and create a reviewed PR
6
6
 
7
7
  parameters:
8
+ forge_server:
9
+ required: false
10
+ type: string
11
+ description: Named configured forge; mutually exclusive with forge_default
12
+ forge_default:
13
+ required: false
14
+ type: boolean
15
+ description: Explicitly select the configured default forge
16
+ pr_provenance:
17
+ required: false
18
+ type: object
19
+ description: Explicit mode, head_repository_url, head_ref, base_repository_url and base_ref; required before remote delivery
8
20
  taskref:
9
21
  required: true
10
22
  description: Task reference for the bug fix (e.g., 123 or 256.01)
@@ -37,7 +49,7 @@ steps:
37
49
  - Ensure all required checks pass before continuing.
38
50
 
39
51
  - name: create-pr
40
- skill: as-github-pr-create
52
+ skill: as-git-pr-create
41
53
  instructions:
42
54
  - Create a pull request for the bug fix.
43
55
  - Create it as a draft with --draft; mark it ready only after the review completion rule is met.
@@ -50,13 +62,13 @@ steps:
50
62
  - "Verify findings, fix concrete defects, and run appropriate tests. Record rounds and dispositions; commits do not reset counters."
51
63
 
52
64
  - name: update-pr-desc
53
- workflow: wfi://github/pr/update
65
+ workflow: wfi://git/pr/update
54
66
  instructions:
55
67
  - "Record the review rounds, actual reviewers, findings and tests in the PR description before marking it ready."
56
68
 
57
69
  - name: mark-pr-ready
58
70
  instructions:
59
- - "After review completes and appropriate tests pass, run `gh pr ready` on the draft PR."
71
+ - "After review completes and appropriate tests pass, run `ace-assign delivery --assignment ID --attempt ATTEMPT --operation ready --tests TEST-REF --review REVIEW-REF` with accepted exact-head test and independent review references."
60
72
 
61
73
  customization_hints:
62
74
  - "Add fix-tests after verify-test-suite if failures found"
@@ -5,6 +5,18 @@ name: work-on-task-ace-development
5
5
  description: Full ACE development pipeline with batching, releases, demo recording, and retrospectives
6
6
 
7
7
  parameters:
8
+ forge_server:
9
+ required: false
10
+ type: string
11
+ description: Named configured forge; mutually exclusive with forge_default
12
+ forge_default:
13
+ required: false
14
+ type: boolean
15
+ description: Explicitly select the configured default forge
16
+ pr_provenance:
17
+ required: false
18
+ type: object
19
+ description: Explicit mode, head_repository_url, head_ref, base_repository_url and base_ref; required before remote delivery
8
20
  taskrefs:
9
21
  required: true
10
22
  type: array
@@ -26,11 +38,11 @@ steps:
26
38
  - name: release-minor
27
39
  number: "020"
28
40
  instructions:
29
- - Release all modified packages touched by this batch.
41
+ - Prepare version and changelog changes for modified packages only; publishing is a separate authorized operation.
30
42
 
31
43
  - name: create-pr
32
44
  number: "030"
33
- workflow: wfi://github/pr/create
45
+ workflow: wfi://git/pr/create
34
46
  instructions:
35
47
  - "Create a pull request summarizing batch tasks: {{taskrefs}}."
36
48
  - "Create it as a draft with --draft; mark it ready only after the review completion rule is met."
@@ -61,11 +73,11 @@ steps:
61
73
 
62
74
  - name: update-pr-desc
63
75
  number: "149"
64
- workflow: wfi://github/pr/update
76
+ workflow: wfi://git/pr/update
65
77
  instructions:
66
78
  - "Record the review rounds, actual reviewers, findings and tests in the PR description before marking it ready."
67
79
 
68
80
  - name: mark-pr-ready
69
81
  number: "150"
70
82
  instructions:
71
- - "After review completes and appropriate tests pass, run `gh pr ready` on the draft PR."
83
+ - "After review completes and appropriate tests pass, run `ace-assign delivery --assignment ID --attempt ATTEMPT --operation ready --tests TEST-REF --review REVIEW-REF` with accepted exact-head test and independent review references."
@@ -5,6 +5,18 @@ name: work-on-task-auto-merge
5
5
  description: Work on a task with PR, converging review rounds, and advance authorization for guarded auto-merge
6
6
 
7
7
  parameters:
8
+ forge_server:
9
+ required: false
10
+ type: string
11
+ description: Named configured forge; mutually exclusive with forge_default
12
+ forge_default:
13
+ required: false
14
+ type: boolean
15
+ description: Explicitly select the configured default forge
16
+ pr_provenance:
17
+ required: false
18
+ type: object
19
+ description: Explicit mode, head_repository_url, head_ref, base_repository_url and base_ref; required before remote delivery
8
20
  taskrefs:
9
21
  required: true
10
22
  type: array
@@ -19,7 +31,7 @@ steps:
19
31
 
20
32
  - name: create-pr
21
33
  number: "030"
22
- workflow: wfi://github/pr/create
34
+ workflow: wfi://git/pr/create
23
35
  instructions:
24
36
  - "Create a pull request summarizing task: {{taskrefs}}."
25
37
  - "Create it as a draft with --draft; mark it ready only after the review completion rule is met."
@@ -44,14 +56,14 @@ steps:
44
56
 
45
57
  - name: update-pr-desc
46
58
  number: "147"
47
- workflow: wfi://github/pr/update
59
+ workflow: wfi://git/pr/update
48
60
  instructions:
49
61
  - "Record the review rounds, actual reviewers, findings and tests in the PR description before marking it ready."
50
62
 
51
63
  - name: mark-pr-ready
52
64
  number: "148"
53
65
  instructions:
54
- - "After review completes and appropriate tests pass, run `gh pr ready` on the draft PR."
66
+ - "After review completes and appropriate tests pass, run `ace-assign delivery --assignment ID --attempt ATTEMPT --operation ready --tests TEST-REF --review REVIEW-REF` with accepted exact-head test and independent review references."
55
67
 
56
68
  - name: auto-merge
57
69
  number: "150"
@@ -8,6 +8,18 @@ name: work-on-task
8
8
  description: Work on one or more tasks with PR, iterative review, release, and clean history
9
9
 
10
10
  parameters:
11
+ forge_server:
12
+ required: false
13
+ type: string
14
+ description: Named configured forge; mutually exclusive with forge_default
15
+ forge_default:
16
+ required: false
17
+ type: boolean
18
+ description: Explicitly select the configured default forge
19
+ pr_provenance:
20
+ required: false
21
+ type: object
22
+ description: Explicit mode, head_repository_url, head_ref, base_repository_url and base_ref; required before remote delivery
11
23
  taskrefs:
12
24
  required: true
13
25
  type: array
@@ -32,7 +44,7 @@ steps:
32
44
  - name: release-minor
33
45
  number: "020"
34
46
  instructions:
35
- - Release all modified packages touched by this batch.
47
+ - Prepare version and changelog changes for modified packages only; publishing is a separate authorized operation.
36
48
  - Auto-detect modified packages from the current diff, bump version (minor or patch, usually minor), and update both package and root CHANGELOGs.
37
49
  - This is the initial release for new functionality.
38
50
  - Follow semantic versioning conventions.
@@ -48,7 +60,7 @@ steps:
48
60
 
49
61
  - name: create-pr
50
62
  number: "030"
51
- workflow: wfi://github/pr/create
63
+ workflow: wfi://git/pr/create
52
64
  instructions:
53
65
  - "Create a pull request summarizing batch tasks: {{taskrefs}}."
54
66
  - "Create it as a draft with --draft; mark it ready only after the review completion rule is met."
@@ -127,7 +139,7 @@ steps:
127
139
  - name: update-pr-desc
128
140
  number: "180"
129
141
  context: fork
130
- workflow: wfi://github/pr/update
142
+ workflow: wfi://git/pr/update
131
143
  instructions:
132
144
  - "Update the PR description with the final batch summary for: {{taskrefs}}."
133
145
  - "CRITICAL: The File Changes section must contain the complete, untruncated grouped-stats output from `ace-git diff`. Paste it verbatim — never summarize or abbreviate."
@@ -137,7 +149,7 @@ steps:
137
149
  - name: mark-pr-ready
138
150
  number: "190"
139
151
  instructions:
140
- - "After review completes and appropriate tests pass, run `gh pr ready` on the draft PR."
152
+ - "After review completes and appropriate tests pass, run `ace-assign delivery --assignment ID --attempt ATTEMPT --operation ready --tests TEST-REF --review REVIEW-REF` with accepted exact-head test and independent review references."
141
153
 
142
154
  expansion:
143
155
  batch-parent:
data/CHANGELOG.md CHANGED
@@ -7,6 +7,68 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.66.0] - 2026-10-08
11
+
12
+ ### Added
13
+
14
+ - Connect protected PR delivery and parent/child campaign results to the canonical assignment owner, with current candidate checks, independent review and original operation authorization.
15
+ - Launch authenticated prepared workers through the existing ace-llm provider CLI in the original terminal.
16
+
17
+ ### Changed
18
+
19
+ - Remove message-read proofs, observation/signing APIs and Inbox settlement requirements from finish, recovery and stop. Retain actual service/result/review evidence and whole-scope writer checks.
20
+ - Reuse verified immutable journal inventories only within a single operation while retaining fresh admission and compare-and-swap checks.
21
+ - Preserve original workspace leases when provider ownership or shutdown is uncertain.
22
+
23
+ ## [0.65.0] - 2026-10-06
24
+
25
+ ### Added
26
+
27
+ - Source-only protected original/candidate deployment inventory and shared execution-slot exclusions with immutable journal snapshots; full maintenance eligibility and retirement remain unavailable until historical authentication and current inventory verification are connected.
28
+
29
+ ## [0.64.0] - 2026-10-05
30
+
31
+ ### Added
32
+
33
+ - Connect fixed execution-slot parent activation to canonical sealing, exact never-native-admitted closure, guarded abort, durable reservation release and restart-safe reuse. Native service admission refuses unavailable readiness evidence; admitted and post-native positive closure and complete installer maintenance remain unfinished.
34
+
35
+ - Register canonical execution-scope binding, seal and empty-observation events with an immutable exact-lineage reader. Missing, changed or corrupt generation/proof identities refuse; live scope verification and terminal handlers remain separate owners.
36
+
37
+ - Submit immutable private canonical worker results and fetch one purpose-authorized artifact through the existing authority Client, with retained services status discovery and exact download descriptor validation. Full-service startup remains guarded.
38
+
39
+ - Validate fixed service receiver principals and private placement before authority startup, refusing ambiguous roles, overlapping ownership and inaccessible endpoints.
40
+
41
+ - Add the public protected assignment authority and gated launch driver with canonical reservation, exact binding, one durable release, replay refusal and conservative crash recovery.
42
+
43
+ - Resolve immutable second-commander proposals through confirmed-delivery sixteen-hour policy and canonical Assign authorization.
44
+ - Atomic execution-ref mutation/import primitives with exact reply replay and canonical artifact binding/provenance verification. Intent-only attempts remain reserved until a real process-start fact.
45
+ - Resume from accepted attempt history without relaunch/replay; consume signed inbox observations in the existing journal and preserve unknown owner/effect state.
46
+
47
+ - Attempt-bound, provider-neutral delivery records draft creation, update and readiness in the existing evidence journal; lost responses reconcile exact remote identity without repeating writes. Readiness consumes accepted current test and independent review evidence, and merge consumes the existing authorized service receipt.
48
+ - Explicit forge selection and canonical/fork provenance for remote assignment creation; local assignments reject unused delivery inputs.
49
+
50
+ ### Changed
51
+
52
+ - Declare the required direct dependencies and minimum producer versions for this coordinated release: `ace-git ~> 0.29`, `ace-herdr ~> 0.4`, `ace-llm-providers-cli ~> 0.36.1`, `ace-review ~> 0.59`, `ace-runtime ~> 0.2`, `ace-support-fs ~> 0.3`.
53
+
54
+ - Align prepare/drive discovery and draft creation instructions with the canonical neutral PR skills and attempt-bound delivery command.
55
+
56
+ - Expose read-only runtime_binding for an active accepted attempt using the existing native/process authority, refusing missing, dead, changed or unrelated owner evidence.
57
+
58
+ ### Fixed
59
+
60
+ - Reject duplicate keys and comments in guarded scope-abort evidence using the required strict JSON parser, and preserve canonical slot ownership after child-only failure until whole-scope cleanup is proven.
61
+
62
+ - Attribute local attempts to the kernel process account instead of terminal login/environment; refuse unresolved accounts, privilege transitions and changing credentials.
63
+ - Commit proposal supersession and the new revision atomically with canonical operation replay and unresolved-effect claim exclusion.
64
+
65
+ - Enforce global proposal identity ownership and immutable prepared lifecycle projection in the sole canonical proposal journal.
66
+ - Refuse finish receipts for unbound reservations before terminal acceptance, and preserve exact canonical import bytes across Git filters and CRLF conversion.
67
+
68
+ - Clean failed evidence transactions at every shared journal writer boundary; preserve unbound launch reservations and report explicit recovery evidence requirements.
69
+
70
+ - Retain delivery context across scoped attempts and distinguish a recovered prior effect from a new request with different content or evidence before reporting completion.
71
+
10
72
  ## [0.63.1] - 2026-10-04
11
73
 
12
74
  ### Changed
@@ -19,7 +19,7 @@ scenes:
19
19
  commands:
20
20
  - type: sed -n '20,33p' $PROJECT_ROOT_PATH/ace-task/handbook/skills/as-task-plan/SKILL.md
21
21
  sleep: 3s
22
- - type: sed -n '27,50p' $PROJECT_ROOT_PATH/ace-git/handbook/skills/as-github-pr-create/SKILL.md
22
+ - type: sed -n '1,23p' $PROJECT_ROOT_PATH/ace-git/handbook/skills/as-git-pr-create/SKILL.md
23
23
  sleep: 3s
24
24
  - name: Assignment steps keep the canonical source contract
25
25
  commands:
@@ -33,15 +33,15 @@ scenes:
33
33
  commands:
34
34
  - type: clear
35
35
  sleep: 1s
36
- - type: sed -n '13,36p' $PROJECT_ROOT_PATH/.codex/skills/as-task-plan/SKILL.md
36
+ - type: sed -n '13,36p' $PROJECT_ROOT_PATH/.agents/skills/as-task-plan/SKILL.md
37
37
  sleep: 3s
38
- - type: sed -n '13,49p' $PROJECT_ROOT_PATH/.claude/skills/as-github-pr-create/SKILL.md
38
+ - type: sed -n '1,26p' $PROJECT_ROOT_PATH/.agents/skills/as-git-pr-create/SKILL.md
39
39
  sleep: 3s
40
40
  - name: Lint accepts the canonical skill contract
41
41
  commands:
42
42
  - type: clear
43
43
  sleep: 1s
44
- - type: ace-lint $PROJECT_ROOT_PATH/ace-lint/handbook/skills/as-lint-run/SKILL.md $PROJECT_ROOT_PATH/ace-task/handbook/skills/as-task-plan/SKILL.md $PROJECT_ROOT_PATH/ace-git/handbook/skills/as-github-pr-create/SKILL.md
44
+ - type: ace-lint $PROJECT_ROOT_PATH/ace-lint/handbook/skills/as-lint-run/SKILL.md $PROJECT_ROOT_PATH/ace-task/handbook/skills/as-task-plan/SKILL.md $PROJECT_ROOT_PATH/ace-git/handbook/skills/as-git-pr-create/SKILL.md
45
45
  sleep: 4s
46
46
  verify:
47
47
  forbid_output: