Skip to content

Positioning below the hero: 12 of 15 marketing pages, the home page below the fold, the glossary, llms.txt and the AI-native cluster still speak the pre-ontology positioning #233

Closed

Description

@objectstack-fleet

Filing-gate category: ③ maintainer-directed task. The maintainer, in the PM session chat on 2026-10-15, after reading the seat's gap evaluation of this site against objectstack's "The ontology is the software" positioning: 「立卡处理」.
Who acts: repo:www.objectos.ai · seat 2 (objectstack-ai/objectstack#23827). One dev for the whole card; the four sections are independent if a split is ever needed.
Dedupe: all 109 issues on this repo, open and closed, fetched over REST 2026-10-15T11:25Z, titles and bodies grepped. ai-native-app-platform: 4 hits (#158 #219 #224 #225 — tags, indexing, SVGs; none rewrites the cluster copy). llms.txt: 13 hits (#222 covers its pricing line and two page descriptions, #209 its opening; none its definitions). projection: 1 hit (#211, a post). data-modeling|app-ui|pages/en/mcp: 4 hits (#149 closed, #175, #216, #222 — facts and the existing-systems claim, not the framing). No card covers the framing below.
Dispatch tier: ceiling (CONTRACT_REVIEW_TIER) — reason: positioning copy, under the dispatch-tier ruling quoted on #209 (2026-10-05).
Ruling-ref: 6209608204 (tier-1 vocabulary, maintainer 2026-10-15)

Why

#210 (8a258d4) moved the home title, hero, meta description and the llms.txt opening onto the canonical lines in src/lib/positioning.ts (T1–T4, E1). One level down, the site still argues the previous positioning.

Readings: origin/main 6ada491, 2026-10-16T06:29Z — after #222 (PR #252) and #223 (PR #253) landed. This card waited on #222 for its shared file surface; that wait ended 2026-10-15.

1. Capability pages never name the ontology or its four promises

ontolog occurrences per English page in content/pages/en/: 0 on agent-developer, ai, analytics, app-ui, approvals, automation, customer-stories, data-modeling, mcp, permissions, templates, trust-center; 1 on platform and product-tour; 11 on forward-deployed-engineers (the same instrument's positive control).

Give each promise a home on the page that already proves it, in positioning.ts wording rather than new wording:

2. Home below the fold, and site chrome

3. Definitions: glossary and llms.txt

  • content/glossary/en/ontology.ts:6-8 leads its title and description with the generic knowledge-engineering definition ("a formal model of a business domain…"). The executable boundary arrives only in a later paragraph. Lead with the executable business ontology, and carry the four guardrails objectstack requires wherever the word is explained (objectstack commit d2e687fd): no inheritance, axioms or reasoner; not the semantic layer; views, dashboards, apps and translations are projections; code moves into the runtime.
  • Add one glossary term, ontology-projection (en + zh-Hans).
  • src/pages/llms.txt.ts Core Definitions — ruled (Ruling-ref above): replace the "Metadata driven development with an AI as the author" entry with an "Executable business ontology" definition. The list stays at three terms.
  • content/glossary/{en,zh-Hans}/metadata-driven-development.ts — ruled: keep the page and its URL; add a lineage note at the top pointing to the ontology term. "metadata driven development" leaves Adopt a three-tier site keyword architecture, and make llms.txt bridge to the category vocabulary #77's tier 1.

4. The ai-native-app-platform cluster

src/lib/clusters.ts: "AI-native" on 15 lines, "low-code" on 7; src/lib/cluster-i18n.ts: 7 and 8. It is the cluster the home page and llms.txt link in all eight locales. Rewrite its copy to the ontology framing. Keep the slug and the URL — no redirect.

Sources

objectstack origin/main 1ced0f82: README.md:7-32 and :179-217, content/docs/concepts/ontology.mdx, docs/NORTH-STAR.md:3. No token figures come back (#209 Q5). If a size proof is wanted, objectstack's current measurement is about 18,500 tokens for the example CRM (content/blog/the-ontology-is-the-software.mdx:119).

For the dev: AGENTS.md §Positioning predates this positioning (its alignment is #209 item 5). Where the two disagree, src/lib/positioning.ts and the objectstack README win.

Done looks like

  • The PR body quotes each changed sentence before → after, with its file and line.
  • en and zh-Hans authored (re-derived, not translated); zh-Hant regenerated, never hand-edited.
  • pnpm content:lint, pnpm content:lint --published, pnpm check, pnpm build, pnpm seo:smoke green.
  • The five capability pages, the home page, the glossary pages and the cluster page browser-checked at the seat's viewports.

Activity

  1. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    Ruling recorded, and the block re-derived · 2026-10-16T06:33Z

    Ruling. The maintainer, in the PM session chat (session_017GeNDQH7E5S2rX8ajVAPxv) on 2026-10-15, answering the seat's recommendation on the tier-1 term:

    接受你的建议

    The recommendation it accepts, verbatim from the same chat:

    在 llms.txt 核心定义里用"executable business ontology"替换它;术语页保留,但加一条沿革说明。保留是因为它已有外链和搜索流量,删掉会白白损失;替换是因为新口径下产品不该再由它来定义。

    On this card that means:

    • src/pages/llms.txt.ts Core Definitions. The "Metadata driven development with an AI as the author" entry is replaced by an "Executable business ontology" definition. The list stays at three terms.
    • content/glossary/{en,zh-Hans}/metadata-driven-development.ts. The page and its URL stay, and the page gains a lineage note pointing to the ontology term.
    • Adopt a three-tier site keyword architecture, and make llms.txt bridge to the category vocabulary #77's tier-1 list (2026-08-26). "metadata driven development" leaves tier 1; "executable business ontology" takes its place. The term stays in the glossary and in prose, but no longer defines the product.

    Block. Blocked-by: #222 is satisfied: #222 closed completed on 2026-10-15 (PR #252, squash 5bd416d). The release is re-derived, not taken on reflex.


    Generated by Claude Code

  2. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    Claim: PM loop round 1
    Session: session_017GeNDQH7E5S2rX8ajVAPxv
    Account: os-tesla
    Branch: claude/sharp-mendel-1087cg-issue-233
    Worktree: www.objectos.ai-issue-233
    Domain: none — single-lane repo (repo:www.objectos.ai)
    Seat: repo:www.objectos.ai#2
    File surface: content/pages/{en,zh-Hans}/{mcp,data-modeling,app-ui,permissions,agent-developer}.ts, src/lib/home.ts (below-the-fold strings only), src/lib/terms.ts, content/glossary/{en,zh-Hans}/{ontology,metadata-driven-development,ontology-projection}.ts, src/pages/llms.txt.ts (Core Definitions only), src/lib/clusters.ts, src/lib/cluster-i18n.ts, generated zh-Hant output (stop on breach; explain in the report)
    Container & model: M, mode:subagent, model: CONTRACT_REVIEW_TIER — reason: the maintainer's 2026-10-15 ruling that article cards dispatch at the ceiling tier, and #209's dispatch-tier ruling for positioning copy (2026-10-05)
    Clause-②: no
    Responsibility: n/a — not a defect card
    Thread-read: 6209608204
    Serial constraints cleared: #235 (seat 2, same round) shares src/lib/home.ts and src/pages/llms.txt.ts — ordinary concurrency, the later lander merges main; seat 1 PR #255 owns src/components/ArticleList.astro and the src/lib/i18n.ts articles lead — excluded from this card; seat 1 PRs #237 #244 #245 touch content/blog/** only (files read 2026-10-16T06:33Z).

  3. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report

    {
      "issue": 233,
      "status": "done",
      "branch": "claude/sharp-mendel-1087cg-issue-233",
      "pr": "https://github.com/objectstack-ai/www.objectos.ai/pull/259",
      "session": "session_017GeNDQH7E5S2rX8ajVAPxv",
      "premise_still_valid": true,
      "summary": "All four sections of the card landed in one commit (42648e1) off origin/main 6ada491, en and zh-Hans authored, zh-Hant derived at render time (no generated files: gen:zh-hant writes blog posts only). §3: glossary `ontology` leads with the executable business ontology and its four boundaries, new `ontology-projection` term (en + zh-Hans; discovery is the slug-keyed glob, no registry edit), `metadata-driven-development` keeps page and URL and opens with a lineage note pointing at the Ontology entry, llms.txt Core Definitions swap the MDD entry for `Executable business ontology` (three terms). §1: the five capability pages name the ontology where they already prove the promise (mcp: Agent-operable via p.t3[2]; data-modeling: the core; app-ui: projections; permissions: the shared fence; agent-developer: AI-writable via p.t3[1]). §4: the `ai-native-app-platform` cluster is rewritten to the ontology framing with slug/URL kept and no redirect, its six locale names renamed, the zh-Hans template re-derived. §2: home's three below-the-fold strings in all seven authored locales (imageNoteTitle now reads T2's first sentence from positioning) and terms.ts descriptions leave `AI-native`, zh-Hant now derived by s2t instead of a hand-kept block.",
      "measurements_before_after": "§1 `ontolog` per en page mcp/data-modeling/app-ui/permissions/agent-developer: 0/0/0/0/0 → 2/3/4/1/3 (control forward-deployed-engineers 11 → 11). §2 home.ts three strings 3 → 0, AI-native lines 7 → 0; terms.ts AI-native or locale forms 14 → 0. §3 glossary en/ontology.ts:6-8 generic lead → executable business ontology; llms.txt MDD entry 1 → 0, `Executable business ontology` 0 → 1. §4 clusters.ts AI-native (ci) 15 → 9 (slug, title, description, lead, one FAQ question, and the post slug `low-code-vs-ai-native-app-platform` in four lists), low-code 7 → 7; cluster-i18n.ts AI-native 7 → 1 (the slug key), low-code 6 → 6 (card read 8; 12 counting CJK forms, unchanged).",
      "tests": "This repo has no test runner; its pinned fixtures (gen-zh-hant link rewrite + zhconvert conversion cases) run inside `pnpm build` and passed. Verified in dist/ after the build: media-note title derived in all 8 locales (grep hits in dist/{en,zh-Hans,zh-Hant,ja,de,es,fr,ko}/index.html), zh-Hant term descriptions derived (`關注可執行業務本體…`, `AI 編寫的業務應用` in dist/zh-Hant/blog/topics/*), dist/llms.txt carries `Executable business ontology` ×1, the MDD entry ×0 and `glossary/ontology-projection/` ×2 (en + zh-Hans sections), zh-Hant cluster H1 `可執行的業務本體`, home/footer cluster label `Executable business ontology` / `실행 가능한 온톨로지` / `可執行業務本體`. Browser: Chromium /opt/pw-browsers/chromium over `astro preview` of dist/, 22 pages × (1440×750, 390×844) = 44 page-views, all 200, scrollWidth == clientWidth on every one, every changed sentence found in rendered text; VERDICT browser-check: 44 page-views, 0 failing; 7 screenshots looked at (en home, en cluster both widths, zh-Hans ontology, zh-Hant ontology-projection 390, en MDD, en app-ui 390). No ablation: copy only, no test pins a changed behaviour.",
      "gates": "Hand-derived from package.json (no dispatch-gates list for www; `--ran` reconciliation n/a). All on 42648e1, exit codes captured before any pipe: `pnpm content:lint` exit 0 — `✓ content lint passed (347 files, 46 glossary terms checked)`; `pnpm content:lint --published` exit 0 — same verdict; `pnpm check` exit 0 — `Result (156 files): 0 errors, 0 warnings, 0 hints`; `pnpm build` exit 0 — `[build] 896 page(s) built in 73.91s`, `✓ content lint --dist passed (486 built blog pages checked)`, CJK line breaks / quotation marks (12422 marks, 0 wrong) / links (94974) all passed; `pnpm seo:smoke` exit 0 — `SEO smoke test passed (886 HTML pages checked; 580 sitemap URLs against 306 noindexed pages; 5533 canonical/hreflang annotations; 16495 prose blocks language-checked; 94964 internal links redirect-checked)`. check+build ran under os-verify-lock slot www-233 (held 112s, waited 15s). CI check-runs on the PR: in_progress — the PR was opened in the same stroke as this report; families per .github/workflows: one workflow, `Deploy to Cloudflare Pages` (on pull_request: pnpm install --frozen-lockfile, pnpm check, pnpm content:lint --published, pnpm build, pnpm seo:smoke) — its check-run on 42648e1 was `Build and deploy` status in_progress, conclusion null at report time. Not re-run locally beyond the subset above.",
      "line_budget": "n/a — no skills/** touched",
      "mcp_calls": "0 — no MCP GitHub tools; card and comments read with `gh api` (REST GET), writes through scripts/pm/fleet-write (relay)",
      "api_writes": "2 — both `POST /repos/objectstack-ai/objectstack/dispatches` (fleet-write relay, lands as objectstack-fleet[bot]): ① pr_create → POST /repos/objectstack-ai/www.objectos.ai/pulls (draft) + POST /repos/objectstack-ai/www.objectos.ai/issues/{pr}/assignees [os-tesla]; ② comment → POST /repos/objectstack-ai/www.objectos.ai/issues/233/comments (this os-dev-report). No label writes, no PATCH. `git push` ×2 (probe, then the commit) are not REST writes. A first comment dispatch was refused by the relay validator for a misspelled op name (issue_comment vs comment): zero writes, not counted.",
      "deviations": [
        "src/lib/home.ts: the three strings changed in all seven authored locales, not only en/zh-Hans — the card's own terms.ts count spans every locale and leaving `AI-native` in five insightsTitle values would keep the home page inconsistent; still only the three strings (plus a 1-line helper `t2Lead`).",
        "src/lib/home.ts: imageNoteTitle is derived from positioning[locale].t2 (first sentence) instead of spelled literally, so it cannot drift from the canonical line; rendered values verified in dist for all 8 locales.",
        "src/lib/terms.ts: zh-Hant descriptions are now `s2t(termDescription(term, 'zh-Hans'))` and the hand-kept zh-Hant block is removed — the file's header already promised no third copy; rendered zh-Hant verified in dist.",
        "src/lib/cluster-i18n.ts: the zh-Hans template (description, lead, definition, low-code FAQ answer) is one body shared by all five clusters, so the re-derived sentences also change the other four zh-Hans/zh-Hant cluster pages (noindexed, canonical to en). ja/de/es/fr/ko templates untouched.",
        "src/pages/llms.txt.ts Core Definitions: the `Open business ontology` entry's last sentence (the four boundaries) moved into the new `Executable business ontology` entry rather than being duplicated; still within Core Definitions only.",
        "src/lib/clusters.ts cannot import positioning.ts (content:lint loads it under plain Node, type-only imports); the cluster states the framing in prose and keeps the query term `AI-native app platform` once in title/description/lead/one FAQ question because the slug and URL are kept for that query — 9 case-insensitive hits remain, listed in the PR.",
        "OS_VERIFY_LOCK_WAIT lowered to 300s for the one lock call (lowering is the permitted direction); acquired after 15s.",
        "An `astro preview` I started for the browser check outlived its first call; found by port, killed by its own PID (never by name) before the rerun; nothing left running."
      ],
      "files_changed": [
        "content/glossary/en/metadata-driven-development.ts",
        "content/glossary/en/ontology-projection.ts (new)",
        "content/glossary/en/ontology.ts",
        "content/glossary/zh-Hans/metadata-driven-development.ts",
        "content/glossary/zh-Hans/ontology-projection.ts (new)",
        "content/glossary/zh-Hans/ontology.ts",
        "content/pages/en/agent-developer.ts",
        "content/pages/en/app-ui.ts",
        "content/pages/en/data-modeling.ts",
        "content/pages/en/mcp.ts",
        "content/pages/en/permissions.ts",
        "content/pages/zh-Hans/agent-developer.ts",
        "content/pages/zh-Hans/app-ui.ts",
        "content/pages/zh-Hans/data-modeling.ts",
        "content/pages/zh-Hans/mcp.ts",
        "content/pages/zh-Hans/permissions.ts",
        "src/lib/cluster-i18n.ts",
        "src/lib/clusters.ts",
        "src/lib/home.ts",
        "src/lib/terms.ts",
        "src/pages/llms.txt.ts"
      ],
      "open_questions": [],
      "out_of_scope_findings": [
        "class: none (observation) · cluster-i18n.ts ja/de/es/fr/ko templates still frame the cluster as a governed runtime for business objects with a generic low-code FAQ; no `AI-native` string; noindexed fallbacks canonical to en · carrier: none · noted in PR Acceptance notes, not filed",
        "class: none (observation) · src/pages/llms.txt.ts:95 Articles line still says `AI-native software` — a page entry, the region #235 holds · carrier: #235 · noted, not filed",
        "class: none (observation) · src/lib/i18n.ts articlesLead ×6 and src/components/ArticleList.astro carry `AI-native` · carrier: PR #255 (seat 1) · noted, not filed",
        "class: none (observation) · one prose `AI-native` each in content/glossary/{en,zh-Hans}/{permission-model,application-metadata}.ts; content/pages/*/platform.ts section id `ai-native` is an anchor id · outside this card's file surface · carrier: none · noted, not filed",
        "class: none (observation) · content:lint width warnings on content/blog/what-does-the-ontology-is-the-software-mean/* (title 87 cols, description 206) predate this PR; warning-only · carrier: none · noted, not filed"
      ]
    }

    Generated by Claude Code

  4. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report-addendum

    {
      "issue": 233,
      "status": "done",
      "report_kind": "os-dev-report-addendum",
      "branch": "claude/sharp-mendel-1087cg-issue-233",
      "pr": "https://github.com/objectstack-ai/www.objectos.ai/pull/259",
      "session": "session_017GeNDQH7E5S2rX8ajVAPxv",
      "head": "9242de3 (was 42648e1 at the first report)",
      "merge": "47bfaa1 — merge commit of origin/main a69829e (#258, the /ontology/ and /compare/ pages) into the branch; no rebase, no force-push, no conflicts: src/lib/home.ts keeps both sides (t2Lead ×7 from this card, positioningLink ×8 from #258); src/lib/i18n.ts siteNav.ontology came in from main untouched.",
      "summary": "Patch round, three additions on the same PR: (1) origin/main merged with a merge commit; (2) content/glossary/{en,zh-Hans}/ontology.ts pageSlugs now open with 'ontology', 'compare' ahead of the capability pages, so the term's Product pages block links /{locale}/ontology/ and /{locale}/compare/ — verified in dist for en, zh-Hans and zh-Hant (href counts: /ontology/ 3 per page incl. the new nav entry, /compare/ 1) and in the browser; (3) src/pages/llms.txt.ts Articles line (line 95) reads 'Practical writing on executable business ontologies and AI-written software, enterprise AI agents, integration, modernization, and governance.' instead of 'Practical writing on AI-native software, …'. Commit 9242de3 on top of the merge; pushed; PR body untouched.",
      "gates": "All on 9242de3, exit codes captured before any pipe: `pnpm content:lint` exit 0 — `✓ content lint passed (347 files, 46 glossary terms checked)`; `pnpm content:lint --published` exit 0 — same verdict; `pnpm check` exit 0 — `Result (160 files): 0 errors, 0 warnings, 0 hints`; `pnpm build` exit 0 — `[build] 912 page(s) built in 71.18s`, `✓ content lint --dist passed (486 built blog pages checked)`, CJK line breaks (912 pages, 0 breaks), quotation marks (12603 marks, 0 wrong) and links (98464 internal links) passed; `pnpm seo:smoke` exit 0 — `SEO smoke test passed (902 HTML pages checked; 586 sitemap URLs against 316 noindexed pages; 5607 canonical/hreflang annotations; 16983 prose blocks language-checked; 98454 internal links redirect-checked)`. check+build under os-verify-lock slot www-233 (held 112s, waited 0s). Tree clean after build. CI check-run on 9242de3: `Build and deploy` (workflow Deploy to Cloudflare Pages: install, check, content:lint --published, build, seo:smoke) status completed, conclusion success — read at report time, not re-run.",
      "browser": "Chromium /opt/pw-browsers/chromium over `astro preview` of dist/ (server started and stopped by PID): /en/, /en/glossary/ontology/, /zh-Hans/glossary/ontology/ at 1440×750 and 390×844 = 6 page-views, all 200, scrollWidth == clientWidth, marker text present, and both glossary pages carry anchors to /{locale}/ontology/ and /{locale}/compare/ at both widths. VERDICT browser-check-r2: 6 page-views, 0 failing.",
      "pr_body_additions_for_the_seat": [
        "§3 bullet for content/glossary/{en,zh-Hans}/ontology.ts: append — `pageSlugs` now opens with `ontology`, `compare` (the pages #258 added on main), so the term's Product pages block links /{locale}/ontology/ and /{locale}/compare/; verified in dist for en, zh-Hans, zh-Hant and in the browser at both widths.",
        "§3 new bullet: `src/pages/llms.txt.ts:95` Articles line — before: `Practical writing on AI-native software, enterprise AI agents, integration, modernization, and governance.` → after: `Practical writing on executable business ontologies and AI-written software, enterprise AI agents, integration, modernization, and governance.` This is one line beyond the claimed `Core Definitions only` surface, added on the seat's patch-round instruction (#235 did not touch llms.txt).",
        "Before → after ledger: add the two `pageSlugs` lines (content/glossary/en/ontology.ts and zh-Hans, `['data-modeling', 'app-ui', …]` → `['ontology', 'compare', 'data-modeling', 'app-ui', …]`) and the llms.txt:95 line above.",
        "Measurements table: new row — dist/llms.txt `AI-native` outside post and cluster titles: 1 → 0 (the remaining 5 hits are the cluster's title/description line and post titles).",
        "Gates section: replace the `42648e1` figures with the 9242de3 run (160 files; 912 pages; 902 HTML pages; 98464 / 98454 links) and note the merge commit 47bfaa1 of origin/main a69829e, no conflicts.",
        "Acceptance notes: remove the item that leaves llms.txt:95 to #235 (done here); add that #258 (www#235) is merged and both pages are now linked from the ontology term."
      ],
      "mcp_calls": "0",
      "api_writes": "3 cumulative — all `POST /repos/objectstack-ai/objectstack/dispatches` (fleet-write relay, objectstack-fleet[bot]): ① pr_create (first report), ② comment os-dev-report (first report), ③ comment os-dev-report-addendum → POST /repos/objectstack-ai/www.objectos.ai/issues/233/comments (this). No PATCH on the PR, no label writes. `git push` ×1 this round (not REST).",
      "deviations": [
        "src/pages/llms.txt.ts surface extended from `Core Definitions only` by the one Articles line (line 95), per the patch-round instruction.",
        "OS_VERIFY_LOCK_WAIT lowered to 300s again for the one lock call; acquired immediately."
      ],
      "files_changed_this_round": [
        "content/glossary/en/ontology.ts (pageSlugs)",
        "content/glossary/zh-Hans/ontology.ts (pageSlugs)",
        "src/pages/llms.txt.ts (Articles line)",
        "merge of origin/main a69829e (11 files from #258, none edited here)"
      ],
      "open_questions": [],
      "out_of_scope_findings": []
    }

    Generated by Claude Code

  5. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report-addendum

    {
      "issue": 233,
      "status": "done",
      "report_kind": "os-dev-report-addendum",
      "round": 2,
      "branch": "claude/sharp-mendel-1087cg-issue-233",
      "pr": "https://github.com/objectstack-ai/www.objectos.ai/pull/259",
      "session": "session_017GeNDQH7E5S2rX8ajVAPxv",
      "head": "bb415e7 (round 1 ended at 9242de3; two commits this round: 39ab729, bb415e7)",
      "summary": "Patch round 2, two edits in files already held. (1) `src/lib/clusters.ts` cluster title (document title and H1) is now `AI-Native App Platform: An Ontology You Run` — the search term at the head, the executable claim in plain words, 7 words/43 characters; the definition stays in `description` and the lead, untouched. The first attempt (`AI-Native App Platform: One Executable Ontology`, commit 39ab729) was measured on its own build at 344px / 4 lines at 1366×625 because `Executable Ontology` cannot share a line in the hero column; seven candidates were then measured in the live page at 1366, 1440 and 1920 before choosing, and the chosen one is committed as bb415e7. zh-Hans/zh-Hant cluster H1 (`可执行的业务本体`, 86px) left as is. (2) `content/pages/{en,zh-Hans}/agent-developer.ts` heroTitle second sentence: en `Teach your agent the target format.` → `Teach your agent to write the ontology.`; zh-Hans `教你的 Agent 目标格式。` → `教你的 Agent 写本体。` (first sentence kept both times; nothing quoted beyond positioning.ts; zh-Hant derived: `別教每個開發者手寫應用。教你的 Agent 寫本體。`). `target format` / `目标格式` now 0 hits in dist en/zh-Hans/zh-Hant agent-developer pages. Pushed; PR body untouched.",
      "layout_measurements": "Built page, Chromium /opt/pw-browsers/chromium over astro preview of dist/ at bb415e7 (getBoundingClientRect, line count = height / computed line-height). 1366×625: /en/ai-native-app-platform/ H1 258px, 3 lines, bottom 423px, lead top 443px, lead first line visible (acceptance ≤ 258px met, equal to the sibling control /en/self-hosted-ai/ at 258px / 3 lines / bottom 446px); /zh-Hans/ai-native-app-platform/ H1 86px, 1 line, lead top 397px; /en/agent-developer/ H1 145px, 3 lines, lead top 335px; /zh-Hans/agent-developer/ H1 97px, 2 lines, lead top 287px. 390×844: /en/ai-native-app-platform/ H1 123px, 3 lines, bottom 283px, lead top 303px (sibling control 123px / 3 lines); /zh-Hans/ai-native-app-platform/ 41px, 1 line; /en/agent-developer/ 199px, 5 lines, lead top 355px; /zh-Hans/agent-developer/ 119px, 3 lines, lead top 276px. No horizontal overflow on any of the 10 page-views, all 200, marker text present. VERDICT browser-check-r3: 10 page-views, 0 failing. Candidate sweep (live-page text swap, before committing): `One Executable Ontology` and `Executable Ontology` 344px/4L at 1366, 1440 and 1920; `An Ontology You Run`, `One Ontology to Run`, `Run the Ontology`, `The Ontology`, `Is an Ontology` 258px/3L at all three; all 123px/3L at 390.",
      "gates": "All on bb415e7, exit codes captured before any pipe: `pnpm content:lint` exit 0 — `✓ content lint passed (347 files, 46 glossary terms checked)`; `pnpm content:lint --published` exit 0 — same verdict; `pnpm check` exit 0 — `Result (160 files): 0 errors, 0 warnings, 0 hints`; `pnpm build` exit 0 — `[build] 912 page(s) built in 69.56s`, `✓ content lint --dist passed (486 built blog pages checked)`, CJK line breaks (912 pages, 0 breaks), quotation marks (12603 marks, 0 wrong), links (98464 internal links) passed; `pnpm seo:smoke` exit 0 — `SEO smoke test passed (902 HTML pages checked; 586 sitemap URLs against 316 noindexed pages; 5607 canonical/hreflang annotations; 16983 prose blocks language-checked; 98454 internal links redirect-checked)`. check+build under os-verify-lock slot www-233 (held 107s, waited 0s). The same five gates were also green on the intermediate 39ab729 (912 pages, 160 files). Tree clean after build. CI check-run on bb415e7: `Build and deploy` (workflow Deploy to Cloudflare Pages: install, check, content:lint --published, build, seo:smoke) status completed, conclusion success — read at report time, not re-run.",
      "pr_body_additions_for_the_seat": [
        "§4 clusters.ts bullet: the title is now `AI-Native App Platform: An Ontology You Run` (was `What Is an AI-Native App Platform? One Executable Business Ontology` on the first head) — H1 258px / 3 lines at 1366×625, 1440×750 and 1920×945, equal to the sibling clusters; the definition stays in `description` and the lead.",
        "Before → after ledger, src/lib/clusters.ts `title`: − `AI-Native App Platform` (origin/main) → + `AI-Native App Platform: An Ontology You Run` (replacing the ledger's current `+` line).",
        "§1 agent-developer bullet: append — heroTitle second sentence `Teach your agent the target format.` → `Teach your agent to write the ontology.`; zh-Hans `教你的 Agent 目标格式。` → `教你的 Agent 写本体。`. Ledger: add both lines at content/pages/{en,zh-Hans}/agent-developer.ts:13.",
        "Browser check section: add the round-2 measurements above (1366×625 and 390×844) and the candidate sweep note.",
        "Gates section: figures now from bb415e7 (unchanged counts: 160 files, 912 pages, 902 HTML pages, 98464 / 98454 links); head sequence 42648e1 → 47bfaa1 (merge) → 9242de3 → 39ab729 → bb415e7.",
        "Measurements table, clusters.ts `AI-native` row: the after-count is unchanged at 9 (title still carries the search term once)."
      ],
      "mcp_calls": "0",
      "api_writes": "4 cumulative — all `POST /repos/objectstack-ai/objectstack/dispatches` (fleet-write relay, objectstack-fleet[bot]): ① pr_create, ② comment os-dev-report, ③ comment os-dev-report-addendum (round 1), ④ comment os-dev-report-addendum round 2 → POST /repos/objectstack-ai/www.objectos.ai/issues/233/comments (this). No PATCH on the PR, no label writes. `git push` ×2 this round (39ab729, bb415e7), not REST.",
      "deviations": [
        "The coordinator's example title (`One Executable Ontology`) was tried first and failed the ≤ 258px acceptance on its own build (344px, 4 lines at 1366); the replacement was chosen by measuring seven candidates in the live page, then rebuilt and re-measured on the real build. Two commits instead of one; both pushed.",
        "OS_VERIFY_LOCK_WAIT lowered to 300s for each of the two lock calls this round; both acquired immediately."
      ],
      "files_changed_this_round": [
        "src/lib/clusters.ts (title, twice: 39ab729 then bb415e7)",
        "content/pages/en/agent-developer.ts (heroTitle)",
        "content/pages/zh-Hans/agent-developer.ts (heroTitle)"
      ],
      "open_questions": [],
      "out_of_scope_findings": []
    }

    Generated by Claude Code

  6. added a commit that references this issue on Oct 16, 2026
    45d5ce9
  7. objectstack-fleet commented on Oct 16, 2026

    @objectstack-fleet
    ContributorAuthor

    Landed and live · 2026-10-16T07:49Z

    Probe Reading
    PR #259, squash 45d5ce9 (pinned to head bb415e7), merged by seat 2 after two patch rounds. Seat record: PR comment 6210674816 (ACCEPT → PR #259 comment 6210674816)
    origin/main 45d5ce9 content(positioning): carry "the ontology is the software" below the hero … (#259)
    Deploy on main run 38869385070 Deploy to Cloudflare Pages: completed/success on 45d5ce9
    Live probe NOT MEASURED. www.objectos.ai is refused by this container's egress (CONNECT 403). The deploy run's conclusion is the reading.
    Ruling Implemented as recorded in 6209608204: the llms.txt Core Definitions carry Executable business ontology, and the MDD page keeps its URL behind a lineage note.

    State: closed completed by Fixes #233; pm:dispatched removed. Since this card's PR merged, the only other www issue closed is #235, closed earlier by its own PR.


    Generated by Claude Code

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions