Stage is on Cratis.Arc / Cratis.Arc.MongoDB 20.69.3 and Cratis.Chronicle.Contracts 16.13.4. Current lines are Arc 21.0.4 and Chronicle 16.19.2.
Breaking changes in Arc 21
DateOnly and TimeOnly generate as the @cratis/fundamentals types rather than Date, because a calendar date parsed as a Date renders a day early west of UTC. Requires @cratis/fundamentals 7.17.0 or newer. Any consumer reading such a field needs .toDate() before date formatting, and anything constructing one needs DateOnly.fromDate(...).
- A validator message declared as a factory is no longer baked into the generated client validator. The rule still mirrors; the message is left to the server.
ShouldHaveValidationErrors no longer passes when the command was rejected only because the pipeline could not resolve a dependency — specs that relied on the old, more permissive behavior will start failing.
Chronicle 16.19.2
Chronicle added Revise(EventSequenceNumber, object) to IEventSequence. Anything here implementing or decorating that interface must implement it. Worth knowing how this fails: it builds fine and only breaks once both assemblies load together, as TypeLoadException: Method 'Revise' ... does not have an implementation. That is what took out an entire downstream specification suite, so it is worth a deliberate check rather than trusting a green build.
Arc must also be on a version built against the matching Chronicle — 21.0.4 is built against 16.19.2. Verify with:
curl -sL https://api.nuget.org/v3-flatcontainer/cratis.arc.chronicle.testing/21.0.4/cratis.arc.chronicle.testing.21.0.4.nupkg -o a.nupkg
unzip -p a.nupkg '*.nuspec' | grep -i chronicle
Note for downstream
Studio pins Cratis.Stage / Cratis.Stage.Contracts, and 1.2.0 made Produces a required part of CommandDefinition. Screenplay models produces in full (conditions, property mappings, tags) and Stage can now receive it, but nothing translates between the two yet — Studio currently passes an empty list. Worth its own issue if that mapping is wanted.
Stage is on
Cratis.Arc/Cratis.Arc.MongoDB20.69.3 andCratis.Chronicle.Contracts16.13.4. Current lines are Arc 21.0.4 and Chronicle 16.19.2.Breaking changes in Arc 21
DateOnlyandTimeOnlygenerate as the@cratis/fundamentalstypes rather thanDate, because a calendar date parsed as aDaterenders a day early west of UTC. Requires@cratis/fundamentals7.17.0 or newer. Any consumer reading such a field needs.toDate()before date formatting, and anything constructing one needsDateOnly.fromDate(...).ShouldHaveValidationErrorsno longer passes when the command was rejected only because the pipeline could not resolve a dependency — specs that relied on the old, more permissive behavior will start failing.Chronicle 16.19.2
Chronicle added
Revise(EventSequenceNumber, object)toIEventSequence. Anything here implementing or decorating that interface must implement it. Worth knowing how this fails: it builds fine and only breaks once both assemblies load together, asTypeLoadException: Method 'Revise' ... does not have an implementation. That is what took out an entire downstream specification suite, so it is worth a deliberate check rather than trusting a green build.Arc must also be on a version built against the matching Chronicle — 21.0.4 is built against 16.19.2. Verify with:
Note for downstream
Studio pins
Cratis.Stage/Cratis.Stage.Contracts, and 1.2.0 madeProducesa required part ofCommandDefinition. Screenplay modelsproducesin full (conditions, property mappings, tags) and Stage can now receive it, but nothing translates between the two yet — Studio currently passes an empty list. Worth its own issue if that mapping is wanted.