Skip to content

修复:建立可审计的投递状态链 - #39

Open
damingishere-coder wants to merge 2 commits into
codex/p0-2-data-migration-safetyfrom
codex/p0-3-delivery-state-safety
Open

修复:建立可审计的投递状态链#39
damingishere-coder wants to merge 2 commits into
codex/p0-2-data-migration-safetyfrom
codex/p0-3-delivery-state-safety

Conversation

@damingishere-coder

Copy link
Copy Markdown
Owner

目标

完成 P0.3 投递真实性与幂等回写:把“点击过”与“平台明确确认”分开,建立可审计、可恢复的投递状态链。

主要改动

  • 新增 Flyway V6 delivery_attempt,统一 REQUESTED / CONFIRMED / FAILED / UNKNOWN
  • 后端生成 requestKey,回调按平台、profile、岗位、业务键和最新 attempt 做事务 CAS
  • 明确平台证据才允许 CONFIRMED;无证据、响应丢失或回写失败进入 UNKNOWN
  • Boss/智联支持恢复原请求、人工对账和显式重试;重试生成新 requestKey
  • 批量结果逐条返回 outcome/evidence/persisted,部分失败不再报告整体成功
  • 51job/猎聘停止无证据写 delivered=1,回写失败升级告警并阻止静默重复动作
  • 清空 Boss/智联分析不再重置自增 ID,避免历史 attempt 污染新岗位

验证

  • 后端:124 tests,0 failures,0 errors,3 skipped
  • 数据库隔离演练:通过;真实 db/getjobs.db SHA256/size/mtime 未变化,无 wal/shm/journal
  • 前端 lint:0 errors,35 warnings
  • 前端 typecheck/build:通过,13/13 页面生成
  • Chrome 扩展:61 tests 全通过;三个脚本 node --check 通过
  • 未启动服务,未访问真实招聘平台或 AI

合并顺序

这是堆叠 PR,请先合并 #38,再合并本 PR。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant