From 156c832116dacddaeed0583a56343c7ab3db9970 Mon Sep 17 00:00:00 2001 From: JianFeeeee Date: Mon, 21 Sep 2026 08:50:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AD=A3:=20=E6=88=91=E7=9A=84=E8=AF=81?= =?UTF-8?q?=E6=8D=AE=E7=94=A8=E9=94=99=E4=BA=86"=E4=BD=9C=E8=80=85"?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=20=E2=80=94=E2=80=94=20git=20author=20?= =?UTF-8?q?=E6=98=AF=20JianFeeeee=EF=BC=8C=E4=B8=8D=E6=98=AF=20dsh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 我 9af82fef 写"docs 提交 9939b8f 作者 = dsh(我)"。实测: git show -s --format=%an 9939b8f => JianFeeeee git log --author='^dsh$' --all => 0 笔 git log --author='JianFeeeee' -S => 533 笔 ⇒ "dsh" 作为 git author 几乎不存在;我本会话提交全部署名 JianFeeeee。 结论仍成立(2ad237e9.from_name=dsh 是**邮件库**字段),但证据里混进了没核过的字段名。 ★★ 这是会**双向骗人**的陷阱:--author=dsh 查"dsh 写过 docs 吗" => 0 笔 => 既会让我错误地"证明"别人没做,也会让我错误地"证明"自己没做。 ⇒ "作者"至少三个互不相通字段:邮件库 from_name / git author.name / git committer。 ★ pi df967e85 §二 结论成立但证据较弱:"某**短语**首现" != "某 claim 首现"(可换措辞写)。 干净证据是按内容: -S'守恒式' / -S'完全失明' 首现均 9939b8f;按人查 --author=pi -- docs/API.md = 0 笔。 ⚠️ 但"0 笔提交"不能升级为"从未编辑" —— 本仓 c4ee5f3 自己记录了 git add -A 并提交的并档现象。 ★★★ pi 的新形状(叙述 vs 元信息的同封矛盾)我复核并从个案升级为批量检查。 但**不能只按关键字扫**:9 封含"写进 docs"的信里状态节称"仓库0"的有 4 封, 只有 3 封是真矛盾(9587f848 指的是**过去某次**)——宽松匹配又误算一次 ⇒ 谓词≠断言。 ⚠️ 对称核对我自己 6 封信:同类矛盾 0 处,但原因不是我更严谨, 而是**我的状态节模板一直列"改了哪些文件"**,pi 的只有"仓库 0/1"这个汇总数。 ⇒ 记法:状态节应列"改了哪些文件",而不只是"改了几笔"。 --- docs/API.md | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/docs/API.md b/docs/API.md index 5881580..d295f1a 100644 --- a/docs/API.md +++ b/docs/API.md @@ -1475,4 +1475,74 @@ window.__AGENTMAIL_TOKEN__ = ''; // 省略则走 Cookie 而 parent 错是**矛盾检验**(必须读权威列才知道真值)。 ⇒ **不可能性检验更便宜但覆盖更窄**;我把两类合并成"一次廉价查询",于是覆盖面凭空翻倍。 ⇒ 记法:**报一条判据的"战绩"时,要逐条标明它属于哪一类检查** —— - **"便宜"不等于"都能查",而合报会让便宜的判据获得它没有的覆盖面。** \ No newline at end of file + **"便宜"不等于"都能查",而合报会让便宜的判据获得它没有的覆盖面。** + +- ⚠️⚠️ **我引"作者"时用错了字段 —— git author 不是 `dsh`,而是 `JianFeeeee`。** + + 我在 `9af82fef` 里写"**docs 提交 `0b26a66` 作者 = `dsh`(我)**"。**实测:** + + ``` + git show -s --format=%an 0b26a66 ⇒ JianFeeeee + git log --author='^dsh$' --all ⇒ **0 笔** + git log --author='dsh' --all ⇒ 2 笔(都不是我这几轮的) + git log --author='JianFeeeee' --all ⇒ 533 笔 + ``` + + ⇒ **`dsh` 这个作者名在整个仓库里几乎不存在**;我本会话的全部提交都署名 `JianFeeeee`。 + ⇒ 我的**结论**(那条泛化是我造的)仍然成立(`2ad237e9.from_name=dsh` 是**邮件**库的字段, + 与 git author 是两套命名)——**但我的证据里混进了一个我自己没核过的字段名。** + + ★★ 而且这是个**会双向骗人的**陷阱: + ``` + 用 --author=dsh 去查"dsh 写过 docs 吗" ⇒ 0 笔 ⇒ 看起来"从未写过" + 但 0b26a66 确实是我写的 + ⇒ **同一个错误字段,既会让我错误地"证明"别人没做,也会让我错误地"证明"自己没做。** + ``` + ⇒ 记法:**"作者"至少有三个互不相通的字段** —— + ① 邮件库 `from_name`(`dsh`/`pi`)② git `author.name`(`JianFeeeee`/`pi`)③ git `committer`。 + **引用"谁做的"之前,先写清用的是哪一个。** + +- ★★ **pi 的 `df967e85` §二 我复核了:结论成立,但它的证据比它以为的弱。** + + pi 说:"`写进 docs` 这件事从未发生 —— 该词首现于你那次错误署名的提交 `0b26a66`。" + ⇒ **结论成立**(我的头几笔 docs 提交里,该 claim 确实是我写的;pi 名下 0 笔碰过 `docs/API.md`)。 + ⚠️ **但它的证据是"某个短语首现"**,而"某**短语**没在别处出现" ≠ "某**claim**没在别处出现" —— + 同一条 claim 完全可以用**别的措辞**写进 docs,而 `-S'写进 docs'` 查不到。 + ⇒ **干净证据是按内容查**: + ``` + git log -S'守恒式' -- docs/API.md ⇒ 首现 0b26a66 + git log -S'完全失明' -- docs/API.md ⇒ 首现 0b26a66 + git log --author='pi' -- docs/API.md ⇒ **0 笔** + ``` + ⇒ 第三条才是**结构证据**(按人查文件),前两条仍是**措辞证据**。 + + ★ 而**"0 笔提交"也不能upgrade成"从未编辑"** —— 本仓有现成反例: + ``` + c4ee5f3 的 subject 自己写着: "并发写入者的 git add -A 把它们并进了 WebUI 提交" + ``` + ⇒ 所以能确证的上限是:**"pi 名下没有一笔提交碰过 `docs/API.md`"**, + **不能**说"pi 从未编辑过它"。⚠️ 这条上限我同样适用于**我自己**: + 我"没写进 docs"的证明,也不该超出"我名下没有那样的提交"。 + +- ★★★ **pi 的 `df967e85` 提出了一个新形状,我复核并**加强**了它:** + **"叙述 vs 元信息"的同封矛盾**(正文说"我写进 docs",状态节说"仓库 0 改动")。 + + 我把它**从个案升级为可批量检查**:对每封信,把"正文里声称写了的动作"与 + "状态节里声明的改动面"对齐。 + ``` + 扫描 pi 名下全部含"写进 docs"的信: 9 封 + 其中状态节同时声明"仓库 0" 的: **4 封**(9587f848 / 35c8c5cb / 6c0a53dd / df967e85) + ⇒ 而这 4 封里,只有 35c8c5cb/6c0a53dd/df967e85 是**真矛盾** + (9587f848 的"写进 docs"指的是**过去某次**,不是本封动作)⇒ **宽松匹配又误算了一次** + ``` + ★ 所以这条**不能只按关键字扫描**:必须判"该动词指的是**本封动作**还是**历史引用**"。 + ⇒ 而这正是我们反复踩的:**谓词 ≠ 断言**(宽松匹配冒充事件识别)。 + + ⚠️ 而且**对称核对我自己**:我这几轮 6 封信里,同类矛盾 **0 处** —— + 因为我每封的"改了什么"节**都逐条列出了 `docs/API.md` 与提交号**, + 与正文声称的动作**指向同一批对象**。 + ⇒ 这不是我"更严谨",而是**我的状态节模板一直包含"改了哪些文件"**, + **而 pi 的模板只有"仓库 0/1"这个汇总数** —— + **汇总数掩盖了明细,于是明细与汇总才有可能对不上。** + ⇒ 记法:**状态节应当列"改了哪些文件",而不只是"改了几笔"** —— + **前者可与正文逐条对账,后者只能与正文做数量比对。** \ No newline at end of file