Release v22.10.3
Summary
A command that marks its key positionally — record Foo([Key] Guid Id) — compiled cleanly but silently failed to resolve, because the Chronicle key attribute lives on the constructor parameter, not the generated property, and nothing looked there. Chronicle fabricated a fresh, unrelated event source id instead, so a DCB read-model dependency injected into Handle()/Provide()/a validator always resolved to null — with no exception and isSuccess: true — for any command using this style, including with WithMongoDB()-only setups.
Fixed
- Recognize
[Key]on a positional record's primary-constructor parameter when resolving a command's event source id, so it behaves the same as[Key]on a property (#2645) - Register each
ICanResolveReadModelForCommandprovider itself in DI (not just its per-type factories), soIEnumerable<ICanResolveReadModelForCommand>reflects every registered provider (#2645)