Skip to content

Adds mediator for mocha#9416

Merged
PascalSenn merged 8 commits intomainfrom
pse/adds-mocha-mediator
Mar 22, 2026
Merged

Adds mediator for mocha#9416
PascalSenn merged 8 commits intomainfrom
pse/adds-mocha-mediator

Conversation

@PascalSenn
Copy link
Copy Markdown
Member

@PascalSenn PascalSenn commented Mar 22, 2026

No description provided.

Copilot AI review requested due to automatic review settings March 22, 2026 20:46
@github-actions github-actions Bot added 📚 documentation This issue is about working on our documentation. 🌶️ website labels Mar 22, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new Mocha Mediator subsystem (runtime + DI + instrumentation), adds a Roslyn source generator/analyzers package with snapshot-based tests, and wires mediator usage into EF Core integration, demos, benchmarks, and docs navigation.

Changes:

  • Added Mocha.Mediator + Mocha.Mediator.Abstractions projects (pipelines, middleware compilation, instrumentation, pooling, DI host/builder APIs).
  • Added Mocha.Analyzers source generator + extensive snapshot test suite.
  • Added Mocha.Utilities (feature/pooling/buffer helpers) and updated docs/demo/benchmarks/EF integration to use the new mediator pieces.

Reviewed changes

Copilot reviewed 225 out of 250 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
website/src/docs/mocha/v1/messages.md Minor wording/formatting tweak in docs.
website/src/docs/docs.json Adds Mediator section to Mocha v1 docs nav.
src/Mocha/test/Mocha.Mediator.Tests/Mocha.Mediator.Tests.csproj New mediator test project.
src/Mocha/test/Mocha.EntityFrameworkCore.Tests/Mocha.EntityFrameworkCore.Tests.csproj New EF Core integration test project.
src/Mocha/test/Mocha.Analyzers.Tests/WarmUpGeneratorTests.cs Snapshot test for warm-up generation.
src/Mocha/test/Mocha.Analyzers.Tests/QueryHandlerGeneratorTests.cs Snapshot tests for query handler generation.
src/Mocha/test/Mocha.Analyzers.Tests/NotificationHandlerGeneratorTests.cs Snapshot tests for notification handler generation.
src/Mocha/test/Mocha.Analyzers.Tests/NestedHandlerTests.cs Snapshot test for nested handler discovery.
src/Mocha/test/Mocha.Analyzers.Tests/ModuleInfo.cs InternalsVisibleTo for analyzers.
src/Mocha/test/Mocha.Analyzers.Tests/Mocha.Analyzers.Tests.csproj New analyzer test project wiring.
src/Mocha/test/Mocha.Analyzers.Tests/MediatorModuleTests.cs Tests module naming/registration generation.
src/Mocha/test/Mocha.Analyzers.Tests/InternalHandlerTests.cs Tests internal handler support.
src/Mocha/test/Mocha.Analyzers.Tests/GenericHandlerTests.cs Tests generics + deterministic ordering.
src/Mocha/test/Mocha.Analyzers.Tests/ExplicitModuleNameTests.cs Tests explicit module attribute.
src/Mocha/test/Mocha.Analyzers.Tests/CommandHandlerGeneratorTests.cs Snapshot tests for command handler generation.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/WarmUpGeneratorTests.Generate_WarmUpMethod_WithAllHandlerTypes_MatchesSnapshot.md Snapshot output for warm-up test.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/QueryHandlerGeneratorTests.Generate_QueryHandler_MatchesSnapshot.md Snapshot output for single query handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/QueryHandlerGeneratorTests.Generate_MultipleQueryHandlers_MatchesSnapshot.md Snapshot output for multiple query handlers.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/PartialClassHandlerTests.Generate_PartialVoidCommandHandler_AcrossFiles_MatchesSnapshot.md Snapshot output for partial void handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/PartialClassHandlerTests.Generate_PartialQueryHandler_AcrossFiles_MatchesSnapshot.md Snapshot output for partial query handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/PartialClassHandlerTests.Generate_PartialClassHandler_MatchesSnapshot.md Snapshot output for partial handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/NotificationHandlerGeneratorTests.Generate_SingleNotificationHandler_MatchesSnapshot.md Snapshot output for single notification handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/NotificationHandlerGeneratorTests.Generate_MultipleHandlersForSameNotification_MatchesSnapshot.md Snapshot output for multiple notification handlers.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/NestedHandlerTests.Generate_NestedClassHandler_MatchesSnapshot.md Snapshot output for nested handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/ModuleNameHelperTests.Generate_NullAssemblyName_UsesAssemblyDefault_MatchesSnapshot.md Snapshot output for null assembly name.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/ModuleNameHelperTests.Generate_AssemblyNameWithHyphen_UsesLastSegmentSanitized_MatchesSnapshot.md Snapshot output for sanitized module name.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/MixedHandlerGeneratorTests.Generate_NoHandlers_MatchesSnapshot.md Snapshot output for no handlers case.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/MixedHandlerGeneratorTests.Generate_HandlersInDifferentNamespaces_MatchesSnapshot.md Snapshot output for mixed namespaces.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/MediatorModuleTests.Generate_ModuleFile_ContainsHandlerRegistrations.md Snapshot output for module registrations.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/MediatorModuleTests.Generate_DottedAssemblyName_UsesLastSegment.md Snapshot output for dotted assembly name.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/MediatorModuleTests.Generate_DefaultAssemblyName_PrefixesWithLastSegment.md Snapshot output for default assembly name.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/KnownTypeSymbolsTests.Generate_WithoutMochaUsings_NoHandlersRegistered_MatchesSnapshot.md Snapshot output for missing usings.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/KnownTypeSymbolsTests.Generate_WithAllHandlerTypes_AllSymbolsResolved_MatchesSnapshot.md Snapshot output for symbol resolution.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/KnownTypeSymbolsTests.Generate_CommandVoidResolution_ICommandInterface_MatchesSnapshot.md Snapshot output for ICommand resolution.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/KnownTypeSymbolsTests.Generate_CommandOfTResolution_ICommandGeneric_MatchesSnapshot.md Snapshot output for ICommand resolution.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/InternalHandlerTests.Generate_InternalHandler_MatchesSnapshot.md Snapshot output for internal handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/GenericHandlerTests.Generate_OpenGenericCommand_MatchesSnapshot.md Snapshot output + diagnostics for open generic.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/GenericHandlerTests.Generate_MultipleHandlersSameNamespace_DeterministicOrder_MatchesSnapshot.md Snapshot output for deterministic ordering.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/GenericHandlerTests.Generate_GenericBaseHandler_MatchesSnapshot.md Snapshot output + diagnostics for abstract base handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/ExplicitModuleNameTests.Generate_ModuleWithOnlyName_MatchesSnapshot.md Snapshot output for explicit module.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.NoWarning_CommandWithHandler_NoDiagnostic.md Snapshot output for no diagnostics case.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0004_OpenGenericQuery_ReportsInfo.md Snapshot output for MO0004 query info diag.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0004_OpenGenericCommand_ReportsInfo.md Snapshot output for MO0004 command info diag.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0003_AbstractHandler_ReportsWarning.md Snapshot output for MO0003 warning diag.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0002_VoidCommandWithTwoHandlers_ReportsError.md Snapshot output for MO0002 error diag (void).
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0002_CommandWithTwoHandlers_ReportsError.md Snapshot output for MO0002 error diag (response).
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0001_QueryWithNoHandler_ReportsWarning.md Snapshot output for MO0001 warning diag (query).
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/DiagnosticTests.MO0001_CommandWithNoHandler_ReportsWarning.md Snapshot output for MO0001 warning diag (command).
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/CommandHandlerGeneratorTests.Generate_VoidCommandHandler_MatchesSnapshot.md Snapshot output for void command handler.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/CommandHandlerGeneratorTests.Generate_MultipleCommandHandlers_MatchesSnapshot.md Snapshot output for multiple command handlers.
src/Mocha/test/Mocha.Analyzers.Tests/snapshots/CommandHandlerGeneratorTests.Generate_CommandWithResponseHandler_MatchesSnapshot.md Snapshot output for command handler w/ response.
src/Mocha/src/Mocha/Mocha.csproj Adds Mocha.Utilities dependency.
src/Mocha/src/Mocha/Extensions/IMessageBusHostBuilderExtensions.cs Renames service-registration extension API.
src/Mocha/src/Mocha.Utilities/Mocha.Utilities.csproj New utilities project.
src/Mocha/src/Mocha.Utilities/Features/ISealable.cs New sealable feature contract.
src/Mocha/src/Mocha.Utilities/Features/IPooledFeature.cs New pooled feature contract.
src/Mocha/src/Mocha.Utilities/Features/EmptyFeatureCollection.cs Adds an immutable empty feature collection.
src/Mocha/src/Mocha.Utilities/Buffers/IWritableMemory.cs Adds writable memory abstraction.
src/Mocha/src/Mocha.Utilities/Buffers/BufferPools.cs Adds tiered ArrayPool helper.
src/Mocha/src/Mocha.Utilities/Buffers/ArrayMemoryOwner.cs Adds IMemoryOwner wrapper.
src/Mocha/src/Mocha.Mediator/PoolingMediatorExtensions.cs Registers mediator pooling services.
src/Mocha/src/Mocha.Mediator/Pipeline/TaskWhenAllPublisher.cs Concurrent notification strategy.
src/Mocha/src/Mocha.Mediator/Pipeline/NotificationStrategyFeature.cs Feature storing resolved notification strategy.
src/Mocha/src/Mocha.Mediator/Pipeline/MediatorPipelineConfiguration.cs Pipeline metadata container for generator/runtime.
src/Mocha/src/Mocha.Mediator/Pipeline/ForeachAwaitPublisher.cs Sequential notification strategy.
src/Mocha/src/Mocha.Mediator/Mocha.Mediator.csproj New mediator project definition.
src/Mocha/src/Mocha.Mediator/MediatorRuntime.cs Runtime pipeline store + pooled context caching.
src/Mocha/src/Mocha.Mediator/MediatorPools.cs Pool accessor implementation.
src/Mocha/src/Mocha.Mediator/MediatorOptions.cs Options (service lifetime).
src/Mocha/src/Mocha.Mediator/MediatorMiddlewareFactoryContext.cs Context for compile-time middleware factories.
src/Mocha/src/Mocha.Mediator/MediatorMiddlewareConfiguration.cs Middleware record + optional key.
src/Mocha/src/Mocha.Mediator/MediatorMiddlewareCompiler.cs Middleware composition into executable delegate.
src/Mocha/src/Mocha.Mediator/MediatorMiddleware.cs Middleware factory delegate type.
src/Mocha/src/Mocha.Mediator/MediatorDelegate.cs Pipeline delegate type.
src/Mocha/src/Mocha.Mediator/MediatorContextPool.cs DefaultObjectPool for MediatorContext.
src/Mocha/src/Mocha.Mediator/MediatorContext.cs Mutable pooled dispatch context.
src/Mocha/src/Mocha.Mediator/Instrumentation/SemanticConventions.cs OTEL semantic keys for mediator spans.
src/Mocha/src/Mocha.Mediator/Instrumentation/NoopMediatorDiagnosticEvents.cs No-op diagnostics implementation.
src/Mocha/src/Mocha.Mediator/Instrumentation/MochaMediatorActivitySource.cs ActivitySource accessor.
src/Mocha/src/Mocha.Mediator/Instrumentation/MediatorDiagnosticMiddleware.cs Middleware emitting diagnostic events.
src/Mocha/src/Mocha.Mediator/Instrumentation/MediatorDiagnosticEventListener.cs Base event listener class with no-op defaults.
src/Mocha/src/Mocha.Mediator/Instrumentation/IMediatorDiagnosticEvents.cs Diagnostic events interface.
src/Mocha/src/Mocha.Mediator/Instrumentation/IMediatorDiagnosticEventListener.cs Listener marker interface.
src/Mocha/src/Mocha.Mediator/Instrumentation/AggregateMediatorDiagnosticEvents.cs Aggregates multiple listeners + scopes.
src/Mocha/src/Mocha.Mediator/Instrumentation/ActivityMediatorDiagnosticListener.cs Activity-based diagnostic listener.
src/Mocha/src/Mocha.Mediator/IMediatorRuntime.cs Runtime interface (features).
src/Mocha/src/Mocha.Mediator/IMediatorPools.cs Pool interface.
src/Mocha/src/Mocha.Mediator/IMediatorContext.cs Runtime pipeline context contract.
src/Mocha/src/Mocha.Mediator/DependencyInjection/MediatorSetup.cs Stores deferred builder actions.
src/Mocha/src/Mocha.Mediator/DependencyInjection/MediatorServiceCollectionExtensions.cs Adds mediator to IServiceCollection (named/unnamed).
src/Mocha/src/Mocha.Mediator/DependencyInjection/MediatorHostBuilder.cs IMediatorHostBuilder implementation.
src/Mocha/src/Mocha.Mediator/DependencyInjection/MediatorBuilderInstrumentationExtensions.cs DI helpers for instrumentation/listeners.
src/Mocha/src/Mocha.Mediator/DependencyInjection/IMediatorHostBuilder.cs Host builder API.
src/Mocha/src/Mocha.Mediator/DependencyInjection/IMediatorBuilder.cs Builder API for pipelines/features/services.
src/Mocha/src/Mocha.Mediator.Abstractions/Unit.cs Adds Unit type for void responses.
src/Mocha/src/Mocha.Mediator.Abstractions/Mocha.Mediator.Abstractions.csproj New mediator abstractions project.
src/Mocha/src/Mocha.Mediator.Abstractions/MediatorModuleAttribute.cs Assembly attribute for module naming.
src/Mocha/src/Mocha.Mediator.Abstractions/ISender.cs Send/query abstraction.
src/Mocha/src/Mocha.Mediator.Abstractions/IQueryHandler.cs Query handler contract.
src/Mocha/src/Mocha.Mediator.Abstractions/IQuery.cs Query marker.
src/Mocha/src/Mocha.Mediator.Abstractions/IPublisher.cs Notification publisher contract.
src/Mocha/src/Mocha.Mediator.Abstractions/INotificationStrategy.cs Notification dispatch strategy contract.
src/Mocha/src/Mocha.Mediator.Abstractions/INotificationHandler.cs Notification handler contract.
src/Mocha/src/Mocha.Mediator.Abstractions/INotification.cs Notification marker.
src/Mocha/src/Mocha.Mediator.Abstractions/IMediator.cs Combined sender + publisher.
src/Mocha/src/Mocha.Mediator.Abstractions/ICommandHandler.cs Command handler contracts (void/response).
src/Mocha/src/Mocha.Mediator.Abstractions/ICommand.cs Command marker interfaces.
src/Mocha/src/Mocha.EntityFrameworkCore/Sagas/DbContextSagaStore.cs Uses DateTimeOffset for saga timestamps.
src/Mocha/src/Mocha.EntityFrameworkCore/Outbox/OutboxEntityFrameworkCorePersistenceBuilderExtensions.cs Fixes “Persistence” naming.
src/Mocha/src/Mocha.EntityFrameworkCore/Mocha.EntityFrameworkCore.csproj Adds mediator project reference.
src/Mocha/src/Mocha.EntityFrameworkCore/MessagingDbContextOptions.cs Makes configuration safer/immutable-ish.
src/Mocha/src/Mocha.EntityFrameworkCore/MessageBusHostBuilderExtensions.cs Naming fixes + better EF config exceptions.
src/Mocha/src/Mocha.EntityFrameworkCore/MediatorEntityFrameworkOptions.cs Options for EF transaction middleware.
src/Mocha/src/Mocha.EntityFrameworkCore/MediatorBuilderEntityFrameworkExtensions.cs Extension methods to add EF transactions middleware.
src/Mocha/src/Mocha.EntityFrameworkCore/IEntityFrameworkCoreBuilder.cs Clarifies builder scope in docs.
src/Mocha/src/Mocha.EntityFrameworkCore/EntityFrameworkTransactionMiddleware.cs Middleware wrapping commands in EF transactions.
src/Mocha/src/Mocha.EntityFrameworkCore/EntityFrameworkTransactionFeature.cs Feature storing EF transaction config.
src/Mocha/src/Mocha.EntityFrameworkCore/EntityFrameworkCorePersistenceBuilderExtensions.cs Fixes “Persistence” naming.
src/Mocha/src/Mocha.Analyzers/Utils/RoslynExtensions.cs Symbol helper extensions + location conversion.
src/Mocha/src/Mocha.Analyzers/Utils/ModuleNameHelper.cs Module name derivation + sanitization.
src/Mocha/src/Mocha.Analyzers/Utils/CodeWriterExtensions.cs Generated header/attribute helpers.
src/Mocha/src/Mocha.Analyzers/SyntaxConstants.cs Metadata name constants for symbol lookup.
src/Mocha/src/Mocha.Analyzers/Models/SyntaxInfo.cs Base model for incremental pipeline entries.
src/Mocha/src/Mocha.Analyzers/Models/NotificationHandlerInfo.cs Model for notification handler discovery.
src/Mocha/src/Mocha.Analyzers/Models/MessageTypeInfo.cs Model for message type discovery.
src/Mocha/src/Mocha.Analyzers/Models/MessageKind.cs Enum of supported message kinds.
src/Mocha/src/Mocha.Analyzers/Models/MediatorModuleInfo.cs Model for module attribute discovery.
src/Mocha/src/Mocha.Analyzers/Models/LocationInfo.cs Equatable location model.
src/Mocha/src/Mocha.Analyzers/Models/HandlerKind.cs Enum of supported handler kinds.
src/Mocha/src/Mocha.Analyzers/Models/HandlerInfo.cs Model for handler discovery.
src/Mocha/src/Mocha.Analyzers/Models/DiagnosticInfo.cs Equatable diagnostic model.
src/Mocha/src/Mocha.Analyzers/Mocha.Analyzers.csproj New analyzer project configuration.
src/Mocha/src/Mocha.Analyzers/IsExternalInit.cs netstandard2.0 polyfills for modern C#.
src/Mocha/src/Mocha.Analyzers/Inspectors/NotificationHandlerInspector.cs Discovers INotificationHandler.
src/Mocha/src/Mocha.Analyzers/Inspectors/MediatorModuleInspector.cs Discovers [assembly: MediatorModule(...)]
src/Mocha/src/Mocha.Analyzers/Inspectors/ISyntaxInspector.cs Inspector abstraction.
src/Mocha/src/Mocha.Analyzers/Inspectors/HandlerInspector.cs Discovers ICommand/IQuery handlers.
src/Mocha/src/Mocha.Analyzers/Generators/ISyntaxGenerator.cs Generator abstraction.
src/Mocha/src/Mocha.Analyzers/Generators/DependencyInjectionGenerator.cs Emits DI + pipeline registration code.
src/Mocha/src/Mocha.Analyzers/Filters/SyntaxFilterBuilder.cs Composes syntactic filters.
src/Mocha/src/Mocha.Analyzers/Filters/ISyntaxFilter.cs Filter abstraction.
src/Mocha/src/Mocha.Analyzers/Filters/ClassWithMochaBaseListFilter.cs Syntactic filter for Mocha handler base lists.
src/Mocha/src/Mocha.Analyzers/Filters/AssemblyAttributeListFilter.cs Syntactic filter for assembly attributes.
src/Mocha/src/Mocha.Analyzers/FileBuilders/IFileBuilder.cs File builder abstraction.
src/Mocha/src/Mocha.Analyzers/FileBuilders/FileBuilderBase.cs Shared file builder scaffolding + pooling.
src/Mocha/src/Mocha.Analyzers/Errors.cs Defines generator diagnostics MO0001–MO0004.
src/Mocha/src/Mocha.Analyzers/AnalyzerReleases.Unshipped.md Declares new diagnostic rules.
src/Mocha/src/Mocha.Analyzers/AnalyzerReleases.Shipped.md Initializes shipped rules file.
src/Mocha/src/Examples/MediatorShowcase/Properties/launchSettings.json Adds example launch profile.
src/Mocha/src/Examples/MediatorShowcase/MediatorShowcase.csproj Example project using analyzer + mediator.
src/Mocha/src/Examples/MediatorShowcase/Generated/Microsoft.AspNetCore.App.SourceGenerators/Microsoft.AspNetCore.SourceGenerators.PublicProgramSourceGenerator/PublicTopLevelProgram.Generated.g.cs Generated artifact committed.
src/Mocha/src/Demo/Demo.Shipping/Queries/ShipmentQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Shipping/Queries/ReturnShipmentQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Shipping/Demo.Shipping.csproj Adds mediator + analyzer reference.
src/Mocha/src/Demo/Demo.Shipping/Commands/ShipShipmentCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Shipping/Commands/ReceiveReturnPackageCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Queries/ProductQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Queries/OrderQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Queries/CategoryQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Demo.Catalog.csproj Adds mediator + analyzer reference.
src/Mocha/src/Demo/Demo.Catalog/Commands/RequestQuickRefundCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Commands/PlaceOrderCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Commands/PlaceBulkOrderCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Catalog/Commands/InitiateReturnCommand.cs Demo command handler using mediator abstractions.
src/Mocha/src/Demo/Demo.Billing/Queries/RevenueSummaryQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Billing/Queries/RefundQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Billing/Queries/PaymentQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Billing/Queries/InvoiceQueries.cs Demo queries using mediator abstractions.
src/Mocha/src/Demo/Demo.Billing/Demo.Billing.csproj Adds mediator + analyzer reference.
src/Mocha/src/Demo/Demo.Billing/Commands/ProcessPaymentCommand.cs Demo command handler using mediator abstractions.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Program.cs Benchmark entrypoint with net9 toolchain.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Mocha.Mediator.Benchmarks.csproj Adds mediator + analyzer, benchmark deps.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/WolverineMessages.cs Wolverine benchmark messages/handlers.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/SwitchMediatorMessages.cs SwitchMediator benchmark messages/handlers.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/Messages.cs Shared benchmark messages + Mocha middleware.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/MediatorSgMessages.cs martinothamar Mediator benchmark messages.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/MediatorSgHelper.cs Helper for external Mediator generator registration.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/MassTransitMessages.cs MassTransit benchmark messages/consumers.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Messaging/ImmediateHandlersMessages.cs Immediate.Handlers benchmark messages/behaviors.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Internal/MediatorSgRegistration.cs Registers external Mediator generator services.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Internal/LookupBenchmarks.cs DI vs cached lookup microbenchmarks.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Generated/Mocha.Analyzers/Mocha.Analyzers.MediatorGenerator/BenchmarksMediatorBuilderExtensions.g.cs Generated artifact committed.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Generated/Mediator.SourceGenerator/Mediator.SourceGenerator.IncrementalMediatorGenerator/MediatorOptionsAttribute.g.cs External generator output committed.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Generated/Mediator.SourceGenerator/Mediator.SourceGenerator.IncrementalMediatorGenerator/MediatorOptions.g.cs External generator output committed.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Generated/Mediator.SourceGenerator/Mediator.SourceGenerator.IncrementalMediatorGenerator/AssemblyReference.g.cs External generator output committed.
src/Mocha/benchmarks/Mocha.Mediator.Benchmarks/Generated/Immediate.Handlers.Generators/Immediate.Handlers.Generators.ImmediateHandlersGenerator/IH.ServiceCollectionExtensions.g.cs External generator output committed.
src/All.slnx Adds Mocha.Utilities project to solution list.
Comments suppressed due to low confidence (1)

src/Mocha/src/Mocha.EntityFrameworkCore/Outbox/OutboxEntityFrameworkCorePersistenceBuilderExtensions.cs:13

  • The class name was corrected from ...Persistance... to ...Persistence.... There are still references to the old type name elsewhere (e.g., XML doc <see cref=...>), which can surface as CS1574 and fail builds when documentation warnings are treated as errors. Consider adding an [Obsolete] shim type with the old name that forwards to the new APIs (or update all cref references in the repo in the same PR).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Mocha/src/Mocha/Extensions/IMessageBusHostBuilderExtensions.cs
Comment thread src/Mocha/src/Mocha.Mediator/MediatorContext.cs
Comment thread src/Mocha/src/Mocha.Mediator/MediatorRuntime.cs
@PascalSenn PascalSenn merged commit 705cb5a into main Mar 22, 2026
127 checks passed
@PascalSenn PascalSenn deleted the pse/adds-mocha-mediator branch March 22, 2026 23:41
@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 0.00%. Comparing base (93d93d1) to head (6eb949c).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@     Coverage Diff      @@
##   main   #9416   +/-   ##
============================
============================

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📚 documentation This issue is about working on our documentation. 🌶️ website

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants