Wink Pings

地铁站能折起来,咖啡豆会走路,靠的是一张状态图

April 用 /statechart 生成状态逻辑、用 Colorfigures 画图和动画,做出了五张能点的等距插画。社区里有人拿同一套工具画奶茶店,有人顺手抓到了 bug。讨论里最有价值的部分,是状态图该从代码倒推,还是规格先行。

地铁站的地板折起来,一层压一层,像手风琴。站台上的人走来走去,头顶标着 street look for the big M、platform mind the gap。咖啡豆从枝头掉进篮子,过烘焙机,过磨豆机,最后躺进纸杯。周六下午被画成一枚骰子,掷到几点就过几点。农场里每只动物都会说话,点一下就开始讲。

这是 April 做的五张等距插画,放在 april-zhu.com/fieldnotes,每张都能点、能玩、有动画。

她没说这些是纯手画的。流程是两步:/statechart 生成每个场景的状态逻辑,Colorfigures 负责画图和动画。前者来自 lauren 维护的开源插件集 pstack,后者是 April 自己写的免费技能。

分工也清楚。有人问她,咖啡豆那张里人物走动是谁做的。她回:状态逻辑来自 /statechart,绘画和动画来自 Colorfigures。

lauren 随后在推上征集:把你用 /statechart 做的图都发出来,顺便展示 /create-formal-verification 抓到的 bug。

Kevin Ngo 交的作业是奶茶店。排队、点单、付款、制作、叫号、到手,一条线画完。另一张是营业时间轴,早上七点备料,晚上九点打烊。图用 JavaScript 画,开源,底层是 Claude Opus 5.5。

这是一张关于点单过程的插图。图中展示了一个奶茶店内的点单流程。在左上角有一个穿着红色帽子和围裙的工作人员站在收银台后面,收银台上有一台计算器和一些硬币。右上角显示了顾客排队等待的场景,有三个卡通人物站在一起。中间部分展示了从排队到取饮料的过程。"in line"表示排队中,"you order"表示顾客点单,"ordered"表示已点单,"you pay"表示付款,"paid"表示已付款,"being made"表示制作中,"your number is called"表示叫到了号码,"ready"表示准备好,"you pick it up"表示你可以去拿饮料了,最后是"in your hand"表示拿到手上的状态。整个流程通过箭头连接起来,形成一条线性的过程图示。

这是一张描绘一家茶店一天营业流程的手绘插图。图中展示了一个从早上7点到晚上9点的营业时间表,以及店铺在不同时间段的状态变化。首先,在顶部中央位置有一个时钟显示时间为7点,下方标注着“getting ready”,表示准备工作正在进行中。接着,画面中心部分展示了店铺的外观,上面有红色的遮阳篷和蓝色的窗户框。窗户上写着“open”字样,表明店铺已经开门迎客。“open”下面还有一行小字:“tea and pearls ready”,暗示店内已准备好供应茶叶和珍珠奶茶。在画面的左下角,有一株绿色的植物装饰物,为整个场景增添了一丝生机。右下角的厨房区域里,可以看到一个炉灶和一个水壶,旁边还有一个装满水的桶和一个拖把,这些元素共同构成了一个温馨的家庭氛围。此外,图片中还包含了其他一些细节元素,如太阳、月亮、星星等天体图案,它们分别位于画面的右上角、右下角和中下部偏右的位置。这些元素的加入使得整幅画作更加丰富多彩且富有层次感。

img

img

Fanfulla 在下面留了一句:从没想过奶茶店能成为这么好的状态机。

这句话点到了要紧处。状态机听起来是编译器、电梯、交通灯才配得上的东西。奶茶店把它拉回日常:一杯饮料从下单到取走,中间每个环节都有状态,每一步都有条件,和电梯没什么两样。

讨论很快从好看转向了边界。

Krrish 问,/statechart 是从一段纯英文流程开始,还是必须有代码库可读?

Max Petrusenko 的回复值得抄下来:如果状态图是从写完的代码里画出来的,那它只会和那份代码保持一致。bug 冒头的地方,是规格先写好的时候。

img

这句话把两种画法分开了。一种是把现有代码翻译成图,图再精致也只是代码的影子,代码错,图跟着错。另一种是先写规格,再让代码去对齐图。一种只是可视化,另一种才谈得上验证。

Morgan 的回复是另一面:他说自己完全不知道在干嘛,但工具找到了一个 bug。

img

工具的门槛低到不用懂也能用,对普及是好事,对判断是另一件事。你不知道它为什么对,也就不知道它什么时候错。

swaglord420 问得更直接:为什么 formal verification 不工作?贴了一张报错截图。

img

底下还有人贴了自己的草稿和结果。有人做了个快速原型测试技能,有人从零画出一张,有人只是路过说了句我想试试。

img

img

img

回到 April 那五张。地铁站的折叠楼层她说能套到别的建筑上。这话不假,状态逻辑和视觉表现拆开以后,换一个场景,换一套皮,骨架可以复用。

工具本身解决不了顺序问题。先写规格,再让代码对齐,图才有验证的价值。反过来,图只是给代码拍了张好看的照片。

发布时间: 2026-11-01 02:34