ace-assign 0.37.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 (104) hide show
  1. checksums.yaml +7 -0
  2. data/.ace-defaults/assign/catalog/composition-rules.yml +211 -0
  3. data/.ace-defaults/assign/catalog/recipes/batch-tasks.recipe.yml +44 -0
  4. data/.ace-defaults/assign/catalog/recipes/documentation.recipe.yml +35 -0
  5. data/.ace-defaults/assign/catalog/recipes/fix-and-review.recipe.yml +32 -0
  6. data/.ace-defaults/assign/catalog/recipes/implement-simple.recipe.yml +29 -0
  7. data/.ace-defaults/assign/catalog/recipes/implement-with-pr.recipe.yml +48 -0
  8. data/.ace-defaults/assign/catalog/recipes/release-only.recipe.yml +34 -0
  9. data/.ace-defaults/assign/catalog/steps/apply-feedback.step.yml +22 -0
  10. data/.ace-defaults/assign/catalog/steps/commit.step.yml +22 -0
  11. data/.ace-defaults/assign/catalog/steps/create-pr.step.yml +28 -0
  12. data/.ace-defaults/assign/catalog/steps/create-retro.step.yml +22 -0
  13. data/.ace-defaults/assign/catalog/steps/fix-tests.step.yml +22 -0
  14. data/.ace-defaults/assign/catalog/steps/lint.step.yml +22 -0
  15. data/.ace-defaults/assign/catalog/steps/mark-task-done.step.yml +57 -0
  16. data/.ace-defaults/assign/catalog/steps/onboard-base.step.yml +19 -0
  17. data/.ace-defaults/assign/catalog/steps/onboard.step.yml +19 -0
  18. data/.ace-defaults/assign/catalog/steps/plan-task.step.yml +17 -0
  19. data/.ace-defaults/assign/catalog/steps/pre-commit-review.step.yml +34 -0
  20. data/.ace-defaults/assign/catalog/steps/push-to-remote.step.yml +28 -0
  21. data/.ace-defaults/assign/catalog/steps/rebase-with-main.step.yml +28 -0
  22. data/.ace-defaults/assign/catalog/steps/reflect-and-refactor.step.yml +57 -0
  23. data/.ace-defaults/assign/catalog/steps/release-minor.step.yml +23 -0
  24. data/.ace-defaults/assign/catalog/steps/release.step.yml +23 -0
  25. data/.ace-defaults/assign/catalog/steps/reorganize-commits.step.yml +28 -0
  26. data/.ace-defaults/assign/catalog/steps/research.step.yml +19 -0
  27. data/.ace-defaults/assign/catalog/steps/review-pr.step.yml +22 -0
  28. data/.ace-defaults/assign/catalog/steps/security-audit.step.yml +22 -0
  29. data/.ace-defaults/assign/catalog/steps/split-subtree-root.step.yml +25 -0
  30. data/.ace-defaults/assign/catalog/steps/squash-changelog.step.yml +28 -0
  31. data/.ace-defaults/assign/catalog/steps/task-load.step.yml +29 -0
  32. data/.ace-defaults/assign/catalog/steps/update-docs.step.yml +38 -0
  33. data/.ace-defaults/assign/catalog/steps/update-pr-desc.step.yml +28 -0
  34. data/.ace-defaults/assign/catalog/steps/verify-e2e.step.yml +42 -0
  35. data/.ace-defaults/assign/catalog/steps/verify-test-suite.step.yml +48 -0
  36. data/.ace-defaults/assign/catalog/steps/verify-test.step.yml +36 -0
  37. data/.ace-defaults/assign/catalog/steps/work-on-task.step.yml +23 -0
  38. data/.ace-defaults/assign/config.yml +48 -0
  39. data/.ace-defaults/assign/presets/fix-bug.yml +65 -0
  40. data/.ace-defaults/assign/presets/quick-implement.yml +41 -0
  41. data/.ace-defaults/assign/presets/release-only.yml +35 -0
  42. data/.ace-defaults/assign/presets/work-on-docs.yml +41 -0
  43. data/.ace-defaults/assign/presets/work-on-task.yml +179 -0
  44. data/.ace-defaults/nav/protocols/skill-sources/ace-assign.yml +19 -0
  45. data/.ace-defaults/nav/protocols/wfi-sources/ace-assign.yml +19 -0
  46. data/CHANGELOG.md +1415 -0
  47. data/README.md +87 -0
  48. data/Rakefile +16 -0
  49. data/docs/exit-codes.md +61 -0
  50. data/docs/getting-started.md +121 -0
  51. data/docs/handbook.md +40 -0
  52. data/docs/usage.md +224 -0
  53. data/exe/ace-assign +16 -0
  54. data/handbook/guides/fork-context.g.md +231 -0
  55. data/handbook/skills/as-assign-compose/SKILL.md +24 -0
  56. data/handbook/skills/as-assign-create/SKILL.md +23 -0
  57. data/handbook/skills/as-assign-drive/SKILL.md +24 -0
  58. data/handbook/skills/as-assign-prepare/SKILL.md +23 -0
  59. data/handbook/skills/as-assign-recover-fork/SKILL.md +22 -0
  60. data/handbook/skills/as-assign-run-in-batches/SKILL.md +23 -0
  61. data/handbook/skills/as-assign-start/SKILL.md +25 -0
  62. data/handbook/workflow-instructions/assign/compose.wf.md +256 -0
  63. data/handbook/workflow-instructions/assign/create.wf.md +215 -0
  64. data/handbook/workflow-instructions/assign/drive.wf.md +666 -0
  65. data/handbook/workflow-instructions/assign/prepare.wf.md +469 -0
  66. data/handbook/workflow-instructions/assign/recover-fork.wf.md +233 -0
  67. data/handbook/workflow-instructions/assign/run-in-batches.wf.md +212 -0
  68. data/handbook/workflow-instructions/assign/start.wf.md +46 -0
  69. data/lib/ace/assign/atoms/assign_frontmatter_parser.rb +173 -0
  70. data/lib/ace/assign/atoms/catalog_loader.rb +101 -0
  71. data/lib/ace/assign/atoms/composition_rules.rb +219 -0
  72. data/lib/ace/assign/atoms/number_generator.rb +110 -0
  73. data/lib/ace/assign/atoms/preset_expander.rb +277 -0
  74. data/lib/ace/assign/atoms/step_file_parser.rb +207 -0
  75. data/lib/ace/assign/atoms/step_numbering.rb +227 -0
  76. data/lib/ace/assign/atoms/step_sorter.rb +66 -0
  77. data/lib/ace/assign/atoms/tree_formatter.rb +106 -0
  78. data/lib/ace/assign/cli/commands/add.rb +102 -0
  79. data/lib/ace/assign/cli/commands/assignment_target.rb +55 -0
  80. data/lib/ace/assign/cli/commands/create.rb +63 -0
  81. data/lib/ace/assign/cli/commands/fail.rb +43 -0
  82. data/lib/ace/assign/cli/commands/finish.rb +88 -0
  83. data/lib/ace/assign/cli/commands/fork_run.rb +229 -0
  84. data/lib/ace/assign/cli/commands/list.rb +166 -0
  85. data/lib/ace/assign/cli/commands/retry_cmd.rb +42 -0
  86. data/lib/ace/assign/cli/commands/select.rb +45 -0
  87. data/lib/ace/assign/cli/commands/start.rb +40 -0
  88. data/lib/ace/assign/cli/commands/status.rb +407 -0
  89. data/lib/ace/assign/cli.rb +144 -0
  90. data/lib/ace/assign/models/assignment.rb +107 -0
  91. data/lib/ace/assign/models/assignment_info.rb +66 -0
  92. data/lib/ace/assign/models/queue_state.rb +326 -0
  93. data/lib/ace/assign/models/step.rb +197 -0
  94. data/lib/ace/assign/molecules/assignment_discoverer.rb +57 -0
  95. data/lib/ace/assign/molecules/assignment_manager.rb +276 -0
  96. data/lib/ace/assign/molecules/fork_session_launcher.rb +102 -0
  97. data/lib/ace/assign/molecules/queue_scanner.rb +130 -0
  98. data/lib/ace/assign/molecules/skill_assign_source_resolver.rb +376 -0
  99. data/lib/ace/assign/molecules/step_renumberer.rb +227 -0
  100. data/lib/ace/assign/molecules/step_writer.rb +246 -0
  101. data/lib/ace/assign/organisms/assignment_executor.rb +1299 -0
  102. data/lib/ace/assign/version.rb +7 -0
  103. data/lib/ace/assign.rb +141 -0
  104. metadata +289 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 546f8d510f0767f994deba4c11c10019d4dc320781c5b242e0362431e5e91166
