fix(N34): E14 丢中断复核——芯片不丢事件;listen 排事件挪至 LISTEN 前+全局读收口+全库归因更正
48 轮直读 SINT 矩阵(8 周期×6 变体)复核历史"丢中断"说法:芯片侧事件 丢失 = 0。归类:drain 读清消费 3/48(drain-int 探针现场抓获)、门控 竞态 2/48、主机同步 1/48、幽灵态 0/48 未复现。 根除性修复:net_listen_locked / net_listener_try 的排事件读清从 listen 后挪至 LISTEN 命令之前——新连接 CONNECT 落进该窗即被本方读清 吞掉,即"数据被吞"的生产侧自伤机制(台架 3/48 为同形态放大版)。 全局读收口:全局中断寄存器唯一读者 = net_poll(I7);生产/测试/台架 游离全局读全部删除,ch395f.h 声明处加护栏注释。 归因更正:17 文件约 40 处"丢中断"措辞改为"事件未收到/读清消费竞态" (机制全部保留,仅归因更正);设计文档 §5.2 新增 E14 锚点;Trap Records TRAP-NET-17/-20/B3 归因更正段;配图生成器与 SVG 重生成。 台架:事件未收到复核探针保留(drain-int / SINT 补读×3 / 超时归类), 下次跑矩阵自动归类;实验注册(main.c/uvprojx)已完全还原。 验证:@build 0 错误 0 警告;ci_local L0 32/0 + gitlint + L0.5 953/953;doc-links --all --sections-strict 通过;@test PASS(无 [ERR],net init 619ms);回归 :7003 300ms×10 = 10/10、:21 n30×50 = 0/50 失败。
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
"""生成 docs/images/网络不稳根因总览.svg —— N34 复盘配图(纯标准库)。
|
||||
"""生成 docs/images/网络不稳根因总览.svg —— 自愈架构复盘配图(纯标准库)。
|
||||
|
||||
布局:左列 = 七个误会(问题环,玫红),右列 = 对应拆法(绿),行间水平箭头;
|
||||
左列环间竖向细箭头 = "叠加累积";底部两个总结盒。
|
||||
@@ -49,12 +49,12 @@ C_GRAY = "#94a3b8"
|
||||
# ----------------------------- 数据(改这里) -----------------------------
|
||||
# (问题标题, 问题副标, [问题芯片], 拆法标题, [拆法芯片])
|
||||
RINGS = [
|
||||
("① 门铃会丢", "TRAP-NET-17:丢中断",
|
||||
("① 门铃听不见", "TRAP-NET-17:事件未收到(E14 复核:非芯片丢,是被读清消费)",
|
||||
["症状:UI 复连永久拒连、FTP 第 29 轮自己死掉,全程不报一个错",
|
||||
"机制:快速复连时 INT# 门铃哑火,netTask 只靠门铃干活 → 状态静默滞留"],
|
||||
"机制:快速复连时门铃事件被读清消费,netTask 只靠门铃干活 → 状态静默滞留"],
|
||||
"100ms 巡逻对账",
|
||||
["单一 reconciler:判据读驱动状态缓存(E2 背书 18.1µs),分级去抖",
|
||||
"门铃丢了不要紧,每 100ms 亲自数一遍人头"]),
|
||||
"门铃听不见不要紧,每 100ms 亲自数一遍人头"]),
|
||||
("② 门铃总闸看一眼就清零", "TRAP-NET-20 B3",
|
||||
["症状:别的 Socket 的 CONNECT/DISCONNECT 从此永久失踪",
|
||||
"机制:全局中断寄存器整体读即清,open/relisten 丢弃式读一遍=拔全楼门铃线"],
|
||||
@@ -101,11 +101,11 @@ RINGS = [
|
||||
|
||||
SUM_LEFT = ["七环叠加 =「玄学不稳」",
|
||||
"随机 · 无错误日志 · 时好时坏——每个环节单看都「正常工作」"]
|
||||
SUM_RIGHT = ["逐环拆掉 = 稳(N34 阶段 0~3 已实施)",
|
||||
SUM_RIGHT = ["逐环拆掉 = 稳(自愈收敛阶段 0~3 已实施)",
|
||||
"不依赖门铃 · 唯一主人 · 永不冻结 · 100ms 对账 · 开张前排渣——台架回归全绿"]
|
||||
|
||||
FOOT = ("证据链:docs/问题记录/CH395F_Trap_Records.md(TRAP-NET-07/-09/-12/-17/-18/-20) · "
|
||||
"docs/网络/N34-自愈审计.md §6 实验记录(E1~E13) · 修复落地见同文档 §5 实施方案")
|
||||
"架构现状 docs/网络/网络自愈架构设计.md §2~§4 · 实证锚点同文档 §5.2(E1~E13)")
|
||||
|
||||
|
||||
# ----------------------------- 工具函数 -----------------------------
|
||||
@@ -192,10 +192,10 @@ def build():
|
||||
|
||||
add('<rect x="0" y="0" width="%d" height="%d" fill="#ffffff"/>' % (W, total_h))
|
||||
add('<text x="%d" y="%d" font-size="%d" font-weight="700" fill="#0f172a">%s</text>'
|
||||
% (PAD, 40, TITLE_FONT, esc("为什么网络「一直不稳」——七个误会与逐个拆掉(N34 复盘)")))
|
||||
% (PAD, 40, TITLE_FONT, esc("为什么网络「一直不稳」——七个误会与逐个拆掉(自愈架构复盘)")))
|
||||
add('<text x="%d" y="%d" font-size="%d" fill="#64748b">%s</text>'
|
||||
% (PAD, 62, SUB_FONT,
|
||||
esc("左列 = 根因(比喻 + 机制);右列 = N34 阶段 0~3 的对应拆法;环与环叠加才构成「玄学」")))
|
||||
esc("左列 = 根因(比喻 + 机制);右列 = 自愈收敛阶段 0~3 的对应拆法;环与环叠加才构成「玄学」")))
|
||||
|
||||
for (pt, ps, lrows, ft, rrows, by, h) in placed:
|
||||
draw_band(out, pt, ps, lrows, PAD, by, lw, h, C_PROB, C_PROB_BG)
|
||||
|
||||
Reference in New Issue
Block a user