Marketplace — workers, grains and sagas¶
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.
Workers¶
| Worker | Service | Trigger | Output events | Retry | Idempotency key | Concurrency |
|---|---|---|---|---|---|---|
| ExpiryAndSeatSweeper | LicenseService | schedule 0 1 * * * |
EntitlementStateChanged | fixed ×2 | entitlementId + day |
2 by TenantId |
| RevenueShareReporter | LicenseService | schedule 0 2 1 * * |
— | fixed ×3 | publisherId + month |
1 by none |
| Indexer | MarketplaceCatalogService | event MarketplaceCatalogService.ListingPublished | — | fixed ×3 | listingId + version |
2 by none |
| UpdateOfferer | MarketplaceCatalogService | event AgentRegistryService.AssetReleasePublished | ListingInstalled | fixed ×3 | installationId + releaseId |
4 by TenantId |
- ExpiryAndSeatSweeper (LicenseService): Expires entitlements past validity and reconciles seat counts with installations.
- RevenueShareReporter (LicenseService): Produces publisher revenue-share statements from the Factory's reconciled usage and invoices.
- Indexer (MarketplaceCatalogService): Maintains the search index of listings (text, kind, compatibility, publisher, rating) from listing events.
- UpdateOfferer (MarketplaceCatalogService): Offers installation updates when a listing points to a newer release; applies them automatically only where the installing tenant's policy allows.
Grains (actors)¶
None modelled
No grains are modelled for this item yet.
Sagas¶
None modelled
No sagas are modelled for this item yet.