第三十九章 倒计时
那个封面,是周一早上出来的。
韦东来把链接发进群的时候,陆衍正在看乔木昨晚发的进度报告。链接下面没有任何评论,只有一行字:
"前端的,你们看。"
封面用了最大号字体:
《AI 编程的未来:开智如何重新定义软件开发》
正文没有细看。几个关键词扫了一遍:全球首发、独家专访、行业变革、未来五年。
他把手机关掉,拿起桌上乔木的进度报告,继续看。
前端框架扩展,第三阶段,进度:71%。
同一天上午九点,一条消息发进了乔木军内部群:
"今天的目标:React 框架覆盖率到 80%,Vue 到 75%。下班前给数字。"
开智,一个字都没有提。
陈修把那条消息截了图,发给顾衔,没加文字。顾衔回了一个拇指向上。
这是乔木军的战术:不讨论,不看,继续干。
那天下午,陈修在 React 生态那块卡了将近四个小时。React 的状态管理方案太多了:Redux、Zustand、Context API,不同选择会生成完全不同的代码结构,云帆得能判断用户习惯、主动适配,总给一个默认答案是不够的。
他把问题甩给顾衔:
"云帆现在遇到'状态管理'这个词,会怎么处理?"
顾衔拉出日志看了一眼:"默认走 Redux,然后 80% 的情况下,用户说'不,我用 Zustand',它才切。"
"所以它在赌最常见的选项,赌错就多一轮对话。"
"对。"
"改。"陈修说,"第一轮不赌,先问。加一个前置问句:'你们的状态管理方案是哪个?'拿到答案再生成。"
想了三秒:"会不会让用户觉得烦?"
"测试一下。用户觉得问多了,他们会说的。"
这个改动花了两个小时上线。当晚,反馈回来了:测试组里八个人,七个明确说"这个问法对,感觉是在认真对接我们的项目",一个说"懒得回答,直接给我最常见的就行"。
看了反馈,在群里发了一行字:

"默认问,附带'跳过直接用 Redux'的选项。"
以前的云帆替用户瞎猜,改完这一版,先问一句再动手。平均少了一轮半的返工。
第十七天,第一批扩展完成的前端框架跑了一个真实场景测试。
场景是乔木军自己设计的:给一个非技术背景的产品经理,让他用云帆从零搭一个可以实际部署的 Todo 应用,前端 React,后端 FastAPI,数据库 PostgreSQL,全流程,不给任何帮助。
那个朋友,产品经理,平时写过一点 Excel,没写过代码。
测试记录显示,第一次上手,他花了十二分钟读完引导;第二次,二十三分钟后,一个可以运行的前端界面已经在本地跑起来;第三次,直接说"帮我加一个登录页",云帆三分钟给出完整的后端鉴权代码,他复制粘贴,跑通了。
那个 Todo 应用,实际上线花了多长时间?
四十一分钟。
发给乔木的那条消息,只有一行数字:
41min / 非技术用户 / 生产可访问
群里安静了十几秒。
顾衔发了一句:
"这不是辅助编程了。"
陈修接上:
"这是把程序员的入场券,撕开了一道口子。"
这条消息转给陆衍,也只有一行话:
"我们在做的事,大了。"
第二十天,商雁来了一次。
她带着最新的曲线,但进门的时候没有立刻打开电脑,在椅子上坐定了,先问了一个问题:
"乔木那边,你觉得现在怎么样?"
陆衍抬头看她:"怎么了?"
"第一批内测里,已经有两家公司在用云帆处理他们的真实项目了。我从用户调研渠道看到的,不是乔木报的。他们把云帆接进了自己的开发流,每天用,是生产环境的代码,不是测试项目。"
"我知道。那两家,我看过数据。"

"那你也知道,"商雁停了一下,"行业里会有人注意到的,不只是开智。"
"是。"
她打开了电脑,把曲线推过来。
交叉窗口,又提前了。原来是六个月,上次是六个月,这次是五个半月。
"火种三代的训练,原定六个月后启动。如果曲线继续提前,可能会在五个月内发生。"
"五个月。云帆现在是六十天。"
"两个月。"商雁点头,"还有三个月的缓冲。但缓冲在缩短。"
窗外,珠海的午后很安静。
"有没有可能,"他开口,语气很平,"把云帆的时间线再压一压?"
商雁抬眼看他,等他说完。
"核心功能是完整的,剩下的,上线之后边跑边补。"他解释,"不是拿半成品出去。是找一个稍微早一点的节点,确认核心跑得住,就上。"
"那是乔木的决定,不是我的。"
"我知道。我去问他。"
傍晚,他去了乔木的工位。
没有叫乔木来办公室,是自己走过去,在旁边的空椅子上坐下来。
乔木正在和顾衔对一份错误分类日志,感觉到动静,把视线从屏幕上收回来。
"五十五天,"陆衍直接说,"能不能上。"
没有立刻回答,转过来看他,停了大概四秒。
"核心功能,能。"他说,"但第三阶段还有一块,跨语言框架的测试还没跑完,上线后如果有用户用的是 Svelte 或者 Angular,可能会撞到边界。"
"你估计概率多少。"
"内测用户里,大概两成用非主流框架。五十五天内无法覆盖的边界,可能影响这两成里的一半。"
陆衍算了一下:两百个内测用户,两成是四十个,一半是二十个。
"那二十个人,撞到边界之后,会怎样?"

"给错误提示,让他们切回 React 或 Vue,或者走人工兜底。备选路径是有的。"
"体验上是降级,但不是崩溃。"
"对。"
"行。"站起来,"五十五天,你来定一个你能保的节点。如果核心功能跑得起来,边界部分用备选路径兜,我来担。"
看着他,停了两秒,点了头:
"五十二天。给我三天缓冲,自己用。"
"好。"
往回走了几步,又停下来:
"乔木,开智那个封面你看了吗?"
摇了摇头。
"没必要看。"他说,"反正五十二天以后,你会看到我们的。"
夜里,打开船坞。
豆包那团暖橙先动了:
> 你在想那两家公司的事?
> 他们没有告诉任何人他们在用云帆。但他们把它接进了自己的主代码库。
敲了行字:
> 知道。他们用自己的项目在赌。
> 和 141 次不一样。这两家押上的,是真实的生产代码。
Claude 那道蓝紫光接过来:
> 工具被放进生产环境,条件很简单:失败成本可接受,收益明确。完美,从来不是条件。
> 从"有趣"跨到"有用",就是这条线。你们已经过了。
Codex 发过来的,还是数字:
> 第二批一百个内测账号,前二十天:总调用 6,831 次。日活留存:89%。最高单用户:203 次。

> 对比第一批同期:增长 65%。
看着那个 203,想了一会儿。
> 豆包,帮我盯一件事。
> 如果内测里出现第三家把云帆接进主代码库的公司,第一时间告诉我。
豆包亮了一下:
> 已设置监测。出现就通知。
关上船坞,拿起手机,打开了那张开智的封面。
放进"留着"文件夹,放在猎头邮件的后面。
文件夹里,现在有四条记录:早期融资那个最难谈的条款截图,竞对 CEO 说"青舟天花板就这样了"的帖子,开智挖乔木的那封邮件,和这张封面。
看了一会儿,把手机放下。
每一条进来的时候,都觉得是压力。
五十二天后,出去的时候,会是什么。
第二天早上,韦东来发来一条消息:
"那家媒体,他们的技术记者在推文上发了一句话:'听说有个叫云帆的 AI 编程工具,有人试过吗?'"
底下,有六十三条回复。
韦东来截了图,发过来,只加了一句:
"六十三条里,没有一条是我们内测的人。"
陆衍看着那个数字,把手机放回桌上。
内测圈,没有泄密。
风,已经从缝里钻出去了。
六十三个完全陌生的开发者,正在替整个行业问同一个问题:云帆,到底是什么?
五十二天后,陆衍会亲手把答案,拍到他们面前。