Skip to content

Comments

Add CosmosDB persistence provider#2193

Merged
jeremydmiller merged 3 commits intomainfrom
cosmosdb-persistence
Feb 16, 2026
Merged

Add CosmosDB persistence provider#2193
jeremydmiller merged 3 commits intomainfrom
cosmosdb-persistence

Conversation

@jeremydmiller
Copy link
Member

Summary

  • Implement complete Wolverine.CosmosDb persistence provider following the RavenDb pattern
  • Full IMessageStore support: inbox/outbox, dead letter queue management, node agent persistence, distributed locking, scheduled job execution
  • Saga storage with code-generated load/store/delete frames
  • Transactional middleware, storage side effects (ICosmosDbOp), and [Entity] attribute support
  • Single-container design with type discriminator (docType) and partition key strategy
  • CosmosDB Linux emulator (vnext-preview) added to docker-compose for ARM64/Apple Silicon support
  • All 46 compliance tests pass

Test plan

  • All 46 tests in CosmosDbTests pass against CosmosDB emulator
  • Verify dotnet build of full solution still succeeds
  • Smoke test with a sample application against CosmosDB emulator or Azure CosmosDB

🤖 Generated with Claude Code

jeremydmiller and others added 3 commits February 16, 2026 06:06
Implement complete Wolverine.CosmosDb persistence provider following the
RavenDb pattern, with full IMessageStore support including inbox/outbox,
dead letter queue management, node agent persistence, distributed locking,
saga storage, transactional middleware, storage side effects (ICosmosDbOp),
and entity attribute support. Uses a single container with type discriminator
and partition key strategy. All 46 compliance tests pass against the CosmosDB
Linux emulator (vnext-preview).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant