Skip to content

docs: positioning follow-up: stale home title, cover image and alt; README restructured on the four promises; an ontology concept page; glossary and north-star bridges #21586

Description

@objectstack-fleet

立卡门类别 ③ — 维护者直派的任务 (maintainer-directed task).

Maintainer ruling (verbatim, untranslated)

README 和文档还有进一步的修改建议嘛?

创建一个issue,然后用 fable 派发处理。

Given in session https://claude.ai/code/session_011hRnra93sK5Q2gTYYTbdJR on 2026-10-03, after #21574 (PR #21579, landed as cc645f2) put the slogan on the README, the docs landing page, the glossary and the two concepts pages. This card is the follow-up pass: four inconsistencies that pass left behind, plus the structural changes that make the README and the docs read as one system around the slogan. Same slogan, descriptor and proof line as #21574; nothing here reopens that wording.

Part A. Inconsistencies left on main at cc645f2 (must fix)

A1. apps/docs/app/[lang]/page.tsx line 34: HOME_TITLE still reads "Metadata framework for AI-written apps". It feeds the document title (line 56), the Open Graph title (67), the Twitter card title (76) and the JSON-LD headline (112), so every share card pairs the new description with the old title. Set it to "The ontology is the software".

A2. apps/docs/lib/site.ts line 86: the HERO_COVER alt still reads "ObjectStack — the metadata framework for AI-written apps". Replace with "ObjectStack: the ontology is the software. One executable business ontology, written by AI, run by the runtime, operated by agents, owned by you."

A3. The hero cover image carries a third, older headline. docs/screenshots/hero-cover-dark.png (2400 by 1200, the README hero) reads "Your whole app, as typed metadata." with the chips "Fits in an agent's context", "Typed, validated, governed", "Self-host anywhere", "Apache-2.0"; apps/docs/public/hero-cover-dark.webp is derived from it and is the docs site's og:image. Re-render both with the new copy: headline "The ontology is the software.", subhead "One executable business ontology. AI writes it, the runtime runs it, agents operate it, you own it.", chips "Executable", "AI-writable", "Agent-operable", "You own it", "Apache-2.0". There is no design source in the repo, so build a 2400 by 1200 HTML template that reproduces the current layout (dark backdrop, copy on the left, the ticket code card and the dashboard screenshot on the right), screenshot it with the preinstalled Playwright Chromium, commit the PNG as the new master and the template beside it so the next copy change is a re-render, then derive the WebP exactly as the provenance block in apps/docs/lib/site.ts says (sharp, quality 80, effort 6, from the PNG). Pixel dimensions stay 2400 by 1200; the declared sizes in site.ts must still match the bytes. If the re-render cannot reach the quality of the current image, leave both image files untouched, land the rest of this card, and say so in the report with the template committed anyway.

A4. content/docs/getting-started/glossary.mdx line 39, the UI Protocol entry, still lists Themes. Stack themes were retired at protocol 18 (packages/spec/src/migrations/entries/semantic/18.stack-themes-carrier-retired.ts). Drop the word from that sentence.

Part B. README restructured on the four promises

B1. Hero. The blockquote now stacks five paragraphs. Cut it to: the slogan line, the English descriptor, and one proof line "Apps small enough for AI to hold whole." Keep the Chinese signature as one short line, "本体即软件。", directly under the descriptor; the Chinese descriptor sentence moves out (PM ruling for this card: no README.zh-CN.md; a separate card if the maintainer wants one). Move the ontology paragraph with its caveat (no inheritance, no axioms, no reasoner; executable, not knowledge-representation) out of the hero into a new short section "What we mean by ontology", three sentences plus a link to the glossary entry, placed right before the capability section.

B2. The chip row under the hero becomes the four promises plus the licence: "Executable", "AI-writable", "Agent-operable", "You own it", "Apache-2.0".

B3. Section order and headings, so the README's spine is the slogan. Keep "Try it in five minutes" first as the onboarding. Then "The runtime runs it" (today's "What one definition gives you", body unchanged). Then "Agents are the first users" (today's "Your app is AI-operable, for free", moved up; open it with one sentence: objects are tools, actions are tools, permissions decide what an agent may call, audit records what it did; keep the claude mcp add snippet). Then "Why the mistakes don't ship" (unchanged body; it is the "AI writes it" promise). Then a short "You own it" section that consolidates the LICENSING sentence from the paragraph under the video and the blog quote near the end of the file. Then "Ship it" and "Hack on the framework" as they are. Renaming a heading changes its anchor: grep content/docs and apps/docs for links into README anchors and update them; the published-readme-links gate reads this.

Part C. Docs site

C1. content/docs/index.mdx: the first paragraph becomes the slogan and the descriptor, then the existing build-loop diagram and the rest unchanged; align the frontmatter description with it.

C2. A concept page, content/docs/concepts/ontology.mdx, registered in content/docs/concepts/meta.json right after "metadata-driven". Five sections: what the ontology is (objects and fields, relations, actions, permissions, flows, agent and tool definitions); what the projections are (views, dashboards, apps, translations); what it is not (a knowledge ontology with inheritance, axioms and a reasoner; the industry's semantic layer, a read-only mapping over existing systems; a formal ontology in the philosophical sense); how the runtime executes it (derive the database, REST, UI and MCP; enforce permissions and audit on every call; validated, not reasoned over); how AI writes it and uses it (skills bundle and AGENTS.md, the validation gate, the Console review, the MCP surface). The page is the authority; the glossary "Business Ontology" entry shrinks to a short definition of at most six lines plus a link to it, no duplicated long text.

C3. Glossary, in the shortened entry: one sentence that distinguishes this ontology from the industry's "semantic layer" (a read-only mapping over existing systems that describes the business but does not run it), beside the existing sentence about the analytics dataset layer.

C4. content/docs/concepts/north-star.mdx: one bridge sentence in the first paragraph, "In the enterprise-AI vocabulary, the ontology is the software", nothing else on that page.

Guardrails for the author

  • The four facts survive in every piece of copy: no object inheritance, axioms or reasoner; not a semantic layer over existing systems; views, dashboards, apps and translations are projections, not ontology; code does not disappear, it moves into the runtime. The 150k / 100k number discipline from docs:主 README 与文档首页统一换用新定稿 tagline(150k 整体 + 100k 业务逻辑拆分) #9241 applies to any retained figure.
  • Docs only: no packages/** change, never content/docs/references/** (generated), content/docs/releases/** (release-owned) or any CHANGELOG.md. The only binary files touched are the two cover images in A3.
  • The new page is the one meta.json change. The docs build (pnpm --filter @objectstack/docs build) and the doc gates must stay green; derive the gate list from the real file surface with scripts/pm/dispatch-gates.mjs.
  • Changeset: nothing publishes, so skip-changeset applies once packages/** is confirmed untouched.
  • Out of git, for the maintainer, not this card: the repository description field, and the 90-second YouTube video still narrates the old tagline.

Non-goals

  • A README.zh-CN.md or any Chinese docs tree. Separate card if wanted.
  • Naming the ontology core inside packages/spec. Separate spec-lane card if wanted.
  • Console or Studio copy; that is the objectui sibling repo.

Who acts

domain:devx lane, this seat, one os-dev dispatch at the fable tier (maintainer directed), one docs-only draft PR. Precedent: #21574 landed by #21579 on the same surfaces earlier today; this card builds on that head, so the dev merges current main before touching the same files.

Duplicate check (2026-10-03, open and closed)


Generated by Claude Code

No activity

Activity on this issue will appear here.

Activity

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