rqi14
67767484ca
feat(recruiter-ui): UX overhaul — nav grouping, workflow order, deduplication
...
Squashed from 3 commits on feature/recruiter-ui-ux-overhaul.
Changes based on 4-way parallel subagent design review + copilot review cycle:
**Nav**: 4 labeled groups replacing flat list — 账号配置 (login/LLM first) → 职位配置 → 自动化执行 → 集成与工具. Rename debug tool to 调试与测试工具.
**BossAutoBrowseAndChat**: Remove broken cross-ref text claiming per-job greeting overrides exist in 职位配置 (they don't).
**BossChatPage + BossAutoSequence**: Expand job sequence table to 3 columns (enabled/runRecommend/runChat) and normalize missing sequence fields from old configs to default true — consistent with the automation runner's own `!== false` logic.
**BossDebugTool**: Move browser controls inside Tab A (Tab B LLM screening doesn't need the browser). Clarify Tab B label. Add ephemeral-rubric warning with link to 职位配置 for persistence.
**BossJobConfig**: Merge work-exp and salary min/max from 4 separate checkbox rows into 2 combined range rows. Change resume-filter section scope tag to warning-type.
**BossLlmConfig**: Move 各用途默认模型 from bottom to top with isLoading guard on empty-state alert.
**BossAutoSequence**: Add pre-flight navigation links to browse/chat config pages.
2026-05-10 22:03:06 +08:00
rqi14
2456c5e818
feat(boss): rubric 评分修复 — passThreshold 优先读 rubric 对象,注入 _scoring_note 到 prompt ( #4 )
...
- chat-page-processor: passThreshold 从 rubric.passThreshold 读取,不再硬编码 75
- llm-rubric: _scoring_note 存在时追加到 system prompt,确保两步评分法和例外规则对 LLM 可见
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-05-10 14:34:01 +01:00
rqi14
ee852733b1
Merge origin/master (反检测增强) into master
...
Brings in 反检测 commits (bf3132a , 076ac37 ) from origin:
- 验证码 in-loop 等待 + 指纹/行为加固
- 通用浮层启发式自动关闭
Conflict resolution: laodeng/index.js — kept registerNativeSource helper
from upstream merge and combined with origin's enhanced toString hijack
that supports __laodengExtraNativeSources path-based lookups.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-05-10 14:00:27 +01:00
rqi14
d8374093f3
Merge upstream/master into master
...
Brings in upstream changes (laodeng update, cookie-invalid handling,
read-no-reply reminder, runtimeStorage/stepStatus UI) while preserving
our boss recruiter automation features.
Conflict resolution: RunningOverlay/index.vue — kept our worker-log and
boss-auto-browse-progress handlers; adopted upstream's corrected type
string 'prerequisite-step-by-step-check' (was a doubled typo on our side).
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-05-10 13:49:29 +01:00
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
rqi14
076ac3754b
feat(boss): 通用浮层启发式自动关闭,减少手维护 selector
...
新增 dialog-dismisser.mjs:启发式识别 fixed/高 z-index 浮层,按文本/class/aria 匹配关闭按钮并 click。
接入治理公告、意向沟通、打招呼「知道了」、请求附件简历前等关键点;原硬编码 selector 仅作兜底。
白名单排除 resume-common-dialog / ask-for-resume-confirm / c-resume。
后续 Copilot + Codex review 修复:
- isVisible opacity 改 parseFloat
- 窄选择器优先扫描 + 5000 元素 cap 回退
- safeClickElement 返回 clicked:false + error 字段
- 浮层 click 后无进展检测(连续 2 次 signature 相同则终止)
- 打招呼「知道了」弹窗未出现时返回 GREETING_SENT_DIALOG_NOT_APPEARED 而非误报 OK
2026-05-10 19:48:36 +08:00
geekgeekrun
c4ebdb0882
Merge branch 'feature/ui'
2026-05-02 22:27:32 +08:00
geekgeekrun
f0f01ae317
ui-v0.17.4
ui-v0.17.4
2026-05-02 22:27:05 +08:00
geekgeekrun
9d3408d1f3
adjust rerun interval
2026-05-02 22:21:48 +08:00
geekgeekrun
432ac9c298
remove cookie file when find cookie invalid for gascwb
2026-05-02 22:20:11 +08:00
geekgeekrun
eb90a825a0
update laodeng
2026-05-02 21:31:19 +08:00
rqi14
3aeddd72f7
chore: 兼容 pnpm v10,移除过严的版本上限限制
...
- 放宽 engines.pnpm 从 >=8.15.9 <9.0.0 至 >=8.15.9
- 添加 pnpm.onlyBuiltDependencies 以满足 pnpm v10 构建脚本审批要求
- 迁移 pnpm-lock.yaml 从格式 v6 到 v9(pnpm v10 自动生成)
- 更新 CLAUDE.md,移除已过时的 proto run pnpm 绕行方案
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-01 07:04:52 +01:00
geekgeekrun
345d75ff98
show dock icon before call enter loginWithCookieAssistant
2026-04-05 15:56:39 +08:00
geekgeekrun
60ac324603
close browser when find bad cookie
2026-04-05 15:31:58 +08:00
geekgeekrun
dd76a856e8
show running overlay when enter config page
2026-04-05 14:44:18 +08:00
geekgeekrun
15e566b343
add stepStatusMapByStepId in runtimeStorage and logic for update related status on ui
2026-04-05 13:47:56 +08:00
geekgeekrun
e09e7ee936
add runtimeStorage
2026-04-05 12:50:51 +08:00
geekgeekrun
6c865252b2
enable main process hot update
2026-04-05 12:29:31 +08:00
geekgeekrun
3db4905cf6
shorten prerequisite-step-by-step-checkstep-by-step-check
2026-04-05 12:25:54 +08:00
geekgeekrun
a7e57c08f6
Merge branch 'master' into feature/ui
2026-04-05 12:25:46 +08:00
geekgeekrun
bf28af126b
ui-v0.17.3
ui-v0.17.3
2026-04-03 15:35:32 +08:00
geekgeekrun
09a1b4b918
Merge commit '675f77a408ef5e0bcc95b8825e6c7aff69a5b2d2'
2026-04-03 15:34:31 +08:00
geekgeekrun
9400d2bd6f
Merge branch 'feature/ui'
2026-04-03 15:31:19 +08:00
geekgeekrun
6c80147be2
enhance compatibility for page jumped after chat started; regard activeTimeDesc with empty string as 半年前活跃
2026-04-03 15:27:33 +08:00
rqi14
91b741394b
Merge pull request #1 from rqi14/feature/login
...
Feature/login 招聘端自动化 bug 修复 — 已测试,待合并
2026-04-02 15:56:58 +08:00
@Ginkgo0110
23c820d4af
fix(boss): 修复沟通页治理公告弹窗未关闭及新招呼 tab 选择器失效
...
BOSS_CHAT_PAGE_MAIN 有独立的浏览器启动逻辑,未调用 dismissGovernanceNoticeDialog,
导致弹窗一直阻挡后续所有操作;现将其导出并在 page.goto 完成后显式调用。
新招呼 tab 的 title 含动态未读数(如"新招呼(1312)"),精确匹配 [title="新招呼"]
永远失败,改为前缀匹配 [title^="新招呼"]。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 12:06:26 +08:00
@Ginkgo0110
8bfcb6d044
fix(ui): 用 path.resolve 规范化开发模式下的进程启动路径
...
run-common.ts 和 launch-daemon.ts 中对 process.argv[1] 应用 resolve(),
避免开发模式下相对路径导致子进程启动失败。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 11:50:33 +08:00
@Ginkgo0110
9123a4d416
fix(boss): 修正沟通页职位下拉选择器并重构未读会话批次处理
...
constant.mjs:将沟通页职位下拉选择器更新为 .dropmenu-label.chat-select-job;
chat-page-processor.mjs:未读会话改为每批 10 条循环处理,每批结束后
重新点击「未读」tab 刷新列表,并用 seenIds 防止重复处理。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 11:48:53 +08:00
@Ginkgo0110
70cc267fc4
fix(boss): 修复治理公告弹窗关闭 timing 问题
...
用 waitForSelector 替换 page.$(),等待弹窗异步渲染完成后再点击;
超时由 60s 缩短为 10s,避免弹窗未出现时长时间阻塞。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-02 11:48:06 +08:00
rqi14
1968e94062
Merge branch 'geekgeekrun:master' into master
2026-03-30 15:09:27 +08:00
rqi14
0bb94409a2
feat(boss): 登录后自动关闭治理公告弹窗;沟通页新招呼/未读 tab 初始化
...
- 新增 GOVERNANCE_NOTICE_DIALOG_* 选择器与 dismissGovernanceNoticeDialog(),
在 launchBrowserAndNavigateToChat 与 startBossAutoBrowse 登录后调用,避免阻塞自动化。
- 沟通页:先切「新招呼」再强制点「未读」刷新列表;switchToTab 支持 force 选项。
- 文档:recruiter_architecture §14 弹窗清单与 §6 常量更新;CLAUDE.md 补充登录后弹窗说明;
新增 plan/README.md、plan/chat_page_tab_navigation.md。
Made-with: Cursor
2026-03-27 12:04:13 +08:00
geekgeekrun-maintainer
b5b4cbe259
Enhance README with job stability discussion
...
Added clarification on job stability concerns and value creation.
2026-03-25 11:09:52 +08:00
geekgeekrun-maintainer
45c860ddbd
Enhance interview feedback and add new sections
...
Add sections on interviewer biases and interview process feedback.
2026-03-25 11:08:58 +08:00
geekgeekrun-maintainer
7a5c199889
Revise interview and process feedback text
...
Reworded interview invitation and process feedback sections for clarity.
2026-03-21 00:26:46 +08:00
geekgeekrun-maintainer
1447299354
Update README.md
2026-03-21 00:24:01 +08:00
geekgeekrun-maintainer
775b3467e5
Revise interview comments for improved expression
...
Updated interview feedback and comments for clarity and detail.
2026-03-21 00:22:39 +08:00
geekgeekrun-maintainer
882645771d
Enhance README with interview insights and usage
...
Added sections for interview feedback and application process.
2026-03-21 00:18:14 +08:00
rqi14
3fb7089c9e
recruiter: enhance chat page processing, boss browse flow, and UI improvements
...
- Improve chat-page-processor with better candidate handling and filtering
- Update chat-page-resume extraction logic
- Add new constants to constant.mjs
- Enhance boss auto browse main flow with verification detection and multi-job sequence support
- Expand boss chat page main flow with HR guide features
- Update BossAutoSequence and BossChatPage Vue components
- Add plan docs: current_status and recruiter_chat_page_hr_guide
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:07:59 +08:00
geekgeekrun
675f77a408
ui-v0.17.2
ui-v0.17.2
2026-03-20 01:41:35 +08:00
geekgeekrun
435fb170a2
fix sameSite property in cookies not supported by newer puppeteer
2026-03-20 01:40:12 +08:00
rqi14
95c1e54c66
recruiter: add boss auto browse/chat flows, webhook, and candidate tables
...
- Add recruiter-side automation core and run-core entry
- Extend sqlite-plugin with candidate info + contact logs
- Add UI routes/pages, IPC handlers, progress + log panel
- Document current status and plans under plan/
Made-with: Cursor
2026-03-18 17:37:24 +08:00
geekgeekrun
4048e3b323
ui-v0.17.1
ui-v0.17.1
2026-02-27 10:30:30 +08:00
geekgeekrun
e6489db6c4
Merge branch 'feature/ui'
2026-02-27 10:30:09 +08:00
geekgeekrun
3f08481657
fix style of user agreement
2026-02-27 10:29:46 +08:00
geekgeekrun
97c0f3dfaf
ui-v0.17.0
ui-v0.17.0
2026-02-27 01:03:58 +08:00
geekgeekrun
80158682b0
Merge branch 'feature/ui'
2026-02-27 01:03:06 +08:00
geekgeekrun
bf1d9023a6
Merge commit 'fff8ca7dff95454ffba05566c5252a1625cf1bc2'
2026-02-27 01:02:49 +08:00
geekgeekrun
b7ffe30ee0
enhance style of first run readme window
2026-02-27 00:47:46 +08:00
geekgeekrun
f82987bd76
add frame for almost window
2026-02-27 00:47:15 +08:00
geekgeekrun
57bab1900c
enhance gtag
2026-02-27 00:13:57 +08:00