Skip to main content

0.34–0.36 — predicates, stored-field guards, aggregates, and values read from the row

· One min read

Three releases, each adding a source format version described in the version history.

What a guard can read​

0.34.0 adds starts_with, ends_with and contains over text, and when_subject: {predicate: …}, which guards an outcome by the addressed entity's stored fields. Aggregate views count, sum and average rows of one entity, grouped or not. Synthesis witnesses both sides of each new guard.

Values a scenario cannot invent​

0.35.0 lets a command declare fixture_inputs:: a deployed resource's identity, which no generator can choose, is resolved from an independent provider before the scenario starts, and the same value is compared in the events it causes.

Values read from the row​

0.36.0 adds value expressions under ess/14: {subject: <field>} reads the addressed entity before the outcome, {increment: n} adds to a stored number, {input: f, else: {generated: true}} takes an optional input or a minted value, and a nested mapping fills a struct field by field. A Decimal literal is admitted in every format, and the text subject.note is refused rather than compiled as text.