Hi Shahar,

ich think this is a good extension for cases needing this withou adding too much complexity. Whereas I am not sure whether in our environment we have a use case. Would be good to hear from others if there are any. Alternatives otherwise in my mind would only be adding more enum keys for other cases (which is not really preferrable) or modelling the Dag with a few EmptyOperators to collect pre-aggregate counts to leverage existing enums... which would in turn create artificial Dag complexity just because of limited enums.

For me OK but would be cool to have other opinions as well.

Jens

On 02.05.26 11:16, Shahar Epstein wrote:
Bumping, I'll appreciate your feedback.


Shahar

On Tue, Apr 21, 2026 at 2:00 PM Shahar Epstein <[email protected]> wrote:
Hey everyone,

I'd like to get your feedback on a new AIP proposal:

AIP-106: Composable Trigger Rules
https://cwiki.apache.org/confluence/x/64wmGQ

tl;dr

This proposal introduces a composable expression model for trigger rules, 
enabling conditions not expressible with the current enum-based system, while 
fully preserving existing trigger rules for simple cases.
For example, "All done, at least two succeeded" can be expressed as TR.expr(done="all", 
success=">=2").

Design Notes/Constraints:
1. The aggregate form is AND-only by design, to preserve determinism and keep 
evaluation predictable.
2. The composable model complements (rather than replaces) the enum. Some 
trigger rules (e.g. ALL_DONE_SETUP_SUCCESS, ONE_DONE, ALWAYS) remain 
intentionally out of scope, and enums remain the more readable option for 
simple cases.

I'd appreciate your feedback on:

Backward compatibility with existing trigger rules (see Appendix A)

Semantics of eager vs complete evaluation

Scope and limits of the expression model

Potential edge cases and performance implications

UI/observability considerations for debugging expressions

Anything else


Thank you!


Shahar
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to