Skip to content

docs:主 README 与文档首页统一换用新定稿 tagline(150k 整体 + 100k 业务逻辑拆分) #9241

Closed

Description

@os-zhuang

交付(维护者 2026-08-17 定稿,逐字使用,⛔ 不改写)

主 tagline(README 首屏 + 文档首页 hero 等所有出现旧版语的位置):

Apps small enough for AI to hold whole. ObjectStack turns the whole app — data model, UI, workflows, permissions — into typed metadata: a complete CRM in under 150k tokens, one context window. Agents read it whole, reason it whole, refactor it whole.

README 首段紧随其后的拆分行(100k 业务逻辑强调,维护者要点):

The business logic alone — every object, workflow and permission — is under 100k tokens; the UI adds just 50k more.

范围与清扫

  1. 根 README.md:首屏 tagline 替换 + 拆分行加入首段。
  2. 全仓 grep 旧口径并对齐:旧句式("A complex business system in 170k tokens" / "compresses an entire app" / 单独出现的 100k 整体性主张等)在 README*、content/docs/** 首页/概览页中的出现处,换新定稿或改写至与两条新句数字一致——数字纪律:150k 恒指整 app(含 UI),100k 恒指业务逻辑,⛔ 两个数字不得互换宿主名词。
  3. ⛔ content/docs/releases/** 不碰(仓规)。
  4. GitHub 仓库 description 字段不在 git 内——不属本卡,另行提醒维护者在 UI 粘贴主 tagline 首两句。

约束

  • 客户面文档恒英文;docs-only 按仓内 changeset 惯例。
  • 契约面零接触(Clause-②: no);档位无路径强制,PM 判档默认。
  • 非 ADR 面:复核通过后按正常队列落地。

Activity

  1. added
    documentationImprovements or additions to documentation
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    on Aug 17, 2026
  2. self-assigned this
    on Aug 17, 2026
  3. os-zhuang commented on Aug 17, 2026

    @os-zhuang
    ContributorAuthor

    Claim: session_017TNzEetykdh7ceZGwuAPLq
    Branch: claude/issue-9241-readme-tagline

    席位:skills 车道 PM(维护者本轮直接指派的内容卡)。
    Clause-②: no(契约面零接触)。Container & model: opus(无路径强制,默认档)。
    面:README.md + content/docs 首页/概览命中处;非 ADR,复核后正常队列落地。


    Generated by Claude Code

  4. os-zhuang commented on Aug 17, 2026

    @os-zhuang
    ContributorAuthor
    {
      "issue": 9241,
      "status": "done",
      "branch": "claude/issue-9241-readme-tagline",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/9242",
      "premise_still_valid": true,
      "summary": "files_changed=2 (README.md, apps/docs/app/[lang]/page.tsx), +30/-21, head 89e946c50. Sweep counts: 6 spots changed, 10 hits decided-not-changed (all enumerated with reasons in the PR body), 0 residual old-copy hits on re-grep. Definitive text used verbatim on 3 surfaces (README hero, docs h1+lead, docs page metadata), asserted mechanically as whitespace-normalized substring containment, not by eye — headline/body split is the README's own pre-existing shape, no words altered. Number discipline: 150k=whole app incl. UI, 100k=business logic, never swapped. Deviations: (a) the docs homepage hero lives in apps/docs/app/[lang]/page.tsx, not under content/docs — treated as in scope per the card's '文档首页 hero' wording; (b) the retired anchor link [a complete CRM is under 170k tokens](#why-the-mistakes-dont-ship) was dropped rather than re-pointed, because the definitive copy carries no link; (c) not a gen:docs artifact — page.tsx is hand-authored, so no regeneration was owed. Observed, no action taken: the GitHub repo description field already carries the new tagline, so issue item 4 is already satisfied by the maintainer. No queue action taken, per the card.",
      "tests": "Union re-run AFTER the final commit, at 89e946c50 (git rev-parse --short HEAD; HEAD unchanged across the union). (1) node scripts/check-nul-bytes.mjs --self-test -> '75 assertions over a temp git repo'; node scripts/check-nul-bytes.mjs -> 'OK (scanned 6039 text file(s) ... no raw ASCII control bytes)'. (2) targeted grep -naP control-byte self-scan of both changed files -> clean. (3) pnpm --filter @objectstack/docs types:check (fumadocs-mdx + next typegen + tsc --noEmit) -> 'Types generated successfully', EXIT=0, run under flock /tmp/os-heavy-verify.lock. (4) node scripts/pm/dispatch-gates.mjs re-derived against the actual changed paths -> 'No check family names the given paths ... and no workflow path filter schedules one for them'; no model-tier path mandate; check:nul-bytes run anyway as the every-edit family. No changeset (both surfaces unpublished; @objectstack/docs is private:true) -> skip-changeset applied and READ BACK: labels are ['documentation','size/s','skip-changeset']. No ablation in this card, so no rebuild claim is owed. CI gate conclusions not awaited, per the report-at-draft-PR-time rule.",
      "open_questions": [
        {
          "question": "Non-blocking, for the maintainer: the definitive tagline says a complete CRM is under 150k tokens, while three docs surfaces measure the bundled examples/app-crm at ~16k, and both read as 'a complete CRM'. The tension is pre-existing (the retired tagline said 170k alongside the same 16k pages), so this PR neither reconciles nor hides it. Should the two figures be given distinct host nouns?",
          "options": [
            "A. Leave as-is — the coexistence is the maintainer's prior arrangement; the tagline claims a full-featured CRM, the pages measure the minimal bundled example.",
            "B. Re-label the measured figure at its three sites as 'the bundled example CRM' (not 'the whole business system'), leaving both numbers untouched — a separate docs card, since it edits pages this card's copy did not.",
            "C. Re-measure examples/app-crm against the 150k claim and restate one of the numbers."
          ],
          "recommendation": "B as a separate card, A for now. Real business need: the reader-facing risk is a credibility gap on the first screen, which is measured by what the two sentences literally claim, not speculative. Long-term soundness: distinct host nouns for distinct artifacts is the same discipline this card already enforces for 150k/100k, so B extends the rule rather than patching a symptom. Hard-to-get-wrong: B fixes it structurally at authoring time — one noun per artifact — whereas C invents numbers and would require editing definitive copy, which this card forbids outright. Not filed as its own issue because it is already enumerated as a decided-not-changed hit in this PR's body, where the card asked for it; say the word and I will file it standalone."
        }
      ],
      "out_of_scope_findings": []
    }

    Generated by Claude Code

  5. os-zhuang commented on Aug 17, 2026

    @os-zhuang
    ContributorAuthor

    PM review — ACCEPT · queue landing pending CI

    PR: #9242, head 89e946c50, +30/−21 across README.md + apps/docs/app/[lang]/page.tsx.

    Checklist: definitive copy verbatim on all three surfaces (README hero, docs h1+lead, docs page metadata) — verified against the diff, not the report; number discipline held (150k=whole app incl. UI, 100k=business logic, no host-noun swap); old copy fully swept (170k / 16k / "under 2,000 lines" all gone, re-grep zero residual); 10 decided-not-changed hits enumerated with reasons in the PR body; releases/** untouched; skip-changeset read back (docs surfaces unpublished/private).

    Spot-checks: dropped anchor link (deviation b) correct — definitive copy carries no link, target section still exists for in-page readers; page.tsx hand-authored, no regen owed (deviation c verified by path).

    Landing: non-ADR path — flip checkpoint armed; at green gate-job conclusions: ready → auto-merge (SQUASH) → timeline-verified enqueue.

    Escalated to maintainer (non-blocking): the pre-existing 16k "bundled example CRM" figure on three docs pages vs the 150k tagline — recommendation on the seat thread.


    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

Labels

documentationImprovements or additions to documentation

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions