Repository navigation
0.29.0
Added
- Source
ess/7declares command-localreplays: a retry returns the originating
success's typed result and preserves its original subject. An effect-free named
error can cover the remaining finite subject states. Ordinarywrong_state
witnesses in this source version observe the complete subject and reject every
direct event. Earlier source contracts and generated bytes remain unchanged. - Conformance suites
12and13capture actual original results, input, actor
and identity before an unforced retry. Rust and generated Go compare exact
typed responses and fresh complete subject observations. Native adapters retain
exact integers; JSON adapters must preserve declared Integer values before
observation or refuse. Decimal/Binary64 response positions remain unsupported.
TypeScript/browser readers refuse these suite envelopes before callbacks. - Complete snapshots carry a finite typed row descriptor and validate both
observations before comparison. Missing required fields cannot pass as an
unchanged partial row. Replay synthesis checks the retry's own eligibility
against the original input and post-command subject; unavailable immediate
witnesses receive a named refusal. - Native Rust/Go outcomes retain the typed response even without an event mapping.
Documentation, OpenAPI, AsyncAPI and the compiled graph expose the replay
relation;ess-diff/6records replay origins and complete-refusal observation
changes. The generated source schema includes the new declaration.
The generated witness covers an immediate retry. Persistence, restart, later-head
retries and absence of physical writes remain adopter-owned acceptance.