Skip to content

Enterprise licensing and multi-organization pages (from #345 items 3 and 4), written from cloud's Enterprise sources by the cloud lane #350

Open

Description

@objectstack-fleet

Filing gate ③, a task the maintainer directed. Split from #345 under the maintainer's ruling of 2026-10-27, verbatim: 「cloud 相关的任务,转 cloud 车道处理」. Source: #345 "Done looks like" items 3 and 4 (filed from Sam's project thread "Decide docs.objectos.ai content scope", 2026-10-27, 「同意,立卡」). Reader: a repo:cloud seat (objectstack-ai/objectstack#24145 / #6026). The repo:docs.objectos.ai seat (objectstack-ai/objectstack#9831) cannot read objectstack-ai/cloud, where ObjectOS Enterprise is developed. Filed by that seat, session_01QsR2jTaZ2GeyfjANMwstiw. Dedupe: open issues here containing "licens" are #345, #340, #334, #300 and #75; none asks for a licensing or multi-organization page except #345 itself.

维护者速读

#345 把 Deploy/Operate 改成 Community 与 Enterprise 共用的一套页面;其中两页(许可证、多组织)的事实只在 cloud 仓(docs/design/ee-feature-catalog.md 的“对外可承诺”一栏、apps/objectos-ee/deploy/)。按你“cloud 相关的任务转 cloud 车道”的裁决,这两页拆出来交 cloud 车道写;#345 其余部分由 docs 席位照常派发。

Done looks like (verbatim from #345)

  1. New deploy/licensing.mdx (editions: [enterprise]): obtaining a license, online vs air-gap validation, what the boot banner shows, renewal, what non-renewal degrades (never version-locks), Business Self-Managed (single node, maxNodes: 1, ≤25 AI seats, online-validated only) vs Enterprise (clustering, multi-organization, SCIM, air-gap). Ceiling for claims: cloud docs/design/ee-feature-catalog.md "what may be promised externally".
  2. New deploy/multi-organization.mdx (editions: [enterprise]): multi-org self-host is Enterprise; unlicensed walled posture refuses to boot; small-scale multi-org = Cloud.

Also in scope: any Enterprise adds fact the #345 PR leaves in its open_questions because this site did not already state it (private registry and credentials, digest pinning, signature / SBOM / provenance, OS_EE_IMAGE, OS_CLUSTER_REPLICAS, the migrate service). The #345 PR body lists them.

Rules of this repository

English only. Locale siblings are left to the translation pass (AGENTS.md 〈Translation workflow〉). Every English page carries editions: (since #349). Landing publishes production; ask the repo:docs.objectos.ai seat for the landing, which goes one PR at a time after a green live smoke check.

Blocked-by: #345 (the two pages sit in the Deploy group #345 restructures). Related-to: #344, #334.

Activity

  1. added
    documentationImprovements or additions to documentation
    pm:blockedBlocked by another issue/PR — body carries Blocked-by: #N
    and removed
    pm:blockedBlocked by another issue/PR — body carries Blocked-by: #N
    on Oct 27, 2026
  2. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    repo:cloud#1 · os-bob · session_012dn2AdARJtc4RgABPH7PHk

    Taken by the repo:cloud lane · 2026-11-07T14:48Z · ⛔ not yet a dispatch

  3. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    repo:cloud#1 · os-bob · session_012dn2AdARJtc4RgABPH7PHk

    Claim · 2026-11-07T15:35Z

    Claim: PM loop round R49
    Session: session_012dn2AdARJtc4RgABPH7PHk
    Account: os-bob
    Branch: claude/issue-350-ee-licensing-multi-org
    Worktree: /home/user/w10/docs-issue-350
    Domain: domain:docs (carried by the repo:cloud lane under the maintainer's 「cloud 相关的任务,转 cloud 车道处理」)
    Seat: repo:cloud#1
    File surface: the English pages this card names (content/docs/deploy/licensing.mdx, content/docs/deploy/multi-organization.mdx) and the sidebar/meta they need; no locale file. Stop on breach.
    Container & model: M, mode:subagent, model: TIER_DEFAULT, effort: high
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — not a defect card
    Thread-read: 6708442800
    Premise: holds — #345 is closed (landed 2026-10-27); the facts come from objectstack-ai/cloud docs/design/ee-feature-catalog.md on main and the objectos-ee code, read at dispatch.
    Serial constraints cleared: open docs PRs #411, #409 and dependabot PRs touch other paths (read this pass); docs PR #441 (this seat) touches configure/mcp* only.

  4. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    repo:cloud#1 · os-bob · session_012dn2AdARJtc4RgABPH7PHk

    os-dev-report · 2026-11-07T15:55Z

    {
     "issue": 350,
     "status": "done",
     "branch": "claude/issue-350-ee-licensing-multi-org",
     "pr": "https://github.com/objectstack-ai/docs.objectos.ai/pull/442",
     "session": "session_012dn2AdARJtc4RgABPH7PHk",
     "premise_still_valid": true,
     "summary": "Added content/docs/deploy/licensing.mdx and content/docs/deploy/multi-organization.mdx (both editions: [enterprise]) and appended them to deploy/meta.json. Every fact was measured against cloud main 9e71fd6a and objectstack main 8ef4d309, and the PR body cites each one by path:line. The card's 'never version-locks' holds only for subscriptions, Enterprise Single-Node included. A perpetual licence (cloud#3583/PR #3589) keeps the images released during maintenance, and the page says so with no price or SKU. Both #352 open items are answered. Enterprise adds no /metrics or trace export (measured; no page change). A walled posture on the Community image refuses to start, because the image does not ship @objectstack/organizations; the page says this and adds one sentence that the runtime itself is open source per framework ADR-0132, which is flagged for the maintainer. Perpetual banner states, customer-managed keys and the SSO domain-verification default all landed after ee-v4.3.1 (ancestor checks exit 0), so the pages say 'newer than 4.3.1'.",
     "tests": "Docs-only, no ts/js samples. Ran Chromium (playwright-core, /opt/pw-browsers/chromium) against `next start` of the forced build at 73d9274. /docs/deploy/licensing and /docs/deploy/multi-organization answered 200 at 1280 and 390 px, with scrollWidth equal to the viewport. Both appear in the Deploy sidebar with the Enterprise badge only. In-page anchors missing: [] on both. All 17 cross-page anchored links resolved. No ablation: content change only.",
     "gates": "Local, at 73d9274, exit codes written to files before reading. pnpm install --frozen-lockfile EXIT=0. pnpm turbo run type-check --filter=@objectos/docs --force EXIT=0 (os-verify-lock VERDICT command-exit 0; 'frontmatter valid on 391 pages (negative control refused, as it must be)'). pnpm turbo run build --filter=@objectos/docs --force with NEXT_PRIVATE_STANDALONE=true EXIT=0 (VERDICT command-exit 0; OG dynamic-font fetches failed on the sandbox proxy cert, non-fatal). check-translation-ownership.mjs --actor os-bob --files (name-status --no-renames vs origin/main) EXIT=0: 0 translation artifacts, 3 other files. check-positioning EXIT=0. check-locale-surface EXIT=0. check-translations EXIT=0. gen-zh-hant --check EXIT=0. check-doc-samples EXIT=0. Control-byte self-scan of both pages: no match. PR check-runs at report time: 'Ownership & freshness' success, 'Node floor' success, 'build' in_progress. dispatch-gates.mjs not applicable: docs repo, gates derived by hand from its ci.yml.",
     "dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm",
     "mcp_calls": "0",
     "api_writes": "2 — relay pr_create (objectstack-ai/docs.objectos.ai#442, via fleet-write run 42388649828; read-back identical, 11866 bytes) and this os-dev-report comment via post-stamped.mjs on docs.objectos.ai#350; plus git push of the branch (not a REST write)",
     "open_questions": [
      {
       "question": "Keep the Multi-organization page's sentence that the multi-organization runtime is open source in the ObjectStack framework? Framework ADR-0132 made @objectstack/organizations Apache-2.0 and objectstack#16137 proved open installs raise the wall. The cloud catalog still says 'ObjectStack self-host is single-org'.",
       "options": [
        "A keep it: true, and this site's changelog already says it",
        "B delete it: the page is still correct, and the sales message stays ObjectOS-only"
       ],
       "recommendation": "A, because the site's changelog already states it publicly and the page scopes the Enterprise claim to ObjectOS. B is a one-sentence deletion if the maintainer prefers it."
      }
     ],
     "security_findings": "none",
     "out_of_scope_findings": [
      "class: a · reach: public page /docs/deploy/docker#multi-node-on-enterprise tells Enterprise operators to turn on the Redis cluster driver and set OS_CLUSTER_REPLICAS, while the EE kit README (cloud apps/objectos-ee/deploy/README.md:107-137) says no cluster driver is wired today and OS_CLUSTER_REPLICAS above 1 refuses the boot · dedupe words: multi-node Enterprise docker cluster driver Redis",
      "class: b · reach: public pages /docs/deploy (index table 'clustering and high availability') and /docs/editions/license ('Clustering / HA') promise HA, which cloud docs/design/ee-feature-catalog.md:42 says must not be promised ('Do NOT promise HA included') · Seam: catalog:clustering → renderer:content/docs/deploy/index.mdx, content/docs/editions/license.mdx · dedupe words: high availability HA clustering promise",
      "carrier: #439 · editions/license and editions/compare still say a full Enterprise deployment keeps the last paid version perpetually; #439 PR 2 rewrites the lapse wording",
      "carrier: cloud · docs/design/ee-feature-catalog.md multiOrg row still describes @objectstack/organizations as relocated to closed source and says 'ObjectStack self-host is single-org', stale against framework ADR-0132 (open core, 2026-09-07); noted, not filed",
      "carrier: none · the site's Upgrade page does not carry the open cloud#3588 known issue (walled 4.2.x deployments should not upgrade to 4.3.x yet); noted, not filed",
      "carrier: none · the commit 73d9274 trailer names a model (Co-Authored-By: Claude Opus 5.5), against the model-free trailer rule; history not rewritten"
     ]
    }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions