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
@@ -0,0 +1,65 @@
1
+ # Bug fix workflow: onboard → fix → verify → PR → review
2
+ # Usage: /as-assign-prepare fix-bug --taskref 123
3
+
4
+ name: fix-bug
5
+ description: Fix an issue, verify tests, and create a reviewed PR
6
+
7
+ parameters:
8
+ taskref:
9
+ required: true
10
+ description: Task reference for the bug fix (e.g., 123 or 256.01)
11
+ review_cycles:
12
+ required: false
13
+ default: 1
14
+ description: Number of review cycles to perform
15
+
16
+ steps:
17
+ - name: onboard
18
+ skill: as-onboard
19
+ instructions:
20
+ - Onboard yourself to the codebase.
21
+ - Load context and understand the project structure.
22
+
23
+ - name: work-on-task
24
+ skill: as-task-work
25
+ instructions:
26
+ - "First: onboard yourself using /as-onboard skill to load project context."
27
+ - "Fix the issue described in task {{taskref}}."
28
+ - Follow the bug fix workflow: analyze → reproduce → fix → test.
29
+
30
+ - name: mark-task-done
31
+ instructions:
32
+ - "Mark task {{taskref}} as done."
33
+ - "Run: ace-task update {{taskref}} --set status=done --move-to archive"
34
+ - "Commit the archive file moves: `ace-git-commit .ace-tasks/ -i 'archive completed task'`"
35
+
36
+ - name: verify-test-suite
37
+ skill: as-test-verify-suite
38
+ instructions:
39
+ - Run the test suite to verify the fix doesn't break anything.
40
+ - Ensure all tests pass.
41
+
42
+ - name: create-pr
43
+ skill: as-github-pr-create
44
+ instructions:
45
+ - Create a pull request for the bug fix.
46
+ - Include reference to the bug/task in the PR description.
47
+
48
+ - name: review-cycle-1
49
+ skill: as-review-pr
50
+ context: fork
51
+ instructions:
52
+ - "First: onboard yourself using /as-onboard skill to load project context."
53
+ - Review the bug fix code.
54
+ - Focus on correctness and edge cases.
55
+
56
+ - name: apply-feedback-1
57
+ skill: as-review-apply-feedback
58
+ instructions:
59
+ - Apply feedback from the review.
60
+ - Commit changes with descriptive messages.
61
+
62
+ customization_hints:
63
+ - "Add fix-tests after verify-test-suite if failures found"
64
+ - "Add security-audit for security-related fixes"
65
+ - "Increase review cycles for critical fixes"
@@ -0,0 +1,41 @@
1
+ # Quick implementation workflow: onboard → work → commit
2
+ # Usage: /as-assign-prepare quick-implement --taskref 123
3
+
4
+ name: quick-implement
5
+ description: Implement a task with commit, no PR or review cycles
6
+
7
+ parameters:
8
+ taskref:
9
+ required: true
10
+ description: Task reference (e.g., 123 or 256.01)
11
+
12
+ steps:
13
+ - name: onboard
14
+ skill: as-onboard
15
+ instructions:
16
+ - Onboard yourself to the codebase.
17
+ - Load context and understand the project structure.
18
+
19
+ - name: work-on-task
20
+ skill: as-task-work
21
+ instructions:
22
+ - "First: onboard yourself using /as-onboard skill to load project context."
23
+ - "Work on task {{taskref}}."
24
+ - Implement the required changes following project conventions.
25
+ - Keep changes focused and atomic.
26
+
27
+ - name: mark-task-done
28
+ instructions:
29
+ - "Mark task {{taskref}} as done."
30
+ - "Run: ace-task update {{taskref}} --set status=done --move-to archive"
31
+
32
+ - name: commit
33
+ skill: as-git-commit
34
+ instructions:
35
+ - Commit the changes.
36
+ - Use a descriptive commit message following project conventions.
37
+
38
+ customization_hints:
39
+ - "Add verify-test-suite before commit for complex changes"
40
+ - "Add lint after work-on-task for style enforcement"
41
+ - "Skip onboard if already onboarded"
@@ -0,0 +1,35 @@
1
+ # Release-only workflow: onboard → release → commit
2
+ # Usage: /as-assign-prepare release-only --version_type patch
3
+
4
+ name: release-only
5
+ description: Version bump and changelog update without code changes
6
+
7
+ parameters:
8
+ version_type:
9
+ required: false
10
+ default: "patch"
11
+ description: "Version bump type (major, minor, or patch)"
12
+
13
+ steps:
14
+ - name: onboard
15
+ skill: as-onboard
16
+ instructions:
17
+ - Onboard yourself to the codebase.
18
+ - This step is optional if already in context.
19
+
20
+ - name: release
21
+ instructions:
22
+ - Run /as-release to release all modified packages.
23
+ - "Auto-detect modified packages, apply a {{version_type}} release, and update both package and root CHANGELOGs."
24
+ - Follow semantic versioning conventions.
25
+ - Update both gem version files and CHANGELOGs.
26
+
27
+ - name: commit
28
+ skill: as-git-commit
29
+ instructions:
30
+ - Commit the version bump and changelog changes.
31
+ - Use conventional commit format.
32
+
33
+ customization_hints:
34
+ - "Add push-to-remote step for immediate push"
35
+ - "Skip onboard if already onboarded"
@@ -0,0 +1,41 @@
1
+ # Documentation workflow: onboard → research → write → commit
2
+ # Usage: /as-assign-prepare work-on-docs --scope ace-review
3
+
4
+ name: work-on-docs
5
+ description: Create or update documentation with research and commit
6
+
7
+ parameters:
8
+ scope:
9
+ required: true
10
+ description: "Package, directory, or topic to document"
11
+
12
+ steps:
13
+ - name: onboard
14
+ skill: as-onboard
15
+ instructions:
16
+ - Onboard yourself to the codebase.
17
+ - Load context for the documentation target area.
18
+
19
+ - name: research
20
+ skill: as-search-research
21
+ context: fork
22
+ instructions:
23
+ - "First: onboard yourself using /as-onboard skill to load project context."
24
+ - "Research documentation gaps for {{scope}}."
25
+ - Identify outdated, missing, or incorrect documentation.
26
+ - Review existing docs to understand the documentation style.
27
+
28
+ - name: work-on-task
29
+ skill: as-task-work
30
+ instructions:
31
+ - "Create or update documentation for {{scope}}."
32
+ - Focus on clarity, accuracy, and completeness.
33
+ - Follow project documentation conventions.
34
+ - Use markdown formatting appropriately.
35
+
36
+ - name: commit
37
+ skill: as-git-commit
38
+ instructions:
39
+ - Commit the documentation changes.
40
+ - Use a descriptive commit message.
41
+ - Follow conventional commit format if applicable.
@@ -0,0 +1,179 @@
1
+ # Unified task workflow: single or multi-task implement → release → PR → review cycles → reorganize → push
2
+ # Usage: /as-assign-prepare work-on-task --taskref 123
3
+ # /as-assign-prepare work-on-task --taskrefs 148,149,150
4
+ # /as-assign-prepare work-on-task --taskrefs 148-152
5
+ # /as-assign-prepare work-on-task --taskrefs "240.*"
6
+
7
+ name: work-on-task
8
+ description: Work on one or more tasks with PR, review cycles, release, and clean history
9
+
10
+ parameters:
11
+ taskrefs:
12
+ required: true
13
+ type: array
14
+ description: Task references (comma-separated, range, or pattern)
15
+
16
+ steps:
17
+ - name: onboard
18
+ number: "000"
19
+ workflow: wfi://onboard
20
+ instructions:
21
+ - "Load project context for the task batch: {{taskrefs}}."
22
+
23
+ - name: verify-test-suite
24
+ number: "012"
25
+ workflow: wfi://test/verify-suite
26
+ instructions:
27
+ - "Verify test coverage and performance across batch tasks: {{taskrefs}}."
28
+ - "Focus on packages modified by this batch before any broader regression checks required by the workflow."
29
+ - "If the batch is documentation-only or otherwise does not affect runnable code, mark this step skipped with a clear reason."
30
+
31
+ - name: verify-e2e
32
+ number: "015"
33
+ context: fork
34
+ instructions:
35
+ - "Run E2E tests for packages modified across batch tasks: {{taskrefs}}."
36
+ - "Detect modified packages from the current diff: `git diff origin/main --name-only | grep '^ace-' | cut -d/ -f1 | sort -u`."
37
+ - "Run `ace-test-e2e <package>` for each modified package that has test/e2e/ scenarios."
38
+ - "If more than 5 packages were modified with cross-dependencies, run the full suite: `ace-test-e2e-suite`."
39
+ - "If any scenarios fail, use /as-e2e-fix to diagnose and fix each failing scenario."
40
+ - "After fixing, rerun the failing scenarios to confirm they pass."
41
+ - "Repeat fix→rerun cycle up to 3 times if new failures appear."
42
+ - "Final gate: all previously-failing scenarios must pass before completing this step."
43
+ - "Skip only when no modified package has test/e2e/ scenarios."
44
+
45
+ - name: release-minor
46
+ number: "020"
47
+ instructions:
48
+ - Release all modified packages touched by this batch.
49
+ - Auto-detect modified packages from the current diff, bump version (minor or patch, usually minor), and update both package and root CHANGELOGs.
50
+ - This is the initial release for new functionality.
51
+ - Follow semantic versioning conventions.
52
+
53
+ - name: update-docs
54
+ number: "025"
55
+ workflow: wfi://docs/update
56
+ instructions:
57
+ - "Update docs for public contract changes introduced across batch tasks: {{taskrefs}}."
58
+ - "Limit updates to packages whose CLI commands, flags, outputs, or public APIs changed across the batch."
59
+ - "Validate updated docs before completing the step."
60
+ - "Skip if the batch introduced no public-facing contract change."
61
+
62
+ - name: create-pr
63
+ number: "030"
64
+ workflow: wfi://github/pr/create
65
+ instructions:
66
+ - "Create a pull request summarizing batch tasks: {{taskrefs}}."
67
+ - "Capture the PR number for the downstream review and PR-update steps."
68
+
69
+ - name: review-valid-1
70
+ number: "040"
71
+ context: fork
72
+ sub_steps: [review-pr, apply-feedback, release]
73
+ instructions:
74
+ - Execute the valid review cycle via child steps.
75
+ - "Child review-pr: use preset code-valid."
76
+ - "Focus: correctness — bugs, logic errors, missing functionality, broken contracts."
77
+ - "Child apply-feedback: apply medium+ priority review findings and commit."
78
+ - "Child release: follow `ace-bundle wfi://release/publish` to publish patch-level updates for modified packages touched by valid-cycle fixes and update both package and root CHANGELOGs."
79
+
80
+ - name: review-fit-1
81
+ number: "070"
82
+ context: fork
83
+ sub_steps: [review-pr, apply-feedback, release]
84
+ instructions:
85
+ - Execute the fit review cycle via child steps.
86
+ - "Child review-pr: use preset code-fit."
87
+ - "Focus: quality — performance, architecture, standards, test coverage."
88
+ - "Child apply-feedback: apply fit-cycle findings and commit."
89
+ - "Child release: follow `ace-bundle wfi://release/publish` to publish patch-level updates for modified packages touched by fit-cycle fixes and update both package and root CHANGELOGs."
90
+
91
+ - name: review-shine-1
92
+ number: "100"
93
+ context: fork
94
+ sub_steps: [review-pr, apply-feedback, release]
95
+ instructions:
96
+ - Execute the shine review cycle via child steps.
97
+ - "Child review-pr: use preset code-shine."
98
+ - "Focus: polish — simplification, naming, documentation (non-blocking suggestions)."
99
+ - "Child apply-feedback: apply worthwhile shine-cycle findings and commit."
100
+ - "Child release: follow `ace-bundle wfi://release/publish` to publish patch-level updates for modified packages touched by shine-cycle fixes and update both package and root CHANGELOGs."
101
+
102
+ - name: reorganize-commits
103
+ number: "130"
104
+ workflow: wfi://git/reorganize-commits
105
+ instructions:
106
+ - "Reorganize commits for the batch work on: {{taskrefs}}."
107
+ - "Group commits by concern where possible, such as structure, implementation, tests, docs, and release updates."
108
+
109
+ - name: push-to-remote
110
+ number: "140"
111
+ instructions:
112
+ - Push all changes to the remote repository.
113
+ - "Run: git push --force-with-lease origin HEAD"
114
+ - Force-with-lease needed because reorganize-commits rewrites history.
115
+
116
+ - name: update-pr-desc
117
+ number: "150"
118
+ context: fork
119
+ workflow: wfi://github/pr/update
120
+ instructions:
121
+ - "Update the PR description with the final batch summary for: {{taskrefs}}."
122
+ - "CRITICAL: The File Changes section must contain the complete, untruncated grouped-stats output from `ace-git diff`. Paste it verbatim — never summarize or abbreviate."
123
+ - "Include final release/version information and the key completed components when applicable."
124
+ - "Make sure the PR description reflects the post-review final state."
125
+
126
+ - name: mark-tasks-done
127
+ number: "155"
128
+ workflow: wfi://task/update
129
+ instructions:
130
+ - "Mark each top-level task in {{taskrefs}} as done and archive it."
131
+ - |
132
+ Run this loop for each task in the batch:
133
+ - Parse and normalize:
134
+ - `TASKREFS="{{taskrefs}}"`
135
+ - `IFS=',' read -ra refs <<< "${TASKREFS// /}"`
136
+ - For each `ref`:
137
+ - `ace-task update "$ref" --set status=done --move-to archive`
138
+ - |
139
+ After all tasks are archived, commit the file moves:
140
+ ```bash
141
+ ace-git-commit .ace-tasks/ -i "archive completed tasks"
142
+ ```
143
+
144
+ - name: create-retro
145
+ number: "160"
146
+ skill: as-retro-create
147
+ instructions:
148
+ - "Create a retrospective for the batch work on: {{taskrefs}}."
149
+ - "Capture what went well, what could improve, and action items across the batch."
150
+ - "Focus on process learnings, not just task outcomes."
151
+
152
+ expansion:
153
+ batch-parent:
154
+ name: batch-tasks
155
+ number: "010"
156
+ instructions: |
157
+ Batch container for multiple task implementations.
158
+ This step auto-completes when all child tasks are done.
159
+
160
+ Tasks to implement: {{taskrefs}}
161
+
162
+ foreach: taskrefs
163
+ child-template:
164
+ name: "work-on-{{item}}"
165
+ parent: "010"
166
+ context: fork
167
+ workflow: wfi://task/work
168
+ taskref: "{{item}}"
169
+ instructions: |
170
+ Use existing base and task context loaded by the batch workflow.
171
+ Implement task {{item}}.
172
+
173
+ **Prior sibling context** (for sequential batches):
174
+ If this task has dependencies on earlier tasks in the batch, load their context before planning:
175
+ 1. Read completed sibling task specs: `ace-bundle task://<dependency-ref>` for each ref in the task's `dependencies` field
176
+ 2. Read completed sibling reports from `.ace-local/assign/<assignment-id>/reports/<sibling-step>.*` — especially `work-on-task` and `plan-task` reports
177
+ 3. Use this context during planning to identify existing implementations to refactor rather than reimplement
178
+
179
+ When complete, mark the task as done: run `ace-task update {{item}} --set status=done --move-to archive`
@@ -0,0 +1,19 @@
1
+ ---
2
+ # Skill Sources Protocol Configuration for ace-assign gem
3
+ # This enables canonical skill discovery from the installed ace-assign gem
4
+
5
+ name: ace-assign
6
+ type: gem
7
+ description: Canonical skills from ace-assign gem
8
+ priority: 10
9
+
10
+ # Configuration for skill discovery within the gem
11
+ config:
12
+ # Relative path within the gem
13
+ relative_path: handbook/skills
14
+
15
+ # Pattern for finding canonical skill files
16
+ pattern: "*/SKILL.md"
17
+
18
+ # Enable discovery
19
+ enabled: true
@@ -0,0 +1,19 @@
1
+ ---
2
+ # WFI Sources Protocol Configuration for ace-assign gem
3
+ # This enables workflow discovery from the installed ace-assign gem
4
+
5
+ name: ace-assign
6
+ type: gem
7
+ description: Assignment workflow instructions from ace-assign gem
8
+ priority: 10
9
+
10
+ # Configuration for workflow discovery within the gem
11
+ config:
12
+ # Relative path within the gem (default: handbook/workflow-instructions)
13
+ relative_path: handbook/workflow-instructions
14
+
15
+ # Pattern for finding workflow files (default: *.wf.md)
16
+ pattern: "*.wf.md"
17
+
18
+ # Enable discovery
19
+ enabled: true