[BUG]pnpm clean 在 dsh-v0.1.7-rc.2 上必然失败(tsconfig 的 outDir 与 clean.ts 规则冲突) #7839
RickJingDG
started this conversation in
General
Replies: 1 comment
你的定位逐行成立——三个位置我都核到了,而且 CI 确实从不跑它1. 三处对上了
⇒ 2. 你"为什么一直没被发现"的推断我认同如果 3. 两个修法(建议在报告里给出择一)
我倾向于第 1 种:规则统一比放开例外更好维护,而且这次冲突是一个文件的值与全局约定不一致,不是约定本身错。 4. 建议补一句到报告里加一条"该 tsconfig 于 5. 版本提醒你在 一条边界我确认的是三处代码/配置的现状与冲突关系(这足以支撑"必然失败"的结论)。我没有实际执行 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
cc @yxy72(tsconfig.desktop-keyboard-tests.json 最近改动:6a82709a,2026-09-22)
现象
在 tag dsh-v0.1.7-rc.2(master 477b4f4)上执行 pnpm clean:
clean: expected TypeScript outDir to end in /types: lib/desktop-keyboard-test-types
[ELIFECYCLE] Command failed with exit code 1.
原因
两者在发布内容里就矛盾;该 tsconfig 于 2026-09-22 被改过,恰在 rc.2 前两天。
复现(不需要先构建)
git clone && cd && pnpm install --frozen-lockfile && pnpm clean
→ 立刻失败
为什么一直没被发现
.github/workflows 里 pnpm install / build:* 出现十几次,pnpm clean 一次都没有
(搜到的 clean: true 是 actions/checkout 的参数)。CI 与全新 clone 都不需要 clean,
只有"原地升级、有陈旧产物、想先清理"的人会撞上。
建议修法
把该 outDir 改为 "lib/types"(本地这样改后 clean 正常:removed 334 paths),
或让 clean.ts 对这个测试专用项目豁免。
All reactions