From f0300761aef2c0ab7b7149a13031e779f1d44e6e Mon Sep 17 00:00:00 2001 From: Wanderingss <1624155937@qq.com> Date: Sat, 10 Oct 2026 15:13:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B2=E5=8F=A3=E9=87=87=E9=9B=86/=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E5=8E=BB=E9=87=8D=EF=BC=9A=E5=88=A0=20tools/serial=5F?= =?UTF-8?q?tool=20=E4=B8=8E=20test/host=20run=5Fboot=5Ftest/verify=5Flog?= =?UTF-8?q?=20=E5=89=AF=E6=9C=AC=EF=BC=8C=E5=BC=95=E7=94=A8=E6=94=B9?= =?UTF-8?q?=E6=8C=87=20.dsh/skills=20=E4=B8=B2=E5=8F=A3=20skill?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dsh/skills/mem-budget/SKILL.md | 2 +- .dsh/skills/new-machine-setup/SKILL.md | 2 +- .dsh/skills/new-source-file/SKILL.md | 2 +- .../serial-boot-test/scripts/verify_log.py | 2 +- .gitignore | 4 +- AGENTS.md | 12 +- README.md | 13 +- docs/README.md | 2 + docs/UI设计/UI_界面制作流程.md | 2 +- docs/产品需求/产品需求设计文档.md | 4 +- docs/内存管理/RAM使用分析与优化方案.md | 6 +- docs/内存管理/data/stack_report_20260921.md | 2 +- docs/内存管理/data/stack_report_20261010.md | 2 +- docs/内存管理/内存内容分配策略.md | 4 +- docs/子系统设计/ADC采样节拍设计说明.md | 202 +++ docs/子系统设计/看门狗设计说明.md | 2 +- docs/测试说明/ST-LINK_CLI_复位使用说明.md | 10 +- docs/测试说明/boot_log_data/README.md | 6 +- docs/测试说明/m2_data/README.md | 6 +- docs/测试说明/串口助手使用指南.md | 32 +- docs/测试说明/串口助手设计说明.md | 18 +- docs/测试说明/实机测试实施指南.md | 10 +- docs/测试说明/测试开发标准流程.md | 10 +- docs/测试说明/自动化测试流程.md | 10 +- docs/测试说明/链路延迟测试说明.md | 10 +- docs/环境与部署/Gitea_Runner部署指南.md | 12 +- docs/环境与部署/项目部署环境要求.md | 18 +- docs/问题记录/项目审查与优化建议报告.md | 2 +- scripts/README.md | 2 +- test/README.md | 4 +- test/board/README.md | 2 +- test/host/README.md | 4 +- test/host/run_boot_test.py | 501 ------ test/host/verify_log.py | 448 ------ test/run_all_suites.py | 6 +- tools/README.md | 3 +- tools/serial_tool/README.md | 47 - tools/serial_tool/serial_tool.py | 1376 ----------------- 38 files changed, 314 insertions(+), 2486 deletions(-) create mode 100644 docs/子系统设计/ADC采样节拍设计说明.md delete mode 100644 test/host/run_boot_test.py delete mode 100644 test/host/verify_log.py delete mode 100644 tools/serial_tool/README.md delete mode 100644 tools/serial_tool/serial_tool.py diff --git a/.dsh/skills/mem-budget/SKILL.md b/.dsh/skills/mem-budget/SKILL.md index 38a4da4f..2dcef7c7 100644 --- a/.dsh/skills/mem-budget/SKILL.md +++ b/.dsh/skills/mem-budget/SKILL.md @@ -15,7 +15,7 @@ whenToUse: 新增任务/加大缓冲/改栈/接入日志之前之后、链接报 # scripts/ram_report.py (.map → RAM/Flash 分区与按文件占用表) # scripts/stack_report.py (.htm 静态调用图 → 每任务最坏链 vs 配置栈) # 叠加运行时水位(有真机日志时): -& '.venv\Scripts\python.exe' scripts/stack_report.py -s tools\serial_tool\state\serial.log +& '.venv\Scripts\python.exe' scripts/stack_report.py -s .dsh\skills\serial-assistant\scripts\state\serial.log ``` 退出码:0=全部通过 / 1=有任务不达标 / 2=解析错误(.htm/.map 缺失先重跑构建)。 diff --git a/.dsh/skills/new-machine-setup/SKILL.md b/.dsh/skills/new-machine-setup/SKILL.md index 6f7936bc..3b63667b 100644 --- a/.dsh/skills/new-machine-setup/SKILL.md +++ b/.dsh/skills/new-machine-setup/SKILL.md @@ -32,7 +32,7 @@ whenToUse: 换新机器/新克隆要把环境搭起来、构建或烧录报"环 `Get-PnpDevice -Class Ports` 能看到 COMx、`reset.bat list` 能看到探针 SN。 4. **验收三连**(全绿才算环境就绪): ```powershell - & '.venv\Scripts\python.exe' tools/serial_tool/serial_tool.py selftest # 23/23 PASS + & '.venv\Scripts\python.exe' .dsh/skills/serial-assistant/scripts/serial_tool.py selftest # 23/23 PASS & "MDK-ARM\build.bat" # exit 0 & "MDK-ARM\reset.bat" list # 列出探针 ``` diff --git a/.dsh/skills/new-source-file/SKILL.md b/.dsh/skills/new-source-file/SKILL.md index 09806a2b..7b23c98e 100644 --- a/.dsh/skills/new-source-file/SKILL.md +++ b/.dsh/skills/new-source-file/SKILL.md @@ -36,5 +36,5 @@ cmake --build simulator/build --config Debug # 0 警告 - **禁止**把源文件复制进 `simulator/`——两端共用 `Drivers/BSP/` 原件(UI_界面制作流程.md C7) - 只注册 `.c`(含 `.s`);`.h` 靠 include 路径找到,不加工程 - 漏注册的典型症状:一端编译失败(undefined reference)或一端行为悄悄停留在旧逻辑 -- 注册完成后跑回归:UI 文件 → `ui-verify` skill;其他模块 → `@test`(`test/host/run_boot_test.py`) +- 注册完成后跑回归:UI 文件 → `ui-verify` skill;其他模块 → `@test`(`.dsh/skills/serial-boot-test/scripts/run_boot_test.py`) - 改过 `CMakeLists.txt` 后需重新 `cmake -B build` 配置 diff --git a/.dsh/skills/serial-boot-test/scripts/verify_log.py b/.dsh/skills/serial-boot-test/scripts/verify_log.py index a036def6..39f35543 100644 --- a/.dsh/skills/serial-boot-test/scripts/verify_log.py +++ b/.dsh/skills/serial-boot-test/scripts/verify_log.py @@ -5,7 +5,7 @@ 输出结构化判定(格式与旧 PowerShell 版逐字一致,下游文档/习惯不受影响)。 用法: - & '.venv\\Scripts\\python.exe' test/host/verify_log.py --log-path + & '.venv\\Scripts\\python.exe' .dsh/skills/serial-boot-test/scripts/verify_log.py --log-path [--required 'marker1;marker2'] [--forbidden 'FAIL;ERROR;HardFault;assert;[ERR]'] [--require-suite-summary 'Storage Tests;GD5F2GQ5UE Tests'] diff --git a/.gitignore b/.gitignore index b06ee784..647a78fc 100644 --- a/.gitignore +++ b/.gitignore @@ -128,8 +128,8 @@ docs/images/*.png # Python venv (unified env, see AGENTS.md "Python 环境"; rebuild via requirements.txt) .venv/ -# Serial assistant (tools/serial_tool) runtime state (daemon log/meta, local runtime artifacts) -tools/serial_tool/state/ +# Serial assistant runtime state (daemon log/meta, local runtime artifacts) +.dsh/skills/serial-assistant/scripts/state/ # CI 运行时产物(.gitea/workflows/ci.yml 的 S3 步骤在 runner 工作区落盘的日志; # 零依赖存档方案——落在工作区目录而非上传 artifact,故必须忽略以免误提交) diff --git a/AGENTS.md b/AGENTS.md index bcc340fc..5a2472b5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -16,7 +16,7 @@ STM32F407ZGTx @168MHz(HSE 8MHz → PLL M=4/N=168/P=2);**仅 Keil MDK-ARM v ## 构建与验证 - `@build` = `& "MDK-ARM\build.bat"`(仓库根目录用**相对路径**);退出码 0 = 0 错误 0 警告,1 = 有警告或错误(查 `MDK-ARM/build_log.txt`),2 = `DTU_KEIL_UV4` 未设/无效(换机必设,见 `docs/环境与部署/本地工具路径环境变量方案.md`);UV4 路径经 `DTU_KEIL_UV4` 环境变量解析(**不再硬编码**;显式设置但无效会立即报错、不静默回退) -- `@test` / `test/host/run_boot_test.py` 一键闭环(2026-09-20 起为纯 Python 标准库实现,替代 PowerShell 版;`& '.venv\Scripts\python.exe' test/host/run_boot_test.py`):开串口+清日志 → 烧录(`MDK-ARM/download.bat`,下载后 Reset&Run;快路径 `--flash-cmd "MDK-ARM\reset.bat flash"`)→ **固件身份戳**(从刚烧进去的 hex 里抠 `fw build: