Skip to content

Release v19.23.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 08:35
7091a49

Added

  • A constraint can declare the event sequences it applies to, with ForEventSequences(...) or ForEventLog() on the constraint builder, or EventSequences on [Unique]. The kernel then neither validates nor indexes it for any other sequence, so facts forwarded to the outbox no longer claim values there (#4398)
  • When declarations for one constraint are combined, one that names no sequence (meaning every sequence) wins over ones that name some (#4398)
  • Changing a constraint's sequences takes effect at registration. For every newly covered sequence in every namespace, the kernel first makes that sequence validate against the new definitions, then rebuilds its index from its existing events, whether or not the sequence was active. A sequence no longer covered stops validating and reading its index (#4398)
  • Known limits: sequences are enumerated from the well-known sequences plus those with persisted state, so a custom or inbox sequence whose state was never persisted can be missed. A crash between saving the definitions and starting the rebuild loses the rebuild. While a rebuild runs, validation sees a partially rebuilt index, and a concurrent append's newer entry can be overwritten (see #4408)