Skip to content

protocol/kernel/config-resolution.mdx 教的 tenant/user config API 在仓库里零实现(config.setTenant() / setUserPreference() / objectstack_tenant_config #5888

Description

@os-zhuang

现象

content/docs/protocol/kernel/config-resolution.mdx 用可复制的 TS 示例教一套分层配置 API,其中至少三个符号在仓库里搜不到任何实现:

  • context.config.setTenant('stripe.apiKey', …, { tenantId: 'acme-corp' })(约 191 行)
  • context.config.setUserPreference('locale', 'de')(约 222 行)
  • 存储层 CREATE TABLE objectstack_tenant_config (tenant_id UUID NOT NULL, …)(约 206-212 行)

实测(origin/main,worktree HEAD 5c94f833c):

grep -rn "setTenant\b|objectstack_tenant_config" --include=*.ts packages core   → 0 hits
grep -rn "setUserPreference|config\.setTenant|TenantConfig" --include=*.ts packages core apps  → 0 hits(排除 *.test.ts 后仍为 0)

为什么值得登记

这页在 docs-accuracy-audit 的 scope 内(178 页之一),且是 protocol/kernel/** 目录 —— 该目录此前正因为审计 scope 列表烂掉而漏审两个月(#4781 / #4817 的历史)。页面本身是"protocol"位阶,读者(含 AI 作者)会当作平台契约照抄;而 objectstack_tenant_config 那张表连命名都与平台事实相反:平台的租户列是 organization_id(registry 注入,lookup 到 sys_organization),tenant_id 不是任何现存表的列名。

两种可能的处置,需要 triage 决定哪一种:

  1. 能力从未落地 → 这页整段是幻影能力,按 Prime Directive chore: version packages #10「never advertise a capability the runtime doesn't deliver」删除或改写成"planned";
  2. 能力换了形状/换了包 → 找到真实 API 后按实际签名重写(并顺带把 tenant_id 改成 organization_id 词表)。

我没有继续往下追第 2 种可能(不在 #5746 的文件面内),所以缺陷范围以"这页教的符号在本仓库不存在"为准,不断言它在别处也不存在。

来源

#5746content/docs/protocol/objectql/schema.mdx 多租户小节按代码重写)过程中扫 content/docstenant_id 残留时发现,按 Prime Directive #10 单独登记。

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions