macOS CI: build from the dev clone's engines, never from scratch past the 3h runner limit (L1.8)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5accf492ba
commit
60d82d0c5e
10 files changed
+85
-2
No files matched your search
+1
-1
@@ -208,4 +208,4 @@
|
||||
- [x] L1.5 Linux 包:deb、rpm、Arch(pkg.tar.zst)、AppImage 出自同一份分装,装到 `/opt/ely-office/<应用>`,带桌面项、图标与文件类型;依赖按 `packaging/linux/depends.tsv`;LibreOffice 的 cairo RUNPATH 改为 `$ORIGIN`;`tests/scripts/linux-packages.sh` — R1 列举与读错被吞、坏入口照过、无执行位;R2 坏 git-lfs 照过;R3 PASS
|
||||
- [x] L1.6 本机出六个应用的四种包;Omarchy 上装 Arch 包与 AppImage 出窗口;deb、rpm 在各自发行版的容器里装上并冒烟;`linux-installed.sh`、`linux-distros.sh`、`linux-mark-idle.sh` — R1 deb/rpm 未运行、外部改动未核对显示;R2 内核未出图也过、OCR 大小写、清理竞态;R3 公式栏冒充网格、OCR 与 pgrep 错误被吞;R4 取色、存活、截图错误被吞;R5 hyprctl 查询失败被当作未出窗口(第五轮后修正并以注入失败核对)
|
||||
- [x] L1.7 v0.1.3:删去旧 AppImage,上传新包;`ci.sh` 的 Linux 产出四种包;agents.md 与官网随之(官网只链到发布页,无需改);`package.sh` 拒绝指向包外的 RUNPATH;Linux CI 进容器;`packaging/source.sh` 随发布上传本提交的源码 — R1 前缀检查可越出、读错被吞、CI 未进容器、无对应源码;R2 空项、拆分错误、未跟踪文件;R3 换行、git 配置;R4 `]` 加换行;R5 末尾换行(第五轮后修正并以编译的 ELF 核对)
|
||||
- [ ] L1.8 macOS 发布:CI 从零编 LibreOffice 超过 act_runner 的 3 小时被杀(v0.1.3 无 dmg);Mac 任务以 `ELY_SHARE` 借用 Mac mini 开发克隆 `ElyOfficeSuite` 的引擎,CI 克隆里自建的残留引擎即报错而非混用
|
||||
- [x] L1.8 macOS 发布:CI 从零编 LibreOffice 超过 act_runner 的 3 小时被杀(v0.1.3 无 dmg);Mac 任务以 `ELY_SHARE` 借用 Mac mini 开发克隆 `ElyOfficeSuite` 的引擎,CI 克隆里自建的残留引擎即报错而非混用;`tests/scripts/ci-share.sh` — R1 链接目标末尾换行;R2 测试只看文字;R3 目标仍截换行、reference 未测;R4 未按 macOS 跑;R5 PASS
|
||||
@@ -0,0 +1,3 @@
|
||||
FAIL
|
||||
|
||||
scripts/ci.sh:24 — Command substitution strips trailing newlines from `readlink` output, allowing a link to the wrong directory through the ELY_SHARE guard. If `engines` points to the existing directory `"$ELY_SHARE/engines"$'\n'`, its target compares equal to `$ELY_SHARE/engines`, and packaging proceeds using that other directory. The same bypass affects `reference`. Both isolated probes reached packaging instead of rejecting the link; evidence: `.work/L1.8-r1-probes.log`. Preserve the complete link target when comparing it, and add regression tests covering this case alongside correct links, local directories, and ordinary wrong links.
|
||||
@@ -0,0 +1,3 @@
|
||||
FAIL
|
||||
|
||||
tests/scripts/ci-share.sh:25 — The helpers check diagnostic text rather than the required outcomes, and `attempt` discards CI's exit status. In disposable copies, removing the guard's `exit 1` leaves all five tests green although a local `engines` directory reaches packaging; replacing link creation with a no-op also leaves them green although neither required link exists. Both failures were reproduced using a local packaging stub; evidence: `.work/L1.8-r2-probes.log`. Preserve the exit status, assert rejected layouts stop before packaging, and check that the absent-directory case creates both links with the exact requested targets.
|
||||
@@ -0,0 +1,7 @@
|
||||
FAIL
|
||||
|
||||
tests/scripts/ci-share.sh:33 — The exact-target assertion still strips trailing newlines: `$(target ...)` removes them after the helper preserves them. In a disposable copy, changing link creation to append a newline to each target leaves the entire suite green, although both links point elsewhere and CI reaches the local packaging stub. The two round 2 mutations now correctly fail, but this target assertion remains incomplete. Preserve a sentinel through the comparison and check the complete stored target. Evidence: `.work/L1.8-r3-probes.log`.
|
||||
|
||||
tests/scripts/ci-share.sh:44 — All rejection cases exercise only `engines`, leaving rejection of a local or misdirected `reference` untested. Restricting the guard to `engines` leaves the suite green; a separate macOS probe then reaches packaging with a local `reference` directory. Exercise rejected layouts for both entries and assert that each stops before packaging. Evidence: `.work/L1.8-r3-probes.log`.
|
||||
|
||||
tests/scripts/ci-share.sh:29 — The new inline comment has eleven words: “name, setup; the check lets it through to the release step”. This violates the ten-word comment limit; the existing comment checker misses inline shell comments and passes. Shorten the comment to ten words or fewer. Evidence: `.work/L1.8-r3-tests.log`.
|
||||
@@ -0,0 +1,3 @@
|
||||
FAIL
|
||||
|
||||
tests/scripts/ci-share.sh:24 — Every case runs the fictitious `probe` platform, leaving macOS rejection untested. In a disposable copy, changing the guard from `[ "$os" != windows ]` to `[ "$os" != macos ]` leaves the suite green; running that copy with `macos` and a local `engines` directory reaches the packaging stub (exit 71), violating L1.8. Exercise `macos` with a local packaging stub, asserting that valid links reach it and rejected layouts stop before it. Evidence: `.work/L1.8-r4-probes.log`.
|
||||
@@ -0,0 +1 @@
|
||||
PASS
|
||||
Reference in new issue
Block a user