You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 9dcc0ae
Browse filesBrowse the repository at this point in the historyBrowse files
fix(automation): array-form flow triggerType fails loudly, not silently never firing (#3481) (#3484)
An array `triggerType` on a flow start node (e.g. ['record-after-create',
'record-after-delete']) — the shape an author or AI authoring pass naturally
reaches for to fire on multiple events — was accepted everywhere and armed
nowhere. Multi-event unions are deliberately unsupported (#3457), but nothing
said so: defineFlow passed the array, the engine's `typeof === 'string'` check
folded it to no trigger and misclassified the flow as manual (so it never
entered the binding audit), and the flow-trigger-readiness lint used the same
narrowing and produced no finding. The flow bound to nothing and never fired,
with zero output at any layer — the last authoring shape still slipping past
the #3427/#3472 silent-never-fire guards.
Defensive fix (arrays stay unsupported; they now fail loudly):
- lint (validate-flow-trigger-readiness): an array triggerType with any
record-* element yields a flow-trigger-unknown-event warning at os validate
time, steering to record-after-write or one flow per event.
- engine (resolveTriggerBinding): route such an array to the record_change
trigger — as an unmappable single token is — instead of folding to a manual
flow, so it reaches the trigger's bind-time rejection and the binding audit.
- trigger (record-change): the bind-time rejection detects the array shape and
emits a targeted warning (names the flow, points at record-after-write and
#3457) rather than the generic unknown-token line.
Each new test proves red against the pre-fix code first.
Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
0 commit comments