Skip to content

Release v4.77.0

Choose a tag to compare

@github-actions github-actions released this 12 Oct 13:35
0d98a71

Summary

Stage now admits Screenplay ESM v13, so models that mark concepts as personal data or secrets render into applications that protect those values.

Added

  • Stage admits exact ESM v13 language/semantic pairs (Screenplay 4.141.0) in the renderer, the Host runtime and the specification executor. Later and mixed versions are still refused with STAGE-ESM-016. (#345)
  • Generated concepts carry their compliance from the model: personal data renders [PII] (also when the concept is a secret too), and a secret renders [Encrypted] with its scope plus [NotAudited]. [ComplianceDetails] is not emitted from the executable model. (#345)
  • Command inputs that contain personal-data or secret concepts, directly or inside collections, optional values and nested types, render [property: NotAudited], so their values stay out of the causation chain. (#345)
  • STAGE-ESM-040 refuses personal-data or secret concepts used as identities (command and read-model identifiers, event destinations, projection, join and child keys, event-source and stream identifier types) and on enumeration concepts. (#345)

Changed

  • The compliance rendering reference explains the mapping, the identity rule and its surrogate-identifier fix, and why concepts should be marked before their events are first published. Models without compliance render exactly as before.
  • Play and the Stage Host do not encrypt or redact values of personal-data concepts: the Host's own event store keeps them in plain text (see #346).