Flows YAML — author 9 default *.yml flow files #1068

Closed
opened 2026-05-10 15:38:52 +00:00 by claude-desktop · 0 comments
Collaborator

User story

As an operator setting up a fresh deployment, I want a complete set of default flows shipped with the repo so that out-of-the-box dispatch behaviour matches today's JSON node engine.

Acceptance criteria

Files under flows/defaults/ (one per file, name = filename stem)

  • pr-opened.yml — on pull_request: [opened, synchronize], dispatches reviewer.
  • review-requested.yml — on pull_request_review: [requested].
  • issue-opened.yml — on issues: [opened], label triage.
  • issue-labeled.yml — on issues: [labeled], role routing.
  • issue-assigned.yml — on issues: [assigned], dispatch with dedup.
  • issue-unassigned.yml — on issues: [unassigned], calls cancel_tasks.
  • issue-closed.yml — on issues: [closed], calls propagate_dependencies.
  • pr-merged.yml — on pr: [merged] (internal trigger), follow-up cascade.
  • breakdown-comment.yml — on issue_comment: [created], regex match /breakdown.

Conformance

  • Each file passes flows.schema.json validation.
  • Each file has name, on, optional if, steps.
  • No file references an op outside the registered op list.
  • Each default flow has a fixture-replay test in flows/defaults/__tests__/.

Side-effect parity

  • Running every fixture against the new linear executor produces the same observable outputs as the legacy JSON node engine (asserted by shadow-mode diff in #flows-14).

Out of scope

  • Custom flows (operator authors them under flows/custom/).
  • Templates for the create-flow dialog (covered by #flows-11).

References

  • Spec: docs/specs/flows-yaml.md §3, §11 Phase 1 step 3.
  • Replaces: apps/server/src/http/flows-routes.ts:43–76 seed list.
## User story As an operator setting up a fresh deployment, I want a complete set of default flows shipped with the repo so that out-of-the-box dispatch behaviour matches today's JSON node engine. ## Acceptance criteria ### Files under `flows/defaults/` (one per file, `name` = filename stem) - [ ] `pr-opened.yml` — on `pull_request: [opened, synchronize]`, dispatches reviewer. - [ ] `review-requested.yml` — on `pull_request_review: [requested]`. - [ ] `issue-opened.yml` — on `issues: [opened]`, label triage. - [ ] `issue-labeled.yml` — on `issues: [labeled]`, role routing. - [ ] `issue-assigned.yml` — on `issues: [assigned]`, dispatch with dedup. - [ ] `issue-unassigned.yml` — on `issues: [unassigned]`, calls `cancel_tasks`. - [ ] `issue-closed.yml` — on `issues: [closed]`, calls `propagate_dependencies`. - [ ] `pr-merged.yml` — on `pr: [merged]` (internal trigger), follow-up cascade. - [ ] `breakdown-comment.yml` — on `issue_comment: [created]`, regex match `/breakdown`. ### Conformance - [ ] Each file passes `flows.schema.json` validation. - [ ] Each file has `name`, `on`, optional `if`, `steps`. - [ ] No file references an op outside the registered op list. - [ ] Each default flow has a fixture-replay test in `flows/defaults/__tests__/`. ### Side-effect parity - [ ] Running every fixture against the new linear executor produces the same observable outputs as the legacy JSON node engine (asserted by shadow-mode diff in #flows-14). ## Out of scope - Custom flows (operator authors them under `flows/custom/`). - Templates for the create-flow dialog (covered by #flows-11). ## References - Spec: `docs/specs/flows-yaml.md` §3, §11 Phase 1 step 3. - Replaces: `apps/server/src/http/flows-routes.ts:43–76` seed list.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/claude-hooks#1068
No description provided.