feat(messaging): add guaranteed delivery pattern#388
Conversation
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Test Results 1 files 1 suites 1m 2s ⏱️ Results for commit 9781e33. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Pull request overview
Adds the Guaranteed Delivery enterprise integration pattern: a GuaranteedDeliveryQueue<TPayload> runtime with a pluggable store, a Roslyn incremental generator + attribute surface, a shipment DI example, benchmarks, catalog entries, docs, TOC updates, and TinyBDD coverage across all surfaces.
Changes:
- New
GuaranteedDeliveryQueue<TPayload>+InMemoryGuaranteedDeliveryStore<TPayload>runtime with lease/ack/release/dead-letter semantics, plusGenerateGuaranteedDeliveryAttributeandGuaranteedDeliveryGenerator(diagnostics PKMGD001/002). - Shipment DI example, focused + aggregate
IServiceCollectionregistrations, catalog + example-catalog entries, andGuaranteedDeliveryBenchmarks. - Documentation/TOC additions and benchmark-results, README, pattern-coverage, and benchmark coverage test updates (404 routes, 41 enterprise integration patterns).
Reviewed changes
Copilot reviewed 27 out of 27 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/PatternKit.Core/Messaging/Reliability/GuaranteedDelivery.cs | New runtime types, store, queue facade, and builder. |
| src/PatternKit.Generators.Abstractions/Messaging/GuaranteedDeliveryAttributes.cs | New [GenerateGuaranteedDelivery] attribute. |
| src/PatternKit.Generators/Messaging/GuaranteedDeliveryGenerator.cs | Incremental generator emitting Create() factory and diagnostics. |
| src/PatternKit.Generators/AnalyzerReleases.Unshipped.md | Tracks PKMGD001/PKMGD002. |
| src/PatternKit.Examples/Messaging/ShipmentGuaranteedDeliveryExample.cs | Shipment domain, service, fluent + generated queues, runner, DI helper. |
| src/PatternKit.Examples/DependencyInjection/PatternKitExampleServiceCollectionExtensions.cs | Focused + aggregate DI registration and example service record. |
| src/PatternKit.Examples/ProductionReadiness/PatternKitPatternCatalog.cs | Adds Guaranteed Delivery catalog entry. |
| src/PatternKit.Examples/ProductionReadiness/PatternKitExampleCatalog.cs | Adds shipment example descriptor. |
| benchmarks/PatternKit.Benchmarks/Messaging/GuaranteedDeliveryBenchmarks.cs | Fluent vs generated construction/execution benchmarks. |
| test/PatternKit.Tests/Messaging/Reliability/GuaranteedDeliveryTests.cs | Runtime behavior and validation tests. |
| test/PatternKit.Generators.Tests/GuaranteedDeliveryGeneratorTests.cs | Generator output + diagnostic tests. |
| test/PatternKit.Generators.Tests/AbstractionsAttributeCoverageTests.cs | Attribute defaults/configuration test. |
| test/PatternKit.Examples.Tests/Messaging/ShipmentGuaranteedDeliveryExampleTests.cs | Example runner and DI integration tests. |
| test/PatternKit.Examples.Tests/ProductionReadiness/PatternKitPatternCatalogTests.cs | Adds pattern name and 41 EI count. |
| test/PatternKit.Examples.Tests/ProductionReadiness/PatternKitBenchmarkCoverageTests.cs | Updates published route count to 404. |
| README.md, docs/index.md, docs/guides/{pattern-coverage,benchmarks,benchmark-results}.md, docs/generators/{index.md,toc.yml,guaranteed-delivery.md}, docs/patterns/{toc.yml,messaging/guaranteed-delivery.md}, docs/examples/{toc.yml,shipment-guaranteed-delivery.md} | Pattern table, TOC, benchmark, and example documentation updates. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| href: message-expiration.md | ||
|
|
||
| - name: Guaranteed Delivery | ||
| href: guaranteed-delivery.md | ||
|
|
||
| - name: Message Store | ||
| href: message-store.md | ||
| href: message-store.md |
| href: order-message-expiration.md | ||
|
|
||
| - name: Shipment Guaranteed Delivery | ||
| href: shipment-guaranteed-delivery.md | ||
|
|
||
| - name: Order Message Store | ||
| href: order-message-store.md | ||
| href: order-message-store.md |
🔍 PR Validation ResultsVersion: `` ✅ Validation Steps
📊 ArtifactsDry-run artifacts have been uploaded and will be available for 7 days. This comment was automatically generated by the PR validation workflow. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #388 +/- ##
==========================================
+ Coverage 89.57% 95.63% +6.06%
==========================================
Files 525 529 +4
Lines 42511 42801 +290
Branches 6142 6182 +40
==========================================
+ Hits 38080 40934 +2854
+ Misses 2011 1867 -144
+ Partials 2420 0 -2420
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
a2b03ec to
9781e33
Compare
Code Coverage |
Closes #387
Summary
Validation