在做 #5087 时路过发现,与该 issue 无关,单独记录。
现状
content/docs/protocol/kernel/config-resolution.mdx(「Example 3: Development Overrides」,约 802-827 行)的示例写着:
email: { provider: 'sendgrid', fromAddress: 'noreply@company.com' }
- 开发覆盖:
email: { provider: 'console' }
- 以及
OS_EMAIL_PROVIDER=mailhog
这三处都不对应任何真实配置面:
影响(观察类)
纯文档面。这一页讲的是配置层叠机制,示例只是载体,今天不会有人因为它而线上出故障;但复制粘贴的作者(尤其 AI 作者)会得到一份跑不起来的 email 配置,而错误要到运行时才出现。按 Prime Directive #10「never advertise a capability the runtime doesn't deliver」记录。
建议
把示例换成真实存在的键与取值(例如生产 provider: 'resend' + defaultFrom,开发覆盖 provider: 'log',env 覆盖 OS_EMAIL_PROVIDER=log),或改用与 email 无关的、机制上等价的示例。属纯文档 PR,不要挂在代码 PR 上。
在做 #5087 时路过发现,与该 issue 无关,单独记录。
现状
content/docs/protocol/kernel/config-resolution.mdx(「Example 3: Development Overrides」,约 802-827 行)的示例写着:email: { provider: 'sendgrid', fromAddress: 'noreply@company.com' }email: { provider: 'console' }OS_EMAIL_PROVIDER=mailhog这三处都不对应任何真实配置面:
EmailServiceConfig(packages/spec/src/system/email-config.zod.ts)的键是defaultFrom,没有fromAddress;log/resend/postmark(plugin-email: 实现 SMTP transport —— 设置页可选 SMTP 但后端无实现 #5087 后加smtp),console与mailhog都不存在 —— CLI 会把未知 provider 交给makeTransport,直接抛「unknown provider」;sendgrid目前也无后端实现(另见 plugin-email: SendGrid / Amazon SES 设置项同样后端无实现 —— #5087 的同形缺口 #5094)。影响(观察类)
纯文档面。这一页讲的是配置层叠机制,示例只是载体,今天不会有人因为它而线上出故障;但复制粘贴的作者(尤其 AI 作者)会得到一份跑不起来的
email配置,而错误要到运行时才出现。按 Prime Directive #10「never advertise a capability the runtime doesn't deliver」记录。建议
把示例换成真实存在的键与取值(例如生产
provider: 'resend'+defaultFrom,开发覆盖provider: 'log',env 覆盖OS_EMAIL_PROVIDER=log),或改用与 email 无关的、机制上等价的示例。属纯文档 PR,不要挂在代码 PR 上。