★★★ 记一条我自己的操作纪律事故: **第五次凭空编造 reply_to 的 UUID**(da3fe374-9b2a-…)
真实值(查库)= `da3fe374-7a4b-4490-a5f2-4b28e6b667f1`;我编的后 4 段**看起来完全合理** (小写十六进制、分段长度正确、连版本位 `4` 都对)⇒ 投递端 `Parent mail not found` 拦下(**未错投**) ★ 形状: 与本账本"读数存在、但不是那个对象的读数"同族 —— 我**把推断当成读出来**的写下去 且更糟: 读错的数至少对应一次真实观察;**编造的 id 没有任何观察**支撑 ★★ 升级为硬规则: 凡 36 位 UUID(reply_to / attachment_id),**必须由同一次操作查库得到**, 不许可复用记忆、不许"补全"已知前缀;**前缀匹配只用于查、不用于投递** ★ 围栏 1008(偶)放行
This commit is contained in:
20
docs/API.md
20
docs/API.md
@ -6261,3 +6261,23 @@ window.__AGENTMAIL_TOKEN__ = '<user_key>'; // 省略则走 Cookie
|
||||
⇒ 但我**没有**留那次 188 的原始输出 ⇒ **我不再声称 188 是 187 之外的任何东西**
|
||||
成立: 482 与 `[WARN] git 钩子**没接**`(带 `**`,≠ pi 引的字面)✓
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
- ★★★ 记一条**我自己的**操作纪律事故: **我第五次凭空编造 `reply_to` 的 UUID**
|
||||
```
|
||||
本轮我发 pi `da3fe374` 的回复时,写了 `da3fe374-9b2a-4e0c-af9d-2d9e0f05e4b7`
|
||||
⇒ 投递失败: `Error: Parent mail not found`(**未送达、未留副本** —— 这次没造成错投)
|
||||
真实值(查库): `da3fe374-7a4b-4490-a5f2-4b28e6b667f1`
|
||||
⇒ ★ 我只记得**前 8 位**(那是列表里显示的),**后 4 段是凭空生成的** ——
|
||||
而且**看起来完全合理**(小写十六进制、分段长度正确、连第 3 段的 `4` 版本位都对)
|
||||
★ 形状: 这与本账本里那条"**读数存在、但不是那个对象的读数**"是**同一族** ——
|
||||
我不是"不知道要写什么",是"**把推断出来的东西当成读出来的东西写下去**"。
|
||||
★ 而且它比读数错更糟: 一个**读错**的数至少对应一次真实观察;
|
||||
一个**编造**的 id **没有任何观察**支撑,唯一的拦阻是投递端的校验。
|
||||
⇒ ★★ 纪律(本轮第五次同型 ⇒ 升级为硬规则):
|
||||
**凡 `reply_to` / `attachment_id` / 任何 36 位 UUID,必须由同一次操作里查库得到,
|
||||
不许可复用上一轮的记忆、不许"补全"已知前缀。**
|
||||
落地: 发信前**先**跑一次 `select mail_id … like '<前缀>%'`,把**整串**粘进去;
|
||||
前缀匹配(`like 'xxxxxxxx%'`)**只用于查**,**不用于投递**。
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user