
oh-my-openagent 的 ulw-loop 组件质量门禁 RED→GREEN 验证实录Biome 2.5 迁移下的组件级与仓库级清理闭环【免费下载链接】oh-my-openagentOmO: Just type mass ulw keyword with your prompt. Now you are the master of graph engineering.项目地址: https://gitcode.com/gh_mirrors/oh/oh-my-openagent本文基于 oh-my-openagent 仓库中 .omo/evidence/20260824-ulw-loop-check-cleanup 证据目录完整复盘一次针对ulw-loopdurable repo-native multi-goal orchestration组件的质量门禁修复从捕获正确的 RED、逐项修复到 GREEN、扩展清理全部 Codex 插件组件的同类债务再到根级 Codex 门禁与隔离真实 Codex 环境的回归验证。读完本文你将掌握一条可复用的证据驱动 RED→GREEN→回归→清理质量闭环方法论以及 Biome 2.5 升级在大型 monorepo 中落地的具体坑位与处理范式。背景ulw-loop 组件与它的质量门禁ulw-loop是 Codex 插件组件用于持久的、仓库原生的多目标编排内嵌成功标准success criteria与可观测证据审计observable evidence audit。状态存放于.omo/ulw-loop/并通过omo-agent-toolkit ulw-loopCLI 变更。其完整能力CLI 子命令表、质量门禁字段、四类 hook、skill 与 directive 的打包方式见 packages/omo-codex/plugin/components/ulw-loop/README.md。该组件的质量门禁定义在 package.json 中是证据文件反复引用的exact failing commandnpm --prefix packages/omo-codex/plugin/components/ulw-loop run check对应的check脚本为check: tsc --noEmit biome check . npm run build即一个命令串联三道闸TypeScript 类型检查tsc --noEmit→ Biome 检查biome check .→ 构建tsc -p tsconfig.build.json bun build src/cli.ts --target node --format esm --outfile dist/cli.js。配套脚本还包括lintbiome check .、lint:fixbiome check --write .、testVitest与typecheck。该组件的 Biome 版本为biomejs/biome: 2.5.9TypeScript 为^7.0.2Node 要求20.0.0。证据基线一次可复现的正确 RED捕获质量闭环的第一步不是直接修代码而是先把失败的基线固定成证据。证据目录中的 red-check.txt 记录了修复前的基线退出码npm ... run check返回1。Biome 检查范围共检查 82 个文件报告3 个 error、1 个 warning、2 个 configuration info均不导致失败。逐条错误对应到具体文件与原因级别文件问题errorsrc/codex-hook.tsformatter 输出不一致格式漂移errortest/package-smoke.test.ts嵌套 hooks 命令查找处使用了不安全的可选链unsafe optional chainingerrortest/steering.test.tsformatter 输出不一致warningtest/package-smoke.test.ts模板字面量内多余转义双引号info—biome.json schema URL 为 2.4.16而安装的 CLI 为 2.5.9info—当前 linter 配置形态包含一个已弃用deprecated键这份证据同时给出为什么这是正确的 RED的论证这恰好是先前披露过的三个失败文件完整组件检查先通过了 TypeScript仅在 Biome 阶段、在构建之前失败——这说明类型层面与产物层面是健康的债务集中在静态检查与格式化层面修复风险可控。这一论证很重要它界定了 RED 的边界避免把不相干的失败混入基线。从 RED 到 GREEN三类修复的拆解修复结果记录在 green-check.txt同一命令退出码变为0tsc --noEmit通过Biome 检查 82 个文件零诊断构建通过。结合 validation.txt 的 diff 审查结论可以把改动精确归类为三类1. 纯格式化修复零行为影响src/codex-hook.ts与test/steering.test.ts属于 formatter-only 改动。这与 biome.json 中 formatter 的严格约束直接相关indentStyle: tab、indentWidth: 3、lineWidth: 120、formatWithErrors: false且files.includes只覆盖src/**/*.ts、test/**/*.ts、vitest.config.ts排除node_modules与dist。任何行宽、缩进或换行与规则不符的提交都会在此处报 formatter 差异。2. 测试代码的可选链与转义清理断言更严谨test/package-smoke.test.ts的修复属于升级断言质量把不安全的可选索引替换为完整可选链 显式字符串断言并移除模板字面量中不必要的转义。修复后的形态可以直接在当前仓库源码中看到——test/package-smoke.test.ts 中嵌套 hooks 命令查找已写成全链可选的形式const command (events[0]?.[hooks] as readonly Recordstring, unknown[] | undefined)?.[0]?.[command];随后对command逐项断言包含${PLUGIN_ROOT}插值、包含dist/cli.js、包含hook user-prompt-submit、包含--with-ultrawork。这比原先假定嵌套存在的写法更严格也让插件钩子命令必须由 PLUGIN_ROOT 插值解析这一发布契约变得可验证。3. Biome 配置迁移CLI 预览驱动的等价迁移biome.json应用了 CLI 迁移预览的结果$schema从 2.4.16 更新到2.5.9linter 配置改用preset: recommended形态。当前仓库中的 biome.json 即迁移后的终态preset: recommended之上叠加stylenoDefaultExport、noEnum、noNonNullAssertion、useImportType、useConst为 erroruseNodejsImportProtocol关闭、complexityuseLiteralKeys关闭、suspiciousnoExplicitAny、noTsIgnore为 error等策略并用overrides对vitest.config.ts单独关闭noDefaultExport。关键点是这是一次配置形态迁移而不是 lint 策略变更——证据中明确CLI-previewed, no policy change。扩展到全 Codex 插件组件同类债务全景修完ulw-loop只是第一步。证据目录中的 expanded-checks.txt 记录了触发条件user directive to fix all same-class check debt; context review proved identical Biome 2.5 debt beyond ulw-loop。上下文审查证明Biome 2.5 的同类债务并不只存在于 ulw-loop于是扩展清理到全部 8 个 Codex 插件组件逐一执行npm run check组件RED修复前GREEN修复后comment-checkerexit 14 errors3×assist/source/organizeImports、1×format 2 config infosexit 029 测试通过lazycodex-executor-verifyexit 12 format errors 2 config infosexit 025 测试通过lspexit 1TypeScript TS2339typed McpServer fixture 中startup_timeout_sec消失exit 0248 测试通过rulesexit 121 errorsuseOptionalChain、organizeImports、format 1 warning 2 config infosexit 0165 测试通过start-work-continuationexit 0 但残留 2 config infosexit 042 测试通过telemetryexit 17 errorsuseImportType、organizeImports、format 2 config infosexit 015 测试通过ultraworkexit 11 format error 2 config infosexit 024 测试通过ulw-loopexit 0第一增量 46aacea73 已修复exit 0GREEN 汇总8 个组件全部 exit 0零 error、零 warning、零 config info各组件测试全部通过。这张表展示了组件级修复 → 同类债务横向扫描 → 批量清零的推广路径也说明同一版本升级Biome 2.5会在多个组件中呈现高度相似的错误形态format、organizeImports、useImportType、useOptionalChain适合一次性集中处理。根级门禁与隔离真实 Codex 环境回归组件全绿之后验证继续向上收拢到仓库根级门禁与真实运行环境根级 Codex 门禁bun run test:codex通过最终 Node 测试阶段493/493 通过0 失败0 跳过。隔离真实 Codex QA沙箱化common.sh自检通过install-verify通过插件 cache、config、bins、agent TOML 全部出现在沙箱内app-server-drive --plugin通过一个完整 turn 结束sessionStart/userPromptSubmit钩子均被触发。真实用户配置不可变真实~/.codex/config.toml的 hash 保持为c5f0992836d5be1988c09454d66521dcb6ff6321即沙箱安装过程没有污染真实环境。这条链路的完整性在于组件门禁check只证明代码静态正确根级测试门禁test:codex证明集成正确而隔离真实 Codex 的驱动证明在真实插件宿主中 hook 真的会触发、配置真的不被改写。三者缺一不可。行为审计非格式化编辑的等价性论证扩展清理中并非所有改动都是格式化validation.txt 对每一处非格式化改动给出了等价性论证lsp 的test/package-smoke.test.tsstartup_timeout_sec不再依赖已消失的类型字段改为对发布的.mcp.json文档做字面比较断言timeout 10 仍然锁定并新增 cwd 断言typed command/args 检查保留。关键原则是no lying casts——不通过伪造类型来掩盖字段消失。rules 的src/static-injection.tstranscriptText ! null .includes(...)改为transcriptText?.includes(...)对string | null类型语义等价。rules 测试picomatch 版本 pin 为^4.0.5与发布的 package.json 精确一致。其余全部改动为 import 组织、formatter 换行与 biome.json schema/preset 迁移无任何 shipped 行为或 lint 策略变化。这种每处非格式化改动都附带等价性论证的做法正是该证据包可信度高的原因——审阅者不需要信任声明而是可以逐条核对。聚焦验证与证据纪律在组件与仓库两个层面之外还有一层聚焦验证validation.txt受影响文件的聚焦测试test/codex-hook.test.ts、test/package-smoke.test.ts、test/steering.test.ts三文件75 个测试全部通过变更文件的 LSP 诊断三个文件均无诊断git diff --check通过无空白错误。证据纪律同样被显式记录不保留任何含密钥、认证头或凭据的输出README 与各证据文件均声明 No secret-bearing logs, tokens, credentials ... were retained。清理动作包括setup 重新生成的 codegraph dist 与install-local.mjsdrift 通过git restore恢复为提交时的字节与可执行权限Codex QA 沙箱由驱动自行移除。可复现清单如何在当前仓库重放这条闭环若想在本仓库独立重放上述验证按以下顺序执行即可命令与 ulw-loop README 的 Local Development 节 一致# 1. 组件级安装依赖并跑质量门禁 cd packages/omo-codex/plugin/components/ulw-loop npm install npm test npm run typecheck npm run check npm pack --dry-run # 2. 根级Codex 集成门禁最终 Node 阶段 493/493 bun run test:codex本地真实 Codex 安装与 QA 则通过npx lazycodex-ai install完成安装器会把插件构建并复制到~/.codex/plugins/cache/sisyphuslabs/omo/0.1.0注册 marketplace 并启用[features] plugins / plugin_hooks与[plugins.omosisyphuslabs] enabled true详见 ulw-loop README 的 Local Codex Installation 节。总结本次 20260824-ulw-loop-check-cleanup 证据包展示了一条可复用的质量闭环先固化正确的 RED基线 → 分类修复格式化 / 断言强化 / 配置迁移→ 横向扩展同类组件债务 → 根级门禁 隔离真实环境回归 → 逐条行为审计 → 证据纪律与清理。对任何正在经历 Biome 2.x 升级或希望建立可审计质量门禁的 monorepo 工程而言这份证据含 red-check.txt、green-check.txt、expanded-checks.txt、validation.txt都是一份可以直接对照执行的范本。【免费下载链接】oh-my-openagentOmO: Just type mass ulw keyword with your prompt. Now you are the master of graph engineering.项目地址: https://gitcode.com/gh_mirrors/oh/oh-my-openagent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考