4
+ data.tar.gz: 52cf891a41c8f2f80ba9bfd7fd19db57b5691dda2e67774e16004d3b1358b543
5
+ SHA512:
6
+ metadata.gz: e02c6d947497dd2e8fe5c00825a303759994de830394eefe54506b93924b6c5e78ea21a7cc4a839e816aeeb2fd04c14b9c56958b0e6d7145622cb42049c82869
7
+ data.tar.gz: c014fc052851855bfe3f2144c9056a2ef18f1c25884e567f71f8d03cad1eed009981aacc755799b04a344ac323c929fb0f9841ba5e7e6273b7cda6885c1173aa
@@ -0,0 +1,211 @@
1
+ # Composition rules for ace-assign step ordering and pairing.
2
+ # Used by the compose-assignment workflow to validate and suggest step sequences.
3
+
4
+ ordering:
5
+ - rule: onboard-first
6
+ step: onboard
7
+ position: first
8
+
9
+ - rule: pr-before-review
10
+ before: create-pr
11
+ after: review-pr
12
+
13
+ - rule: review-before-apply
14
+ before: review-pr
15
+ after: apply-feedback
16
+
17
+ - rule: onboard-before-plan
18
+ before: onboard
19
+ after: plan-task
20
+ note: "Planning requires project context from onboarding"
21
+
22
+ - rule: plan-before-implementation
23
+ before: plan-task
24
+ after: work-on-task
25
+ note: "JIT planning should precede implementation"
26
+
27
+ - rule: implementation-before-pr
28
+ before: work-on-task
29
+ after: create-pr
30
+
31
+ - rule: mark-done-after-implementation
32
+ before: work-on-task
33
+ after: mark-task-done
34
+ note: "Mark task done after successful implementation"
35
+
36
+ - rule: release-after-implementation
37
+ before: work-on-task
38
+ after: release
39
+ note: "Release should follow implementation"
40
+
41
+ - rule: reorganize-before-push
42
+ before: reorganize-commits
43
+ after: push-to-remote
44
+ note: "Reorganize rewrites history, so must come before push"
45
+
46
+ - rule: squash-before-rebase
47
+ before: squash-changelog
48
+ after: rebase-with-main
49
+ note: "Consolidate changelog entries before rebasing to reduce conflict churn"
50
+
51
+ - rule: rebase-before-push
52
+ before: rebase-with-main
53
+ after: push-to-remote
54
+ note: "Rebase should happen before publishing commits to remote"
55
+
56
+ - rule: rebase-before-update-pr
57
+ before: rebase-with-main
58
+ after: update-pr-desc
59
+ note: "PR description should reflect post-rebase branch state"
60
+
61
+ - rule: push-before-update-pr
62
+ before: push-to-remote
63
+ after: update-pr-desc
64
+ note: "PR description should reflect pushed state"
65
+
66
+ - rule: release-before-pr
67
+ before: release
68
+ after: create-pr
69
+ note: "Initial release should happen before PR creation"
70
+
71
+ - rule: reflect-after-verify
72
+ before: verify-test-suite
73
+ after: reflect-and-refactor
74
+ note: "Reflection requires passing tests as baseline. The reflect-verify-cycle pair adds a second verify instance after refactoring — these are distinct step instances, not a cycle."
75
+
76
+ - rule: reflect-before-mark-done
77
+ before: reflect-and-refactor
78
+ after: mark-task-done
79
+ note: "Refactoring should complete before marking task done"
80
+
81
+ - rule: reflect-before-release
82
+ before: reflect-and-refactor
83
+ after: release
84
+ note: "Refactoring should complete before version release"
85
+
86
+ - rule: reflect-before-retro
87
+ before: reflect-and-refactor
88
+ after: create-retro
89
+ note: "Findings report feeds into retrospective as structured input"
90
+
91
+ - rule: retro-after-release
92
+ before: release
93
+ after: create-retro
94
+ note: "Retro captures learnings after all implementation and release work is complete"
95
+
96
+ - rule: retro-after-apply-feedback
97
+ before: apply-feedback
98
+ after: create-retro
99
+ note: "Retro should follow all feedback application in review cycles"
100
+
101
+ - rule: e2e-before-release
102
+ before: verify-e2e
103
+ after: release
104
+ note: "E2E must pass before bumping version — catch failures early"
105
+
106
+ - rule: update-docs-after-release
107
+ before: release
108
+ after: update-docs
109
+ note: "Docs should reference the new version number"
110
+
111
+ - rule: update-docs-before-pr
112
+ before: update-docs
113
+ after: create-pr
114
+ note: "Updated docs should be visible to PR reviewers"
115
+
116
+ - rule: e2e-after-verify
117
+ before: verify-test-suite
118
+ after: verify-e2e
119
+ note: "Unit tests should pass before E2E runs"
120
+
121
+ pairs:
122
+ - name: review-apply-cycle
123
+ steps: [review-pr, apply-feedback]
124
+ pattern: sequential
125
+ note: "Reviews should be followed by feedback application"
126
+
127
+ - name: test-fix-cycle
128
+ steps: [verify-test-suite, fix-tests]
129
+ pattern: conditional
130
+ trigger: "test failures detected"
131
+
132
+ - name: reorganize-push-sequence
133
+ steps: [reorganize-commits, push-to-remote]
134
+ pattern: sequential
135
+ note: "Reorganize then push for clean remote history"
136
+
137
+ - name: apply-release-cycle
138
+ steps: [apply-feedback, release]
139
+ pattern: sequential
140
+ note: "Patch release after applying review feedback"
141
+
142
+ - name: reflect-verify-cycle
143
+ steps: [reflect-and-refactor, verify-test-suite]
144
+ pattern: conditional
145
+ trigger: "reflect-and-refactor produced refactoring commits"
146
+ note: "Re-verify after refactoring to catch regressions"
147
+
148
+ - name: reflect-fix-cycle
149
+ steps: [reflect-and-refactor, fix-tests]
150
+ pattern: conditional
151
+ trigger: "re-verification after refactoring finds failures"
152
+
153
+ - name: reflect-replan-cycle
154
+ steps: [reflect-and-refactor, work-on-task]
155
+ pattern: conditional
156
+ trigger: "demo validation failure or fundamental architectural misalignment"
157
+ cap: 1
158
+ note: "Re-plan produces 1-2 sub-tasks, then reflect runs once more (no further re-plan)"
159
+
160
+ - name: e2e-review-run-pair
161
+ steps: [verify-e2e]
162
+ pattern: sequential
163
+ note: "E2E review (coverage matrix) and targeted run are a single step with two steps"
164
+
165
+ - name: docs-update-validate-pair
166
+ steps: [update-docs]
167
+ pattern: sequential
168
+ note: "Doc update followed by validation in same step"
169
+
170
+ conditional:
171
+ - when: "assignment includes work-on-task"
172
+ suggest: [plan-task, mark-task-done, reflect-and-refactor]
173
+ strength: recommended
174
+ overrides:
175
+ reflect-and-refactor: { strength: optional }
176
+ note: "JIT planning before, task completion after, and optional architecture reflection before shipping"
177
+
178
+ - when: "assignment includes work-on-task or fix-bug"
179
+ suggest: [verify-test-suite]
180
+ strength: required
181
+ note: "Test suite verification with profiling catches slow tests and regressions before release. In explicit-step mode this remains advisory unless policy elevates it."
182
+
183
+ - when: "assignment includes work-on-task and touches CLI commands or public API"
184
+ suggest: [verify-e2e, update-docs]
185
+ strength: recommended
186
+ note: "Public contract changes require E2E verification and doc updates"
187
+
188
+ - when: "task involves auth, security, or data handling"
189
+ suggest: [security-audit]
190
+ strength: optional
191
+
192
+ - when: "assignment includes review-pr and apply-feedback"
193
+ suggest: [release]
194
+ strength: recommended
195
+ note: "Patch release after each review cycle captures fixes"
196
+
197
+ fork_context:
198
+ onboard_required: true
199
+ note: "Steps with fork context should include onboard instruction as first step"
200
+
201
+ review_cycles:
202
+ default_count: 3
203
+ max_count: 5
204
+ preset_progression:
205
+ 1: code-valid
206
+ 2: code-fit
207
+ 3: code-shine
208
+ focus_progression:
209
+ 1: "Correctness: bugs, logic errors, missing functionality, broken contracts"
210
+ 2: "Quality: performance, architecture, standards, test coverage"
211
+ 3: "Polish: simplification, naming, documentation (non-blocking suggestions)"
@@ -0,0 +1,44 @@
1
+ name: batch-tasks
2
+ description: Work on multiple tasks with PR, review cycles, and releases
3
+
4
+ matches:
5
+ - "work on tasks *"
6
+ - "batch implement *"
7
+ - "multiple tasks"
8
+
9
+ parameters:
10
+ taskrefs: { required: true, type: array }
11
+ review_cycles: { required: false, default: 3 }
12
+
13
+ steps:
14
+ - name: onboard
15
+ required: true
16
+ - name: batch-parent
17
+ required: true
18
+ expansion:
19
+ foreach: taskrefs
20
+ child_step: work-on-task
21
+ child_context: fork
22
+ note: "Each child marks its task done after implementation"
23
+ - name: release
24
+ required: true
25
+ note: "Initial version bump (usually minor)"
26
+ - name: create-pr
27
+ required: true
28
+ - name: review-cycle
29
+ repeat: "{{review_cycles}}"
30
+ context: fork
31
+ sub_steps: [review-pr, apply-feedback, release, create-retro]
32
+ note: "Each cycle includes patch release after applying feedback"
33
+ - name: reorganize-commits
34
+ required: false
35
+ - name: push-to-remote
36
+ required: true
37
+ - name: update-pr-desc
38
+ required: false
39
+
40
+ customization_hints:
41
+ - "Add create-pr after batch for consolidated review"
42
+ - "Add review cycles if changes need review"
43
+ - "Reduce batch size for complex tasks"
44
+ - "Skip reorganize-commits if history is already clean"
@@ -0,0 +1,35 @@
1
+ name: documentation
2
+ description: Create or update documentation with research and commit
3
+
4
+ matches:
5
+ - "document *"
6
+ - "write docs for *"
7
+ - "update documentation"
8
+ - "documentation for *"
9
+
10
+ parameters:
11
+ scope:
12
+ required: true
13
+ description: "Package, directory, or topic to document"
14
+ create_pr:
15
+ required: false
16
+ default: false
17
+ description: "Whether to create a PR for the documentation changes"
18
+
19
+ steps:
20
+ - name: onboard
21
+ required: true
22
+ - name: research
23
+ required: true
24
+ instructions_template: "Research documentation gaps for {{scope}}. Identify outdated, missing, or incorrect documentation."
25
+ - name: work-on-task
26
+ required: true
27
+ instructions_template: "Create or update documentation for {{scope}}. Focus on clarity, accuracy, and completeness."
28
+ - name: commit
29
+ required: true
30
+
31
+ customization_hints:
32
+ - "Add create-pr step if create_pr=true for documentation PRs"
33
+ - "Add lint step for markdown linting"
34
+ - "Add review-cycle for critical documentation"
35
+ - "Skip onboard if already in context"
@@ -0,0 +1,32 @@
1
+ name: fix-and-review
2
+ description: Fix an issue, verify tests, and create a reviewed PR
3
+
4
+ matches:
5
+ - "fix * and review"
6
+ - "bug fix with PR"
7
+ - "fix issue *"
8
+
9
+ parameters:
10
+ taskref: { required: true }
11
+ review_cycles: { required: false, default: 1 }
12
+
13
+ steps:
14
+ - name: onboard
15
+ required: true
16
+ - name: work-on-task
17
+ required: true
18
+ instructions_template: "Fix the issue described in task {{taskref}}."
19
+ - name: mark-task-done
20
+ required: false
21
+ - name: verify-test-suite
22
+ required: true
23
+ - name: create-pr
24
+ required: true
25
+ - name: review-cycle
26
+ repeat: "{{review_cycles}}"
27
+ sub_steps: [review-pr, apply-feedback]
28
+
29
+ customization_hints:
30
+ - "Add fix-tests after verify-test-suite if failures found"
31
+ - "Add security-audit for security-related fixes"
32
+ - "Increase review cycles for critical fixes"
@@ -0,0 +1,29 @@
1
+ name: implement-simple
2
+ description: Implement a task with commit, no PR or review
3
+
4
+ matches:
5
+ - "work on task *"
6
+ - "implement * simple"
7
+ - "quick task"
8
+
9
+ parameters:
10
+ taskref: { required: true }
11
+
12
+ steps:
13
+ - name: onboard
14
+ required: true
15
+ - name: plan-task
16
+ required: false
17
+ note: "JIT planning — can be skipped for trivial tasks"
18
+ - name: work-on-task
19
+ required: true
20
+ instructions_template: "Work on task {{taskref}}."
21
+ - name: mark-task-done
22
+ required: false
23
+ - name: commit
24
+ required: true
25
+
26
+ customization_hints:
27
+ - "Skip onboard if already onboarded"
28
+ - "Add verify-test-suite before commit for complex changes"
29
+ - "Add lint after work-on-task for style enforcement"
@@ -0,0 +1,48 @@
1
+ name: implement-with-pr
2
+ description: Implement a task, create PR, and iterate through review cycles with releases
3
+
4
+ matches:
5
+ - "work on task * and create PR"
6
+ - "implement * with review"
7
+ - "full task workflow"
8
+
9
+ parameters:
10
+ taskref: { required: true }
11
+ review_cycles: { required: false, default: 3 }
12
+
13
+ steps:
14
+ - name: onboard
15
+ required: true
16
+ - name: plan-task
17
+ required: false
18
+ note: "JIT planning — can be skipped for trivial tasks"
19
+ - name: work-on-task
20
+ required: true
21
+ instructions_template: "Work on task {{taskref}}."
22
+ - name: reflect-and-refactor
23
+ required: false
24
+ note: "Architecture reflection — skip for trivial tasks"
25
+ - name: mark-task-done
26
+ required: false
27
+ - name: release
28
+ required: true
29
+ note: "Initial version bump (usually minor)"
30
+ - name: create-pr
31
+ required: true
32
+ - name: review-cycle
33
+ repeat: "{{review_cycles}}"
34
+ context: fork
35
+ sub_steps: [review-pr, apply-feedback, release, create-retro]
36
+ note: "Each cycle uses preset_progression from composition rules (1: code-valid, 2: code-fit, 3: code-shine)"
37
+ - name: reorganize-commits
38
+ required: false
39
+ - name: push-to-remote
40
+ required: true
41
+ - name: update-pr-desc
42
+ required: false
43
+
44
+ customization_hints:
45
+ - "Skip onboard if already onboarded in a previous assignment"
46
+ - "Add security-audit for security-sensitive changes"
47
+ - "Reduce review cycles to 1 for simple changes"
48
+ - "Skip reorganize-commits if commit history is already clean"
@@ -0,0 +1,34 @@
1
+ name: release-only
2
+ description: Version bump and changelog update without code changes
3
+
4
+ matches:
5
+ - "release *"
6
+ - "bump version"
7
+ - "changelog update"
8
+ - "version bump"
9
+
10
+ parameters:
11
+ version_type:
12
+ required: false
13
+ default: "patch"
14
+ description: "Version bump type (major, minor, or patch)"
15
+ push:
16
+ required: false
17
+ default: false
18
+ description: "Whether to push changes to remote"
19
+
20
+ steps:
21
+ - name: onboard
22
+ required: false
23
+ - name: release
24
+ required: true
25
+ instructions_template: "Bump {{version_type}} version and update CHANGELOGs."
26
+ - name: commit
27
+ required: true
28
+
29
+ customization_hints:
30
+ - "Skip onboard if already in context"
31
+ - "Add push-to-remote for immediate push after commit"
32
+ - "Use minor version for new features"
33
+ - "Use patch version for bug fixes"
34
+ - "Use major version for breaking changes"
@@ -0,0 +1,22 @@
1
+ name: apply-feedback
2
+ skill: as-review-apply-feedback
3
+ description: Apply review feedback and commit improvements
4
+
5
+ prerequisites:
6
+ - name: review-pr
7
+ strength: required
8
+ reason: "Must have review feedback to apply"
9
+
10
+ produces: [code-changes, commits]
11
+ consumes: [review-feedback]
12
+
13
+ context:
14
+ default: null
15
+ reason: "Applying feedback needs access to working tree"
16
+
17
+ when_to_skip:
18
+ - "Review found no actionable issues"
19
+ - "All feedback items are deferred"
20
+
21
+ effort: light
22
+ tags: [implementation, review-response]
@@ -0,0 +1,22 @@
1
+ name: commit
2
+ skill: as-git-commit
3
+ description: Generate and create a commit with a descriptive message
4
+
5
+ prerequisites:
6
+ - name: work-on-task
7
+ strength: recommended
8
+ reason: "Should have code changes to commit"
9
+
10
+ produces: [commits]
11
+ consumes: [code-changes]
12
+
13
+ context:
14
+ default: null
15
+ reason: "Commit needs access to git state in main context"
16
+
17
+ when_to_skip:
18
+ - "No uncommitted changes"
19
+ - "Changes were already committed by a previous step"
20
+
21
+ effort: trivial
22
+ tags: [git, versioning]
@@ -0,0 +1,28 @@
1
+ name: create-pr
2
+ skill: as-github-pr-create
3
+ description: Create a pull request for the implemented changes
4
+ intent:
5
+ phrases:
6
+ - "create pr"
7
+ - "create a pr"
8
+ - "open pr"
9
+ - "open pull request"
10
+
11
+ prerequisites:
12
+ - name: work-on-task
13
+ strength: required
14
+ reason: "Must have code changes to create a PR"
15
+
16
+ produces: [pull-request]
17
+ consumes: [code-changes, commits]
18
+
19
+ context:
20
+ default: null
21
+ reason: "PR creation needs access to git state in main context"
22
+
23
+ when_to_skip:
24
+ - "PR already exists for this branch"
25
+ - "Changes don't warrant a PR (e.g., direct push allowed)"
26
+
27
+ effort: light
28
+ tags: [git, pr, publishing]
@@ -0,0 +1,22 @@
1
+ name: create-retro
2
+ skill: null
3
+ description: Create a retrospective summarizing what was accomplished and lessons learned
4
+
5
+ prerequisites:
6
+ - name: reflect-and-refactor
7
+ strength: recommended
8
+ reason: "Findings report enriches retrospective with architectural observations"
9
+
10
+ produces: [retrospective]
11
+ consumes: [findings-report, review-sessions]
12
+
13
+ context:
14
+ default: null
15
+ reason: "Retro needs access to full assignment history"
16
+
17
+ when_to_skip:
18
+ - "Assignment was trivial"
19
+ - "No significant learnings to capture"
20
+
21
+ effort: trivial
22
+ tags: [documentation, reflection]
@@ -0,0 +1,22 @@
1
+ name: fix-tests
2
+ skill: null
3
+ description: Fix failing tests identified during verification
4
+
5
+ prerequisites:
6
+ - name: verify-test-suite
7
+ strength: recommended
8
+ reason: "Should know which tests are failing"
9
+
10
+ produces: [code-changes, commits]
11
+ consumes: [test-results]
12
+
13
+ context:
14
+ default: null
15
+ reason: "Test fixing needs access to working tree and test runner"
16
+
17
+ when_to_skip:
18
+ - "All tests are passing"
19
+ - "Failures are in unrelated tests"
20
+
21
+ effort: medium
22
+ tags: [testing, bug-fix]
@@ -0,0 +1,22 @@
1
+ name: lint
2
+ skill: null
3
+ description: Run linters and fix style issues in changed files
4
+
5
+ prerequisites:
6
+ - name: work-on-task
7
+ strength: recommended
8
+ reason: "Should have code changes to lint"
9
+
10
+ produces: [code-changes]
11
+ consumes: [code-changes]
12
+
13
+ context:
14
+ default: null
15
+ reason: "Linting needs access to working tree"
16
+
17
+ when_to_skip:
18
+ - "No code changes to lint"
19
+ - "Linting is handled by pre-commit hooks"
20
+
21
+ effort: trivial
22
+ tags: [quality, style]
@@ -0,0 +1,57 @@
1
+ name: mark-task-done
2
+ skill: null
3
+ description: Mark task as done in ace-task after successful implementation
4
+ workflow: wfi://task/update
5
+
6
+ prerequisites:
7
+ - name: work-on-task
8
+ strength: required
9
+ reason: "Task must be implemented before marking done"
10
+
11
+ produces: [task-status-update]
12
+ consumes: [code-changes]
13
+
14
+ context:
15
+ default: null
16
+ reason: "Needs access to ace-task CLI in main context"
17
+
18
+ instructions: |
19
+ After completing implementation work, mark the task as done:
20
+
21
+ 1. Run the status update command:
22
+ ```bash
23
+ ace-task update {{taskref}} --set status=done --move-to archive
24
+ ```
25
+
26
+ 2. **VERIFY the status change** (do not skip):
27
+ ```bash
28
+ ace-task show {{taskref}}
29
+ ```
30
+ Confirm the output shows `status: done`. If it shows `in-progress` or another status, the update did not persist — investigate and retry.
31
+
32
+ **Why verification matters:** Skipping this step causes status drift where the orchestrator progress no longer matches ace-task's record. This creates confusion in future sessions and breaks progress reporting.
33
+
34
+ 3. **Close parent tasks when all children are done:**
35
+ If the task has a parent (visible in `ace-task show` output), check whether all sibling subtasks are now done:
36
+ ```bash
37
+ ace-task show {{parent_taskref}}
38
+ ```
39
+ If all subtasks show `✓` (done), mark the parent done too:
40
+ ```bash
41
+ ace-task update {{parent_taskref}} --set status=done --move-to archive
42
+ ace-task show {{parent_taskref}}
43
+ ```
44
+ Repeat upward if the parent itself has a parent.
45
+
46
+ 4. **Commit the task file moves:**
47
+ ```bash
48
+ ace-git-commit .ace-tasks/ -i "archive completed tasks"
49
+ ```
50
+ The `--move-to archive` flag relocates task files. This commit captures those moves.
51
+
52
+ when_to_skip:
53
+ - "Task was already marked done (verified via ace-task show)"
54
+ - "Implementation was not completed"
55
+
56
+ effort: trivial
57
+ tags: [task-management, post-implementation]
@@ -0,0 +1,19 @@
1
+ name: onboard-base
2
+ skill: null
3
+ description: "Load base project context: run `ace-bundle project-base`"
4
+
5
+ prerequisites: []
6
+
7
+ produces: [project-base-context]
8
+ consumes: []
9
+
10
+ context:
11
+ default: null
12
+ reason: "Base onboarding needs access to the main conversation context"
13
+
14
+ when_to_skip:
15
+ - "Already onboarded in a previous assignment"
16
+ - "Working in a context where project-base is already loaded"
17
+
18
+ effort: light
19
+ tags: [setup, context-loading]
@@ -0,0 +1,19 @@
1
+ name: onboard
2
+ skill: as-onboard
3
+ description: Load project context and understand the codebase
4
+
5
+ prerequisites: []
6
+
7
+ produces: [project-context]
8
+ consumes: []
9
+
10
+ context:
11
+ default: null
12
+ reason: "Onboarding needs access to the main conversation context"
13
+
14
+ when_to_skip:
15
+ - "Already onboarded in a previous assignment"
16
+ - "Working in a context where project is already loaded"
17
+
18
+ effort: light
19
+ tags: [setup, context-loading]