Shell-facing tenant selector seam.
Admin code consumes this module instead of reading tenant-bearing tables directly. Core owns outbound tenant discovery; the optional inbound package is reached only through its runtime gateway.
Summary
Functions
Returns distinct selector rows from outbound activity plus optional inbound ids.
Types
Functions
@spec list_tenants( term(), keyword() ) :: [tenant_row()]
Returns distinct selector rows from outbound activity plus optional inbound ids.
:account_labels may provide a %{tenant_id => display_name} map. The id
remains the tenant id used by URLs and read-model calls; only label changes.