Skip to content

[P2][Deferred][SaaS] Organizationをproduction Tenant Cellへserver-side routeする #430

Description

@Hosi121

Parent / dependencies

Current state — 2026-08-18

membership-authorized resolver、bounded Tenant Cell lifecycle/cache、generation rotation/drain、capacity、forged/stale/disabled assignment拒否、PostgreSQL durable assignment authorityはmainへ統合済み(#435 / #541)。

残件は#431のstaging authority上で行うlive provisioningと、同じpublic originからのtwo-Organization routing/denial evidenceだけである。

Goal

すべてのauthenticated Organizationをuser-controlled backend情報へ依存せずserver-owned Tenant Cellへrouteし、複数active Organizationを同じpublic originから安全に処理する。

Acceptance criteria

  • durable Organization-to-cell assignmentとgeneration lifecycleをPostgreSQLへ接続
  • request header/path/project/client stateからcellを選択・forgeできない
  • membershipをrouting直前に再検証し、authorized Organizationとruntime tenantを一致させる
  • missing/disabled/stale/conflicting assignmentをboundedにfail closed
  • stagingでtwo active Organizationsが同じpublic originのAPIを同時利用できる
  • newly provisioned Organizationがprocess-wide restartなしにroutableになる
  • one Organizationのreadiness/outageから別Organizationの存在・状態が漏れない
  • source/editor/export/media/cache/billing usageがtenant-correlatedである
  • live happy pathとcross-tenant denialを#372へ記録する
  • log/metricへsource/path/credential/raw identity claimを出さない

Non-goals

  • trusting IdP tenant claims
  • user-controlled runtime URLs
  • region-aware global scheduling/autoscaling in the first slice

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/infraCI and developer toolingarea/renderRender pipeline and Manim integrationarea/workspaceWorkspace, launcher, and persistencepriority/P2Follow-up or polishsize/LLarge scoped changestatus/deferredIntentionally postponed; does not block the active local-product milestonestatus/external-gateCompletion requires credentials, live infrastructure, or operator evidence outside normal local CItype/featureNew user-facing capability

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions