7.6
深览指数
科技人人都是产品经理·阿基拉de_Akir··AI 生成

从「规范写了没人看」到「机器守住字典引用」

本文提出一个核心问题:设计规范写在文档里,但前端工程师还是会在两周后走查时发现有人自创了颜色值,因为规范防不住不看规范的人。作者主张这不是人的问题,而是机制的问题,核心解决方案是引入「语义令牌」与「语义字典」作为 Schema-As-Code 治理框架的组成部分,将「必须引用已注册项」这条约束从人工审查转变为机器在 PR 阶段自动阻断。文章详细定义了语义令牌的五个维度,并重点区分了语义令牌(意图指针)与 Design Token(实现值)的本质差异,最后给出了一个三层机器防线(加载验证、拦截强度测试、持续追踪)的设计方案。适合关注设计系统工程化、前端架构治理、以及 AI 约束接口的从业者阅读。原文 ↗

核心观点
  • 「规范防不住不看规范的人」不是人的问题,是缺乏机器校验机制的问题;核心解法是将「引用必须来自字典注册表」的约束,从写在文档里变成机器在 PR 提交时自动阻断。
  • 语义令牌不是 Design Token 的别名,而是「意图的指针」;契约中所有 *_token 字段必须引用字典注册表,禁止硬编码任何平台相关的实现细节。
  1. 01一个真实的案例:前端工程师在两周后走查发现有人自创了 error 直接用红色,但字典里根本没注册,暴露了规范编写与执行之间的断层。
  2. 02语义令牌表定义了五个维度:visual_mapping、user_action、llm_constraints、immutable_boundaries、description,其中 color_token 引用的是字典绑定(如 status.critical),而非色值(如 #cf1322)。
  3. 03如果 color_token 写死为色值,当设计系统升级主题(深色模式、品牌色调整)时,契约不会跟着变;而 status.critical 作为字典绑定,可以在不同主题下解析为不同色值,同时保持语义约束不变。
  4. 04motion_token 应写为语义描述「pulse.red.urgent」,而非具体 CSS 动画;其语义意图是「最高档注意力强制」,由前端按平台(Web、移动端、AI)自行实现。
  5. 05字典引用的三类违规都可被机器检测:未注册引用(字典里没有的词)、结构层级错位、版本不一致。它们都能通过 YAML 语法检查,只有对照注册表才能判定非法。
  6. 06机器防线设计为三层:第一层是契约加载与解析验证(确保语义令牌与不可变边界被完整解析);第二层是编译前置校验(对五类违规逐项验证,失败则阻断并输出具体错误路径);第三层是引用关系持续追踪(观察每份契约被哪些 Prompt 前缀引用,字典版本演进后旧契约可继续引用旧版本,弃用项保留 90 天)。
反方 / 局限
  • 作者承认,当前演示环境覆盖了第一层(加载验证)和第三层的一部分(单文件链路可跑通),但第二层(拦截强度测试)的批量验证和对抗用例库属于工程管线 v1 的交付范围,尚未落地。
  • 文章提出的方案高度依赖工程团队实现「CI 自动校验」和「生产环境接入」,但作者并未给出这些工程的实现细节或接口设计,仅给出了「推演条件」和「设计目标」。
16 分钟 · 3 卡片 · 6 资料
读原文 →

前置背景

平行视角

延伸追问