代码评审能回答"这段代码写得对不对",却回答不了另一个问题:它跑起来对不对?Cloudflare在2026年9月22日推出Worker Previews,给出的答案很直接——让每个Git分支都拥有一个接近生产的环境,自带代码、配置、URL、可观测性和状态。
![]()
这套东西的核心不是再造一个预发环境。它把分支模型从代码层延伸到了运行层:每个分支一套环境、一个URL,贡献者不用再挤在同一个共享预发站点上抢资源,生产环境见到这次改动之前,运行时行为已经先被验证过一遍。
Cloudflare在发布文章里点明了时机:智能体正在提交比以往更多的代码,改动越大,发布前需要测试的面就越大。环境这一层的作用,就是把这部分额外测试吸收掉,同时不拖慢智能体的节奏。
状态隔离才是真正保护你的部分
值得停下来看的设计细节是Durable Objects。它按单例模型运行:一个实例独占某个对象ID及其存储。如果Preview和生产共用同一个DO命名空间,一次失败的迁移或错误的schema变更就不只是读到旧数据,它可能直接改动正在服务线上流量的那个实例。
Cloudflare的做法是为每个Preview新建DO命名空间和Container应用,通过ctx.exports解析,代码保持一致,命名空间按环境区分。配置同理:变量、密钥、绑定、存储桶名设一次作为基础配置,每个Preview从它的副本起步,就像分支从main起步;需要时再按Preview覆盖,把迁移分支指向自己的数据库或测试用API密钥,不碰生产、不碰基础配置、也不碰其他Preview。
这套配置模型让"同时存在数百个Preview"变得安全,因为默认情况下没有两个Preview共享有状态资源。
可观测性跟着改动走,而不是跟着整个集群走
不能检查的预览环境只有一半用处。Workers Observability按Preview划分范围:事件、错误、链路追踪展示每个请求的完整生命周期,包括fetch调用、绑定操作、处理器调用,不用在生产流量或其他改动里翻找。
对智能体来说,这份限定范围的遥测就是反馈通道:通过Browser Run在无头浏览器里打开Preview URL,抓取渲染结果,把失败请求连到对应追踪,修补、重新部署、再验证,每一轮迭代都限定在分支内。
自定义域名补上了与生产行为之间的最后一段差距:OAuth重定向、Cookie、CORS、认证提供方在feature-login.previews.example.com上的表现,和它们在真实域名上一致;Cloudflare Access还能让私有预览只对已登录用户开放。测过登录流程的团队清楚这意味着什么——预发和生产回调URL不一致,是典型的"预发能跑、上线就崩"陷阱,这次是在平台层而不是配置层修掉它。
跑智能体的团队会看到什么变化
Cloudflare自己就在这个场景上试用该产品:其开源平台CloudflareOS负责把智能体连接到公司系统,每一个待评审的Gatekeeper改动都会部署一个隔离的Preview,因为Gatekeeper出bug可能泄露数据,或放行本不该被允许的操作。有些故障只有在OAuth回调、权限、审批流和应用状态一起运行时才会出现,这正是完整环境预览能压测到、单元测试压测不到的地方。
可以带走三种用法:
- 把Preview URL当作智能体自己的QA环境,打开、点一遍、查追踪,直到证据干净为止;
- 把Preview隔离当作爆炸半径边界,schema迁移、配置实验、冷启动调优都有碰不到生产状态的试验场;
- 涉及敏感流程的预览用Cloudflare Access保护起来,而不是指望没人发现它。
旧的"预览URL"现在叫Version URL,两者的区别是这次发布里不太显眼的主线:Version URL指向一个已上传的产物,但它仍然对着生产资源运行;Preview则是一个真正隔离的环境。如果已经在用Cloudflare Sandboxes做智能体执行,Worker Previews正好接在上一层——Sandboxes隔离智能体运行的地方,Previews隔离改动被验证的地方。两者都是控制面原语,合在一起,智能体写的代码变得可测,而不必先信任智能体。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.