ace-assign 0.66.1 → 0.67.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/.ace-defaults/assign/catalog/composition-rules.yml +0 -0
  3. data/.ace-defaults/assign/catalog/recipes/batch-tasks.recipe.yml +0 -0
  4. data/.ace-defaults/assign/catalog/recipes/documentation.recipe.yml +0 -0
  5. data/.ace-defaults/assign/catalog/recipes/fix-and-review.recipe.yml +0 -0
  6. data/.ace-defaults/assign/catalog/recipes/implement-simple.recipe.yml +0 -0
  7. data/.ace-defaults/assign/catalog/recipes/implement-with-pr.recipe.yml +0 -0
  8. data/.ace-defaults/assign/catalog/recipes/release-only.recipe.yml +0 -0
  9. data/.ace-defaults/assign/catalog/steps/apply-feedback.step.yml +0 -0
  10. data/.ace-defaults/assign/catalog/steps/commit.step.yml +0 -0
  11. data/.ace-defaults/assign/catalog/steps/create-retro.step.yml +0 -0
  12. data/.ace-defaults/assign/catalog/steps/fix-tests.step.yml +0 -0
  13. data/.ace-defaults/assign/catalog/steps/lint.step.yml +0 -0
  14. data/.ace-defaults/assign/catalog/steps/mark-task-done.step.yml +0 -0
  15. data/.ace-defaults/assign/catalog/steps/onboard-base.step.yml +0 -0
  16. data/.ace-defaults/assign/catalog/steps/onboard.step.yml +0 -0
  17. data/.ace-defaults/assign/catalog/steps/plan-task.step.yml +0 -0
  18. data/.ace-defaults/assign/catalog/steps/pre-commit-review.step.yml +0 -0
  19. data/.ace-defaults/assign/catalog/steps/push-to-remote.step.yml +0 -0
  20. data/.ace-defaults/assign/catalog/steps/rebase-with-main.step.yml +0 -0
  21. data/.ace-defaults/assign/catalog/steps/record-demo.step.yml +0 -0
  22. data/.ace-defaults/assign/catalog/steps/reflect-and-refactor.step.yml +0 -0
  23. data/.ace-defaults/assign/catalog/steps/reorganize-commits.step.yml +0 -0
  24. data/.ace-defaults/assign/catalog/steps/research.step.yml +0 -0
  25. data/.ace-defaults/assign/catalog/steps/review-pr.step.yml +0 -0
  26. data/.ace-defaults/assign/catalog/steps/security-audit.step.yml +0 -0
  27. data/.ace-defaults/assign/catalog/steps/split-subtree-root.step.yml +0 -0
  28. data/.ace-defaults/assign/catalog/steps/squash-changelog.step.yml +0 -0
  29. data/.ace-defaults/assign/catalog/steps/task-load.step.yml +0 -0
  30. data/.ace-defaults/assign/catalog/steps/update-docs.step.yml +0 -0
  31. data/.ace-defaults/assign/catalog/steps/verify-test-suite.step.yml +0 -0
  32. data/.ace-defaults/assign/catalog/steps/verify-test.step.yml +0 -0
  33. data/.ace-defaults/assign/catalog/steps/work-on-task.step.yml +0 -0
  34. data/.ace-defaults/assign/presets/close-delivery.yml +57 -0
  35. data/.ace-defaults/assign/presets/deliver-release.yml +57 -0
  36. data/.ace-defaults/assign/presets/integrate-batch.yml +67 -0
  37. data/.ace-defaults/assign/presets/quick-implement.yml +0 -0
  38. data/.ace-defaults/assign/presets/release-only.yml +0 -0
  39. data/.ace-defaults/assign/presets/supervise-delivery.yml +67 -0
  40. data/.ace-defaults/assign/presets/work-on-docs.yml +0 -0
  41. data/.ace-defaults/assign/presets/work-on-task-in-place.yml +0 -0
  42. data/.ace-defaults/nav/protocols/skill-sources/ace-assign.yml +0 -0
  43. data/.ace-defaults/nav/protocols/wfi-sources/ace-assign.yml +0 -0
  44. data/CHANGELOG.md +6 -0
  45. data/Rakefile +0 -0
  46. data/docs/demo/canonical-skill-source.gif +0 -0
  47. data/docs/demo/fork-provider.cast +0 -0
  48. data/docs/demo/fork-provider.gif +0 -0
  49. data/docs/demo/fork-provider.recording.json +0 -0
  50. data/docs/demo/fork-provider.tape.yml +0 -0
  51. data/docs/getting-started.md +0 -0
  52. data/docs/handbook.md +0 -0
  53. data/handbook/guides/fork-context.g.md +0 -0
  54. data/handbook/skills/as-assign-add-task/SKILL.md +0 -0
  55. data/handbook/skills/as-assign-compose/SKILL.md +0 -0
  56. data/handbook/skills/as-assign-create/SKILL.md +0 -0
  57. data/handbook/skills/as-assign-drive/SKILL.md +0 -0
  58. data/handbook/skills/as-assign-prepare/SKILL.md +0 -0
  59. data/handbook/skills/as-assign-recover-fork/SKILL.md +0 -0
  60. data/handbook/skills/as-assign-run-in-batches/SKILL.md +0 -0
  61. data/handbook/skills/as-assign-start/SKILL.md +0 -0
  62. data/handbook/skills/as-create-retro-internal/SKILL.md +0 -0
  63. data/handbook/skills/as-mark-task-done-internal/SKILL.md +0 -0
  64. data/handbook/skills/as-reflect-and-refactor-internal/SKILL.md +0 -0
  65. data/handbook/skills/as-task-load-internal/SKILL.md +0 -0
  66. data/handbook/workflow-instructions/assign/add-task.wf.md +0 -0
  67. data/handbook/workflow-instructions/assign/compose.wf.md +0 -0
  68. data/handbook/workflow-instructions/assign/create-retro-internal.wf.md +0 -0
  69. data/handbook/workflow-instructions/assign/create.wf.md +0 -0
  70. data/handbook/workflow-instructions/assign/mark-task-done-internal.wf.md +0 -0
  71. data/handbook/workflow-instructions/assign/recover-fork.wf.md +0 -0
  72. data/handbook/workflow-instructions/assign/reflect-and-refactor-internal.wf.md +0 -0
  73. data/handbook/workflow-instructions/assign/run-in-batches.wf.md +0 -0
  74. data/handbook/workflow-instructions/assign/start.wf.md +0 -0
  75. data/handbook/workflow-instructions/assign/task-load-internal.wf.md +0 -0
  76. data/handbook/workflow-instructions/assign/verify-test-suite.wf.md +0 -0
  77. data/lib/ace/assign/atoms/assign_frontmatter_parser.rb +0 -0
  78. data/lib/ace/assign/atoms/catalog_loader.rb +0 -0
  79. data/lib/ace/assign/atoms/composition_rules.rb +0 -0
  80. data/lib/ace/assign/atoms/number_generator.rb +0 -0
  81. data/lib/ace/assign/atoms/preset_expander.rb +0 -0
  82. data/lib/ace/assign/atoms/preset_loader.rb +0 -0
  83. data/lib/ace/assign/atoms/preset_step_resolver.rb +0 -0
  84. data/lib/ace/assign/atoms/step_file_parser.rb +0 -0
  85. data/lib/ace/assign/atoms/step_numbering.rb +0 -0
  86. data/lib/ace/assign/atoms/step_sorter.rb +0 -0
  87. data/lib/ace/assign/atoms/tree_formatter.rb +0 -0
  88. data/lib/ace/assign/cli/commands/add.rb +0 -0
  89. data/lib/ace/assign/cli/commands/list.rb +0 -0
  90. data/lib/ace/assign/cli/commands/retry_cmd.rb +0 -0
  91. data/lib/ace/assign/models/assignment_info.rb +0 -0
  92. data/lib/ace/assign/models/queue_state.rb +0 -0
  93. data/lib/ace/assign/models/step.rb +0 -0
  94. data/lib/ace/assign/molecules/assignment_discoverer.rb +0 -0
  95. data/lib/ace/assign/molecules/preset_inferrer.rb +0 -0
  96. data/lib/ace/assign/molecules/skill_assign_source_resolver.rb +0 -0
  97. data/lib/ace/assign/molecules/step_renumberer.rb +0 -0
  98. data/lib/ace/assign/version.rb +1 -1
  99. metadata +6 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f3a7677c3fb1ce863011485e2d0b2274f447f444292eecd60dc19a5b6df2a53a
