S1/S2 产物文件名改名:01_需求拆分/02_需求拆解 → 01_需求理解/02_需求补全(对齐产物语义名体系;V1.0 内 9 处引用零残留;1_意图识别引导语去旧步骤名残留;失误 #016 同文件并行 Edit 竞态教训)
This commit is contained in:
1 parent
a69f930294
commit
5e07600e70
6 files changed
+28
-12
No files matched your search
+11
@@ -134,3 +134,14 @@ S1-S11 重跑生成脚本时,脚本正文出现 4 处输出模板未定义内
|
||||
2. **每次 Edit 后抽查邻接行**:凡改句尾有换行敏感的段落(列表、表格、代码块),改完立即 `sed -n 'N-2,N+2p'` 看有无粘连;批量大改后通读成品一遍(本技能"逐条修复+复查式修复"纪律同样适用于文档编辑)。
|
||||
3. **写入后检查 0 字节异常文件**:批量写完跑一次 `find <目录> -size 0`,发现即删并溯源。
|
||||
4. **commit message 内禁用反引号**(会被 shell 二次解释),需引用路径时用中文引号「」或普通文本。
|
||||
|
||||
---
|
||||
|
||||
## #016 同一文件多处 Edit 并行提交产生写竞态丢改(2026-09-07)
|
||||
|
||||
S1/S2 产物文件名改名(01_需求拆分/拆解 → 01_需求理解/02_需求补全)时,对 `references/创作流程规范.md` 的多个 replace_all 在**同一条消息里并行发出**(第一批 2 个、第二批 2 个)。工具均报「Successfully edited」,但事后 grep 发现 3 处残留(L49/L68「01需求拆分」、L427「02_需求拆解」)——并行编辑基于同一旧快照各自替换后写回,后写者覆盖先写者成果。串行逐个补做后零残留。
|
||||
|
||||
**规避与铁律:**
|
||||
1. **同一文件的多次修改必须串行**(一条消息一个 Edit),不同文件之间才可以并行;同文件批量替换宁可用一次 replace_all 也不要拆多个并行 Edit。
|
||||
2. **「Successfully edited」≠ 已生效**:并行场景下报成功不代表最终文件含该改动,改完必须全量 grep 验证(本次靠 `需求拆分|需求拆解` 残留扫描抓出 3 处漏网)。
|
||||
3. 多词替换建议顺序:先做含下划线/更长的精确词(如 01_需求拆分),再做短词行文(如 01需求拆分),或统一用带上下文的整行替换,降低互相覆盖概率。
|
||||
Reference in new issue
Block a user