chore(全仓): @build/@test 旧文档别名清退为技能调用名
现状口径:/keil-build 与 /serial-boot-test 是 DSH 会话的技能调用名, 不是 shell 命令;「名 + 命令行参数」的命令形态改为可执行体 run_boot_test.py 的真实调用。 - AGENTS.md:别名说明重写为「技能调用名不是 shell 命令」,两条目改 「编译(/keil-build)」「串口回归(/serial-boot-test)」 - keil-build / serial-boot-test 两 skill 调用名与示例同步;task-worktree 方案文档去掉 @build/@test 惯例从句;@task 保留(不在点名范围) - 123 文件现状陈述全改;台架捕获、变更记录/时间线、rename 映射输入 等 41 行历史证据保留旧名 - gen_memory_svg.py 6 处措辞随改,3 张 SVG 产物同批重跑 - 顺手补并行方案同行漏网计数 51→52 钩子 验证:提交期快钩子对 123 文件实跑全 Passed;check_doc_links --all rc=0(3038 处、无法判定 0);check_mermaid --all rc=0;YAML 解析 52 钩子不变;skill-size rc=0;py_compile 全过;字节卫生零漂移。
This commit is contained in:
@@ -506,7 +506,7 @@ static int cmd_pass(lftpd_client_t *client, const char *arg)
|
||||
send_simple_response(client->socket, 230, STATUS_230);
|
||||
return 0;
|
||||
}
|
||||
/* 预期事件(爆破/配错口令):用 INFO 而非 ERROR——[ERR] 是 @test Forbidden 标记 */
|
||||
/* 预期事件(爆破/配错口令):用 INFO 而非 ERROR——[ERR] 是 /serial-boot-test Forbidden 标记 */
|
||||
if (res == FTP_AUTH_LOCKED) {
|
||||
lftpd_log_info("auth locked after %u failures", (unsigned)FTP_AUTH_FAIL_MAX);
|
||||
} else {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
* 对端行为级别(既不是缺陷,也不该长得像缺陷)——
|
||||
* 控制连接被对端关闭 / 客户端连上就走 / PASV 之后不来数据连接 / 网络重建导致
|
||||
* 监听重建,这些都是**外部输入决定的正常收尾**。它们原先记 error 级,代价实测:
|
||||
* ① 本仓 @test 的 Forbidden 标记含 `[ERR]`(它同时是四个 Fault 崩溃日志的前缀),
|
||||
* ① 本仓 /serial-boot-test 的 Forbidden 标记含 `[ERR]`(它同时是四个 Fault 崩溃日志的前缀),
|
||||
* 于是"FileZilla 关了个窗口"就能把一次启动测试判 FAIL;② 任何人对着 21 端口
|
||||
* 连一下就走,就能无限制造固件级 ERROR 日志(日志面 + 门禁面都能被外部驱动)。
|
||||
* 所以这一类降为 info,并单独起一个名字,让"谁是真故障"在读代码时就一目了然。
|
||||
|
||||
@@ -446,7 +446,7 @@ void sb_link_on_error(UART_HandleTypeDef *p_huart)
|
||||
* 2. 上报每 SB_LINK_REPORT_MS 一次,**只有计数有变化才打**;RX 与 TX 各一行,
|
||||
* 分开是因为控制台单行上限 192 字符,塞一行会被截断(截断的行比不打印更误导)。
|
||||
* 3. 第一帧成功收到时立刻单独打一行,台架刚上电就能确认"链路通了、长度对、CRC 过"。
|
||||
* 4. ⚠ TX 行的字段名**不能含 fail**:`@test` 的 forbidden 模式是
|
||||
* 4. ⚠ TX 行的字段名**不能含 fail**:`/serial-boot-test` 的 forbidden 模式是
|
||||
* `FAIL;ERROR;HardFault;[ERR]` 且**大小写不敏感**,写 `fail=0` 会让每次启动
|
||||
* 自检都判红(2026-10-29 实测,被自己的日志字段坑了一次)。故用 kerr / abor。
|
||||
*/
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
* 自洽假绿(见 test/host/net_socket/run_unit_test.py 的注释)。
|
||||
* ⚠ 本注释块内禁止出现"斜杠紧跟星号"的连写(Markdown 粗体收尾在路径末尾时最容易
|
||||
* 撞上,例如目录通配那种写法):ARMCC 报 #9-D nested comment is not allowed,
|
||||
* 而 @build 的验收口径是 0 错误 **0 警告**(2026-10-25 首编即中招,已改)。
|
||||
* 而 /keil-build 的验收口径是 0 错误 **0 警告**(2026-10-25 首编即中招,已改)。
|
||||
* 适用平台:STM32F407ZGTx(ARMCC v5,C99);PC 模拟器与主机侧单测(MSVC)同标准
|
||||
* 作者:王建锋
|
||||
* 创建日期:2026-10-25
|
||||
@@ -43,7 +43,7 @@ extern "C" {
|
||||
* 开关:**默认关闭 = 产品构建**。
|
||||
* 打开方式 = 取消下一行注释。策略与 test/board/test_config.h 的
|
||||
* ENABLE_DESTRUCTIVE_TESTS 同级:默认必须关闭,严禁以打开态提交。
|
||||
* ⚠ 关闭态是 @build 的验收口径:"0 错误 0 警告" 且 .map 无新增符号
|
||||
* ⚠ 关闭态是 /keil-build 的验收口径:"0 错误 0 警告" 且 .map 无新增符号
|
||||
* (规格 §2.1 完成判据)。本宏不新增任何 .c,故不涉及双端注册。
|
||||
*/
|
||||
//#define APP_ASSERT_ENABLE
|
||||
@@ -119,7 +119,7 @@ extern void vApplicationAssertFailed(const char *file, long line);
|
||||
* 里打开,**跑完必须还原成注释态**。
|
||||
* 4. 断言条件**不得带副作用**:关闭态不求值、打开态才求值,带副作用等于让行为
|
||||
* 随开关漂移——这是本宏唯一真正危险的误用形态。
|
||||
* 5. 台架口径:MCU 钩子打印以 [ERR] 开头 → 真机上断言一旦触发,@test 必然判本次
|
||||
* 5. 台架口径:MCU 钩子打印以 [ERR] 开头 → 真机上断言一旦触发,/serial-boot-test 必然判本次
|
||||
* 失败,这是刻意的(AGENTS「Forbidden 标记含 [ERR]」/ 出现 Fault 即不通过)。
|
||||
*/
|
||||
|
||||
|
||||
Reference in New Issue
Block a user