4
- data.tar.gz: 4519d9fd2fac314f8f2769e63e13a06d05b915061ef1993147ce56c352262f06
3
+ metadata.gz: 1f6ba010a4412023430bf6af940f87d2cdf806abd3ac47cfc5201df8a83518ff
4
+ data.tar.gz: 359c0be3f4801434b4b46c1fd12b0effa98802a5db215e79969d7b0a606ab240
5
5
  SHA512:
6
- metadata.gz: 2b7cc2b8df1826250baa869d8ecac05474ee2cc0762737b3cf848e51f310436df47517a8370ffced04a82cd398f8b817f63b1fc9de9e081efcfd0331e7c2f339
7
- data.tar.gz: 3003f3e3cf8729d99d1810aa5cb152c58dd6a50f182f8321b782a7dcd5f96e89fd9558bfe582e213b5108add78d8a213c2b4f5d0317e85a07a12e3f8d3f643d5
6
+ metadata.gz: '08989a936f88d77989af31f77d58f11602537c5ea2d6d7c1e661f965fe44378add8afe4b4ac9971994a6e6118d55051f9fa3a72d5abf21eb36852bc8e730e99d'
7
+ data.tar.gz: 73774791f39165b91735d1e716f2fafc1fd3982383f2513abf4e03ba2c4763172559c4e5ea60c0f2649b769a11dc181a4cdb37fed50e990627d9f0f3faeb98e8
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,57 @@
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
+
@@ -0,0 +1,57 @@
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: Prepare and bind a stable release cut without exercising publication authority
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: publication-authority-placeholder
41
+ number: "040"
42
+ instructions: |
43
+ Publication placeholder only. Do not run a publish command in this preset. Route
44
+ the exact manifest to the separate publication authority named by project policy.
45
+ Missing credentials, publisher identity, or admission is
46
+ BLOCKED(provision, owner). If that authority accepts a request and returns a
47
+ durable operation reference plus reconciliation path, record
48
+ WAIT(reference, next-check); otherwise preserve uncertainty and do not retry.
49
+
50
+ - name: record-release-outcome
51
+ number: "050"
52
+ instructions: |
53
+ Record only attributable publication, installation, or deployment receipts from
54
+ their owning authorities, each bound to the exact manifest. Host-owned root
55
+ effects remain referenced external operations. Keep later merges outside this
56
+ release outcome.
57
+
@@ -0,0 +1,67 @@
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
+ After any candidate movement, delegate renewed evidence for the new exact head:
36
+ prove replay content identity with range-diff or a stronger project-approved
37
+ comparison, run fresh relevant tests, and obtain an independent reviewer verdict.
38
+ The reviewer must be independent of the executor. Content beyond the declared
39
+ replay delta requires the full project review gate, not a verdict-stands shortcut.
40
+
41
+ - name: reevaluate-integration-readiness
42
+ number: "040"
43
+ instructions: |
44
+ Re-read dependency state, candidate and target branch heads, evidence,
45
+ authorization, transport, and grouping constraints immediately before requesting
46
+ integration. Any change voids prior eligibility and requires a new complete
47
+ selection decision record. Defer every candidate whose exact-head evidence is no
48
+ longer current.
49
+
50
+ - name: request-integration
51
+ number: "050"
52
+ instructions: |
53
+ Request integration only through the project's authorized integrator, preserving
54
+ the exact ordered candidates and target binding. This step grants no merge
55
+ authority. Missing provision is BLOCKED(provision, owner). After a request is
56
+ accepted, WAIT requires its durable operation reference and exact reconciliation
57
+ path. On an uncertain effect, reconcile the original operation and never repeat
58
+ the merge request blindly.
59
+
60
+ - name: record-integration-result
61
+ number: "060"
62
+ instructions: |
63
+ Record the authoritative result and resulting target head for each selected entry,
64
+ or the attributable blocker. Re-evaluate remaining candidates against the moved
65
+ target before another effect; successful integration does not select a release cut
66
+ or authorize publication.
67
+
File without changes
File without changes
@@ -0,0 +1,67 @@
1
+ # Delivery queue supervision over existing producer tasks.
2
+ # Usage: ace-assign create --task TASK[,TASK...] --preset supervise-delivery
3
+
4
+ name: supervise-delivery
5
+ description: Supervise dependency-aware integration and release decisions for several PR-ready producer tasks
6
+
7
+ parameters:
8
+ taskrefs:
9
+ required: true
10
+ type: array
11
+ description: Existing producer task references to observe as delivery queue entries
12
+
13
+ steps:
14
+ - name: reconcile-delivery-queue
15
+ number: "010"
16
+ instructions: |
17
+ Reconcile the current canonical Assign attempts, task evidence, candidate heads,
18
+ dependency state, and project delivery guide for producer task references:
19
+ {{taskrefs}}.
20
+
21
+ These are references to producer tasks; never reparent, duplicate, reopen, or
22
+ change producer task status. A PR-ready worker remains terminal even while this
23
+ delivery assignment stays open. No second queue, journal, daemon, or cache may
24
+ be created. Treat an empty observation as current input only: Transiently empty
25
+ is not accepted completion.
26
+
27
+ - name: supervise-delivery-queue
28
+ number: "020"
29
+ instructions: |
30
+ Act as the one running supervisory step for producer task references {{taskrefs}}.
31
+ Apply the resolved project decision guide to dependency readiness, integration
32
+ grouping, evidence freshness, release/demo/production policy, and available
33
+ authority. Integration order follows dependencies and policy, never completion
34
+ order or worker finish timestamps.
35
+
36
+ Before every integration effect, write a canonical step report containing all
37
+ mandatory decision-record fields:
38
+ - ordered eligible set;
39
+ - selected next entry;
40
+ - deferred entries, with a reason for every skipped candidate;
41
+ - decision actor and timestamp;
42
+ - policy/plan revision and evidence references used for the decision.
43
+
44
+ For every entry, evaluate dependency state, exact candidate head SHA, fresh
45
+ test and independent-review evidence bound to that head, required authority and
46
+ transport, and grouping constraints. Re-record the decision after dependency,
47
+ candidate head, evidence, authority, transport, or target-branch movement.
48
+
49
+ - name: reconcile-integration-operation
50
+ number: "030"
51
+ instructions: |
52
+ Reconcile each requested integration through its original canonical operation.
53
+ Use WAIT(reference, next-check) only after an authorized request has a durable
54
+ operation reference and an exact public poll/reconcile path. Use
55
+ BLOCKED(provision, owner) when authority, transport, provisioning, or the durable
56
+ result path is absent. A lost or uncertain response without a durable path is
57
+ BLOCKED with the responsible host owner; never invent WAIT and never blindly
58
+ repeat launch, merge, publication, or deployment.
59
+
60
+ - name: decide-delivery-continuation
61
+ number: "040"
62
+ instructions: |
63
+ Record the explicit project-policy decision to integrate more candidates, cut a
64
+ release from the current accepted set, deploy through a separately authorized
65
+ project workflow, or keep this delivery open. Preserve callbacks and resume from
66
+ canonical state. Producer completion alone never closes this assignment.
67
+
File without changes
data/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.67.0] - 2026-10-12
11
+
12
+ ### Added
13
+
14
+ - Add project-adaptable delivery supervision presets for dependency-aware queue decisions, renewed-evidence integration batches, immutable release cuts, and evidence-preserving closure.
15
+
10
16
  ## [0.66.1] - 2026-10-10
