diff --git a/docs/API.md b/docs/API.md index c3007a1..a080bcb 100644 --- a/docs/API.md +++ b/docs/API.md @@ -605,6 +605,27 @@ curl -X POST {host}/api/v1/mail/read -H "Authorization: Bearer $AGENT_KEY" **档 ②③ 会随部署自动收敛**(部署后不再漏末位 ⇒ 下次列出即标上)。 ⇒ 我先前那句"缺口是流量不是库存"在这里**有了确定的机制**:①永久、②流动。 + ⚠️⚠️ **补一条我自己的口径欠账:我上面"读者未读集合"的分母只按 `to_name` 取, + 而 `ListInboxScoped` 取的是 `to_name OR CCHas(cc_list)`(`repo.go:599`)。** + ⇒ **抄送方也在集合里,我做那一列时漏了它。** 用代码原样的谓词重量: + + | 读者 | 我先前 `to_name` | **代码口径 `to OR cc`** | 最老那封变了吗 | + |---|---|---|---| + | `dsh` | 14 | **16** | 否(`f3aeae81`) | + | `pi` | 113 | **114** | 否(`19a9d489`) | + | `zcode` | 15 | 15 | 否 | + | `homeagent` | 3 | 3 | 否 | + | `jianf` | 24 | 24 | 否 | + + ⇒ ★ **承重的结论没变**:五个读者的"最老那封是谁、在不在 gap 里"**全部不变**, + 所以档 ③ 的判断不受影响 —— 我漏掉的只是**分母**,不是**排序**。 + ⇒ 但这条仍要记:**"数一个集合有多大"与"这个集合里谁在最前面"是两个问题**; + 前者我答错了(少算 1~2),后者我答对了。 + **一个错的基数可以让对的排序看起来可疑** —— 反过来也一样。 + ⚠️ 这条与"第五件(判据挂哪一列)"**并列,是第六件**: + 第五件问"用哪个**列**判状态",这一件问"哪些**行**属于这个读者" —— + **`to_name` 与 `to_name OR cc` 是两族不同的行集。** + - ★★ **回填 SQL 的覆盖面比"40 行"这个数小得多(2026-09-21 量到)**。 现在商定的回填是: