super_agent_bot
|
364b163663
|
docs(wave): 回放页枚举恒空修复闭环入档并销项
CI / 静态门禁 (pre-commit) (push) Failing after 44s
CI / 主机侧单测 (MSVC) (push) Failing after 45s
CI / 静态门禁 (pre-commit) (pull_request) Failing after 40s
CI / 主机侧单测 (MSVC) (pull_request) Failing after 42s
- 故障录波设计说明 §10 新增「回放页枚举恒空缺陷修复记录」:四步证据链
(失败不钉表+FR 埋点 → 诊断加强 → 根因 = 读侧用反 seg_path 返回契约 →
同页键处理缺失效)、串口实录 `scan done cnt=7` / `head path fail idx=6`、
修复前后板级对拍图与复现口令;10-31 那段「拿不到目录条目」的定性就地
标注被推翻(保留为推理起点留痕);§10 表「板级·回放页」行与文首状态行
同步为「测试面已开、坏段/空态画面仍待到场地拍」。
- 到场轮执行手册 §3 第一幕标注「已完成(2026-11-02)」,表 §1 与幕间
依赖同步;历史三步保留但注明到场时不用再跑。
- 登记簿 §2 按「完成即销项」删除该行;任务规划 README 独立行同步。
- 证据入库 `docs/测试说明/测试数据/wave_enum_20261102/`:修复前/后回放页、
切段、切道四帧 + README(含串口实录与复现口令)。Before = `7efa58d9`
构建(身份戳 Nov 2 2026 14:21:24),After = 本分支构建(Code=247,288 B)。
Refs #38
|
2026-11-02 18:33:18 +08:00 |
|
super_agent_bot
|
046097918d
|
fix(ui/wave): 回放页切通道/切段后不重绘——key_cb 接管键后补失效
回放页 v1.0 建的键处理返回 true(接管全部键),但从未调
ui_content_page_invalidate():框架只在 key_cb 返回 false 时才替页面
失效,于是「键送达、状态已切、屏上纹丝不动」。该病被枚举缺陷完全
遮住(整页恒空、没有可切的画面),随本波枚举修复首次上板才暴露:
真机按 ←/→/↑/↓ 帧字节完全不变(同帧哈希),布局与状态机无问题。
- 上/下切通道、左/右切段成功路径、空态再探路径,各补一次
ui_content_page_invalidate()(与 ui_page_clock / ui_page_password
等已接管键的页面同纪律);
- 切段失败仍保持「按了没动」的诚实语义(不重绘、不把忙态清成空);
- 修改记录 v1.1。
/keil-build 0 错误 0 警告(Code 247,288 B,+4 B),RAM 不变;
台账 / 同码凭证同批刷新。
Refs #38
|
2026-11-02 18:21:34 +08:00 |
|
super_agent_bot
|
d6253aa974
|
fix(ui/wave): 钉死并修复回放页恒空根因——读侧用反 seg_path 返回契约
FR 埋点构建上板判读(本 boot 串口实录,临时诊断构建 = 上一提交):
[UI_TASK] ui wave scan #1 done cnt=7 np=0 tt=0 ac=407
[ERR][UI_TASK] ui wave head #1 path fail idx=6
- 目录枚举一直是好的(cnt=7 = 盘上七段全数入表,锁也拿到,tt=0):
10-31「唯独 ui_task_wave_scan 拿不到目录条目」的定性被推翻。
- 真正坏的在 load_head / seg_win 的拼路径判错:契约
(App/algo/wave_store.h:458)是「成功 = 写入字符数(本形态恒 16),
失败才是负码」,读侧自建成功能起写成 != 0 判失败——每次成功都被
判死,f_open 永远走不到,盘上有段也恒显「无录波段」。写侧
default_task.c 同函数用 <= 0,一直是对的,所以「FTP 六段全见、
写侧枚举正常、唯独回放恒空」的怪象全线得解。
- 模拟器走桩、不编译本文件读侧,黄金参考图与主机单测因此从未覆盖
这条链,此病从建成存活至今(板端首张真机波形图见 PR #67)。
- 两处口径改 <= 0(与写侧一致);表列着的段 f_open 失败补带 FR 码
的永久留痕——该失败态页面无视觉面,10-31 误定性的教训就是静默。
- 临时诊断(#N 序号 / try 闸日志 / 无条件 done 行)收敛删除,留
最小永久集:scan opendir/readdir FR、零条目 INFO、head/win 开档
失败 FR。try 闸恢复静默(看门狗设计说明 §4.3 口径)。
- /keil-build 0 错误 0 警告:Code 247,284 B(较临时诊断构建
−368 B,较修复前 +236 B),RAM 不变;台账 / 同码凭证 / 数字回填
同批刷新。
Refs #38
|
2026-11-02 18:07:52 +08:00 |
|
super_agent_bot
|
3e01e9d98e
|
diag(ui/wave): 枚举扫描诊断留痕第二组(临时构建,随根因修复收敛)
第一组埋点烧后开回放页串口零留痕(既无 FR 失败也无零条目
行),剩余唯一静默分支 = try 闸取锁失败直接返回/扫描成功但有条目
不打印/段头与窗口读取失败不打印。本组补齐:
- scan:每次尝试编号 #N;try 闸失败行带 vol_lock_get_stats 计数(消费方
观测,不取锁,符合看门狗设计说明 §4.3 口径);完成行改为无条件打印
cnt/np/tt/ac(排除「成功但页面仍空」歧义)
- load_head / seg_win:try 闸、路径构造、开档 FR 码与读失败出口全部留痕
临时诊断构建,判性后随根因修复收敛到最小永久集。
/keil-build 0 错误 0 警告(Code +604 B,RAM 不变)。
Refs #38
|
2026-11-02 17:39:58 +08:00 |
|
super_agent_bot
|
ee002d7ead
|
fix(ui/wave): 回放页枚举扫描失败不再钉「无段」缓存并补 FR 码留痕
真机回放页恒显「无录波段」而 FTP 六段全在盘上(登记簿同名条目,
见 #38 §5)。本提交按执行手册 §3 步骤 1 落两件事:
- ui_task_wave_scan:f_opendir/f_readdir 失败本轮返 -1(「本轮无完整
事实」语义),不再无条件钉 s_wave_scanned——原实现把卷忙/FR_DENIED
一类失败钉成「0 段」假空态,直到下一次 manual_req 才重试;失败不
钉表后下一次进页/按键自然重试,与 soe_store 读者同纪律。
- FR_NO_PATH(从未录过波)仍归「0 段」并钉表,设计原口径不动。
- 失败分支补带 FR 码的留痕(opendir/readdir 各一条 DBG_ERROR),
「FR_OK 但零条目」加一条 DBG_INFO(留痕行正文以
「ui wave scan」前缀区分,tag 用本文件既有的 [UI_TASK])
——根因判读表见执行手册 §3,
板级远程开一次回放页即可定性,不必猜。
- DBG_TAG 定义 + dbg_log.h 包含上收到包含区(原在 s_wave_ops 之后的
文件中部;同标签同宏,不构成行为改动,本文件既有留痕照常)。
- 体积/RAM 同码凭证随 /keil-build(0 错误 0 警告)同批刷新:
Code +8 B,RAM 不变;台账受管区水位按门禁要求随本次 .map 同步
(台账此前落后 master 既有 flash 漂移 +320 B,--write 一并拉齐)。
Refs #38
|
2026-11-02 17:07:21 +08:00 |
|