12 KiB
候选评分规则证据表
状态:N02 独立代码复验与真实 MySQL/Docker 黑盒验收通过,待 Git 检查点;D01–D15 已确认。
文档类型:技术参考。本文记录 CandidateScoringCalculator 当前真实规则、数据、公式和证据限制。它不是对规则科学有效性的背书,也不是招聘决策指南。
1. 证据等级
| 等级 | 含义 |
|---|---|
| DIRECT_RULE | 可直接验证的确定性业务计算,例如字段是否填写、固定加权公式 |
| SELF_REPORTED | 主要来自学生本人填写,真实性和完整性依赖用户维护 |
| BEHAVIOR_PROXY | 平台行为与目标概念可能有关,但不能等同于目标概念 |
| UNVALIDATED_PROXY | 尚无试测、效度或公平性证据,不应据此形成强结论 |
当前系统没有足够证据将任何行为代理称为人格测量、信用评估或招聘成功预测模型。
2. 全局规则
| 项目 | 当前实现 | 证据与限制 |
|---|---|---|
| 维度 | EDUCATION、INTERNSHIP、ABILITY、COMPLIANCE、STABILITY、GROWTH、INTEGRITY、ACTIVITY | 名称不一定等于实际被测概念 |
| 展示权重 | 每维 12.50 | 实际综合分是可计算维度算术平均 |
| 参与状态 | OK、ESTIMATED | PENDING、INSUFFICIENT_DATA 和 null score 排除 |
| 综合分 | sum(score)/count,scale=2,HALF_UP |
不同参与维度集合之间不可直接比较 |
| 分数边界 | 多数行为维度经 cap 限制至 0–100 |
上限截断会隐藏额外行为差异 |
| 快照 | 同学生、维度、月份覆盖更新 | 月度快照不是不可变历史事实 |
| 版本 | v0.1;能力开关开启为 v0.2 | 版本变化必须随响应和快照保存 |
3. EDUCATION
3.1 当前公式
educationScore = 学历层次分 × 55% + 学校档次分 × 45%
学历层次:博士 100、硕士 85、本科 70、大专 55、其他 50。
学校档次:内置 985 名单 85、内置 211 名单 75、名称以“大学/学院”结尾 65、未填写或其他 50。未填写或无法识别时状态为 ESTIMATED;学历缺失时 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 数据来源 | 学生教育资料中的学历和学校 |
| 证据等级 | SELF_REPORTED + UNVALIDATED_PROXY |
| 可以说明 | 当前资料按平台固定分类规则得到的教育背景分 |
| 不能说明 | 智力、实际技能、岗位绩效、学习能力或人才质量 |
| 主要风险 | 学校名单硬编码、维护过期、学校名称匹配误差、社会经济背景代理、公平性风险 |
| 可操纵性 | 学生可修改自报字段;需要资料真实性治理,但不能因此扩大企业隐私权限 |
| 建议 | 一期只准确解释并标注未验证;后续评审移除学校项或显著降权 |
4. INTERNSHIP
当前固定返回 PENDING、score=null,原因是结构化实习数据源未接入。
| 项目 | 结论 |
|---|---|
| 证据等级 | DIRECT_RULE |
| 可以说明 | 当前平台无法计算该维度 |
| 不能说明 | 学生没有实习、实习不足或经验较弱 |
| 建议 | 保持 PENDING;解释必须使用“未接入”,不得显示为 0 分 |
5. ABILITY
默认开关关闭时返回 PENDING。开启后只读取最新、有效、完整的 WORKPLACE_ABILITY 结果:
ABILITY = LOGIC×35% + EXECUTION×30% + LEARNING×20% + COMMUNICATION×15%
要求四维各回答 6 题、总回答 24 题、分数均在 0–100,validUntil > capturedNow。最终 scale=2、HALF_UP。
| 项目 | 结论 |
|---|---|
| 数据来源 | V36 自研四维能力测评最新有效聚合结果 |
| 证据等级 | DIRECT_RULE;题库测量意义仍属 UNVALIDATED_PROXY |
| 可以说明 | 用户在当前自研题库和评分规则下的四维聚合表现 |
| 不能说明 | 确定性工作能力、真实绩效或录用适合度 |
| 防滥用 | 不取历史最高分;结果过期或结构异常时不参与;不泄露答案键 |
| 待验证 | 小样本试测、信度、题目区分度、重测效应、与外部标准的关联 |
6. COMPLIANCE
当前实际计算求职偏好填写完整度:薪资 25、城市 25、用工类型 20、行业 15、岗位类型 15。五项均填写为 OK;至少一项填写为 ESTIMATED;全部缺失为 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 证据等级 | DIRECT_RULE + SELF_REPORTED |
| 可以说明 | 五类求职偏好字段的填写完整程度 |
| 不能说明 | 合规意识、纪律性、服从性或职业道德 |
| 风险 | 名称严重超出计算内容;填写更多即可得到更高分,但不代表偏好更合理 |
| 建议展示名 | 求职偏好完整度 |
| 后续建议 | 评审是否应退出跨候选排名,仅用于资料完善提示 |
7. STABILITY
有投递或近 30 天登录时以 50 为基础:账号超过 12 个月 +25,超过 6 个月 +15;有投递时撤回率低于 20% +15,高于 50% -20;近 30 天有登录 +10;结果截断至 0–100。无投递且无登录为 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 证据等级 | BEHAVIOR_PROXY + UNVALIDATED_PROXY |
| 可以说明 | 当前账号和平台求职行为形成的稳定信号 |
| 不能说明 | 人格稳定、工作稳定、忠诚度或离职概率 |
| 风险 | 新用户天然劣势;撤回可能由岗位变化、误投或企业原因造成;登录记录受产品使用习惯影响 |
| 可操纵性 | 登录和减少撤回可改变分数;阈值公开可能诱导行为 |
| 建议展示名 | 平台求职行为稳定信号 |
| 后续建议 | 决定是否从企业评分及排名中移除账号月龄,或仅作为可信度信息 |
8. GROWTH
存在简历或技能时以 40 为基础:ACTIVE 简历数量至少 2 个 +15;最近简历更新时间在 90 天内 +15;技能标签至少 5 个 +15;结果截断至 0–100。二者均无数据时 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 证据等级 | BEHAVIOR_PROXY + UNVALIDATED_PROXY |
| 可以说明 | 简历维护和技能标签展示情况 |
| 不能说明 | 成长潜力、学习速度、职业上升空间 |
| 风险 | 多建简历版本和增加标签即可加分;技能数量不等于技能质量;无历史能力增量 |
| 建议展示名 | 简历维护与技能展示信号 |
| 后续建议 | 退出综合分或改成非评分的资料完善进度;若保留需加入去重、质量和冷却规则 |
9. INTEGRITY
有 Offer 历史或候选反馈时以 60 为基础:每个已接受 Offer +15,最多两个;每个过期 Offer -10,最多两个;反馈至少 3 条且均分至少 4 时 +10,有反馈且均分低于 3 时 -10;资料完整 +10;结果截断至 0–100。没有 Offer 且没有反馈时 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 证据等级 | BEHAVIOR_PROXY + UNVALIDATED_PROXY |
| 可以说明 | Offer 响应、反馈和资料完整度形成的履约代理信号 |
| 不能说明 | 道德诚信、个人信用、欺诈风险或人格品质 |
| 风险 | 接受 Offer 不必然等于守约;过期可能来自通知失败;反馈评分可能存在偏见或样本不足;资料完整与诚信不是同一概念 |
| 可操纵性 | 接受行为、反馈数量及资料填写会改变结果 |
| 建议展示名 | 履约与资料一致性信号 |
| 强制文案 | “该信号不是个人征信、信用评级或道德评价” |
| 后续建议 | 优先评审退出综合分和排名;独立诚信积分模块不得复用该分数充当积分余额 |
10. ACTIVITY
近 90 天投递:至少 6 次 +50、至少 3 次 +40、至少 1 次 +20;近 30 天平台操作至少 3 次 +30;存在发信记录 +20;结果截断至 0–100。全部为零时 INSUFFICIENT_DATA。
| 项目 | 结论 |
|---|---|
| 证据等级 | BEHAVIOR_PROXY |
| 可以说明 | 指定窗口内的平台求职活动程度 |
| 不能说明 | 工作积极性、职业动机、岗位能力或录用意愿 |
| 风险 | 为得分而投递、登录、发消息;消息只判断是否存在且当前查询未限定时间窗口 |
| 可操纵性 | 高;重复投递和任意消息可直接增加信号 |
| 建议展示名 | 平台求职活跃度 |
| 后续建议 | 保留为时效排序信号须单独评审;不建议与能力类维度等权解释 |
11. 跨维度问题
11.1 概念重叠
资料完整度同时影响 COMPLIANCE、GROWTH 和 INTEGRITY,平台活跃行为同时影响 STABILITY 和 ACTIVITY。相同底层行为可能被重复计入综合分。
11.2 缺失并非零分
当前缺失维度会退出分母,而不是记为零。解释必须明确“未参与”,不能显示成“表现较差”。但重新归一化也使不同人的综合分口径不一致。
11.3 估算值
ESTIMATED 与 OK 同等进入综合分。学校未知和偏好部分填写均可能产生估算分,企业端目前只看到状态和聚合分,必须避免将估算分表述为精确结果。
11.4 时间窗口
APPLICATION、LOGIN、AUDIT 和简历更新时间使用多个 now(),消息数量没有时间窗口。N02 应先统一计算时钟,但是否修改消息窗口属于评分规则变更,不能混入解释版本。
12. 规则证据验证计划
12.1 代码级确定性验证
- 为每条规则建立边界表和独立手算样例;
- 固定 Clock 验证恰好 30/90 天、6/12 个月和 ABILITY 到期时刻;
- 检查分数、贡献、原因与数据来源完全一致;
- 验证 cap、负分、HALF_UP 和 null 分支。
12.2 数据质量验证
- 统计各维度 OK/ESTIMATED/INSUFFICIENT_DATA/PENDING 覆盖率;
- 检查学校名称无法识别率、偏好 JSON 错误率、Offer 通知失败率;
- 检查同一底层行为跨维度重复计分比例;
- 监测规则版本和异常结构,复用 V43 聚合能力但不扩大其个人数据范围。
12.3 防操纵验证
- 重复投递、撤回、登录、发消息、创建简历版本和堆叠技能标签;
- 比较一次行为与大量重复行为的边际影响;
- 验证冷却、幂等和上限是否真正生效;
- 发现高可操纵性时,不以隐藏阈值代替规则整改。
12.4 测评证据
ABILITY 题库先完成小样本试测,再评估内部一致性、题目区分度、重测影响和题目淘汰。RIASEC 当前不直接进入候选八维评分,不应在 N02 中混入。
13. N02 实现核对
- 解释版本固定为
candidate-scoring-explanation-v1,与candidate-scoring-v0.1/v0.2分离。 - 规则贡献由
CandidateScoringCalculator的真实分支同步生成,CandidateScoringExplanationAssembler只做白名单组装。 - 能力测评小数分数的逐项展示舍入差以
SCORE_ROUNDING_ADJUSTMENT显式对账;不改变 V38 映射分数。 - 学生综合卡增加
coverage与comparabilityNotice;企业评分卡字段和 JSON 结构保持不变。 Clock/capturedNow贯穿一次评分计算及快照calculated_at;未改变任何阈值、公式、权重或排名。- 本轮无新 Flyway、表、错误码、公网路径或业务消息;真实 MySQL/Docker 验收仍待独立执行。
14. 审计结论
当前代码在“确定性、可重复计算”层面具备基础,但不具备将多个代理维度解释为人格、诚信、成长潜力或招聘成功预测的证据。N02 可以先完成可信解释和限制披露;涉及分数、排名和企业决策影响的合理性整改必须作为独立规则版本处理。
D01–D15 已确认。当前代码在“确定性、可重复计算”层面具备基础,但不具备将多个代理维度称为人格、诚信、成长潜力或招聘成功预测模型的证据。N02 仅完成可信解释和限制披露;任何改变分数、权重或排名的后续动作必须另开评分规则版本并重新验收。