Skip to content

Release v4.197.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 16:48
a9b2a58

Added

  • The semantic specification runner executes Translate slices: inbound source events captures append their private events (the first observation counts as added; field-change and transition conditions are supported) and outbound projections append public events locally. Unsupported translation shapes stay refused by name. (part of #79) (part of #213)
  • Cratis rendering supports Translate slices: source events captures render as inbox reactors that decide added, changed and transition conditions from durable per-key capture state, public events render as [Public] contracts published through outbox reactors, and generated Translate specifications run against the generated handlers. Unsupported capture guards stay refused by name. (part of #79) (part of #213)
  • Typed capture identities from ESM v32 are admitted, and conversions that would lose their declared identity are refused. (#758)

Changed

  • Applications whose performer bodies cannot be verified now render with explicit implementation gaps and a not-fully-runnable marker instead of aborting rendering. (part of #743)
  • The semantic specification runner keeps Decimal values and whole numbers of 2^53 or more exact inside composite and collection event properties, so projections that copy or read them run instead of being refused; only recursive composite types are still refused. (#749)
  • A semantic specification whose child event or child removal has no parent in the run now gets the reference result (the child is never materialized) instead of being reported unsupported. A child that arrives before its parent, or whose event also changes the projection in other ways, is still reported unsupported. (#750)
  • NuGet packages now link to the documentation on cratis.io and include the Cratis icon. (#688)
  • Stage now builds on Cratis.Screenplay 4.241.0, Cratis.Chronicle 19.99.1, Cratis.Arc 22.131.0 and Cratis.Fundamentals 7.26.1.

Fixed

  • A semantic specification whose projection multiplies two event values no longer becomes unsupported when the run never appends that product's event. (#721)
  • A projection over a recursive composite type is now reported as unsupported by name instead of crashing the specification run. (#749)