铅笔、墨水、上墨
编辑主权怎么运作——模型可以覆盖什么、不可以覆盖什么,以及重生成撞上你锁定的字段时会发生什么。
三种状态,它们是“在这里反复迭代是安全的”这句话的全部依据。
- 铅笔 —— 模型起草的。任何东西都可以覆盖它。
- 墨水 —— 你改过的。标记为手写,界面上看得出来。
- 上墨 —— 你锁定的。任何生成、修订或脏传播都不会改它。 只有你能解锁。
为什么由引擎强制,而不是靠约定
最省事的做法是约定:生成代码礼貌地检查一个标志位。 这种做法能撑到第二条代码路径忘掉为止。
所以它是被强制的:一条会写到“已锁定且由用户撰写”的字段上的代码路径, 过不了它自己的测试。这条规则没有礼貌版,也没有管理员绕过—— 不是因为绕过难做,而是因为一个可能悄悄改掉你文字的工具, 会逼你在每次运行之后重读一遍,而到那时它已经不替你省任何事了。
你看到的样子
改过的字段标着手写。锁定的字段带一个 INK 印,解锁之前打不进字—— 一个默默接受键入、事后又还原的锁,比没有锁更糟。
重生成撞上锁的时候
它绕开,并且告诉你。
每次运行之后的改动回顾里会列出本次会话改了什么,并单独计数有多少个 你锁定的字段被这次运行碰上了——也就是它想改、但改不动的那些。 这个计数才是有用的信号:数字偏高通常意味着你锁的东西和正在重生成的东西 彼此不同意,而模型每跑一次都会再顶一次,直到你裁定哪一边是对的。
该锁什么,什么时候锁
早点锁,锁那些丢了会让你恼火的东西:
- 一个角色的声音,在它终于对了的时候。声音在多次重生成之间漂移, 是一群角色不再像同一批人的最常见路径。
- 名字与术语,只要你已经在别处用过——美术里、代码里、pitch 里。
- 一个你已经确定其情绪形状的节拍,免得围绕它的重构把它悄悄压平。
不该锁的:任何你还没想好的东西。锁在一个未定的字段上, 会让之后每一次运行都变成一场争论。
解锁
解锁、改、再锁上。解锁是一个明确的动作、点一下, 而且之后那个字段仍然标着手写——不会因为锁松开过一瞬, “谁写了什么”的记录就蒸发掉。
它跟着导出一起走
来源与锁定状态是产物的一部分,不是界面的一部分。它们在文件里、在 git 历史里、 在导出的仓库里。半年后你回来,“哪些是你写的、哪些是模型起草的”这份记录还在。