Skip to content

docs(configure): state the composed shape's licence constraint on the runtime page - #93

Merged
os-zhuang merged 1 commit into
mainfrom
claude/issue-84-composed-shape-licence-constraint
Aug 18, 2026
Merged

docs(configure): state the composed shape's licence constraint on the runtime page#93
os-zhuang merged 1 commit into
mainfrom
claude/issue-84-composed-shape-licence-constraint

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

Fixes#84

The boot-shape table on content/docs/configure/runtime.mdx listed the composed shape without the constraint that four other pages state: it is air-gap licensed only, and the runtime refuses to boot otherwise.

Why this row and not tidiness

The page is where a reader lands to answer "where does the running app come from". Its own later section, "Startup decisions the runtime will not guess", already explains that licence mode and cloud posture are coupled and that bad pairings are refused — but never ties that back to the composed row. The page held both halves and did not join them. A reader planning a composed deployment from this page alone learned the shape exists, learned that some pairings are refused, and did not learn that this shape has one licit licence mode. The failure lands as a refused boot.

The wording is not new

architecture.mdx:121 is the direct twin of this row — same three-row boot-shape table, same "How the app arrives" column, and a cell that already opens with nearly the same sentence ("...so the enterprise plugins load alongside it" vs "load with it"). It carries exactly the clause this row lacked, so that clause is reused verbatim rather than reformulated:

Air-gap licensed only, and refused at startup otherwise

The link points at where the refusal is stated, as the sibling pages do. All four sibling statements were read and they agree on the claim:

  • deploy/index.mdx:49 — "it is air-gap-licensed only, enforced at startup."
  • architecture.mdx:121 — "Air-gap licensed only, and [refused at startup] otherwise"
  • deploy/air-gapped.mdx:70 — "It requires an air-gap licence and off, both enforced at startup."
  • reference/environment-variables.mdx:96 — "is air-gap-licensed only, and requires OS_CLOUD_URL=off; both are enforced at startup."

The constraint is stated once, in the row. It is deliberately not restated in the "Startup decisions" bullet list: that section already links the same /docs/deploy/air-gapped matrix, so both halves of the page now point at one destination rather than carrying two copies of the claim.

Scope

content/docs/configure/runtime.mdx only, one line. Row one's label was already Config-authored and is untouched by the rename that landed in #83 — verified in the worktree, not assumed.

English only. This page turns out to have no locale siblings at all (git ls-files content/docs/configure/runtime* returns just the English file), so nothing goes stale here — the six locales sit in the translation pass's missing bucket, and the worklist picks up all six.

Verification, at 842dca3

Both turbo tasks with --force, each confirmed cache bypass, force executing rather than FULL TURBO:

@objectos/docs:type-check: cache bypass, force executing cd923271a3fbb98b
@objectos/docs:build: cache bypass, force executing a7cd347e90916054
Tasks: 2 successful, 2 total
Cached: 0 cached, 2 total

All three translation checks, run as CI invokes them:

  • check-translation-ownership.mjs --actor os-zhuang --files ... — exit 0; touches 0 translation artifacts, 1 other file. (TRANSLATION_BOT_LOGIN unset, so it reports rather than enforces.)
  • check-translations.mjs — exit 0, "translations gate passed".
  • check-translation-output.mjs --files changed-output.txt — exit 0, "translation output gate passed (110 pre-existing finding(s) reported)". Those 110 are corpus fidelity debt, not this PR: a pristine worktree at the branch point 8816154 reports the identical 110, none name configure/runtime, and none are unsafe (the category that blocks corpus-wide regardless of PR scope).

Rendered HTML read from the production build — .next/server/app/en/docs/configure/runtime.html — with row three extracted:

| Composed
| Several organizations behind the isolation wall, sharing one database, running a published app
| The same artifact reference, consumed from the deployment's own configuration so the
enterprise plugins load with it. Air-gap licensed only, and
[refused at startup -> /docs/deploy/air-gapped] otherwise

The link renders as an anchor and its target route prerenders (.next/server/app/en/docs/deploy/air-gapped.html).


Generated by Claude Code

… runtime page
The boot-shape table in content/docs/configure/runtime.mdx listed the composed
shape without the constraint that three other pages state: it is air-gap
licensed only, and the runtime refuses to boot otherwise.
The page held both halves and never joined them. It is the page a reader lands
on to answer "where does the running app come from", and its own "Startup
decisions the runtime will not guess" section explains that licence mode and
cloud posture are coupled and that bad pairings are refused -- without tying
that back to the composed row. A reader planning a composed deployment from
this page alone learned the shape exists and not that it has one licit licence
mode. The failure lands as a refused boot.
Row three now carries the clause its twin on architecture.mdx already carries,
verbatim, with the same link to where the refusal is stated.
English only; the page has no locale siblings, so the six locales stay in the
translation pass's missing bucket.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CJPxtTxoxTUnjNdTbiEaRa
@os-zhuang
os-zhuang marked this pull request as ready for review August 18, 2026 13:31
@os-zhuang
os-zhuang merged commit a830ba4 into mainAug 18, 2026
2 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

configure/runtime.mdx omits that the composed shape is air-gap-licensed only, which three other pages state

2 participants

@os-zhuang@claude