Skip to content

Commit cdfc492

Browse files
committed
skills(automation): make every example parse and actually run
Third-party review found the five load-bearing examples broken against the schemas the skill itself cites: - Cron cadence lives in the START NODE's config.schedule ({ type: 'cron', expression } or bare string) — the top-level schedule: key is silently stripped and the flow never binds to the scheduler. - update_record/get_record filters are ObjectQL where MAPS ($in/$lt), not {field,operator,value} triples (that's the UI view-filter dialect); date values use {TODAY() + N} template tokens — cel envelopes are not evaluated in CRUD filter values. - Decision routing is edge-condition driven; unguarded out-edges all run in parallel — the old pattern executed both branches. Edges now carry mutually-exclusive cel conditions. - FlowSchema requires label on every flow and node, and variables is an array of { name, type, isInput } — all examples now pass FlowSchema.parse (runtime-validated via defineFlow). - http_request → http (retired alias), query_record → get_record (NO_EXECUTOR throw), object: → objectName:; node table regenerated from the 20-value FlowNodeAction enum (adds notify/map; script row = registered callables only, inline JS never executes). - Approval behavior enum completed (quorum/per_group + minApprovals + per-approver group); waitEventConfig documented as canonical; unset http timeoutMs = no timeout at all; removed the false claim that bare field refs in start/edge conditions resolve to null; description stops advertising the retired workflow metadata type; evals fixed (expected output now passes its own criterion). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012Kj2MJEPXoUXC4LiC3XYJc
1 parent a56cd6a commit cdfc492

3 files changed

Lines changed: 154 additions & 101 deletions

File tree

0 commit comments

Comments
 (0)