Skip to content

feat: add regression-test-missing action and pr-checks (composite action + parallel workflow)#46

Open
Svtter wants to merge 11 commits into
mainfrom
feature/regression-test-missing
Open

feat: add regression-test-missing action and pr-checks (composite action + parallel workflow)#46
Svtter wants to merge 11 commits into
mainfrom
feature/regression-test-missing

Conversation

@Svtter
Copy link
Copy Markdown
Collaborator

@Svtter Svtter commented Apr 30, 2026

Summary

Closes #45

1. regression-test-missing/ composite action

Standalone action that detects PRs fixing bugs or modifying behavior without regression tests.

  • Classifies PR type (BUGFIX / BEHAVIOR_CHANGE / NEW_FEATURE / CHORE)
  • Only flags missing tests for BUGFIX and BEHAVIOR_CHANGE
  • Output: 无需回归测试 or 缺少回归测试

2. pr-checks/ composite action

Single-invocation action with a combined prompt that runs all three checks (review, feature-missing, regression-test-missing) in one opencode call. Users can reference via uses: Svtter/opencode-actions/pr-checks@v2.

3. .github/workflows/pr-checks.yml parallel workflow

Alternative: 3 parallel jobs (review, feature-missing, regression-test-missing) each calling the corresponding independent composite action.

4. .github/workflows/regression-test-missing.yml standalone workflow

5. Updated ci.yml smoke test and README

Files

File Description
regression-test-missing/action.yml Composite action
pr-checks/action.yml Composite action (combined prompt)
.github/workflows/regression-test-missing.yml Standalone workflow
.github/workflows/pr-checks.yml Parallel 3-job workflow
.github/workflows/ci.yml Updated smoke tests
README.md Updated docs

@github-actions
Copy link
Copy Markdown

可合并

总结

该 PR 新增了两个 composite action:regression-test-missing(检测 PR 缺少回归测试)和 pr-checks(合并运行 review、feature-missing、regression-test-missing 三个检查),并更新 ci.yml 增加对应 smoke test。整体实现遵循了仓库已有的 action 模式(如 review/action.yml),代码质量良好,无功能性缺陷。

阻塞项

建议项

  1. 缓存键前缀不一致regression-test-missing/action.yml:192 的 cache key 为 opencode-${{ runner.os }}-...,缺少 action 专属前缀;其他 action(如 reviewreview-opencode-pr-checkspr-checks-opencode-)均有前缀。建议统一为 regression-test-missing-opencode- 以保持一致性。

  2. 版本管理策略不一致regression-test-missingpr-checksversion 输入默认值硬编码为 "1.4.5",而 review action 使用 ""(空字符串)并读取 setup-opencode/default-version 文件。建议新 action 也遵循同一模式,避免后续版本升级时遗忘更新。

  3. 输入顺序不一致regression-test-missingmodel 输入位于 timeout-secondsprompt 之间,而 pr-checksmodel 放在所有输入的最前面。建议统一排序以提高可维护性。

New%20session%20-%202026-04-30T01%3A46%3A22.998Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 CRITICAL、1 个 MEDIUM、2 个 LOW 级别的遗漏。核心问题在于 pr-checks/ 的实现架构与规范要求完全不同。


CRITICAL

1. pr-checks 未按规范实现 3 个并行 job 分别调用独立 action

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "3 parallel jobs: review, feature-missing, regression-test-missing" 且 "Each job calls the corresponding independent composite action"
  • 实现现状: pr-checks/action.yml 是一个单步骤的 sequential composite action,通过一次 combined prompt 调用 opencode 处理全部三个检查,未复用已有的 ./review./feature-missing./regression-test-missing 独立 action
  • 影响: 规范的设计意图是三个检查互相独立、可并行执行、结果可单独查看;当前实现将所有检查耦合在单次 AI 调用中,无法独立验证每个检查的结果,也无法按需只运行某个检查
  • 建议: 由于 composite action 不支持 parallel job,应创建 .github/workflows/pr-checks.yml 工作流文件,在其中定义 3 个并行 job,分别 uses: ./reviewuses: ./feature-missinguses: ./regression-test-missing

MEDIUM

2. README 文档未更新

  • 规范要求 (Implementation Checklist): "Update README documentation if actions are documented there"
  • 实现现状: 现有 README.md 完整记录了 review、feature-missing、github-run-opencode、setup-opencode、run-opencode 的信息,但:
    • 第 26-30 行 "What it includes" 列表未包含 regression-test-missingpr-checks
    • 第 143-146 行 Usage 示例未列出新的 action 路径
    • 第 178 行 CI 描述仍写 "smoke-tests all four actions"(实为 six)
  • 建议: 在 README 相应位置添加 regression-test-missingpr-checks 的说明、用法示例和 CI 描述更新

LOW

3. 未创建 regression-test-missing 的专属 workflow 文件

  • 规范提及 (Existing Pattern): 现有 review 和 feature-missing 各有一个专属 workflow 文件 (.github/workflows/review.yml, .github/workflows/feature-missing.yml)
  • 实现现状: regression-test-missing 仅在 ci.yml 中有 smoke test,无独立的 .github/workflows/regression-test-missing.yml,与其他两个 action 的交付模式不一致。用户若想单独使用 regression-test-missing 检查需自行编写 workflow
  • 建议: 参考 .github/workflows/feature-missing.yml 创建 .github/workflows/regression-test-missing.yml

4. pr-checks 缓存未按方案 C 实现跨 job 共享

  • 规范要求: "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: 由于 pr-checks 当前是单 job 实现,无跨 job 缓存共享逻辑。且其 cache key 前缀为 pr-checks-opencode-,与其他 action 的 opencode- 不同,即使并行也无法共享
  • 建议: 在创建并行 job 工作流时,采用 actions/cache 的 save/restore 模式或统一 cache key 前缀实现跨 job 共享

New%20session%20-%202026-04-30T01%3A46%3A23.862Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 CRITICAL、1 个 MEDIUM、2 个 LOW 级别的遗漏。


CRITICAL

1. pr-checks/action.yml 复合操作未创建

  • 规范要求: Deliverable 2 和 Implementation Checklist 明确要求"Create integrated composite action directory with action.yml";PR body 也描述为"Add pr-checks/ composite action"
  • 实现现状: 仅创建了 .github/workflows/pr-checks.yml(工作流文件),未创建 pr-checks/action.yml。工作流文件用户在另一个仓库中使用时需复制粘贴,而复合操作可以直接通过 uses: Svtter/opencode-actions/pr-checks@v2 引用,复用方式完全不同
  • 建议位置: 新建 pr-checks/action.yml,采用 combined prompt 方式(如 PR body 所述)在单次 opencode 调用中完成三个检查。工作流文件 .github/workflows/pr-checks.yml 作为并行版本的补充方案保留

MEDIUM

2. pr-checks 未实现跨 job 缓存共享(方案 C)

  • 规范要求: Deliverable 2 "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: pr-checks.yml 的三个 job 各自独立调用 review、feature-missing、regression-test-missing 复合操作,每个操作的 cache key 前缀不同(review-opencode- vs regression-test-missing-opencode- 等),导致各 job 分别下载和缓存 opencode,无法共享。且 pr-checks 自身也没有统一的 cache restore/save 步骤
  • 建议位置: .github/workflows/pr-checks.yml,在三个 job 前增加共享缓存步骤,或在三个 action 中使用统一的 cache key 前缀

LOW

3. 缺少对 regression-test-missing 的独立 workflow 的 fork PR 保护

  • 规范要求: Acceptance Criteria "Follows the same architectural pattern as review and feature-missing"
  • 实现现状: .github/workflows/review.yml.github/workflows/feature-missing.yml 均有 github.event.pull_request.head.repo.full_name == github.repository 条件来跳过 fork PR;.github/workflows/regression-test-missing.yml 仅有 github.event.pull_request.draft == false,缺少 fork 保护
  • 建议位置: .github/workflows/regression-test-missing.yml:10

4. ci.yml smoke test 未覆盖 pr-checks

  • 规范要求: PR body 自身声明"Update ci.yml smoke test to cover both new actions"
  • 实现现状: ci.yml 仅添加了 regression-test-missing 的 smoke test,未包含 pr-checks 的测试(虽然 pr-checks 作为工作流不能直接用 uses: 测试,但可以通过 act 或其他方式验证,或至少在 PR body 中说明不可测试的原因)
  • 建议位置: .github/workflows/ci.yml,添加对 pr-checks 工作流的调用验证,或在 PR 描述中澄清限制

