Repository navigation
Release v4.193.0
Commands can now decide from the read models they declare under reads, with the reference evaluator guarding those decisions against concurrent changes. Models opt in once with an application-root preamble; models without it keep their bytes, version and diagnostics.
Added
- Application-root
command reads protectedpreamble opts a model into protected command reads, bound as ESM v25. Declare it once in the root document; imported commands inherit it. See Commands and decision 0085. (#129) - Under the preamble,
read.propertypaths qualify single-level read-model values inrequireconditions and in produced-event mappings. (#802) - The reference evaluator rejects a command with
Validationwhen a required read-model instance is absent, and withConflict(DecisionStateChanged) when a matching fact is appended between decision and commit. (#129) - Diagnostics
PLAY0780toPLAY0785report a misplaced or duplicate preamble, a read that cannot be protected (with its closed reason), a read without a key, reads combined withconcurrency, and unknown or ambiguous read paths. (#129) - Informational
PLAY0786on eligible legacy models, with a typed workspace and MCP repair that previews inserting the preamble for individual review before apply. (#129) - Syntax, highlighting, completion and diagnostics for the preamble in the TypeScript compiler, the Monaco editor and the VS Code extension. (#129)