Skip to content

Generated SaaS — events

Generated from the architecture model

This page is rendered from model/**/*.yaml by tools/docs_model during mkdocs build. Edit the YAML, not this page; hand-written design lives on the linked service, platform and plane pages.

Topics follow context.area.vN.event-name (ADR-0012 port, ADR-0014 envelope). The context segment is the producing bounded context's slug.

Event Producer Topic Scope Consumers
ProductTenantProvisioned GeneratedSaasFoundations product-tenancy.tenants.v1.product-tenant-provisioned integration 2
ProductTenantStateChanged GeneratedSaasFoundations product-tenancy.tenants.v1.product-tenant-state-changed integration 3
ProductSubscriptionChanged GeneratedSaasFoundations product-tenancy.subscriptions.v1.product-subscription-changed integration 2
ProductUsageMetered GeneratedSaasFoundations product-tenancy.usage.v1.product-usage-metered integration 1
ProductDescriptorPublished GeneratedProductHost product-domains.descriptor.v1.product-descriptor-published integration 3
OperationsHandoverAcknowledged GeneratedProductHost product-domains.operations.v1.operations-handover-acknowledged integration 4

ProductTenantProvisioned

A customer tenant exists in the product (the fleet gets an instance).

Producer GeneratedSaasFoundations (BC-31 Generated Tenant & Commercial Foundations)
Scope / version integration / v1
Topic product-tenancy.tenants.v1.product-tenant-provisioned
Aggregate ProductTenant
Consumers FleetInventoryService, AuditService
Field Type Required Description
productTenantId string yes
factoryTenantId string yes
customerTenantId string yes
region string yes

ProductTenantStateChanged

Suspended, restored, off-boarding or deleted.

Producer GeneratedSaasFoundations (BC-31 Generated Tenant & Commercial Foundations)
Scope / version integration / v1
Topic product-tenancy.tenants.v1.product-tenant-state-changed
Aggregate ProductTenant
Consumers FleetInventoryService, FleetIncidentService, AuditService
Field Type Required Description
productTenantId string yes
factoryTenantId string yes
customerTenantId string yes
fromState enum:ProductTenantState yes
toState enum:ProductTenantState yes

ProductSubscriptionChanged

A customer's edition or seats changed.

Producer GeneratedSaasFoundations (BC-31 Generated Tenant & Commercial Foundations)
Scope / version integration / v1
Topic product-tenancy.subscriptions.v1.product-subscription-changed
Aggregate ProductSubscription
Consumers FleetInventoryService, AuditService
Field Type Required Description
subscriptionId guid yes
factoryTenantId string yes
customerTenantId string yes
edition string yes
state string yes

ProductUsageMetered

Metered usage for a period (the product's own billing; mirrored to the Factory for managed-product cost attribution later).

Producer GeneratedSaasFoundations (BC-31 Generated Tenant & Commercial Foundations)
Scope / version integration / v1
Topic product-tenancy.usage.v1.product-usage-metered
Aggregate ProductSubscription
Consumers FleetInventoryService
Field Type Required Description
subscriptionId guid yes
factoryTenantId string yes
customerTenantId string yes
dimension string yes
period string yes
quantity decimal yes

ProductDescriptorPublished

The product (re)published its descriptor after a deployment.

Producer GeneratedProductHost (BC-30 Generated Product Domains)
Scope / version integration / v1
Topic product-domains.descriptor.v1.product-descriptor-published
Aggregate ProductDescriptor
Consumers FleetInventoryService, StudioBff, AuditService
Field Type Required Description
productId string yes
tenantId string yes
releaseId guid yes
tenancyMode enum:TenancyMode yes
operationsMode enum:OperationsMode yes

OperationsHandoverAcknowledged

The owner acknowledged the managed-operations handover.

Producer GeneratedProductHost (BC-30 Generated Product Domains)
Scope / version integration / v1
Topic product-domains.operations.v1.operations-handover-acknowledged
Aggregate ManagedOperationsHandover
Consumers FleetInventoryService, FactoryCommercialService, AuditService, StudioBff
Field Type Required Description
handoverId guid yes
tenantId string yes
productId string yes
managedEdition string yes

Commands

Command Service Handled by Result events Summary
ProvisionProductTenant GeneratedSaasFoundations ProductTenant ProductTenantProvisioned
ChangeProductSubscription GeneratedSaasFoundations ProductSubscription ProductSubscriptionChanged
AcknowledgeOperationsHandover GeneratedProductHost ManagedOperationsHandover OperationsHandoverAcknowledged
ExportProductData GeneratedProductHost ProductDescriptor
DeleteProductTenant GeneratedProductHost ProductDescriptor

Consumed from other services

None modelled

No consumed events are modelled for this item yet.