Skip to content

Release v22.14.0

Choose a tag to compare

@github-actions github-actions released this 10 Sep 15:47
b40c26f

Summary

Keep command decisions focused on what should happen by returning command operations. Arc executes the declared work and manages optional compensation without application-written rollback stacks, while protecting already-committed and uncertain business outcomes.

This is a backend-only addition: HTTP and TypeScript command-result contracts remain unchanged. Initial support covers flat, sequential commands; compensation is best-effort and in-process, not a durable workflow.

Added

  • ICommandOperation with dependency-injected Execute() and optional Compensate(), plus immutable CommandOperations for ordered zero-to-many work.
  • Automatic failure handling, reverse-order compensation, independent cleanup cancellation, and backend recovery observations for compatible command boundaries, including Chronicle's deferred event commit.
  • Compiler diagnostics and generated invocation support for operation declarations, with operations excluded from generated client responses.
  • CommandScenario cancellation support and assertions over real operation execution and compensation.
  • Dedicated usage, migration, troubleshooting, and testing guides, with runnable examples for partial failure, cancellation, and Chronicle commit rejection.
  • Contextual recommendations throughout Arc's existing command, tutorial, validation, and storage guidance, preserving supported direct calls and durable reactor/workflow boundaries.