Repository navigation
[Bug]: required checks job is red on main — research-finding-reader asserts the retired 待检查 tentative label #7480
Description
Problem
The required dashboard-browser (2) and chat-bundle-browser (2) shard jobs deterministically fail on main because the packaged research-finding-reader scenario still asserts the retired 待检查 tentative-finding label. checks needs both jobs (dashboard-acceptance needs dashboard-browser, and checks also needs chat-bundle-browser), so it cannot pass while that mismatch exists.
The hosted failure at an ancestor commit is:
AssertionError [ERR_ASSERTION]: The input did not match the regular expression /已反驳 3.*待检查 4/. Input:
'已反驳 3 · 暂定结论 4'
The shipped reader labels a tentative finding 暂定结论 ("Tentative"). That name was deliberately chosen by #7368 (fix(research): distinguish tentative findings from queued checks) because a tentative finding is not a queued check; the copy's help text says so explicitly. The acceptance scenario still pins the retired 待检查 label in three assertions (lines 64, 118 and 181), so it aborts before the rest of the shard runs.
Why this is important
- These are required shard jobs:
checksaggregateschat-bundle-browseranddashboard-acceptance(which requiresdashboard-browser). A deterministic failure there blockschecksand thereforemerge-gatefor every PR whose change triggers the core-test matrices — most non-doc changes. - The abort happens at line 64, before the remaining ~166 lines of assertions in this scenario and the eight later shard-2 scenarios, so any regression behind it is hidden.
- The shipped reader's acceptance test no longer matches its shipped copy, so the label protection it exists for is silently disabled.
Minimal reproduction
cd apps/presentation/dashboard
npm run build:chat # or download the chat-bundle artifact as CI does
LOOPX_PERSONAL_WORKSPACE_PACKAGED=1 \
LOOPX_PERSONAL_WORKSPACE_SCENARIO=research-finding-reader \
LOOPX_PLAYWRIGHT_PACKAGE="$PWD/node_modules/playwright" \
node ../../../examples/personal-workspace-browser-smoke.mjsAt 17b2a0f9b (native Windows here; CI runs the same scenario on ubuntu), the command exits 1 with the assertion above (actual: '已反驳 3 · 暂定结论 4', expected: /已反驳 3.*待检查 4/).
Public CI evidence
Main run https://github.com/loopx-project/loopx/actions/runs/40454462809 (head 218aa087b, an ancestor of the current base; the run at 17b2a0f9b was cancelled before jobs started):
dashboard-browser (2)job https://github.com/loopx-project/loopx/actions/runs/40454462809/job/122026651827 — fails on this assertion.chat-bundle-browser (2)job https://github.com/loopx-project/loopx/actions/runs/40454462809/job/122026651893 — fails on the same assertion.checksjob https://github.com/loopx-project/loopx/actions/runs/40454462809/job/122034119425 — in that run it failed first on the TypeScript-core regression that test: align release fixtures with canonical authority and replan contracts #7459 has since fixed. The browser failures above are independently sufficient to failchecks, but that specificchecksresult does not by itself isolate this label as the cause.
Expected behavior
The scenario follows the shipped 暂定结论 label and the shard continues.
Actual behavior
The scenario fails on the retired 待检查 label; both shard-2 jobs fail, and checks cannot pass.
Proposed fix
Update the three stale assertions to the shipped label. No product behavior changes. Two other leftovers from #7368 remain outside that fix: examples/research-history-lark/board.mts:41 and examples/personal-workspace-browser/research-history.md:195.
Version and environment
- LoopX commit:
17b2a0f9b(main) - Host: not host-specific (CI is ubuntu; also reproduced on native Windows)
- Area: public presentation surface (dashboard) acceptance smoke
Activity
test(workspace): follow the renamed tentative-finding label (#7482)