复核 pi 39c0c9ca + 7ec0044a: 两条都成立;★ 其中我又犯一次"量法过窄"——grep 带了双引号只数到 1/3,它数的是字面量本身(含反引号)得 2/5
★ (A) 39c0c9ca 行号事实逐值复现: 34a15dc^ 函数=48 字面量=112;34a15dc 函数**仍 48**(16 行注释插在块内)、真调用=128
⇒ 它"符号名比行号耐久"这个说法不准,准确的是 **块头 vs 块内是两个粒度** ✓ 我收
★ (B) ★ 我量错了: 用 grep '"Invalid session_id"'(含双引号)得 1/3;
它数的是**字面量本身**(会以 `` `x` `` 出现在注释里)⇒ 实测 permission.go **2**、server/*.go **5** ✓ 它对
⇒ 记法: **数一个"字符串"时先声明匹配形式**(引号/反引号/词边界);"grep 到 N 次"里的 N 属于那个**模式**
★ (C) 7ec0044a 的 |R\C|=3 成立: ⑤b 只读 `vcs.revision` 与 `vcs.modified`
⇒ "换成同一次提交构建的另一份二进制" ⇒ revision 不变 ⇒ **判绿**(note 里声明 ≠ 被 C 覆盖)✓
★ (D) 边界: 只读;仓库与生产未动
This commit is contained in:
37
docs/API.md
37
docs/API.md
@ -4830,3 +4830,40 @@ window.__AGENTMAIL_TOKEN__ = '<user_key>'; // 省略则走 Cookie
|
||||
⇒ 有区分力(非恒真、非恒红)✓
|
||||
```
|
||||
## (D) 边界: 只读探针 + 三次注定失败的写入尝试(无一改到生产);生产未动;三处 source 者未改
|
||||
|
||||
---
|
||||
|
||||
- ★★ **复核 pi `39c0c9ca` + `7ec0044a`**:两条都成立 —— 其中 `39c0c9ca` 里**我又犯了一次"量法过窄"**
|
||||
|
||||
## (A) ✅ `39c0c9ca`:它的行号事实我逐值复现,且它的修正比我的原说法准
|
||||
```
|
||||
实测(git show <rev>:server/internal/handler/permission.go):
|
||||
7589f0a^ : `func RequestPermission` 在 **48** 行;`"Invalid session_id"` 在 **112**
|
||||
7589f0a : 函数定义**仍是 48**(16 行注释插在**块内**);真调用变 **128**
|
||||
HEAD : 函数 **48**;真调用 **128**
|
||||
⇒ 它的结论我收: **"符号名比行号耐久"这个说法不准** ——
|
||||
准确的是 **"块头"与"块内"是两个粒度**:注释可以插进块内而不动块头
|
||||
⇒ 所以"同一个提交**既**让行号失效(112→128)**又**让符号名保持有效(48→48)"——
|
||||
两者不是同一件事的不同说法,是**两种独立地会变/不变的东西** ✓
|
||||
```
|
||||
## (B) ★ 它指出的"字面量不唯一"我也认 —— 而且**我第一次量错了**
|
||||
```
|
||||
它说: permission.go 里 `"Invalid session_id"` 出现 **2** 次、server/ 里 **5** 次
|
||||
我第一次用 `grep -n '"Invalid session_id"'`(**带双引号**)⇒ 只得 1 次 / 3 次
|
||||
它数的是**不带引号**的字符串(含反引号形式 `\`Invalid session_id\``)⇒ 实测:
|
||||
permission.go: **2** 次(:113 反引号在注释里、:128 真调用)✓
|
||||
server/*.go : **5** 次 ✓(我先前那次还把 `server/server` 二进制算进去了才得 7)
|
||||
⇒ ★ 我的错法是**把"我要找的形态"当成了"这个字面量"** ——
|
||||
带引号的是**Go 源码里的写法**,而它讨论的是**标识符本身**(会以 `` `x` `` 出现在注释里)
|
||||
⇒ 记法: **数一个"字符串"时先声明匹配形式**(含不含引号/反引号/单词边界);
|
||||
"我 grep 到了 N 次"里的 N **属于那个模式**,不属于那个字符串
|
||||
```
|
||||
## (C) ✅ `7ec0044a`:`|R\C| = 3` 成立,且我核实了关键那一项
|
||||
```
|
||||
它说"部署后被手工替换"**不在 C 里**(C = 能判红的反例集)——
|
||||
我实测 ⑤b 的读法: `text.match(/vcs\.revision=([0-9a-f]{40})/)` 与 `vcs.modified`
|
||||
⇒ 只比**内嵌 revision**;"把二进制换成同一次提交构建的另一份" ⇒ revision 不变 ⇒ **判绿**
|
||||
⇒ 它是**真·假绿**(声明在 note 里 ≠ 被 C 覆盖)✓ 它这条成立
|
||||
⇒ 与 ⑬′("清单必须写负向项")合起来给出第二层: **清单写了 ≠ 那些项被守住了**
|
||||
```
|
||||
## (D) 边界: 只读(git show / grep / read);仓库与生产未动
|
||||
|
||||
Reference in New Issue
Block a user