0d084e6ec9
N-32 / B10 残余 P0 阶段:零风险的纯注释与文档口径修正。 net_socket.c:3627 / :3641 两处函数头注释写"CH395F 在 DISCONNECT 后自动关闭 Socket(FUN_PARA 默认)",与本仓 net_init 实际下发的 0x08(bit3 SOCKET_CLOSE=1,芯片不关、不清缓冲)相反。这类注释 会误导维护者跳过显式 close,是 U12 的观念源头。 新增设计文档 §2.4 回答"bit3=1 必要性大吗、如何安全处理": - bit3=0 时芯片当场清缓冲,FTP「发完即 FIN」尾部数据必被硬件 擦除且不可补救;bit3=0 也挡不住丢中断(Trap 22),孤儿态 照样有。故保持 0x08,改在软件层收口(结论并入 D4)。 - 安全处理 = 把契约落到不变量 I(session_dead 电平化)与 不变量 II(单一所有者 pump)+ 补 U12 的 close 对称。 验证:@build 0 错 0 警(Code=197084 与改前一致,纯注释); pre-commit 全绿(cppcheck / doc-links / C 规范)。