AskaEth
93c5a4c46f
CI / Backend (build / vet / test / cross-compile) (push) Has been cancelled
CI / Frontend (tsc + vite build) (push) Has been cancelled
fix(browser): 启动失败要说出原因;预算耗尽 ≠ 浏览器坏了
真机现象:主人看到 Chrome 窗口内有横幅(他读作「不支持接受的参数」),日志只有
一句「等待调试端口时被取消: context deadline exceeded」,看不出是谁的错。
三件(本片):
- 接住子进程 stdout/stderr(有界:前 4 KiB / 上报 12 行,只缓存不输出)⇒ 失败时
打一条带 exe / argv / chrome_output / chrome_output_bytes 的 WARN;成功只记字节数
(不刷屏)。
- 三种启动失败在错误里分开:① 进程立刻退出(profile 被占用)② 等端口超时
③ 调用方预算耗尽(ctx 已结束 ⇒ **根本不 spawn**)。③ 与 ② 用两个截止时间比大小
区分 —— 顺带修掉一个老缺陷:原来 ctx 一结束就报「等待调试端口时被取消」,而那
几乎总是我们自己的 30s 用满,现被正确归到 ②。
- 降级档不再被**已耗尽**的轮预算连坐:如实报「预算耗尽 ⇒ 未尝试浏览器渲染,
这不是浏览器故障」,**不许把"没试"说成"试了失败"**。plugins/tools/io/bodyfetch.go
一字未动(fetchedBy / browserError 语义原样),只在**发起方**决定要不要发起。
对主人那条横幅的结论(有据,非推测):那是 Chrome 的 **bad-flags 警告栏**,触发者
是 `--disable-blink-features=AutomationControlled` —— 它明确在 Chromium 的 kBadFlags
名单里(bad_flags_prompt.cc 列了 kDisableBlinkFeatures/kEnableBlinkFeatures),本机
Chrome 154 zh-CN 的文案是「您使用的是不受支持的命令行标记:$1。稳定性和安全性会
有所下降。」;而「不支持接受的参数」在 Chrome 的 zh-CN/en-US 资源与二进制里**零命中**
⇒ 是意译。⚠️ 该参数是 design/28 §2 要求的(掩盖 navigator.webdriver)⇒ 横幅是
**设计取舍的视觉副作用**,去掉它才消失(但会暴露自动化特征)。登记待主人裁决。
验收(主会话复跑 + 亲自变异):go build ./... + 两包 vet 绿;browser 与 cmd/cyrene
两包测试绿;我用 -overlay 去掉 cmd.Stderr 接线 ⇒ TestDial_ReportsChromeOutputAndArgvOnLaunchFailure
变红(chrome_output="" chrome_output_bytes=0)。
⚠️ 未部署:跑着的产物不含本片,要等下次 build + restart。
2026-10-07 10:37:33 +08:00
..
2026-09-05 23:09:26 +08:00
2026-10-04 13:58:18 +08:00
2026-10-05 12:53:17 +08:00
2026-10-05 13:50:29 +08:00
2026-10-05 13:50:29 +08:00
2026-09-30 08:51:38 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 16:55:22 +08:00
2026-10-03 20:12:29 +08:00
2026-10-04 16:58:06 +08:00
2026-10-06 08:04:12 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:39:33 +08:00
2026-10-04 16:39:33 +08:00
2026-10-03 15:22:03 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 20:12:29 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 14:30:26 +08:00
2026-10-03 19:54:22 +08:00
2026-10-04 16:58:06 +08:00
2026-09-08 23:20:12 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 21:33:40 +08:00
2026-10-04 16:58:06 +08:00
2026-10-06 18:46:58 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 11:30:39 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 14:12:23 +08:00
2026-10-06 14:12:23 +08:00
2026-10-07 10:18:58 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 15:59:12 +08:00
2026-10-06 15:59:12 +08:00
2026-10-07 09:56:37 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 15:59:12 +08:00
2026-10-05 12:12:31 +08:00
2026-10-05 12:12:31 +08:00
2026-10-07 10:37:33 +08:00
2026-10-07 10:37:33 +08:00
2026-10-07 09:34:44 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 20:25:16 +08:00
2026-10-06 21:16:23 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:16:23 +08:00
2026-10-06 21:48:50 +08:00
2026-10-05 13:54:57 +08:00
2026-10-05 13:54:57 +08:00
2026-10-04 12:49:40 +08:00
2026-10-04 13:07:52 +08:00
2026-10-04 16:58:06 +08:00
2026-10-05 14:10:24 +08:00
2026-10-05 16:19:32 +08:00
2026-10-04 12:07:40 +08:00
2026-10-04 19:25:00 +08:00
2026-10-06 15:59:14 +08:00
2026-10-06 15:59:14 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 17:57:08 +08:00
2026-10-04 17:57:08 +08:00
2026-10-04 21:01:30 +08:00
2026-10-04 21:01:30 +08:00
2026-10-05 16:19:32 +08:00
2026-10-05 16:19:32 +08:00
2026-10-04 19:55:18 +08:00
2026-10-07 09:34:44 +08:00
2026-10-04 19:41:44 +08:00
2026-10-04 19:41:44 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 19:41:44 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 08:04:12 +08:00
2026-10-06 08:04:12 +08:00
2026-10-05 11:29:36 +08:00
2026-10-05 11:29:36 +08:00
2026-10-06 09:03:57 +08:00
2026-10-07 10:08:19 +08:00
2026-10-07 10:18:58 +08:00
2026-10-05 15:38:53 +08:00
2026-10-07 09:59:56 +08:00
2026-10-06 21:16:23 +08:00
2026-09-07 13:43:18 +08:00
2026-10-05 13:23:52 +08:00
2026-10-05 13:23:52 +08:00
2026-10-04 22:16:26 +08:00
2026-10-04 22:16:26 +08:00
2026-10-06 09:04:04 +08:00
2026-10-05 22:38:20 +08:00
2026-10-06 09:04:04 +08:00
2026-10-06 08:04:12 +08:00