Skip to content

docs(spec): close 12 literal-level protocol-17 tombstone prescriptions with the house os migrate meta sentence (#7062) - #7077

Merged
os-project-manager merged 2 commits into
mainfrom
claude/issue-7062-hidden-missing-sentences
Aug 9, 2026
Merged

docs(spec): close 12 literal-level protocol-17 tombstone prescriptions with the house os migrate meta sentence (#7062)#7077
os-project-manager merged 2 commits into
mainfrom
claude/issue-7062-hidden-missing-sentences

Conversation

@os-project-manager

Copy link
Copy Markdown
Collaborator

Fixes #7062

#6856 route-D 系列第三张卡:#7031 落地 house sentence 与 class pin,#7061 补齐文件级可见的 14 处,本 PR 处理文件级 census 结构性看不见的 literal 级遗留(所在文件其他位置已含句子)。

Literal 级 census(fresh main @ 2c7e62d5f 重新推导,常量解析到定义处)

用 TypeScript AST 枚举 packages/spec/src 全部 110 个 retiredKey() 调用点,guidance 经同文件常量、跨文件 import、拼接链、模板字面量与 helper(capRemovedWIDGET_ACTION_RETIRED)完整解析:

  • 修改前:44 个调用点的 literal 含句子 + WIDGET_ACTION_RETIRED 家族 3 点 = 47 点已含;63 点不含(其中 capRemoved 家族 30 点)。
  • 在场/缺席对照:class pin 同款扫描在修改前判 68 条句子、修改后 80 条 —— 与 pin 的 anti-vacuity 下限一致,扫描器未致盲。
  • 不含句子的 63 点里,逐点核对 spec-changes.json from-16 converted(53 项)与 conversions/registry.tsapply():12 点有整键覆盖的 v17 conversion → 追加句子;51 点无 conversion → 正确沉默,未动

与卡片所列 15 点的 delta:−3,+0

卡片列的 ui/dashboard.zod.ts:379–381(widgets[].actionUrl/actionType/actionIcon)共享 WIDGET_ACTION_RETIRED(dashboard.zod.ts:306,单个 helper 而非卡片所称的 ACTION_URL_RETIRED 常量族),其 literal 在卡片自己的基线 3f7f14e61 上就已以 house sentence 收尾(git show 3f7f14e61 验证,该文件在基线与 HEAD 之间无变更)——这 3 点从未缺句,卡片此三行不成立。其余 12 点全部证实,无新增合格点。

逐点表(12 处追加)

site key conversion id apply() 判定
ai/agent.zod.ts:248 agent.knowledge agent-knowledge-removed stripKeys(a, ['knowledge']) 整键剥除 → 追加
ui/action.zod.ts:992 action.shortcut action-inert-keys-removed stripKeys(a, ['shortcut','bulkEnabled']) → 追加
ui/action.zod.ts:1000 action.bulkEnabled action-inert-keys-removed 同上 → 追加
ui/app.zod.ts:1253 app.version app-dead-authoring-keys-removed RETIRED 顶层剥除含全部 7 键 → 追加
ui/app.zod.ts:1394 app.objects 同上 → 追加
ui/app.zod.ts:1401 app.apis 同上 → 追加
ui/app.zod.ts:1428 app.sharing 同上 → 追加
ui/app.zod.ts:1435 app.embed 同上 → 追加
ui/app.zod.ts:1448 app.mobileNavigation 同上 → 追加
ui/app.zod.ts:1487 app.aria 同上 → 追加
ui/dashboard.zod.ts:910 dashboard.aria dashboard-inert-keys-removed stripKeys(d, ['aria','performance']) → 追加
ui/dashboard.zod.ts:916 dashboard.performance dashboard-inert-keys-removed 同上 → 追加

四个 conversion 全部整键剥除(stripKeys / 专用 walker),无 partial value 场景,故一律单从句 house 形式,未用 MIXED 双从句。行号为追加后;guidance 句前散文逐字节不变(仅按 #7061 惯例在前句末补一个分隔空格并新增拼接段)。

正确沉默(51 点,报告不动):capRemoved 家族 30 点 + DriverCapabilities.streaming(driver 是代码非 stack metadata,helper 文档块自证;D3 语义迁移 driver-capabilities-inert-bits-removed)、query.cursor/joins/windowFunctions/distinctaggregations[].distinct(#7051,常量归属核对)、notifications cursor、analytics query/format、batch validateOnly、errors fieldErrors、rest-server openApi31ActionDescriptor.isAsyncHookContext.session.roles、environment-artifact functions/manifest/payloadRef —— 逐一 grep conversions/registry.ts 确认无覆盖条目。

Class pin 与种红

生成物与门禁

  • gen:schema:authorable-surface/**json-schema.manifest/**authorable-defaults/.base.jsonapi-surface/** 全部 零 diff
  • check:generated:仅 check:docs 判 stale(guidance 进 .describe() → 参考页),--fix 只再生四页:references/ai/agent.mdxreferences/ui/action.mdxreferences/ui/app.mdxreferences/ui/dashboard.mdx,diff 即句子本身。
  • check:upgrade-guide 未再生即绿(migrations ledger 未触碰),check:spec-changes 绿。
  • pnpm --filter @objectstack/spec test:354 文件 / 9235 用例全绿;typecheck 绿,test-typecheck-debt.json 前后零变更(58 文件 / 266 错误,未触碰)。
  • check-nul-bytes:OK(6521 文件)。

Changeset

.changeset/twelve-hidden-migrate-sentences.md,@objectstack/spec: patch。非 breaking(仅 guidance 文案),不涉 ADR-0087 disposition 标记。

🤖 Generated with Claude Code

https://claude.ai/code/session_018ffcE95NaMJcL9XJ9VDYgk


Generated by Claude Code

claude added 2 commits August 9, 2026 13:56
…s with the house `os migrate meta` sentence (#7062)

The literal-level remainder of #6914 (route D, #6856): 12 retiredKey()
guidance literals whose surface a registered v17 conversion covers, hiding
in files that already carried the sentence elsewhere. Re-derived the census
on fresh main with constants resolved to their definitions; verified each
site against spec-changes.json's from-16 converted list and its apply() in
conversions/registry.ts (all wholesale strips — no MIXED form needed).
Delta vs the card's 15: the three dashboard.widgets[] action keys share
WIDGET_ACTION_RETIRED, whose literal already ends with the house sentence,
so they were never missing. Guidance prose before each appended sentence is
byte-identical; gen:schema is a zero diff on authorable-surface/,
json-schema.manifest/, authorable-defaults/ and the .base.json anchor;
check:upgrade-guide green without regen; the four reference pages
regenerated.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ffcE95NaMJcL9XJ9VDYgk
@vercel

vercel Bot commented Aug 9, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
objectstack Ignored Ignored Aug 9, 2026 1:58pm

Request Review

@github-actions github-actions Bot added the size/s label Aug 9, 2026
@github-actions

github-actions Bot commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): @objectstack/spec.

106 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/ai/agents.mdx (via @objectstack/spec)
  • content/docs/ai/skills-reference.mdx (via @objectstack/spec)
  • content/docs/ai/skills.mdx (via @objectstack/spec)
  • content/docs/api/client-sdk.mdx (via @objectstack/spec)
  • content/docs/api/environment-routing.mdx (via @objectstack/spec)
  • content/docs/api/error-catalog.mdx (via @objectstack/spec)
  • content/docs/api/error-handling-client.mdx (via @objectstack/spec)
  • content/docs/api/error-handling-server.mdx (via @objectstack/spec)
  • content/docs/api/index.mdx (via @objectstack/spec)
  • content/docs/automation/approvals.mdx (via @objectstack/spec)
  • content/docs/automation/connectors.mdx (via @objectstack/spec)
  • content/docs/automation/flows.mdx (via @objectstack/spec)
  • content/docs/automation/hook-bodies.mdx (via packages/spec)
  • content/docs/automation/hooks.mdx (via @objectstack/spec)
  • content/docs/automation/index.mdx (via @objectstack/spec)
  • content/docs/automation/webhooks.mdx (via @objectstack/spec)
  • content/docs/automation/workflows.mdx (via @objectstack/spec)
  • content/docs/concepts/architecture.mdx (via @objectstack/spec)
  • content/docs/concepts/design-principles.mdx (via packages/spec)
  • content/docs/concepts/index.mdx (via @objectstack/spec)
  • content/docs/concepts/metadata-driven.mdx (via @objectstack/spec)
  • content/docs/concepts/metadata-lifecycle.mdx (via packages/spec)
  • content/docs/concepts/north-star.mdx (via @objectstack/spec)
  • content/docs/data-modeling/analytics.mdx (via @objectstack/spec)
  • content/docs/data-modeling/drivers.mdx (via @objectstack/spec)
  • content/docs/data-modeling/external-datasources.mdx (via @objectstack/spec)
  • content/docs/data-modeling/field-types.mdx (via @objectstack/spec)
  • content/docs/data-modeling/fields.mdx (via @objectstack/spec)
  • content/docs/data-modeling/formulas.mdx (via @objectstack/spec)
  • content/docs/data-modeling/index.mdx (via @objectstack/spec)
  • content/docs/data-modeling/objects.mdx (via @objectstack/spec)
  • content/docs/data-modeling/queries.mdx (via @objectstack/spec)
  • content/docs/data-modeling/schema-design.mdx (via @objectstack/spec)
  • content/docs/data-modeling/seed-data.mdx (via @objectstack/spec)
  • content/docs/data-modeling/validation-rules.mdx (via @objectstack/spec)
  • content/docs/data-modeling/validation.mdx (via @objectstack/spec)
  • content/docs/deployment/cli.mdx (via @objectstack/spec)
  • content/docs/deployment/tenancy-modes.mdx (via @objectstack/spec)
  • content/docs/deployment/troubleshooting.mdx (via @objectstack/spec)
  • content/docs/deployment/validating-metadata.mdx (via @objectstack/spec)
  • content/docs/getting-started/build-with-claude-code.mdx (via @objectstack/spec)
  • content/docs/getting-started/common-patterns.mdx (via @objectstack/spec)
  • content/docs/getting-started/examples.mdx (via @objectstack/spec)
  • content/docs/getting-started/quick-reference.mdx (via @objectstack/spec)
  • content/docs/getting-started/quick-start.mdx (via @objectstack/spec)
  • content/docs/getting-started/your-first-project.mdx (via @objectstack/spec)
  • content/docs/kernel/cluster.mdx (via @objectstack/spec)
  • content/docs/kernel/contracts/auth-service.mdx (via packages/spec)
  • content/docs/kernel/contracts/cache-service.mdx (via packages/spec)
  • content/docs/kernel/contracts/data-engine.mdx (via @objectstack/spec)
  • content/docs/kernel/contracts/index.mdx (via @objectstack/spec)
  • content/docs/kernel/contracts/metadata-service.mdx (via packages/spec)
  • content/docs/kernel/contracts/storage-service.mdx (via @objectstack/spec)
  • content/docs/kernel/index.mdx (via packages/spec)
  • content/docs/kernel/runtime-services/data-service.mdx (via @objectstack/spec)
  • content/docs/kernel/runtime-services/email-service.mdx (via packages/spec)
  • content/docs/kernel/runtime-services/examples.mdx (via @objectstack/spec)
  • content/docs/kernel/runtime-services/index.mdx (via packages/spec)
  • content/docs/kernel/runtime-services/queue-service.mdx (via packages/spec)
  • content/docs/kernel/runtime-services/sharing-service.mdx (via @objectstack/spec)
  • content/docs/kernel/runtime-services/sms-service.mdx (via packages/spec)
  • content/docs/kernel/runtime-services/storage-service.mdx (via @objectstack/spec)
  • content/docs/kernel/services-checklist.mdx (via @objectstack/spec)
  • content/docs/kernel/services.mdx (via @objectstack/spec)
  • content/docs/permissions/authorization.mdx (via @objectstack/spec)
  • content/docs/permissions/permission-sets.mdx (via @objectstack/spec)
  • content/docs/permissions/permissions-matrix.mdx (via @objectstack/spec)
  • content/docs/permissions/positions.mdx (via @objectstack/spec)
  • content/docs/permissions/rls.mdx (via @objectstack/spec)
  • content/docs/permissions/sharing-rules.mdx (via @objectstack/spec)
  • content/docs/permissions/system-context.mdx (via packages/spec)
  • content/docs/plugins/adding-a-metadata-type.mdx (via @objectstack/spec)
  • content/docs/plugins/development.mdx (via @objectstack/spec)
  • content/docs/plugins/index.mdx (via @objectstack/spec)
  • content/docs/plugins/packages.mdx (via @objectstack/spec)
  • content/docs/protocol/backward-compatibility.mdx (via @objectstack/spec)
  • content/docs/protocol/diagram.mdx (via packages/spec)
  • content/docs/protocol/kernel/config-resolution.mdx (via @objectstack/spec)
  • content/docs/protocol/kernel/http-protocol.mdx (via @objectstack/spec)
  • content/docs/protocol/kernel/i18n-standard.mdx (via @objectstack/spec)
  • content/docs/protocol/kernel/index.mdx (via @objectstack/spec)
  • content/docs/protocol/kernel/lifecycle.mdx (via @objectstack/spec)
  • content/docs/protocol/kernel/plugin-spec.mdx (via @objectstack/spec)
  • content/docs/protocol/knowledge.mdx (via @objectstack/spec)
  • content/docs/protocol/objectql/index.mdx (via @objectstack/spec)
  • content/docs/protocol/objectql/query-syntax.mdx (via @objectstack/spec)
  • content/docs/protocol/objectql/schema.mdx (via @objectstack/spec)
  • content/docs/protocol/objectql/security.mdx (via packages/spec)
  • content/docs/protocol/objectql/state-machine.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/actions.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/concept.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/index.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/layout-dsl.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/record-alert.mdx (via @objectstack/spec)
  • content/docs/protocol/objectui/widget-contract.mdx (via @objectstack/spec)
  • content/docs/ui/actions.mdx (via @objectstack/spec)
  • content/docs/ui/apps.mdx (via @objectstack/spec)
  • content/docs/ui/create-vs-edit-form.mdx (via @objectstack/spec)
  • content/docs/ui/dashboards.mdx (via @objectstack/spec)
  • content/docs/ui/field-grouping-and-order.mdx (via @objectstack/spec)
  • content/docs/ui/forms.mdx (via @objectstack/spec)
  • content/docs/ui/index.mdx (via @objectstack/spec)
  • content/docs/ui/public-data-collection.mdx (via @objectstack/spec)
  • content/docs/ui/setup-app.mdx (via @objectstack/spec)
  • content/docs/ui/translations.mdx (via @objectstack/spec)
  • content/docs/ui/views.mdx (via @objectstack/spec)

7 release-owned page(s) also reference the affected code. These are read-only:

  • content/docs/releases/implementation-status.mdx (via @objectstack/spec)
  • content/docs/releases/index.mdx (via @objectstack/spec)
  • content/docs/releases/v12.mdx (via @objectstack/spec)
  • content/docs/releases/v13.mdx (via @objectstack/spec)
  • content/docs/releases/v16.mdx (via @objectstack/spec)
  • content/docs/releases/v17.mdx (via @objectstack/spec)
  • content/docs/releases/v9.mdx (via @objectstack/spec)

content/docs/releases/ is RELEASE-OWNED (AGENTS.md "Documentation Guardrails"): release
notes are written centrally at release time, and a code PR that edits them is the exact PR
that guardrail exists to stop. They are still audited — read-only. If one of them is actually
wrong, file an issue or open a dedicated docs-only PR; do not edit it here.

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

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

Labels

documentation Improvements or additions to documentation protocol:ai protocol:ui size/s tooling

Projects

None yet

2 participants