ace-assign 0.42.4 → 0.55.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 (76) hide show
  1. checksums.yaml +4 -4
  2. data/.ace-defaults/assign/catalog/composition-rules.yml +2 -17
  3. data/.ace-defaults/assign/catalog/steps/create-pr.step.yml +0 -26
  4. data/.ace-defaults/assign/catalog/steps/create-retro.step.yml +1 -1
  5. data/.ace-defaults/assign/catalog/steps/mark-task-done.step.yml +1 -2
  6. data/.ace-defaults/assign/catalog/steps/onboard.step.yml +0 -17
  7. data/.ace-defaults/assign/catalog/steps/plan-task.step.yml +0 -11
  8. data/.ace-defaults/assign/catalog/steps/pre-commit-review.step.yml +3 -0
  9. data/.ace-defaults/assign/catalog/steps/reflect-and-refactor.step.yml +3 -2
  10. data/.ace-defaults/assign/catalog/steps/review-pr.step.yml +0 -16
  11. data/.ace-defaults/assign/catalog/steps/split-subtree-root.step.yml +4 -2
  12. data/.ace-defaults/assign/catalog/steps/task-load.step.yml +1 -1
  13. data/.ace-defaults/assign/catalog/steps/verify-test-suite.step.yml +7 -34
  14. data/.ace-defaults/assign/catalog/steps/verify-test.step.yml +7 -4
  15. data/.ace-defaults/assign/catalog/steps/work-on-task.step.yml +0 -17
  16. data/.ace-defaults/assign/config.yml +1 -0
  17. data/.ace-defaults/assign/presets/fix-bug.yml +4 -3
  18. data/.ace-defaults/assign/presets/quick-implement.yml +1 -1
  19. data/.ace-defaults/assign/presets/work-on-task.yml +6 -16
  20. data/CHANGELOG.md +216 -0
  21. data/README.md +20 -43
  22. data/docs/demo/canonical-skill-source.gif +0 -0
  23. data/docs/demo/canonical-skill-source.tape.yml +51 -0
  24. data/docs/demo/fork-provider.cast +834 -0
  25. data/docs/demo/fork-provider.gif +0 -0
  26. data/docs/demo/fork-provider.recording.json +30 -0
  27. data/docs/demo/fork-provider.tape.yml +77 -20
  28. data/docs/getting-started.md +5 -2
  29. data/docs/usage.md +74 -4
  30. data/handbook/guides/fork-context.g.md +31 -7
  31. data/handbook/skills/as-assign-drive/SKILL.md +13 -1
  32. data/handbook/skills/as-create-retro-internal/SKILL.md +29 -0
  33. data/handbook/skills/as-mark-task-done-internal/SKILL.md +29 -0
  34. data/handbook/skills/as-reflect-and-refactor-internal/SKILL.md +30 -0
  35. data/handbook/skills/as-task-load-internal/SKILL.md +28 -0
  36. data/handbook/workflow-instructions/assign/compose.wf.md +3 -3
  37. data/handbook/workflow-instructions/assign/create-retro-internal.wf.md +11 -0
  38. data/handbook/workflow-instructions/assign/create.wf.md +6 -3
  39. data/handbook/workflow-instructions/assign/drive.wf.md +330 -40
  40. data/handbook/workflow-instructions/assign/mark-task-done-internal.wf.md +12 -0
  41. data/handbook/workflow-instructions/assign/prepare.wf.md +10 -5
  42. data/handbook/workflow-instructions/assign/reflect-and-refactor-internal.wf.md +14 -0
  43. data/handbook/workflow-instructions/assign/run-in-batches.wf.md +4 -1
  44. data/handbook/workflow-instructions/assign/start.wf.md +5 -2
  45. data/handbook/workflow-instructions/assign/task-load-internal.wf.md +12 -0
  46. data/handbook/workflow-instructions/assign/verify-test-suite.wf.md +36 -0
  47. data/lib/ace/assign/atoms/catalog_loader.rb +105 -2
  48. data/lib/ace/assign/atoms/preset_expander.rb +4 -0
  49. data/lib/ace/assign/atoms/step_file_parser.rb +15 -0
  50. data/lib/ace/assign/atoms/tree_formatter.rb +2 -2
  51. data/lib/ace/assign/cli/commands/add.rb +20 -11
  52. data/lib/ace/assign/cli/commands/assignment_target.rb +87 -3
  53. data/lib/ace/assign/cli/commands/create.rb +1 -1
  54. data/lib/ace/assign/cli/commands/fail.rb +1 -1
  55. data/lib/ace/assign/cli/commands/finish.rb +32 -8
  56. data/lib/ace/assign/cli/commands/fork_run.rb +58 -16
  57. data/lib/ace/assign/cli/commands/fork_session.rb +52 -0
  58. data/lib/ace/assign/cli/commands/list.rb +4 -3
  59. data/lib/ace/assign/cli/commands/retry_cmd.rb +1 -1
  60. data/lib/ace/assign/cli/commands/start.rb +9 -3
  61. data/lib/ace/assign/cli/commands/status.rb +237 -230
  62. data/lib/ace/assign/cli/commands/step.rb +62 -0
  63. data/lib/ace/assign/cli.rb +8 -1
  64. data/lib/ace/assign/models/assignment_info.rb +33 -4
  65. data/lib/ace/assign/models/queue_state.rb +101 -39
  66. data/lib/ace/assign/models/step.rb +17 -5
  67. data/lib/ace/assign/molecules/fork_session_launcher.rb +218 -21
  68. data/lib/ace/assign/molecules/queue_scanner.rb +1 -0
  69. data/lib/ace/assign/molecules/skill_assign_source_resolver.rb +223 -47
  70. data/lib/ace/assign/molecules/step_writer.rb +3 -3
  71. data/lib/ace/assign/molecules/tmux_control_surface_runner.rb +249 -0
  72. data/lib/ace/assign/organisms/assignment_executor.rb +355 -106
  73. data/lib/ace/assign/version.rb +1 -1
  74. data/lib/ace/assign.rb +1 -0
  75. metadata +35 -5
  76. data/.ace-defaults/assign/catalog/steps/verify-e2e.step.yml +0 -42
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Assign
5
- VERSION = "0.42.4"
5
+ VERSION = '0.55.0'
6
6
  end
7
7
  end
data/lib/ace/assign.rb CHANGED
@@ -5,6 +5,7 @@ require "ace/support/config"
5
5
  require "ace/support/fs"
6
6
  require "ace/support/nav"
7
7
  require "ace/support/cli"
8
+ require "ace/tmux"
8
9
  require "pathname"
9
10
 
10
11
  # CLI and commands
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.42.4
4
+ version: 0.55.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-04-05 00:00:00.000000000 Z
10
+ date: 2026-04-26 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-support-cli
@@ -99,14 +99,14 @@ dependencies:
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '0.30'
102
+ version: '0.34'
103
103
  type: :runtime
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '0.30'
109
+ version: '0.34'
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: ace-task
112
112
  requirement: !ruby/object:Gem::Requirement
@@ -121,6 +121,20 @@ dependencies:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
123
  version: '0.31'
124
+ - !ruby/object:Gem::Dependency
125
+ name: ace-tmux
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '0.17'
131
+ type: :runtime
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '0.17'
124
138
  - !ruby/object:Gem::Dependency
125
139
  name: ace-support-test-helpers
126
140
  requirement: !ruby/object:Gem::Requirement
@@ -206,7 +220,6 @@ files:
206
220
  - ".ace-defaults/assign/catalog/steps/task-load.step.yml"
207
221
  - ".ace-defaults/assign/catalog/steps/update-docs.step.yml"
208
222
  - ".ace-defaults/assign/catalog/steps/update-pr-desc.step.yml"
209
- - ".ace-defaults/assign/catalog/steps/verify-e2e.step.yml"
210
223
  - ".ace-defaults/assign/catalog/steps/verify-test-suite.step.yml"
211
224
  - ".ace-defaults/assign/catalog/steps/verify-test.step.yml"
212
225
  - ".ace-defaults/assign/catalog/steps/work-on-task.step.yml"
@@ -221,6 +234,11 @@ files:
221
234
  - CHANGELOG.md
222
235
  - README.md
223
236
  - Rakefile
237
+ - docs/demo/canonical-skill-source.gif
238
+ - docs/demo/canonical-skill-source.tape.yml
239
+ - docs/demo/fork-provider.cast
240
+ - docs/demo/fork-provider.gif
241
+ - docs/demo/fork-provider.recording.json
224
242
  - docs/demo/fork-provider.tape.yml
225
243
  - docs/exit-codes.md
226
244
  - docs/getting-started.md
@@ -236,14 +254,23 @@ files:
236
254
  - handbook/skills/as-assign-recover-fork/SKILL.md
237
255
  - handbook/skills/as-assign-run-in-batches/SKILL.md
238
256
  - handbook/skills/as-assign-start/SKILL.md
257
+ - handbook/skills/as-create-retro-internal/SKILL.md
258
+ - handbook/skills/as-mark-task-done-internal/SKILL.md
259
+ - handbook/skills/as-reflect-and-refactor-internal/SKILL.md
260
+ - handbook/skills/as-task-load-internal/SKILL.md
239
261
  - handbook/workflow-instructions/assign/add-task.wf.md
240
262
  - handbook/workflow-instructions/assign/compose.wf.md
263
+ - handbook/workflow-instructions/assign/create-retro-internal.wf.md
241
264
  - handbook/workflow-instructions/assign/create.wf.md
242
265
  - handbook/workflow-instructions/assign/drive.wf.md
266
+ - handbook/workflow-instructions/assign/mark-task-done-internal.wf.md
243
267
  - handbook/workflow-instructions/assign/prepare.wf.md
244
268
  - handbook/workflow-instructions/assign/recover-fork.wf.md
269
+ - handbook/workflow-instructions/assign/reflect-and-refactor-internal.wf.md
245
270
  - handbook/workflow-instructions/assign/run-in-batches.wf.md
246
271
  - handbook/workflow-instructions/assign/start.wf.md
272
+ - handbook/workflow-instructions/assign/task-load-internal.wf.md
273
+ - handbook/workflow-instructions/assign/verify-test-suite.wf.md
247
274
  - lib/ace/assign.rb
248
275
  - lib/ace/assign/atoms/assign_frontmatter_parser.rb
249
276
  - lib/ace/assign/atoms/catalog_loader.rb
@@ -263,11 +290,13 @@ files:
263
290
  - lib/ace/assign/cli/commands/fail.rb
264
291
  - lib/ace/assign/cli/commands/finish.rb
265
292
  - lib/ace/assign/cli/commands/fork_run.rb
293
+ - lib/ace/assign/cli/commands/fork_session.rb
266
294
  - lib/ace/assign/cli/commands/list.rb
267
295
  - lib/ace/assign/cli/commands/retry_cmd.rb
268
296
  - lib/ace/assign/cli/commands/select.rb
269
297
  - lib/ace/assign/cli/commands/start.rb
270
298
  - lib/ace/assign/cli/commands/status.rb
299
+ - lib/ace/assign/cli/commands/step.rb
271
300
  - lib/ace/assign/models/assignment.rb
272
301
  - lib/ace/assign/models/assignment_info.rb
273
302
  - lib/ace/assign/models/queue_state.rb
@@ -280,6 +309,7 @@ files:
280
309
  - lib/ace/assign/molecules/skill_assign_source_resolver.rb
281
310
  - lib/ace/assign/molecules/step_renumberer.rb
282
311
  - lib/ace/assign/molecules/step_writer.rb
312
+ - lib/ace/assign/molecules/tmux_control_surface_runner.rb
283
313
  - lib/ace/assign/organisms/assignment_executor.rb
284
314
  - lib/ace/assign/organisms/task_assignment_creator.rb
285
315
  - lib/ace/assign/version.rb
@@ -1,42 +0,0 @@
1
- name: verify-e2e
2
- skill: as-e2e-review
3
- render: step_template
4
- description: Review E2E coverage for modified packages and run targeted scenarios
5
-
6
- prerequisites:
7
- - name: work-on-task
8
- strength: required
9
- reason: "Must have implementation to test"
10
- - name: verify-test-suite
11
- strength: recommended
12
- reason: "Unit tests should pass before running E2E"
13
-
14
- produces: [e2e-results, coverage-matrix]
15
- consumes: [code-changes]
16
-
17
- context:
18
- default: null
19
- reason: "E2E review and execution run in the project environment"
20
-
21
- when_to_skip:
22
- - "No public CLI API changes (internal-only refactoring)"
23
- - "Package has no E2E test scenarios and no coverage gaps identified"
24
- - "All modified files are docs-only (*.md, *.yml non-config, task specs, retros)"
25
-
26
- effort: medium
27
- tags: [testing, e2e, verification]
28
-
29
- steps:
30
- - name: review-coverage
31
- description: "Run /as-e2e-review for each heavily modified package to get coverage matrix"
32
- tool: "ace-e2e-review <package>"
33
- note: "Identify gaps, overlaps, and which TCs need updating before running"
34
-
35
- - name: update-if-needed
36
- description: "If coverage matrix shows gaps or stale TCs, update or create E2E tests"
37
- conditional: "coverage-matrix shows gaps or outdated TCs"
38
-
39
- - name: run-targeted
40
- description: "Run ace-test-e2e-suite for each heavily modified package (not full suite)"
41
- tool: "ace-test-e2e-suite <package>"
42
- note: "Pass package name(s) of heavily modified packages only"