Files
geekgeekrun/packages
rqi14 bf3132a74b feat(boss): 招聘端反检测增强 — 验证码 in-loop 等待 + 指纹/行为加固
## 变更汇总

**核心修复**:验证码出现时不再 crash → 关浏览器 → 3 秒重启(连环触发),改为在主循环内等待用户手动完成(最长 5 分钟),完成后无缝继续。

**行为层**(默认开启):
- ghost-cursor fail-fast(防静默降级为裸 page.click())
- 点击落点在按钮中心 60% 区域内随机化 + ~50% 概率 micro-overshoot
- 每次会话启动时初始鼠标位置随机化(三处 launch 全部覆盖)
- 每位候选人处理后做一次 checkpointRiskControl;软风控(风控/操作频繁)和硬验证码均可检测,均走 in-loop 等待

**指纹层**(默认开启):
- Launch args:--lang=zh-CN、--disable-blink-features=AutomationControlled
- Canvas hook marker 名(window.__cct_<random>)每次会话随机,[canvasHook] 日志默认静默
- fillText wrapper 通过 laodeng.registerFakeNativeSource 注册到 toString 伪装表

**指纹层**(可选,默认关):
- boss-recruiter.json advanced.persistProfile:持久化 Chromium profile,BOSS 看到「老设备」
- UI 加「高级反检测(实验性)」开关,IPC 支持保存

**关联修复**(Copilot + internal review 发现):
- RISK_CONTROL 软风控文案覆盖到 detectRiskControl
- window.__canvasCapturedText 直读路径全面迁移:新增 peekCapturedText(不消费的计数查询)、getResumeData 接收 getCapturedText closure
- persistProfile=true 时两处 launch 均跳过 setCookie

新增文件:risk-detector.mjs、launch-options.mjs
不影响应聘端(geek-auto-start-chat-with-boss)。
2026-05-10 20:45:31 +08:00
..