|
|
@@ -190,3 +190,65 @@ PHP CLI 的 notice/warning 会混进 stdout(legacy 的 `config/params.php` 在
|
|
|
- 两者相加 = 理论上允许的最大差
|
|
|
|
|
|
**不要为了消红放宽容差。** 容差是判据,不是目标;1.5 分容差会把一个真实的 1 分级算法 bug 吞掉。
|
|
|
+
|
|
|
+## 16. 割接相关口径(阶段 1 实测,财务/对账可直接引用)
|
|
|
+
|
|
|
+以下数字来自**真实 100 条**(`status=2` 且 `income>0` 且有规则命中,按 percentage × 人数分层抽样),
|
|
|
+容差 `0.005 + |Δ预期|`。
|
|
|
+
|
|
|
+### 16.1 结论分布
|
|
|
+
|
|
|
+```
|
|
|
+MATCH 84
|
|
|
+PRECISION-CONVERGENCE 16
|
|
|
+DEFECT 0
|
|
|
+(ORACLE-DEGRADED / PATH-DIVERGENCE / ENV-FAILURE 均为 0 —— 注意其含义见 §16.3)
|
|
|
+```
|
|
|
+
|
|
|
+### 16.2 课酬变动幅度(Δreward)
|
|
|
+
|
|
|
+| 统计项 | 值 |
|
|
|
+|---|---|
|
|
|
+| 最小 | **0.60 分**(0.006 元) |
|
|
|
+| 中位 | **0.70 分** |
|
|
|
+| 最大 | **0.70 分** |
|
|
|
+| `Δincome ≠ 0` 但 `Δreward = 0` | **15 条**(基数变了、但没跨过分位) |
|
|
|
+
|
|
|
+最大一条:
|
|
|
+
|
|
|
+```
|
|
|
+caseId real-0008
|
|
|
+Σcost (3dp) 358.824 → 358.82(迁移后 ΣROUND(cost,2)),Δincome = -0.004
|
|
|
+规则 percentage=70.0,min=0(不设限),max=10000,reward=0
|
|
|
+teacher_reward 251.177 (legacy) → 251.17 (target),Δ = -0.007
|
|
|
+```
|
|
|
+
|
|
|
+**对外口径**:迁移后约 **16%** 的历史课酬会变,全部是分位级,**最大 0.7 分(0.007 元)**,方向随 Δincome 正负。
|
|
|
+
|
|
|
+### 16.3 PC 按 percentage 分档(解释"哪些课会变")
|
|
|
+
|
|
|
+| pct 区间 | 总数 | PC | 变化概率 |
|
|
|
+|---|---|---|---|
|
|
|
+| `pct < 25` | 25 | 0 | **0.0%** |
|
|
|
+| `25 ≤ pct < 50` | 38 | 6 | **15.8%** |
|
|
|
+| `50 ≤ pct < 100` | 37 | 10 | **27.0%** |
|
|
|
+| `pct ≥ 100` | 0 | 0 | n/a(本批无此档记录) |
|
|
|
+
|
|
|
+PC 只落在两个具体值上:`pct=70` → 10 条,`pct=30` → 6 条。
|
|
|
+
|
|
|
+**结论**:`Δreward ≈ Δincome × pct/100`,pct 越大越容易把 0.001~0.005 的收入收敛放大到跨分。
|
|
|
+**对账可先只看 `pct ≥ 50` 的课程**(本批 27.0% 会变,而 `pct < 25` 一条都不变)。
|
|
|
+
|
|
|
+### 16.4 覆盖率缺口(必须与结论一起出现)
|
|
|
+
|
|
|
+> **因 `getTeacherPaymentDetail` 无命中被排除:4,679 条 / 74,870(6.25%),未参与本轮比对(R14)。**
|
|
|
+
|
|
|
+两个分母不要混:
|
|
|
+
|
|
|
+| 出处 | 分子 / 分母 | 含义 |
|
|
|
+|---|---|---|
|
|
|
+| 全库口径(**对外用这个**) | 4,679 / 74,870 = **6.25%** | 全部 record 中无规则命中的比例 |
|
|
|
+| 阶段 1 候选内口径 | 4,149 / 62,487 = 6.64%(或 / 60,636 = 6.84%) | 先剔除 `status≠2 / income≤0 / 无有效学生` 后的剩余缺口 |
|
|
|
+
|
|
|
+报告必须在摘要旁同时给出这句,否则 `ORACLE-DEGRADED = 0` 会被读成"全库没有这类记录"——
|
|
|
+实际含义是"**本轮 case 集里没有这类**"。
|