New%20session%20-%202026-04-30T01%3A57%3A49.906Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

该 PR 新增了 regression-test-missing composite action(检测缺少回归测试的 PR)和 .github/workflows/pr-checks.yml(3 个并行 job 分别调用独立的 review、feature-missing、regression-test-missing action),并更新了 README 和 CI。第二个 commit (19848ed) 已修复此前 review 中提出的所有问题:cache key 前缀改为 regression-test-missing-opencode-、version 默认值改为从 default-version 文件读取、pr-checks/action.yml 替换为正确的并行 job 工作流、新增独立 workflow regression-test-missing.yml 并更新了 README。当前代码质量良好,无功能性缺陷。

阻塞项

建议项

  1. 仅用于此仓库的 regression-test-missing.yml(以及已有的 feature-missing.yml)workflow 缺少 fork 仓库保护检查(github.event.pull_request.head.repo.full_name == github.repository),而 review.yml 有此检查。建议添加以保持安全策略一致。

  2. pr-checks.yml 中 review job 的 checkout step 有 name: Checkout PR head,而 feature-missing 和 regression-test-missing job 的 checkout step 缺少 name:。建议统一添加以提高可读性。

New%20session%20-%202026-04-30T01%3A57%3A48.231Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 CRITICAL、1 个 MEDIUM 级别的遗漏。核心问题:pr-checks/ 复合操作目录未创建、跨 job 缓存共享未实现。


CRITICAL

1. pr-checks 未实现跨 job 缓存共享

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: .github/workflows/pr-checks.yml 的 3 个并行 job(review、feature-missing、regression-test-missing)各自通过独立 composite action 调用 actions/cache@v5,但各自的 cache key 前缀不同(review-opencode-opencode-regression-test-missing-opencode-),导致即使其中一个 job 构建了缓存,其他 job 也无法恢复使用。3 个 job 并行运行,无 save/restore 模式协调。
  • 影响: 每个 job 各自重新安装 opencode,增加了总执行时间(预计 3×30秒),违背了方案 C 的设计意图。
  • 建议: 在 .github/workflows/pr-checks.yml 中使用 actions/cache/restore + actions/cache/save 模式:先运行的 job save,后运行的 job restore。或设计一个依赖链(如 setup → rest),但需权衡并行性。

MEDIUM

2. pr-checks/ 复合操作目录未创建

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "A new composite action" / "Create integrated composite action directory with action.yml"
  • PR 标题/描述: "Add pr-checks/ composite action" / "Add pr-checks/ composite action"
  • 实现现状: PR 仅添加了 .github/workflows/pr-checks.yml 工作流文件,未创建 pr-checks/action.yml 复合操作目录。用户无法通过 uses: Svtter/opencode-actions/pr-checks@v2 引用此功能。作为对比,reviewfeature-missing 均有复合操作目录 + 工作流文件的双重交付模式。
  • 影响: 用户若想使用"一站式"检查,仍需要手动复制工作流文件到自己的仓库,无法享受 GitHub Actions 的 uses: 引用便利性。
  • 建议: 创建 pr-checks/action.yml 复合操作,将其设计为顺序执行 3 个检查的单步骤操作(composite action 不支持并行 job,spec 要求的"3 parallel jobs"与"composite action"本身矛盾——此 gap 是 spec 设计缺陷,非实现缺失)。同时保留 .github/workflows/pr-checks.yml 工作流文件(用于需要并行执行的场景)。

补充说明(非遗漏)

以下三项在前次 review 中被提及,经核实不构成遗漏:

  • 缓存键前缀: regression-test-missing/action.yml:213 使用 regression-test-missing-opencode- 前缀,与其他 action(review-opencode-setup-opencode- 等)一致。feature-missing/action.yml 使用 opencode- 前缀(缺少专属前缀),但这是已有代码问题,不在本 PR 范围内。
  • Version 默认值: regression-test-missing/action.yml:36default: ""review/action.yml:36 一致,均通过 setup-opencode/default-version 文件读取,未硬编码。
  • README 文档: 已包含 regression-test-missingpr-checks 的说明、用法示例和 CI 描述(README.md:28-29, 95-115, 167-168, 202),更新完整。

New%20session%20-%202026-04-30T01%3A57%3A50.615Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 仅新增了 regression-test-missing/action.ymlpr-checks.ymlregression-test-missing.yml 三个新文件,以及对 ci.ymlREADME.md 的纯补充性修改(添加 smoke test 步骤和文档)。未修改任何现有行为逻辑或修复任何 Bug,属于纯新增功能,无需回归测试。

New%20session%20-%202026-04-30T02%3A02%3A09.056Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

现在我已经审阅了所有更改的文件。以下是完整审查意见:

有条件合并

总结

PR 新增了 regression-test-missing composite action(回归测试缺失检测),并用包含 3 个并行 job 的 .github/workflows/pr-checks.yml 替代了旧的 pr-checks/action.yml composite action。整体代码质量良好,遵循了现有 review/feature-missing action 的模式,但存在一个阻塞性问题。

阻塞项

1. regression-test-missing@v2 引用在现有 v2 tag 中不存在

regression-test-missing.yml:27pr-checks.yml:78 使用了 Svtter/opencode-actions/regression-test-missing@v2,但 v2 是一个已存在的 tag(由之前 release 创建),那时 regression-test-missing/ 目录尚未加入仓库。合并后,这两个 workflow 在对新 PR 触发时会报 action not found 错误,导致 job 失败。而 review@v2feature-missing@v2 可正常工作是因为对应目录在 v2 创建时已存在。

修复建议:源仓库 .github/workflows/ 中的 workflow 文件应使用本地路径:

# regression-test-missing.yml
uses: ./regression-test-missing

# pr-checks.yml
uses: ./review
uses: ./feature-missing
uses: ./regression-test-missing

消费者拷贝时可自行改为 @v2 或其他发布 tag。或者,如果确定合并后会立即创建 release 更新 v2 tag,则另行评估。

建议项

1. 输入顺序与 review action 不一致

regression-test-missing/action.ymlfallback-modelsmodel-timeout-secondsfallback-on-regex 被放在了所有 API key 之后(第 132-143 行),而 review/action.yml 中则放在 model 之后、prompt 之前(第 65-76 行)。建议统一排序以提高可维护性。

2. smoke-test.yml 未加入 regression-test-missing 测试

.github/workflows/smoke-test.yml 包含 reviewfeature-missing 的 smoke test 但缺少 regression-test-missing(第 31-38 行)。建议增加对应步骤,与 ci.yml 保持一致。

3. README line 202 中的表述

smoke-tests all actions through uses: ./setup-opencode, uses: ./run-opencode, uses: ./github-run-opencode, uses: ./review, uses: ./feature-missing, and uses: ./regression-test-missing

其中 uses: ./feature-missingci.yml 中实际不存在(feature-missing 未在 ci.yml 中 smoke-test),可趁此机会在 ci.yml 中补上 feature-missing 步骤,或更新 README 的表述。

4. regression-test-missing action 中内置 prompt 较大(第 68-111 行)

超过 40 行的 prompt 直接嵌入 action.yml 增加了文件复杂度。建议抽取到独立文件(如 regression-test-missing/prompt.txt),通过 ${{ github.action_path }} 引用,或使用 YAML 折叠标量语法改善可读性。

New%20session%20-%202026-04-30T01%3A57%3A52.067Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missing composite action 和 .github/workflows/pr-checks.yml 并行工作流,代码质量高,严格遵循现有 action 模式(review/feature-missing)。已有 review session 指出的 cache key 前缀、version 默认值、README 文档等问题均已修复。当前代码无功能性缺陷。

阻塞项

建议项

  1. fork 保护缺失regression-test-missing.yml:10 缺少 github.event.pull_request.head.repo.full_name == github.repository 条件(review.yml 有,但 feature-missing.yml 同样缺失),fork PR 可能意外触发。属于安全一致性建议,非阻塞。

  2. PR 描述与实际实现不一致:PR 标题/描述称 pr-checks 是"composite action"、"single opencode invocation",实际实现是 .github/workflows/pr-checks.yml 工作流文件 + 3 个并行 job 独立调用各 action。实际方案(并行 job)是更合理的选择,建议修正 PR 描述以匹配实现。

  3. ci.yml 未覆盖 pr-checks 工作流:仅添加了 regression-test-missing composite action 的 smoke test。虽然工作流文件不能通过 uses: 测试,但可考虑在 CI 中增加对 pr-checks.yml 文件的格式/语法验证(如 actionlint)。

New%20session%20-%202026-04-30T02%3A02%3A06.943Z
opencode session  |  github run

@sun-praise sun-praise deleted a comment from github-actions Bot Apr 30, 2026
@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 CRITICAL、1 个 MEDIUM 级别的遗漏。


CRITICAL

1. pr-checks 跨 job 缓存共享未实现

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: .github/workflows/pr-checks.yml 中 3 个并行 job 各自调用独立 composite action,但缓存 key 前缀完全不同(review: review-opencode-、feature-missing: opencode-、regression-test-missing: regression-test-missing-opencode-),导致各 job 无法共享 opencode 安装缓存,各自重新下载安装,执行时间和网络开销均为 3 倍
  • 建议: 在 pr-checks.yml 中引入统一的缓存策略:可让第一个 job(如 review)save 缓存后,其余 job 通过 actions/cache/restore 恢复同一缓存;或统一三个 action 的 cache key 前缀(但不属于本 PR 改动范围)

MEDIUM

2. pr-checks/action.yml 复合操作目录未创建

  • 规范要求 (Issue Add regression test missing CI check #45, Implementation Checklist): "Create integrated composite action directory with action.yml"
  • PR 标题/描述: 标题为 "Add pr-checks/ composite action",描述为 "Add pr-checks/ composite action: combines review, feature-missing, and regression-test-missing into a single opencode invocation with a combined prompt"
  • 实现现状: 仅创建了 .github/workflows/pr-checks.yml 工作流文件,未创建 pr-checks/action.yml 复合操作目录。用户无法通过 uses: Svtter/opencode-actions/pr-checks@v2 引用此功能,只能手动复制工作流内容
  • 建议: 两种方案二选一:(a) 创建 pr-checks/action.yml,采用 combined prompt 方式在单次 opencode 调用中处理三个检查(如 PR body 所述,但无法实现并行);(b) 修改 PR 标题和描述以准确反映实际实现(工作流文件而非 composite action)

New%20session%20-%202026-04-30T02%3A02%3A09.196Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 CRITICAL、1 个 MEDIUM、1 个 LOW 级别的遗漏。


CRITICAL

1. pr-checks/action.yml 复合操作未创建,仅创建了工作流文件

  • 规范要求 (Deliverable 2): "A new composite action" / Implementation Checklist: "Create integrated composite action directory with action.yml containing 3 parallel jobs"
  • PR 标题/描述: "Add pr-checks/ composite action" / "All-in-one action"
  • 实现现状: 仅创建了 .github/workflows/pr-checks.yml(工作流文件),未创建 pr-checks/action.yml 复合操作目录。工作流文件无法通过 uses: Svtter/opencode-actions/pr-checks@v2 被其他仓库引用,用户必须复制粘贴到自己的仓库。规范中"3 parallel jobs"确实与 composite action 的能力矛盾(composite 不支持并行 job),但 PR 描述将其定位为"single opencode invocation with a combined prompt",这是 composite action 可以做到的。
  • 建议: 按 PR 描述中的"single opencode invocation"方案创建 pr-checks/action.yml,用一次 combined prompt 在单步骤中完成三个检查;保留 .github/workflows/pr-checks.yml 作为本仓库的并行 CI 版本。

MEDIUM

2. pr-checks.yml 未实现跨 job 缓存共享(方案 C)

  • 规范要求 (Deliverable 2): "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: pr-checks.yml 的 3 个 job 各自调用独立 action(./review./feature-missing./regression-test-missing),cache key 前缀互不相同(review-opencode-opencode-regression-test-missing-opencode-)。即使其中一个 job 构建了缓存,其余 job 也无法恢复使用。3 个 job 并行运行无 save/restore 协调。
  • 影响: 每个 job 独立安装 opencode,总执行时间约为单 job 的 3 倍,违背了方案 C 的设计意图。
  • 建议: 在 .github/workflows/pr-checks.yml 中增加统一缓存步骤:或者设计一个 setup job(先 restore/save 缓存)后接 3 个依赖该 job 的 check job,或者让 3 个 action 使用统一的 cache key 前缀。
  • 位置: .github/workflows/pr-checks.yml

LOW

3. ci.yml 未按 PR 描述覆盖 "both new actions" 的 smoke test

  • PR 描述: "Update ci.yml smoke test to cover both new actions"
  • 实现现状: ci.yml 仅新增了 regression-test-missing 的 smoke test(第 64-72 行),缺少对 pr-checks 的验证。由于 pr-checks 是工作流文件,确实无法通过 uses: 在 smoke test 中直接测试,但 PR 描述自述涵盖"both",存在自相矛盾。应至少在工作流末尾增加对 .github/workflows/pr-checks.yml 的语法验证,或在 PR 描述中澄清此限制。
  • 建议: 添加 - name: Validate pr-checks workflow 步骤验证 YAML 合法性(如 yamllintpython3 -c "import yaml; yaml.safe_load(...)"),或者在 PR 描述中写明限制。
  • 位置: .github/workflows/ci.yml

说明:以下前次 review 提及的问题经核实不构成遗漏

  • 缓存键前缀一致性问题: regression-test-missing/action.yml:213 使用 regression-test-missing-opencode- 前缀,与其他 action 一致。feature-missing/action.yml 使用裸 opencode- 前缀是已有代码问题,不在本 PR 范围内。
  • Version 默认值: regression-test-missing/action.yml:36default:"" 通过 setup-opencode/default-version 文件读取,与 review/action.yml 行为一致,非硬编码。
  • README 文档: 已完整更新,包含 regression-test-missingpr-checks 的说明、用法示例及 CI 描述。(README.md:28-29, 95-115, 167-168, 202
  • Fork 保护: 该仓库中 feature-missing.yml 同样没有 fork 保护检查,regression-test-missing.yml 与之一致,是已有模式而非本 PR 的遗漏。

New%20session%20-%202026-04-30T02%3A02%3A08.388Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

现在我已完成审核。以下是结论:

可合并

该 PR 新增了 regression-test-missing composite action(正确实现了版本解析、缓存键前缀和输入结构)、.github/workflows/pr-checks.yml(3 个并行 job 分别调用独立 action)、regression-test-missing.yml 独立 workflow,并更新了 README 和 CI smoke test。代码质量良好,无功能性缺陷。

阻塞项:无

建议项:

  1. PR 标题和描述未更新:标题/描述仍称添加 pr-checks/ composite action,但实际实现为 .github/workflows/pr-checks.yml 工作流文件。READEME 中已正确描述为 "Combined PR Checks Workflow",建议更新 PR 标题和 body 保持一致。
  2. regression-test-missing.yml 缺少 fork 仓库保护review.ymlhead.repo.full_name == github.repository 检查,而 regression-test-missing.yml 没有。虽然 feature-missing.yml 也缺少此检查(已有缺陷),但新 action 应改进安全策略。
  3. pr-checks.yml checkout step name 不一致review job 的 checkout 有 name: Checkout PR head,而 feature-missingregression-test-missing job 的 checkout 缺少 name:,建议统一。

New%20session%20-%202026-04-30T02%3A02%3A14.674Z
opencode session  |  github run

@Svtter Svtter changed the title feat: add regression-test-missing and pr-checks composite actions feat: add regression-test-missing action and pr-checks (composite action + parallel workflow) Apr 30, 2026
@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 仅新增了 regression-test-missing/action.ymlpr-checks/action.yml.github/workflows/pr-checks.yml.github/workflows/regression-test-missing.yml 四个新文件,以及对 ci.ymlREADME.md 的纯补充性修改(添加 smoke test 步骤和文档)。未修改任何现有行为逻辑或修复任何 Bug,属于纯新增功能,无需回归测试。

New%20session%20-%202026-04-30T02%3A09%3A24.456Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlREADME.md 的补充性修改。未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-04-30T02%3A09%3A33.457Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 MEDIUM、1 个 LOW 级别的遗漏。


MEDIUM

1. pr-checks 并行工作流中 opencode 安装缓存未跨 job 共享

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: .github/workflows/pr-checks.yml 的三个并行 job(review、feature-missing、regression-test-missing)各自调用独立 composite action,cache key 前缀互不相同(review-opencode-opencode-regression-test-missing-opencode-),且三个 job 并行运行无 save/restore 协调,导致即使其中一个 job 构建了缓存,其余 job 也无法恢复使用,每个 job 独立下载安装 opencode,总执行时间约为单 job 的 3 倍。
  • 建议位置: .github/workflows/pr-checks.yml,可考虑引入统一缓存步骤(如先运行一个 setup job 构建缓存,或使用 actions/cache/restore + actions/cache/save 模式协调),或让三个 action 使用统一的 cache key 前缀。

LOW

2. pr-checks/action.yml 使用 combined prompt 方式,未调用独立的 composite action

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Each job calls the corresponding independent composite action" — 期望 pr-checks/ 复合操作内部通过调用 ./review./feature-missing./regression-test-missing 独立 action 来组合三个检查
  • 实现现状: pr-checks/action.yml(第 73-113 行的默认 prompt)将三个检查合并为一次 AI 调用(combined prompt),未复用已存在的独立 composite action。.github/workflows/pr-checks.yml(工作流文件)的并行方案虽然满足"each job calls independent action"的设计意图,但这是工作流层面的实现,非复合操作层面。
  • 影响: 复合操作无法独立并行执行每个检查的结果,也无法按需只运行某个子检查;一次 AI 调用处理三个检查可能导致上下文过长或某检查输出覆盖其他检查。
  • 建议: 如需保持 pr-checks/action.yml 为复合操作(uses: 可用),当前的 combined prompt 方案是合理选择(因为 composite action 不支持并行 job,spec 的"3 parallel jobs inside composite action"本身在技术上不可行)。建议在 PR 描述或注释中说明此设计权衡,或考虑移除 pr-checks/action.yml 仅保留工作流文件,避免用户混淆两种交付物。

New%20session%20-%202026-04-30T02%3A09%3A29.670Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

该 PR 新增了 regression-test-missing composite action(检测缺少回归测试的 PR)、pr-checks composite action(合并三个检查的单一 invocation)、.github/workflows/pr-checks.yml(三个并行 job 的工作流)和 .github/workflows/regression-test-missing.yml(独立工作流),并更新了 CI 和 README。代码质量良好,严格遵循 review action 的既有模式(缓存、版本解析、OS 检查、python3 前置校验等),无功能性缺陷或安全隐患。

阻塞项:无

建议项:

  1. 三个 action.yml 输入顺序不一致review/action.yml 的顺序为 model → fallback-models → model-timeout-seconds → fallback-on-regex → prompt → API keysregression-test-missing/action.ymlmodel → prompt → API keys → fallback-models → model-timeout-seconds → fallback-on-regexpr-checks/action.ymlmodel → [install/retry 参数] → fallback-models → model-timeout-seconds → fallback-on-regex → prompt → API keys。三种不同排序增加了维护复杂度,建议统稿。

  2. README:202 描述的 CI smoke test 与实际不符:该行声称 CI 测试涵盖 feature-missing,但 .github/workflows/ci.yml 中实际没有 feature-missing 的 smoke test(这是 PR 之前的既有问题,但本 PR 扩展了该列表使其持续不准确)。

  3. regression-test-missing.yml 缺少 checkout 步骤的 name: 属性(第 18 行),而 pr-checks.yml 中的所有 checkout 步骤均有 name: Checkout PR head。建议统一以提升可读性。

New%20session%20-%202026-04-30T02%3A09%3A33.133Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 MEDIUM、1 个 LOW 级别的遗漏。regression-test-missing/ 本身实现完整,问题集中在 pr-checks 的缓存共享和文档覆盖。


MEDIUM

1. 跨 job 缓存共享(方案 C)未实现

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Shares opencode install cache across jobs (方案 C)"

  • 实现现状: .github/workflows/pr-checks.yml 中 3 个并行 job(review、feature-missing、regression-test-missing)各自调用独立 composite action,而这三个 action 的 cache key 前缀互不相同:

    • review: review-opencode-
    • feature-missing: opencode-(无专属前缀)
    • regression-test-missing: regression-test-missing-opencode-

    由于 key 不同且 3 个 job 并行运行、无 save/restore 协调机制,每个 job 各自下载安装 opencode,总执行时间约为单 job 的 3 倍。符合方案 C 的典型做法是在 pr-checks.yml 中添加一个 setup job(先 restore/save 缓存),其余 3 个 check job 依赖它并使用同一缓存 key 的 restore-only 模式。

  • 建议位置: .github/workflows/pr-checks.yml,在 3 个 check job 之前增加一个 setup-opencode job,使用 actions/cache/restore + actions/cache/save 模式,其余 job 通过 needs: [setup] 依赖并复用同一缓存。


LOW

2. pr-checks/action.yml composite action 未在 README Usage 部分列出

  • 规范要求 (Implementation Checklist): "Update README documentation if actions are documented there"
  • 实现现状: README 第 164-171 行的 Usage 部分列出了 reviewfeature-missingregression-test-missinggithub-run-opencodesetup-opencoderun-opencode 共 6 个 action 的 uses: 引用路径,但未包含 pr-checks。第 202 行 CI 描述仅列出了 6 个 action 的 smoke test,也未包含 pr-checks/ 复合操作。虽然 pr-checks/action.ymlci.yml 中有 smoke test 覆盖,且 ## Combined PR Checks Workflow 章节介绍了 workflow 文件,但作为可通过 uses: Svtter/opencode-actions/pr-checks@v2 引用的 composite action,其存在性和用法未在 README 中体现。
  • 不影响功能: 不影响用户使用,仅属文档覆盖不完整。
  • 建议位置: README.md,在 Usage 部分添加 uses: Svtter/opencode-actions/pr-checks@v2,并在 CI 描述中补充 pr-checks 的说明。

New%20session%20-%202026-04-30T02%3A09%3A26.057Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

现在我已完整阅读了所有变更文件。以下是审查结论:

可合并

总结

PR 新增了 regression-test-missing/action.yml(回归测试缺失检测 composite action)、pr-checks/action.yml(三合一 combined prompt composite action)、.github/workflows/pr-checks.yml(三并行 job 工作流)和 .github/workflows/regression-test-missing.yml(独立 workflow),并更新了 README 和 CI smoke test。最新 commit (12de844) 已修复此前审查指出的所有问题:创建了 pr-checks/action.yml、添加了 fork 保护、统一了 checkout step name、补充了 pr-checks smoke test。代码质量良好,无功能性缺陷。

阻塞项

建议项

  1. 输入顺序与 review/action.yml 不一致regression-test-missing/action.ymlfallback-modelsmodel-timeout-secondsfallback-on-regex(第 132-143 行)放在 API key 输入之后,而 review/action.yml 放在 model 之后、prompt 之前(第 65-76 行)。pr-checks/action.ymlmodel 是第一个输入(第 5 行),而 review/action.yml 中在 timeout-seconds 之后(第 61 行)。建议统一排序便于维护。

  2. prompt 逻辑重复pr-checks/action.yml 的 combined prompt 内嵌了 review、feature-missing、regression-test-missing 三套检查逻辑,与三个 standalone action 中的独立 prompt 存在重复。若后续更新任一 standalone action 的 prompt,pr-checks/action.yml 需同步更新。建议在 prompt 中通过引用或备注机制与 standalone action 保持同步。

  3. READEME CI 描述存在已有不准确README.md:202 提到 uses: ./feature-missing 在 CI smoke test 中,但实际 ci.yml 并未包含 feature-missing smoke test。该问题在 PR 前已存在,但可趁此机会在 ci.yml 中补充 feature-missing 步骤或修正 README 描述。

  4. ci.yml 未验证 feature-missing smoke test:PR 新增了 regression-test-missing 和 pr-checks 的 smoke test,但 feature-missing(仓库已有 action)始终未被 CI 覆盖。建议在 ci.yml 中补充 uses: ./feature-missing 步骤以保持一致性。

New%20session%20-%202026-04-30T02%3A09%3A24.249Z
opencode session  |  github run

@Svtter
Copy link
Copy Markdown
Collaborator Author

Svtter commented Apr 30, 2026

人工 Review 总结

逐条审阅了所有 AI review comments 并去重后,归纳如下:

❌ 误报

regression-test-missing@v2 tag 引用问题 — 多个 review bot 将此标记为 CRITICAL,声称 v2 tag 创建时 regression-test-missing/ 目录不存在。经验证,refs/tags/v2 确实存在,合并后 tag 指向的 commit 已包含该目录,此问题为误报。

✅ 确认需要关注的问题

1. 跨 job 缓存共享(方案 C)未实现 — 被提及 7 次

  • 3 个并行 job 各自 cache key 前缀不同(review-opencode-opencode-regression-test-missing-opencode-),导致每个 job 独立安装 opencode,总耗时约 3 倍
  • 建议:加一个 setup job 先装好缓存,其余 3 个 job 通过 needs: [setup] 依赖复用

2. 输入顺序不一致 — 被提及多次

  • modelfallback-modelsprompt 等输入在三个 action 中排序各不相同,影响维护
  • 建议统一排序约定

3. prompt 逻辑重复

  • pr-checks/action.yml 的 combined prompt 内嵌了三套检查逻辑,与 standalone action 的 prompt 重复
  • 后续更新任一 standalone action 的 prompt 时需同步更新 pr-checks,容易遗漏

📝 文档 / 一致性(建议后续跟进)

  • README CI 描述声称 smoke-test 了 feature-missing,实际 ci.yml 未覆盖
  • pr-checks composite action 未在 README Usage 部分列出
  • regression-test-missing.yml 缺少 fork 保护检查(head.repo.full_name == github.repository
  • 部分 checkout step 缺少 name: 标签

Svtter added 4 commits May 14, 2026 23:00
Add two new composite actions:
- regression-test-missing: detects PRs that fix bugs or modify behavior
  but lack corresponding regression tests
- pr-checks: combines review, feature-missing, and regression-test-missing
  checks into a single opencode invocation

Update ci.yml smoke test to cover both new actions.

Closes #45
- Fix cache key prefix: use regression-test-missing-opencode- prefix
- Fix version management: use setup-opencode/default-version instead of
  hardcoded value, matching review action pattern
- Replace pr-checks composite action with proper workflow file containing
  3 parallel jobs (review, feature-missing, regression-test-missing)
- Add .github/workflows/regression-test-missing.yml standalone workflow
- Remove pr-checks/ directory (now a workflow, not a composite action)
- Update README with regression-test-missing docs and pr-checks workflow
  reference
- Update ci.yml smoke test description
Workflow files referenced Svtter/opencode-actions/regression-test-missing@v2
which does not exist yet in the v2 tag. Use ./ local paths instead so they
resolve from the PR branch during testing.
- Create pr-checks/action.yml composite action with combined prompt for
  single-invocation usage (users can reference via
  Svtter/opencode-actions/pr-checks@v2)
- Keep .github/workflows/pr-checks.yml as parallel 3-job version
- Add fork protection to regression-test-missing.yml
- Unify checkout step names in pr-checks.yml
- Add pr-checks smoke test to ci.yml
@Svtter Svtter force-pushed the feature/regression-test-missing branch from 12de844 to 727ee27 Compare May 14, 2026 15:03
@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增功能:创建了 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlREADME.md 的补充性修改。所有变更均为添加新文件或在现有文件中追加内容(+20/-0、+20/-3),没有修改任何现有行为逻辑、没有修复任何 Bug、没有变更已有 API 或接口,因此无需回归测试。

New%20session%20-%202026-05-14T15%3A04%3A07.762Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlREADME.md 的增量补充(仅追加步骤和文档,未修改现有逻辑)。未修复任何 Bug、未变更已有 API 或行为,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A04%3A08.325Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missing/action.yml(回归测试缺失检测 composite action)、pr-checks/action.yml(三合一 combined prompt composite action),以及 pr-checks.yml(三并行 job 工作流)和 regression-test-missing.yml(独立 workflow),并更新了 README 和 CI smoke test。代码严格遵循现有 review/feature-missing action 的模式(OS 检查、版本解析、缓存、python3 前置校验等),无功能性缺陷或安全隐患。

阻塞项

建议项

  1. 三个 action.yml 的输入排序不统一review/action.yml 顺序为 ... → timeout-seconds → model → fallback → prompt → API keysregression-test-missing/action.yml... → timeout-seconds → model → prompt → API keys → fallbackpr-checks/action.ymlmodel → ... → timeout-seconds → fallback → prompt → API keys。三种不同排序增加维护复杂度,建议统稿。

  2. README CI 描述与 ci.yml 不完全一致README.md:239 声称 smoke test 涵盖 feature-missingspec-coverage,但 ci.yml 中实际未包含这两项。该问题 PR 前已存在,但 PR 扩展了该列表使其持续不准确。

  3. prompt 逻辑重复pr-checks/action.yml 的 combined prompt 内嵌了三个 standalone action 的检查逻辑。后续更新任一 standalone action 的 prompt 时需同步更新 pr-checks,存在遗漏风险。

  4. regression-test-missing.yml 的 checkout step 缺少 name:(第 18 行),pr-checks.yml 中所有 checkout 均有 name: Checkout PR head,建议统一提升可读性。

New%20session%20-%202026-05-14T15%3A04%3A07.927Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

Author identity unknown

*** Please tell me who you are.

Run

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: empty ident name (for runner@runnervmrw5os.j2cb3q3zqujuhd1g3mgoi2ukia.bx.internal.cloudapp.net) not allowed

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

发现遗漏

摘要

对比 Issue #45 规范与 PR 实现,发现 1 个 MEDIUM、1 个 LOW 级别的遗漏。regression-test-missing/ 本身实现完整,问题集中在 pr-checks 的缓存和文档。

MEDIUM

1. 跨 job 缓存共享(方案 C)未实现

  • 规范要求 (Issue Add regression test missing CI check #45, Deliverable 2): "Shares opencode install cache across jobs (方案 C)"
  • 实现现状: .github/workflows/pr-checks.yml 中 3 个并行 job(review、feature-missing、regression-test-missing)各自调用独立 composite action,cache key 前缀互不相同:review-opencode- / opencode-(feature-missing) / regression-test-missing-opencode-。3 个 job 完全并行运行,无 save/restore 协调机制,每个 job 独立下载安装 opencode,总执行时间约为单 job 的 3 倍。
  • 建议: 在 .github/workflows/pr-checks.yml 中增加一个 setup job(先 restore/save 缓存),其余 3 个 check job 通过 needs: [setup] 依赖并复用统一缓存;或统一三个 action 的 cache key 前缀。

LOW

2. pr-checks composite action 未在 README Usage 部分列出

  • 规范要求 (Implementation Checklist): "Update README documentation if actions are documented there"
  • 实现现状: PR body 明确说明 pr-checks/action.yml 可通过 uses: Svtter/opencode-actions/pr-checks@v2 引用。但 README 第 200-208 行的 Usage 列表包含了 review、feature-missing、spec-coverage、regression-test-missing、github-run-opencode、setup-opencode、run-opencode 共 7 个 action,唯独缺少 pr-checks。README 也无专节介绍 pr-checks composite action 的功能和用法。
  • 建议: 在 README.md Usage 部分添加 uses: Svtter/opencode-actions/pr-checks@v2,并新增一节解释 pr-checks composite action 的 combined prompt 使用方式。

New%20session%20-%202026-05-14T15%3A04%3A11.503Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missing/action.yml(回归测试缺失检测 composite action)、pr-checks/action.yml(三合一 combined prompt composite action)、两个 workflow 文件,并更新了 CI 和 README。代码严格遵循仓库现有 action 模式(OS 检查、版本解析、缓存、GITHUB_RUN_OPENCODE_PERMISSION 安全限制、fork 保护、git identity),经过多轮 review 修复后,当前 HEAD 已无功能性缺陷。

阻塞项

阻塞项:无

建议项

  1. regression-test-missing/action.yml 缺少 extra-env 输入review/action.yml:139-145pr-checks/action.yml:85-91 均定义了 extra-env 输入并映射 GITHUB_RUN_OPENCODE_EXTRA_ENV 环境变量,但 regression-test-missing/action.yml 未包含(feature-missing/action.yml 同样缺失,属既有不一致)。建议补充以保持各 action 功能一致。

  2. 输入排序不统一modelfallback-modelspromptreasoning-effort、API keys 等核心输入在四个 action.yml(reviewfeature-missingregression-test-missingpr-checks)中排列顺序各异,增加维护负担。建议统一定义排序约定。

  3. pr-checks/action.yml combined prompt 与 standalone action prompt 存在逻辑重复:pr-checks 的默认 prompt 内嵌了三套检查逻辑,与 reviewfeature-missingregression-test-missing 三个 standalone action 中的独立 prompt 内容存在重复。后续更新任一 standalone action 的 prompt 时需手动同步 pr-checks,易遗漏。建议添加维护注释或建立同步机制。

  4. README.md:240 CI 描述未列出 pr-checks:该行列举了 uses: ./setup-opencodeuses: ./run-opencodeuses: ./github-run-opencodeuses: ./reviewuses: ./regression-test-missing,但未包含 uses: ./pr-checks,而 ci.yml:74-82 实际已测试 ./pr-checks

New%20session%20-%202026-05-14T15%3A43%3A03.688Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增功能:创建了 regression-test-missing/action.yml(回归测试缺失检测 composite action)、pr-checks/action.yml(三合一 combined prompt composite action)、两个 workflow 文件(pr-checks.ymlregression-test-missing.yml),以及对 ci.yml(+20/-0)、README.md(+21/-3)和 run-github-opencode.py(+3/-0)的增量补充。所有变更为新增文件或在现有文件中追加内容,未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A44%3A10.491Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无遗漏

经过逐项比对 Issue #45 规范与 HEAD commit 的实现,所有需求均已完整交付:

Deliverable 1 (regression-test-missing) — 完整实现:独立的 composite action,PR 类型分类(BUGFIX/BEHAVIOR_CHANGE/NEW_FEATURE/CHORE),仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试,输出格式符合规范("无需回归测试"/"缺少回归测试"),提示词覆盖了所有审计场景。输入定义和环境变量映射与 feature-missing/action.yml 一致(包括 reasoning-effortenable-thinkingGITHUB_RUN_OPENCODE_PERMISSION、fallback models 等)。

Deliverable 2 (pr-checks) — 规范中"composite action 包含 3 个并行 job"存在技术矛盾(GitHub Actions 的 composite action 不支持并行 job),PR 通过两个交付物合理解决:

  • pr-checks/action.yml:combined prompt 方式的 composite action,可通过 uses: 引用
  • .github/workflows/pr-checks.yml:setup job + 3 并行 job 分别调用独立 action,含跨 job 缓存共享(方案 C)和 fork 保护

其他交付物 — 独立 workflow regression-test-missing.yml(含 fork 保护)、ci.yml smoke test 覆盖两个新 action、README 完整更新(功能说明、Usage 列表、四种 action 对比表、CI 描述)。

regression-test-missing/action.yml 未包含 extra-env 输入,与 feature-missing/action.yml(spec 指定的对照基准)一致,非遗漏。

New%20session%20-%202026-05-14T15%3A43%3A04.464Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missingpr-checks 两个 composite action 及对应 workflow,并更新了 CI 和 README。代码遵循仓库现有 action 模式(OS 检查、版本解析、缓存、GITHUB_RUN_OPENCODE_PERMISSION 安全限制、fork 保护、reasoning-effort/enable-thinking),经过多轮 review 迭代后当前 HEAD 已无功能性缺陷或安全隐患。

阻塞项

阻塞项:无

建议项

  1. regression-test-missing/action.yml 缺少 extra-env 输入review/action.ymlpr-checks/action.yml 均定义了 extra-env 输入及 GITHUB_RUN_OPENCODE_EXTRA_ENV env 变量,但 regression-test-missing 未包含。虽然 feature-missing 也缺失此输入(spec 指定的对照基准),但建议至少与 review 保持一致。

  2. 输入排序不统一modelfallback-modelspromptreasoning-effort、API keys 等输入在四个 action.yml(reviewfeature-missingregression-test-missingpr-checks)中排列顺序各异,建议统一排序以降低维护负担。

  3. prompt 逻辑重复pr-checks/action.yml 的 combined prompt 内嵌了三套检查逻辑,与 reviewfeature-missingregression-test-missing 的独立 prompt 存在重复。后续更新任一 standalone action 的 prompt 时需手动同步,易遗漏,建议添加维护注释或建立同步机制。

  4. README.md:240 CI 描述未列出 pr-checks:该行列举了 smoke test 覆盖的 action 列表,但未包含 uses: ./pr-checks,而 ci.yml:74-82 实际已测试 ./pr-checks

New%20session%20-%202026-05-14T15%3A45%3A02.764Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无遗漏

分析

逐项比对了 Issue #45 规范与 PR HEAD commit (ec606a4) 的实现,所有需求均已完整交付:

Deliverable 1 — regression-test-missing/ composite action

  • 独立 composite action,遵循 feature-missing/action.yml 架构模式
  • PR 类型分类(BUGFIX / BEHAVIOR_CHANGE / NEW_FEATURE / CHORE)
  • 仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试
  • 输出格式:"无需回归测试" / "缺少回归测试" + 中文分析 + severity 分级
  • 完整实现了 version 解析、缓存(regression-test-missing-opencode- 前缀)、fallback models、reasoning-effort/enable-thinkingGITHUB_RUN_OPENCODE_PERMISSION 安全限制

Deliverable 2 — pr-checks/

  • Spec 要求"composite action 内含 3 个并行 job"在 GitHub Actions 中技术上不可行,PR 拆分为两个交付物合理解决:
    • pr-checks/action.yml:combined prompt 方式的 composite action,可通过 uses: 引用
    • .github/workflows/pr-checks.yml:setup job + 3 并行 job(review/feature-missing/regression-test-missing)分别调用独立 action,含跨 job 缓存共享(方案 C)和 fork 保护

其他交付物

  • .github/workflows/regression-test-missing.yml 独立 workflow(含 fork 保护)
  • ci.yml smoke test 覆盖了 ./regression-test-missing./pr-checks
  • README.md 完整更新(功能说明、Usage 列表含 pr-checks、四种 action 对比表、CI 描述)
  • run-github-opencode.py 增强(+3 行 reasoning-effort 输入校验)

说明regression-test-missing/action.yml 未包含 extra-env 输入,与 spec 指定的对照基准 feature-missing/action.yml(同样不含 extra-env)一致,非遗漏。

New%20session%20-%202026-05-14T15%3A44%3A52.837Z
opencode session  |  github run

…sion-test-missing

- Add regression-test-missing and pr-checks steps to smoke-test.yml
- Add extra-env input to regression-test-missing/action.yml for consistency with pr-checks
- Improve git identity comment in regression-test-missing workflow
@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增功能:创建了 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlREADME.mdrun-github-opencode.py 的增量补充(添加 smoke test、文档和 reasoning-effort 输入校验)。所有变更为新增文件或在现有文件中追加内容,未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A49%3A46.974Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missing/action.yml(回归测试缺失检测 composite action)、pr-checks/action.yml(三合一 combined prompt composite action)、.github/workflows/pr-checks.yml(setup + 3 并行 job 工作流)、.github/workflows/regression-test-missing.yml(独立工作流),并更新了 CI、README 和 run-github-opencode.py。经逐文件验证,当前 HEAD 代码质量良好:

  • 所有 6 个关键 env 变量(GITHUB_RUN_OPENCODE_PROMPT 等)在两个新 action.yml 中均已正确传递
  • GITHUB_RUN_OPENCODE_PERMISSION 安全限制、reasoning-effort/enable-thinking/extra-env 输入均已实现
  • Fork 保护、缓存键前缀统一、version 从 default-version 文件读取
  • CI smoke test 覆盖 regression-test-missingpr-checkssmoke-test.yml 同步更新
  • README 文档完整(Usage 列出自包含 pr-checks、四种 action 对比表、CI 描述)
  • run-github-opencode.py 新增 reasoning-effort 输入校验(+3 行)
  • pr-checks.yml 通过 setup job 实现跨 job 缓存共享(方案 C)

阻塞项:无

建议项

  1. 输入排序不统一modelfallback-modelspromptreasoning-effort、API keys 等核心输入在 review/action.ymlfeature-missing/action.ymlregression-test-missing/action.ymlpr-checks/action.yml 四个文件中排列顺序各不相同,增加维护负担。建议统一定义排序约定。

  2. prompt 逻辑重复pr-checks/action.yml 的 combined prompt(第 95-141 行)内嵌了三套检查逻辑,与 reviewfeature-missingregression-test-missing 三个 standalone action 中的独立 prompt 内容重复。后续更新任一 standalone action 的 prompt 时需手动同步 pr-checks,易遗漏。建议添加维护注释或建立同步机制。

  3. README:240 CI 描述未列出 pr-checks:该行列举了 uses: ./regression-test-missing 但未包含 uses: ./pr-checks,而 ci.yml:74-82 实际已测试 ./pr-checks

New%20session%20-%202026-05-14T15%3A49%3A21.867Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增功能:创建了 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlsmoke-test.ymlREADME.mdrun-github-opencode.py 的增量补充(添加 smoke test 步骤、文档、reasoning-effort 输入校验)。所有变更为新增文件或在现有文件中追加内容,未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A50%3A12.744Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

All spec requirements from Issue #45 have been verified against the implementation. Here is the complete analysis:

无遗漏

分析

逐一比对 Issue #45 规范与 HEAD commit 的实现,所有需求均已完整交付:

Deliverable 1: regression-test-missing/ 独立 composite action

规范要求 实现位置 状态
PR 类型分类(BUGFIX / BEHAVIOR_CHANGE / NEW_FEATURE / CHORE) regression-test-missing/action.yml:105-109 prompt
仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试 regression-test-missing/action.yml:111
输出格式:"无需回归测试" / "缺少回归测试" + 中文分析 + severity 分级 regression-test-missing/action.yml:129-139
Version 从 default-version 文件读取 regression-test-missing/action.yml:170-189
缓存键前缀统一(regression-test-missing-opencode- regression-test-missing/action.yml:228
reasoning-effort / enable-thinking / extra-env 输入及 env 映射 regression-test-missing/action.yml:77-91,255-257
GITHUB_RUN_OPENCODE_PERMISSION 安全限制 regression-test-missing/action.yml:261-262
所有 API key / prompt / model env 变量正确传递到 Python 脚本 regression-test-missing/action.yml:241-262

Deliverable 2: pr-checks/ 整合交付

Spec 要求 "composite action 内 3 个并行 job 分别调用独立 action" 在 GitHub Actions 中技术上不可行(composite 不支持并行 job)。PR 拆分为两个交付物合理解决:

交付物 规范要求 实现 状态
pr-checks/action.yml 可通过 uses: 引用的 composite action combined prompt 方式,单次 sequential opencode 调用完成三个检查
.github/workflows/pr-checks.yml 3 并行 job + 跨 job 缓存共享(方案 C) setup job → 3 check jobs via needs: [setup],共享 install-dir/xdg-cache-home outputs
各 job 调用独立 composite action review job → ./review, feature-missing → ./feature-missing, regression-test-missing → ./regression-test-missing
跨 job 缓存共享 setup job 先安装缓存,后续 job 复用 install-dir/xdg-cache-home 路径

pr-checks/action.yml 环境变量完整性检查:

  • 所有 19 个 GITHUB_RUN_OPENCODE_* 环境变量(从 working-directory 到 permission)均已映射 ✅

其他交付物

交付物 状态
.github/workflows/regression-test-missing.yml 独立 workflow(含 fork 保护、git identity)
.github/workflows/ci.yml smoke test 覆盖 regression-test-missing + pr-checks(第 64-82 行)
.github/workflows/smoke-test.yml 覆盖两个新 action(第 40-56 行)
README.md:What it includes 列表(第 36 行)
README.md:regression-test-missing 专节 + 四种 action 对比表(第 124-149 行)
README.md:Usage 列表含 regression-test-missing@v2pr-checks@v2(第 204-205 行)
README.md:CI 描述含新 action(第 240 行)
README.md:Publishing Checklist(第 255 行)
run-github-opencode.py:reasoning-effort 输入校验增强(+3 行)

所有 Acceptance Criteria 均满足:regression-test-missing 可独立使用、pr-checks.yml 可并行运行三个检查、prompt 逻辑正确区分 PR 类型、遵循 review/feature-missing 的架构模式。

New%20session%20-%202026-05-14T15%3A49%3A19.021Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

可合并

总结

PR 新增 regression-test-missing/action.ymlpr-checks/action.yml(combined prompt composite action)、两个 workflow 文件,并更新 CI、README 和 opencode.json。代码质量高,严格遵循现有 review/feature-missing 的架构模式。所有关键功能(env 变量传递、安全权限限制、版本解析、缓存、fork 保护、git identity)均已正确实现,经过多轮 review 迭代后当前 HEAD 无功能性缺陷。

阻塞项

阻塞项:无

建议项

  1. README "What it includes" 列表缺失 pr-checks(第 33-39 行):列出了 reviewfeature-missingspec-coverageregression-test-missing 等,但未包含 pr-checkspr-checks 作为一个完整交付的 composite action,应在列表中说明。

  2. README 缺少 pr-checks 专节regression-test-missing 有完整的 ## regression-test-missing 章节(第 124 行)说明功能和使用,但 pr-checks 没有对应的章节。用户只能从 Usage 列表(第 205 行)得知其存在,无法快速了解其用途。

  3. 输入排序不统一modelfallback-modelsprompt、API keys 等输入在四个 action.yml(reviewfeature-missingregression-test-missingpr-checks)中排列顺序各不相同,增加维护负担。

  4. prompt 逻辑重复pr-checks/action.yml 的 combined prompt 内嵌了三套检查逻辑,与三个 standalone action 中的独立 prompt 内容重复。后续更新任一 standalone action 的 prompt 时需手动同步 pr-checks,易遗漏。

New%20session%20-%202026-05-14T15%3A51%3A02.061Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

根据对 Issue #45 规范和 HEAD commit 93b6725 的逐项比对,所有规范要求均已完整实现。

无遗漏

分析

Deliverable 1: regression-test-missing/ composite action

  • ✅ PR 类型分类(BUGFIX / BEHAVIOR_CHANGE / NEW_FEATURE / CHORE)
  • ✅ 仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试
  • ✅ 输出格式:"无需回归测试" / "缺少回归测试" + 中文分析 + severity 分级
  • ✅ 完整的 prompt 覆盖回归测试检测所有审计场景
  • ✅ 与 feature-missing/action.yml 架构一致(全部 26 个输入 + extra-env 扩展)
  • ✅ version 从 default-version 文件读取、缓存键前缀统一、reasoning-effort/enable-thinking/GITHUB_RUN_OPENCODE_PERMISSION 安全限制

Deliverable 2: pr-checks/

规范要求"composite action 内含 3 个并行 job"在 GitHub Actions 中技术上不可行(composite action 不支持并行步骤)。PR 拆分为两个交付物合理解决:

  • pr-checks/action.yml:combined prompt 方式的 composite action,可通过 uses: Svtter/opencode-actions/pr-checks@v2 引用,所有 19 个 env 变量正确映射
  • .github/workflows/pr-checks.yml:setup job(共享缓存方案 C)+ 3 个并行 job(review / feature-missing / regression-test-missing),各调用独立 composite action,含 fork 保护

其他交付物

  • .github/workflows/regression-test-missing.yml 独立 workflow(含 fork 保护、git identity)
  • ci.yml smoke test 覆盖 regression-test-missingpr-checks
  • smoke-test.yml 更新(含两个新 action 的加载测试)
  • README.md 完整更新(功能说明、Usage 列表含 pr-checks、四种 action 对比表、CI 描述、Publishing Checklist)
  • run-github-opencode.py 新增 reasoning-effort 输入校验(+3 行)

New%20session%20-%202026-05-14T15%3A51%3A31.040Z
opencode session  |  github run

… type check

- Fix copy-paste error: feature-missing description changed from 'spec coverage audit' to 'PR scope audit'
- Add pr-checks@v2 to usage guide
- Add type validation for GITHUB_RUN_OPENCODE_PERMISSION JSON input
@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlsmoke-test.ymlREADME.mdrun-github-opencode.py 的增量补充(添加 smoke test 步骤、文档、reasoning-effort 输入校验)。所有变更为新增文件或在现有文件中追加内容,未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A55%3A35.719Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

Now I have a complete picture of the current HEAD (56420b7). Let me compile my review.

可合并

总结

PR 新增 regression-test-missingpr-checks 两个 composite action 及对应 workflow,更新 CI、README 和 run-github-opencode.py。代码质量良好,严格遵循现有 action 架构模式。所有关键功能正确实现:版本解析、缓存、fork 保护、GITHUB_RUN_OPENCODE_PERMISSION 安全限制、reasoning-effort/enable-thinking/extra-env 输入、env 变量完整映射、跨 job 缓存共享(Plan C)。

阻塞项

阻塞项:无

建议项

  1. action.yml 输入排序不统一review/action.yml 的输入顺序为 model → fallback-models → prompt → API keys → extra-env → reasoning-effort,而 regression-test-missing/action.ymlpr-checks/action.yml 均为 model → fallback-models → reasoning-effort → enable-thinking → extra-env → prompt → API keys。prompt 和 fallback 参数的位置在两个分组中不同,增加维护负担。

  2. prompt 逻辑重复pr-checks/action.yml 的 combined prompt(第 95-141 行)内嵌了三套检查逻辑(code review、feature-missing、regression-test-missing),与三个 standalone action 中的独立 prompt 内容重复。后续更新任一 standalone action 的 prompt 时需手动同步 pr-checks/action.yml,存在遗漏风险。

New%20session%20-%202026-05-14T15%3A55%3A07.295Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无需回归测试

PR 类型: NEW_FEATURE

该 PR 纯新增 regression-test-missing/action.ymlpr-checks/action.yml、两个 workflow 文件,以及对 ci.ymlsmoke-test.ymlREADME.mdrun-github-opencode.py 的增量补充。所有变更均为新增文件或在现有文件中追加内容(+6/-0、+18/-0 等),未修改任何现有行为逻辑、未修复任何 Bug、未变更已有 API 或接口,属于纯新增功能,无需回归测试。

New%20session%20-%202026-05-14T15%3A55%3A51.160Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无遗漏

分析

逐项比对 Issue #45 规范与当前 HEAD 实现,所有可实现的需求均已完整交付。

Deliverable 1: regression-test-missing/ composite action

  • ✅ 独立 composite action,完整实现 PR 类型分类(BUGFIX/BEHAVIOR_CHANGE/NEW_FEATURE/CHORE)
  • ✅ 仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试,输出 "无需回归测试"/"缺少回归测试"
  • ✅ 内置 prompt 全面覆盖了回归测试检测的五个审计场景
  • ✅ 与 feature-missing/action.yml 架构一致:version 解析、缓存键前缀、reasoning-effort/enable-thinking/extra-envGITHUB_RUN_OPENCODE_PERMISSION 安全限制
  • ✅ 所有 19 个 env 变量正确映射到 Python 脚本

Deliverable 2: pr-checks/

Spec 要求"composite action 内 3 个并行 job"在 GitHub Actions 技术层面不可行(composite action 不支持并行 job)。PR 拆分为两个交付物合理解决:

  • pr-checks/action.yml:combined prompt 复合操作,可通过 uses: Svtter/opencode-actions/pr-checks@v2 引用
  • .github/workflows/pr-checks.yml:setup job(方案 C 跨 job 缓存共享)+ 3 个并行 job(review/feature-missing/regression-test-missing),各调用独立 composite action

其他交付物

  • .github/workflows/regression-test-missing.yml 独立 workflow(含 fork 保护、git identity)
  • ci.yml smoke test 覆盖 ./regression-test-missing./pr-checks
  • smoke-test.yml 包含两个新 action 的加载测试
  • README.md 完整更新:What it includes 列表、专节文档、四种 action 对比表、Usage 列表(含 pr-checks@v2)、CI 描述、Publishing Checklist
  • run-github-opencode.py 新增 reasoning-effort 输入校验

关于 pr-checks/action.yml 不调用独立 action 的问题

Spec 中"Each job calls the corresponding independent composite action"的表述是针对工作流级别的并行 job 而言(已在 pr-checks.yml 中实现)。pr-checks/action.yml 作为 composite action 只能按步骤顺序执行,使用 combined prompt 在单次 AI 调用中完成三个检查是合理且正确的设计选择——这是 GitHub Actions 的能力限制而非实现遗漏。Spec 本身在此处存在概念矛盾(composite action 与并行 job 互斥),PR 通过两个独立交付物正确应对了此矛盾。

New%20session%20-%202026-05-14T15%3A55%3A05.323Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

remote: Permission to sun-praise/opencode-actions.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/sun-praise/opencode-actions/': The requested URL returned error: 403

opencode session  |  github run

@github-actions
Copy link
Copy Markdown

无遗漏

分析

逐项比对 Issue #45 规范与 PR HEAD commit (56420b7) 实现,所有需求均已完整交付:

Deliverable 1 — regression-test-missing/ composite action

  • 独立 composite action,完整实现 PR 类型分类(BUGFIX/BEHAVIOR_CHANGE/NEW_FEATURE/CHORE)
  • 仅对 BUGFIX 和 BEHAVIOR_CHANGE 标记缺少回归测试,输出"无需回归测试"/"缺少回归测试" + severity 分级建议
  • 内置 prompt 覆盖了五个审计场景(无 reproducer、行为变更无覆盖、错误处理、边界条件、API 兼容性)
  • feature-missing/action.yml(spec 指定的对照基准)架构一致,且更完整(含 extra-env 输入,而 feature-missing 不含)
  • 完整实现了 version 从 default-version 文件读取、reasoning-effort/enable-thinking/GITHUB_RUN_OPENCODE_PERMISSION 安全限制、所有 20 个 env 变量正确映射

Deliverable 2 — pr-checks/ 集成交付

  • Spec 要求 "composite action 内 3 个并行 job" 在 GitHub Actions 中技术上不可行(composite action 仅支持顺序步骤),本 PR 通过两个独立交付物合理解决:
    • pr-checks/action.yml:combined prompt 方式的 composite action,可通过 uses: Svtter/opencode-actions/pr-checks@v2 引用,所有 20 个 env 变量正确映射
    • .github/workflows/pr-checks.yml:setup job(方案 C 跨 job 缓存共享)+ 3 个并行 job(review/feature-missing/regression-test-missing),各调用独立 composite action
  • 两个交付物均含 fork 保护条件

其他交付物

  • .github/workflows/regression-test-missing.yml 独立 workflow(含 fork 保护、git identity)
  • ci.yml smoke test 覆盖 ./regression-test-missing./pr-checks
  • smoke-test.yml 包含两个新 action 的加载测试
  • README.md 完整更新(What it includes 列表、regression-test-missing 专节、四种 action 对比表、Usage 列表含 pr-checks@v2、CI 描述、Publishing Checklist)
  • run-github-opencode.py 新增 reasoning-effort 输入校验

所有 Acceptance Criteria 均满足。Spec 中 "composite action 内含 3 个并行 job" 属于 GitHub Actions 能力限制导致的规范内在矛盾,PR 通过两个交付物正确应对。

New%20session%20-%202026-05-14T15%3A56%3A46.905Z
opencode session  |  github run

@github-actions
Copy link
Copy Markdown

Now I have a complete picture. Let me compile my review.

可合并

该 PR 新增 regression-test-missing/action.yml(回归测试缺失检测)、pr-checks/action.yml(三合一 combined prompt)、两个 workflow 文件,并更新 CI、README、smoke-test.yml 和 run-github-opencode.py。代码质量良好,严格遵循现有 review/feature-missing action 的架构模式。多轮 review 后已修复所有早期发现的问题(缓存键前缀、fork 保护、env 变量传递、GITHUB_RUN_OPENCODE_PERMISSION 安全限制、reasoning-effort/enable-thinking 输入、版本解析),当前 HEAD 无功能性缺陷或安全隐患。

阻塞项:无

建议项:

  1. 输入排序不统一modelfallback-modelsprompt、API keys、reasoning-effort 等核心输入在 review/action.ymlfeature-missing/action.ymlregression-test-missing/action.ymlpr-checks/action.yml 四个文件中的排列顺序各不相同(如 review 的 prompt 在 fallback 之后,regression-test-missing 的 prompt 在 extra-env 之后),增加维护负担。

  2. 环境变量排序不统一:env block 中的 GITHUB_RUN_OPENCODE_FALLBACK_MODELS / REASONING_EFFORT / ENABLE_THINKING / EXTRA_ENV 在四个 action 中排列位置各异(review 将 fallback 系列放在 API keys 之前,regression-test-missing 放在 keys 之后、pr-checks 放在 keys 之后但 reasoning-effort 在最后)。建议统一排序约定。

  3. prompt 逻辑重复pr-checks/action.yml:95-141 的 combined prompt 内嵌了三套检查逻辑(code review、feature-missing、regression-test-missing),与 review/action.ymlfeature-missing/action.ymlregression-test-missing/action.yml 的独立 prompt 内容重复。后续更新任一 standalone action 的 prompt 时需手动同步 pr-checks,存在遗漏风险。

New%20session%20-%202026-05-14T15%3A56%3A27.235Z
opencode session  |  github run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add regression test missing CI check

1 participant