Astra 跨过的是哪一道门槛

早期 CAPTCHA 近似一次静态推理:看图片、恢复字符或识别目标,输出答案任务就结束。Computer Use 的输入输出关系完全不同——动作会改变下一次输入。停车关卡里,画面能看到汽车,却看不到模型前几步为什么把车开到这里;节奏任务中,环境在模型推理期间仍在变化。GUI Agent 因此必须维护一个隐含的状态估计,把已执行动作与新的视觉反馈拼成连续世界,并补上一层容易被忽略的模块:动作后的状态校验。没有这一层,单步误差会沿任务链持续放大。

正式成绩比演示更有说服力

  • ScreenSpot-Pro(语义到坐标的 grounding):Astra 无工具条件下 92.7%,GPT-5.6 Sol 为 76.9%
  • OSWorld 2.0(长程交互):Astra 72.6%,GPT-5.6 Sol 为 65.7%
  • 模拟任务耗时从约 75 分钟降到约 40 分钟;动态界面存在状态过期(state staleness)问题,更快的感知—动作循环本身就是控制稳定性的一部分

技术边界也要说清:Sharif 公开的视频没有披露完整 harness,也没有说明是否严格限制为 pixel-only,因此 48/48 本身不能当作严谨的纯视觉 benchmark;ScreenSpot-Pro 与 OSWorld 的正式成绩才是可比较的证据。

现代 CAPTCHA 早就不把答案当成完整证据

reCAPTCHA v3 由浏览器针对 login、register 等 action 请求 token,后端验证后得到风险 score,公开机制可确认的是它基于交互上下文的评分而非一次可见图片题的二元结果。Cloudflare Turnstile 把前端测量与后端决策拆得更清楚:浏览器执行轻量 JavaScript challenge(计算挑战、空间证明、Web API 探测、浏览器差异与行为信号),生成 token 后网站后端仍必须调用 Siteverify 验证,token 有效期 300 秒且只能兑换一次;即便 bot 完成 challenge,其他 bot 信号仍可能导致 token 无效。攻击者伪造「验证成功」的页面提示没有意义,因为业务服务器拿不到可通过验证的有效结果。

真正在变的判断条件

  • 防线继续后移:从图片题到浏览器信号(JA3/JA4 等 TLS 握手特征、JavaScript Detections),再到服务端验证
  • Cloudflare 的 Web Bot Auth 基于 HTTP Message Signatures:Agent 生成 Ed25519 密钥对并用私钥签名请求,公钥通过公开目录发布,服务器据此验签并检查请求是否被篡改
  • 授权成为另一层问题:用户把有限权限委托给 Agent(如允许改配送日期但不允许取消订单),主 Agent 调用子 Agent 时下游权限还应继续收窄

Cloudflare 文档目前仍明确表示 Selenium、Puppeteer、Playwright 等自动化框架不支持用于生产 challenge,但它也说明暂未维护完整的 nonce 重放数据库——这说明 Agent 身份基础设施仍在快速建设阶段,短有效期暂时承担着主要防重放作用。

二十多年前 CAPTCHA 问的是「屏幕对面有没有人」;机器也能稳定使用这块屏幕之后,问题变成了「这台机器是谁、谁把权限交给了它、这一次请求被允许做到哪里」。