Files
marketplaces/docs/architecture/foundation/adr/ADR-001-platform-model.md

1.1 KiB

ADR-001: Platform Model and Tenancy Strategy

Status: Accepted Date: 2026-07-03

Context

The existing repository has evolved from marketplace website delivery. The target product is Marketplace-as-a-Service with unlimited tenants on one runtime.

Decision

Adopt a platform runtime model:

  • One Angular application serves all tenants.
  • Tenant identity is resolved by backend from request Host.
  • Frontend does not pass tenant id or project key.
  • Frontend starts by requesting GET /bootstrap.
  • Tenant-specific website, builder, and backoffice behavior derives from bootstrap configuration.

Consequences

Positive:

  • Tenant onboarding becomes configuration-driven.
  • Eliminates tenant forks and branch divergence.
  • Strong separation of platform engine and tenant data.

Negative:

  • Requires strict discipline against tenant conditionals in UI code.
  • Requires robust bootstrap schema governance.

Compliance Requirements

  • No environment-based tenant branching in presentation logic.
  • No tenant-specific routes hardcoded in feature components.
  • Tenant behavior is represented in typed configuration contracts.