11
17
 
12
18
  ### Fixed
data/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/docs/handbook.md CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Assign
5
- VERSION = "0.66.1"
5
+ VERSION = "0.67.0"
6
6
  end
7
7
  end
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.66.1
4
+ version: 0.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-10-10 00:00:00.000000000 Z
10
+ date: 2026-10-12 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-llm-providers-cli
@@ -345,9 +345,13 @@ files:
345
345
  - ".ace-defaults/assign/catalog/steps/verify-test.step.yml"
346
346
  - ".ace-defaults/assign/catalog/steps/work-on-task.step.yml"
347
347
  - ".ace-defaults/assign/config.yml"
348
+ - ".ace-defaults/assign/presets/close-delivery.yml"
349
+ - ".ace-defaults/assign/presets/deliver-release.yml"
348
350
  - ".ace-defaults/assign/presets/fix-bug.yml"
351
+ - ".ace-defaults/assign/presets/integrate-batch.yml"
349
352
  - ".ace-defaults/assign/presets/quick-implement.yml"
350
353
  - ".ace-defaults/assign/presets/release-only.yml"
354
+ - ".ace-defaults/assign/presets/supervise-delivery.yml"
351
355
  - ".ace-defaults/assign/presets/work-on-docs.yml"
352
356
  - ".ace-defaults/assign/presets/work-on-task-ace-development.yml"
353
357
  - ".ace-defaults/assign/presets/work-on-task-auto-merge.yml"