Skip to content

Docs/eventing dedicated tenant routing - #268

Open
HiroshiYoshino wants to merge 1 commit into
fullstackhero:mainfrom
HiroshiYoshino:docs/eventing-dedicated-tenant-routing
Open

HiroshiYoshino wants to merge 1 commit into
fullstackhero:mainfrom
HiroshiYoshino:docs/eventing-dedicated-tenant-routing

Conversation

@HiroshiYoshino

@HiroshiYoshino HiroshiYoshino commented Oct 14, 2026 •

Copy link
Copy Markdown

Related issue: fullstackhero/dotnet-starter-kit/issues#1427
fix for: fullstackhero/dotnet-starter-kit/pull#1434

This pull request updates the documentation for the Eventing building blocks to describe a proposed change to the event dispatch contract, specifically the addition of an asynchronous tenant resolution method (ExecuteAsync) to IEventTenantScope. The documentation now clarifies the new dispatch flow, outlines compatibility and upgrade guidance, and provides detailed behavior for source and consumer routing in multi-tenant scenarios. These changes are marked as accompanying a proposed backend fix and are not a release announcement.

Key documentation updates:

Proposed asynchronous tenant dispatch contract:

  • Added a note and detailed documentation for the new IEventTenantScope.ExecuteAsync method, which enables asynchronous tenant resolution and ensures consumer scopes are created after tenant context is established. The default implementation bridges to the existing synchronous Begin method for backward compatibility. [1] [2]
  • Clarified the distinction between global events and tenant-scoped events, and how tenant context is handled differently by synchronous and asynchronous APIs.

Event bus and delivery behavior:

  • Updated the description of InMemoryEventBus to reflect that it now uses the new asynchronous dispatch contract and creates consumer scopes inside the resolved tenant context. [1] [2]
  • Added a section on source and consumer routing, explaining how the source outbox and consumer database are selected, the behavior for global events, and how context is restored after dispatch.
  • Clarified that delivery is asynchronous and consumer failures update the source outbox, not the original HTTP response.
  • Updated guidance on background consumer context setup, emphasizing the need for tenant context to be established before constructing tenant-aware services.

Upgrade and operator guidance:

  • Provided step-by-step upgrade instructions, including monitoring, auditing, and reconciling Inbox and business data when adopting the new dispatch contract.

General:

  • Updated lastUpdated dates in the relevant documentation files. [1] [2] [3]

@HiroshiYoshino
HiroshiYoshino force-pushed the docs/eventing-dedicated-tenant-routing branch 2 times, most recently from 0f82064 to 5e0bac3 Compare November 5, 2026 04:29
Describe IEventTenantScope.ExecuteAsync, the tenant lookup through the Finbuckle stores (distributed cache store first, then the catalog) in FinbuckleEventTenantScope, and the webhook fanout context handling.
@HiroshiYoshino
HiroshiYoshino force-pushed the docs/eventing-dedicated-tenant-routing branch from 5e0bac3 to 777b0f0 Compare November 5, 2026 04:49
@HiroshiYoshino

Copy link
Copy Markdown
Author

Updated to match the final behaviour of dotnet-starter-kit#1434 (2026-11-05)

@HiroshiYoshino
HiroshiYoshino marked this pull request as ready for review November 5, 2026 04:53

This branch has not been deployed

No deployments
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