Skip to content

docs(editions): ObjectOS Community / Cloud / Enterprise — README, trademark clause, edition names in docs; this repository is the docs source, issues go to objectstack - #339

Merged
os-zhuang merged 1 commit into
mainfrom
claude/issue-338-edition-model
Oct 26, 2026
Merged

os-zhuang merged 1 commit into
mainfrom
claude/issue-338-edition-model

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Fixes #338
Refs #300 — the getting-started path stays open there; this PR names the edition that path boots (ObjectOS Community) and adds no page.

What changed

ObjectOS is one product in three editions (maintainer ruling, 2026-10-26): ObjectOS Community (open source, self-hosted, free, Apache-2.0 — the objectstack repository's runtime image ghcr.io/objectstack-ai/objectstack and os start), ObjectOS Cloud (Free · Team) and ObjectOS Enterprise (licensed, self-managed; Business and Business Self-Managed are contract options under it). ObjectStack names the protocol, SDK, CLI and framework. The sentence "There is no open-source edition of ObjectOS" is gone from the repository.

  • README.md — the lead keeps "Build & ask online. Keep the data you own." and "The ontology is the software."; the first body sentence says what this repository is (the source of the ObjectOS product documentation, docs.objectos.ai, a sub-site of www.objectos.ai); the commercial-product paragraph became the three-edition table (one sentence per edition, names and terms only, no prices); "Editions" is Community / Cloud / Enterprise; "Run it yourself: ObjectOS Community" keeps the os start and Docker lines; one sentence routes product issues to objectstack-ai/objectstack/issues and keeps documentation issues here; the history section is two sentences (the 2026-07 @objectos/server retirement and the archive/apache-final branch stay as facts).
  • TRADEMARK.md — the Apache grant sentence names the two code bodies (this site and the ObjectOS Community runtime in the objectstack repository); the existing MAY "unmodified builds" line names ObjectOS Community as its case (running it for yourself, modified or not, keeps the name); the existing MAY NOT "modified fork" line says a redistributed modified Community build does not. No parallel list.
  • content/docs/ (English sources only) — the two pages the claim's grep found (why.mdx, resources/license.mdx) and the pages that called the image "licensed" or said the free runtime is "a different product" now name the edition: deploy/index.mdx, deploy/docker.mdx (seoTitle, description, and the no-license bullet now says "runs as ObjectOS Community"), deploy/kubernetes.mdx (description), index.mdx (Start table and the License & pricing paragraph; the gate-locked opening paragraph is untouched), quickstart.mdx (intro), architecture.mdx (what you deploy), resources/glossary.mdx (ObjectOS and ObjectStack entries), resources/faq.mdx (pricing and legal answers). The rate card in license.mdx is untouched: pricing numbers belong to www.objectos.ai#285.
  • Issue routing in the docs, per the scope amendment: resources/support.mdx, resources/faq.mdx, resources/changelog.mdx and configure/email.mdx linked objectstack-ai/objectos/issues as "the public issue tracker for ObjectOS"; they now link objectstack-ai/objectstack/issues, and the support table gains one row sending documentation mistakes to this repository. The site layout has no "report an issue" link (apps/docs/lib, apps/docs/app: 0 hits, confirmed), so nothing to repoint there.
  • apps/docs/app/[lang]/terms/page.tsx — the en entry's License paragraph carried the same "no open-source edition" sentence (the acceptance grep is repository-wide); it now names the three editions, and "Last updated" moved to October 26, 2026. Its zh-Hans.json / generated zh-Hant.json were not touched (English only; see Acceptance notes).
  • Bounded in-place fixes, same ruling, same shape, declared here because the claim's file surface did not list them: CONTRIBUTING.md (the repository description and the two issue sentences) and AGENTS.md (the "Repository" paragraph) said this repository is the issue tracker for Cloud and Enterprise.

Locale siblings: none of the edited pages has a *.LOCALE.mdx sibling today (checked: license, why, deploy/index, deploy/kubernetes, deploy/docker, index, quickstart, architecture, glossary, faq, support, changelog, configure/email have English files only), so there is nothing to delete and the periodic translation pass produces them from the new English. zh-Hant regenerates from zh-Hans, which this PR does not change (gen-zh-hant --check green).

Clause-②: no
Metadata-protocol: none

How it was verified

At 376aa22, in the worktree, exit codes captured before any pipe:

  • git grep -i "no open-source edition" → exit 1 (zero hits); grep -n "objectstack/issues" README.md → 1; grep -c Community TRADEMARK.md → 3.
  • node apps/docs/scripts/gen-zh-hant.mjs --check → exit 0 ("46 generated file(s) match the zh-Hans sources byte for byte").
  • node .github/scripts/check-translations.mjs → exit 0 ("translations gate passed"); check-translation-ownership.mjs --actor os-zhuang --files DIFF_LIST → exit 0 ("0 translation artifact(s) and 18 other file(s)").
  • node .github/scripts/check-doc-samples.mjs → exit 0 (102 pass, spec 17.7.0).
  • Under the shared verify lock (OS_VERIFY_LOCK_SLOT=issue-338): pnpm turbo run type-check --continue --filter=@objectos/docs --force → "type-check exit=0"; NEXT_PRIVATE_STANDALONE=true pnpm turbo run build --filter=@objectos/docs --force → "build exit=0"; lock VERDICT batch-last-exit 0 on the conjunction of both; held 90 s on a shared box.
  • After the build: check-positioning.mjs → exit 0 ("4 copies equal their constants; the brand is right in 667 pages and 2 llms bodies; no stale sentence in 80 English sources and the en entry of 2 legal pages"); check-locale-surface.mjs → exit 0; check-search-locales.mjs → exit 0 (all 8 locales answer 200); pnpm turbo run test → exit 0 (11 self-tests passed); scripts/pm/check-half-states.mjs --self-test → exit 0 (1551 cases); check-node-floor.mjs → exit 0.
  • The built pages: zero occurrences of "no open-source edition" under apps/docs/.next/server/app; the live sites are not reachable from the container, so this is a source-and-build-level verification.

Acceptance notes

  • README shows the three-edition table and the issue-routing sentence; "no open-source edition" occurs nowhere; TRADEMARK.md names ObjectOS Community; pnpm docs:build (the same turbo task) is green locally.
  • Not changed on purpose: apps/docs/lib/positioning.ts and the opening paragraph of content/docs/index.mdx still say "the commercial runtime environment built on ObjectStack" with two editions. They quote the objectstack repository's README byte for byte under the ruling on [Decision] What does docs.objectos.ai target — the root URL is a redirect, the index title is "ObjectOS | ObjectOS", and the brand is spelled three ways #171, and check-positioning.mjs rule (a) pins all four copies to that constant. When docs(readme): slim the root README to a reader's page — contributor detail moves to CONTRIBUTING.md, the stale Console-source and ROADMAP lines go, one architecture figure, LICENSING.md names ui/ as MIT objectstack#26129 lands the three editions in that README, the constant and its copies follow in one PR here (gate-driven; a paraphrase in this PR would fail CI).
  • Not changed on purpose: the zh-Hans.json beside the terms page still says "没有开源版本" (and the generated zh-Hant.json with it). It is a hand-maintained translation of a legal page, outside the ownership gate's locale-artifact set; the PR edits English only. It needs the translation account (or the maintainer) to update the Simplified entry and run pnpm --filter @objectos/docs gen:zh-hant.
  • Observed, not changed: license.mdx places Business under ObjectOS Cloud and prices it, while the ruling places Business as a contract option under Enterprise (the README here follows the ruling). The rate card is www.objectos.ai#285's surface; a seat decision is needed on who rewrites that table.
  • Observed, not changed: apps/docs/lib/layout.shared.tsx gitConfig.repo is objectos, and license.mdx's TRADEMARK.md link and this README's history link used the old name (the README link is updated because the paragraph was rewritten). GitHub redirects the old name; a rename follow-up can switch the remaining references in one PR.

Generated by Claude Code

…ademark policy and docs

ObjectOS is one product in three editions (maintainer ruling 2026-10-26):
Community (open source, free, the objectstack repository's runtime and
Console), Cloud (Free / Team) and Enterprise (licensed, self-managed).
ObjectStack names the protocol, SDK, CLI and framework.

- README: first sentence says what this repository is (the docs source,
  a sub-site of www.objectos.ai); three-edition table; Editions as
  Community / Cloud / Enterprise; "Run it yourself: ObjectOS Community";
  product issues routed to objectstack-ai/objectstack; history shrunk.
- TRADEMARK.md: ObjectOS Community is the named case of the unmodified-
  builds MAY line and the modified-fork MAY NOT line.
- content/docs: the two pages that said "no open-source edition" and the
  Deploy / intro / FAQ / glossary / support pages that called the image
  "licensed" or routed issues to this repository now name the edition
  and point product issues at objectstack-ai/objectstack.
- terms page (en entry): the licence paragraph names the three editions.
- CONTRIBUTING.md / AGENTS.md: the repository description and the issue
  routing sentence, same ruling, same shape.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FMuBZmssbfQkVrKRtxNvng
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

席位核对 · ACCEPT · 2026-10-26T14:31Z · session_01FMuBZmssbfQkVrKRtxNvng (maintainer-directed seat, card #338)

  1. 形态 — draft PR against main, head 376aa22, 18 files +208/−158; body first line Fixes #338, Refs #300 with no closing verb beside it; Clause-②: no / Metadata-protocol: none at line start, copied from the claim (6417879036). mergeable_state: clean.
  2. 前提实测 — re-read on origin/main 9df8a92 before dispatch and again against the diff: README:29 "no open-source edition" (1), the two content/docs pages, TRADEMARK:15 "unmodified builds" (1) — all three hold; the dev's own reading agrees. Every sentence of the diff read by the seat: README (three-edition table, Editions, "Run it yourself: ObjectOS Community", issue routing, two-sentence history), TRADEMARK (MAY / MAY NOT lines extended, no parallel list), license.mdx (headline, Community section, FAQ answers), index / quickstart / why / architecture / deploy index / docker / kubernetes / glossary / faq / support / changelog / email, terms en entry, CONTRIBUTING, AGENTS — each names the edition instead of "the licensed image" / "a different product" / "no open-source edition", and routes issues to objectstack-ai/objectstack. No pricing number changed; the rate card is untouched.
  3. 门禁 check-runs (head 376aa22): build success · Node floor success · Ownership & freshness success · Deploy docs skipped (draft, expected). Local subset in the report pinned to the same sha: gen-zh-hant --check, check-translations, ownership, doc-samples, turbo type-check + build under the verify lock, check-positioning, locale-surface, search-locales, half-states self-test, node-floor — all exit 0 with quoted verdict lines.
  4. 接受的偏差 — (a) general-purpose subagent under os-dev.md (claim notes it); (b) relay refused labels: [], re-sent without the key, no label invented; (c) the PR-body footer carries the session-URL form per os-dev.md; (d) bounded in-place fixes beyond the claim's file list — CONTRIBUTING.md, AGENTS.md and the extra content/docs pages — accepted under the four-condition rule: same ruling, mechanical, no other claim on those files, no new gate surface, declared in the PR body with the page list; the seat's claim listing is amended by this record; (e) English-only edits, no locale sibling existed to delete.
  5. 范围外去向 — the three findings go to cards filed by this seat in the same batch: terms zh-Hans.json stale legal paragraph + post-rename link sweep (gitConfig.repo, old-name links) → one docs.objectos.ai card; the positioning constant (two editions, pinned to the objectstack README by check-positioning) → one docs.objectos.ai card Blocked-by docs(readme): slim the root README to a reader's page — contributor detail to CONTRIBUTING.md, stale lines out, ui/ named MIT objectstack#26148 (the README PR of #26129); the rate card's Business placement → scope comment on www.objectos.ai#285. The privacy-page wording stays in Acceptance notes.
  6. 落地条款 — not a governed surface (this repository declares none; objectstack's check-governed-merges governs .github/workflows/** only, untouched here); < 3000 lines. Landing by this seat under the maintainer's 「相关卡片都归你派发处理落地」: relay pr_ready + automerge_enable in the same batch. Fixes #338 closes the card on merge; pm:dispatched is removed in the landing stroke.

Generated by Claude Code

@objectstack-fleet
objectstack-fleet Bot marked this pull request as ready for review October 26, 2026 14:33
@os-zhuang
os-zhuang merged commit 1ce3fdd into main Oct 26, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant