Skip to content

Release v4.5.0

Choose a tag to compare

@github-actions github-actions released this 24 Sep 09:58
81832b9

Added

  • Admit ESM v2 models from Screenplay 4.20. A command with a typed produces … for destination appends to that event source without copying the identity into the event. When a specification states for <value> on its when or then event, the generated specification checks the appended event on that stream. It also seeds the projected read model there. (#128)

Changed

  • Update Cratis.Screenplay and Cratis.Screenplay.CanonicalCorpus to 4.20.0. (#128)
  • Reject ESM v2 constructs the Cratis planner cannot yet render exactly, instead of treating them as v1. Rendering fails with a typed diagnostic in these cases (#128, #13):
    • $context occurrence mappings: STAGE-ESM-013.
    • Stated specification sources that disagree, have the wrong type, or are not text or UUID: STAGE-ESM-011.
    • Whenless specifications: STAGE-ESM-011.
    • Projections keyed on the event source: STAGE-ESM-008.
  • Reject command requirements (STAGE-ESM-005), guarded productions and event tags (STAGE-ESM-006), and append-time constraints (STAGE-ESM-014). The planner does not render these yet, so the generated application would append events the reference evaluator rejects, or tag them differently. (#118, #116)
  • Reject validation rules at warning or information severity (STAGE-ESM-005) until the generated validator can report that severity. (#116)

Fixed

  • State the payment summary identifier in the Billing sample's payment-list specification. Screenplay now requires it (PLAY0351). (#124)