wandering1
|
e241fea801
|
CI:run 脚本改纯 ASCII(PS5.1 按 GBK 解码临时 ps1)
CI / L0 静态门禁 (pre-commit) (push) Failing after 17s
CI / L0.5 主机侧单测 (MSVC) (push) Successful in 16s
第二次 CI 运行(run#2)仍失败,但失败点前移:
pwsh 问题已修(环境自检步骤确实由 Windows PowerShell 5.1 执行)
新错误:TerminatorExpectedAtEndOfString @ 含中文那一行
根因:runner 把每个 run: 块写入临时 .ps1(无 BOM)交 PS5.1 执行,
PS5.1 按 GBK/CP936 解码 → UTF-8 中文字节与相邻引号错位 →
字符串缺少终止符(报错行号即含中文行,极易误判)。
与 AGENTS.md「字符串字面量必须纯 ASCII」同源。
处置:所有 run: 块内改为纯 ASCII(提示语改英文),中文仅保留在
YAML 的 name:/注释(Gitea 按 UTF-8 读、不喂 PowerShell,安全)。
workflow 头部补该坑说明。已用脚本核验 run: 块内零非 ASCII。
|
2026-10-02 01:17:24 +08:00 |
|
wandering1
|
09e45573c8
|
CI:修正 workflow 的 shell 为 powershell(pwsh 不存在)
CI / L0 静态门禁 (pre-commit) (push) Failing after 17s
CI / L0.5 主机侧单测 (MSVC) (push) Failing after 16s
首次 CI 运行(run#1)两个 job 均失败于同一处:
Cannot find: pwsh in PATH
根因:workflow 用 shell: pwsh(PowerShell 7,非 Windows 自带),
而 runner 所在机器只有 Windows PowerShell 5.1。
改为 shell: powershell(7 处)。已核验脚本无 PS7 独有语法
(无 ?? / ?: / && / || / -Parallel),PS 5.1 完全兼容。
workflow 头部补该坑说明,防止将来误改回 pwsh。
注:本次 CI 已验证 actions/checkout@v4 可从本实例正常拉取并
成功检出 v2-on-ui,action 拉取链路无需调整。
|
2026-10-02 01:11:45 +08:00 |
|
wandering1
|
e90486524d
|
CI:Gitea Actions 落地 L0+L0.5(补 T-6)
新增 .gitea/workflows/ci.yml:push/PR 触发两个 Windows job——
l0-gates 跑 pre-commit --all-files(无 Keil .map 时自适应跳过 mem-numbers),
l05-host-unit-tests 遍历 test/host/**/run_unit_test.py(缺 MSVC 则告警降级跳过)。
刻意不跑 @build(需 Keil 授权);L1/L2/L3 需真机+ST-LINK,不上 CI。
新增 scripts/ci_local.py:本地跑与 CI 等价的门禁(自动选用装了 pre-commit
的解释器;.map 自适应;退出码 0/1/2 与 CI 对齐),供提交前自查与 runner 就绪前过渡。
文档同步:测试开发标准流程 §9(CI 章节)/§1/§4.1、待处理内容 T-6 销项、
项目部署环境要求 §2.11(runner 前置)、pre-commit 使用说明 §1、scripts/README.md、AGENTS.md。
验证:scripts/ci_local.py rc=0(L0 14 钩子全过 + L0.5 39/39)。
|
2026-10-01 10:19:38 +08:00 |
|