现象
content/docs/references/index.mdx 位于 AUTO-GEN 区(《Documentation Guardrails》:content/docs/references/ 永不手改,由 packages/spec/scripts/build-docs.ts 重生成),但 build-docs.ts 对根 index.mdx 的处理是保留不重写(约 :658 附近的 preserve 逻辑;分类子目录的 index.mdx 会重生成,根的这份不会)。结果:一张没有任何 owner 的协议总表 —— 手改被守则禁止,生成器又不管 —— 只能烂。
实证(automation 段,#4738 时点)
| 行 |
问题 |
trigger-registry.zod.ts / TriggerRegistrySchema |
文件 #4499 已整删(约一个月前),行还在;TriggerRegistrySchema 这个名字从未存在过 |
sync.zod.ts / SyncSchema |
文件 #4738 已删;且 SyncSchema 从未是该文件的导出(实际是 DataSyncConfigSchema)—— 行本身在删除前就是错的 |
workflow.zod.ts / WorkflowSchema |
packages/spec/src/automation/ 下无此文件 |
etl.zod.ts / ETLSchema |
实际导出是 ETLPipelineSchema,ETLSchema 不存在 |
check:docs 全绿 —— 该文件不在任何 gate 的比对范围内(与 #4696「生成器按裸名索引」同族:docs 管道是双源/删除类变更的第三受害者,而这张表是管道里唯一既非生成物又禁手改的孤儿)。
建议方向(择一)
- 纳入生成:
build-docs.ts 像分类 index.mdx 一样重生成根索引的协议总表(保留手写导语,表格生成);或
- 纳入校验:
check:docs(或 protocol-map.test.ts 同款 link 校验)覆盖该文件,行内文件名/schema 名必须实际存在 —— 让烂尾变红而不是变旧。
方向 2 成本低但只保不烂,不保完整;方向 1 才是「declared = enforced」。
相邻
发现于 #4738(C13+C15 双源清账)实施过程,前锋只读边界,未认领。
Generated by Claude Code · session session_0176qgxgCXTJCUv4YFLtusP9
现象
content/docs/references/index.mdx位于 AUTO-GEN 区(《Documentation Guardrails》:content/docs/references/永不手改,由packages/spec/scripts/build-docs.ts重生成),但build-docs.ts对根index.mdx的处理是保留不重写(约 :658 附近的 preserve 逻辑;分类子目录的index.mdx会重生成,根的这份不会)。结果:一张没有任何 owner 的协议总表 —— 手改被守则禁止,生成器又不管 —— 只能烂。实证(automation 段,#4738 时点)
trigger-registry.zod.ts/TriggerRegistrySchemaTriggerRegistrySchema这个名字从未存在过sync.zod.ts/SyncSchemaSyncSchema从未是该文件的导出(实际是DataSyncConfigSchema)—— 行本身在删除前就是错的workflow.zod.ts/WorkflowSchemapackages/spec/src/automation/下无此文件etl.zod.ts/ETLSchemaETLPipelineSchema,ETLSchema不存在check:docs全绿 —— 该文件不在任何 gate 的比对范围内(与 #4696「生成器按裸名索引」同族:docs 管道是双源/删除类变更的第三受害者,而这张表是管道里唯一既非生成物又禁手改的孤儿)。建议方向(择一)
build-docs.ts像分类index.mdx一样重生成根索引的协议总表(保留手写导语,表格生成);或check:docs(或protocol-map.test.ts同款 link 校验)覆盖该文件,行内文件名/schema 名必须实际存在 —— 让烂尾变红而不是变旧。方向 2 成本低但只保不烂,不保完整;方向 1 才是「declared = enforced」。
相邻
发现于 #4738(C13+C15 双源清账)实施过程,前锋只读边界,未认领。
Generated by Claude Code · session
session_0176qgxgCXTJCUv4YFLtusP9