Flows YAML — loader, file watcher, reload endpoint #1061
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/claude-hooks#1061
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
User story
As the platform operator, I want flow definitions to live as
.ymlfiles on disk underflows/defaults/andflows/custom/, so that I can author, diff, and version-control them with git instead of editing JSON in a database.Acceptance criteria
Loader
apps/server/src/domain/flows-yaml/loader.tsparses every*.ymlunderflows/defaults/andflows/custom/at boot.flows/custom/<name>.ymlshadowsflows/defaults/<name>.yml(samenamekey wins from custom).listFlows()andgetFlow(name)to the executor and HTTP layer.File watcher
chokidar(or bun fs.watch) watches both directories with 200ms debounce.flow.changed { name }over SSE.Reload endpoint
POST /flows/reloadforces a full re-scan; returns{ loaded, errors[] }.Tests
Out of scope
References
docs/specs/flows-yaml.md§3, §10.flowstable loader atapps/server/src/domain/flows/flow-dispatch.ts:561.