ci(lanes): run every model lane on the same key, subscription and fallback chain

未关闭
#13,586 6 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
42/100
Issue 类型
重构
描述清晰度
描述清楚
活跃度
活跃
技术栈
github, github-actions, shell
领域
ci-cd

调研方向

Start by reading the listed workflow files and the ci-workflows run-claude-cli action, especially the cited line ranges, to map how each lane passes credentials and handles handoffs. Then inspect the existing workflow tests and add coverage that fails when a model-running workflow skips a leg or passes credentials outside the shared mechanism. Done means all nine listed lanes use the same three-leg chain and triggers, and the release lane no longer has a separate credit-stop skip or outdated header.

由索引模型根据 Issue 内容生成。

描述

area: security priority: medium status: needs-decision work-class: structural

No related issue: owner decision in the Automation Lanes session, 2026-11-05.

Owner decision (verbatim)

The owner asked, in session: "if anything fails on API credit, it should always roll back to the subscription. If that fails, there's a fallback subscription. Did we have that in place for all of these automations?"

Asked as an AskUserQuestion pick, Q1, which named the release lane's outside-authored changelog input and rule R220. Owner's pick, verbatim: "All nine (Recommended)".

Then, verbatim: "I want them all to be consistent and uniform."

This loosens R220 for upstream-apply-changelog.yml: that lane now gets the subscription and fallback legs. The owner made this pick in their own words, in the session.

Gap (read at origin/main, 2026-11-05)

Every other model lane already runs API key, then role subscription, then FALLBACK_CLAUDE_CODE_OAUTH_TOKEN. It hands off on a credit stop or a 401/402, and on the subscription leg also on a limit stop (ci-workflows run-claude-cli action.yml:7-16; pr-run-activity-read.yml:10-17). These do not:

Workflow Legs today
upstream-apply-changelog.yml (both model legs) key only (:352, :634; :152-156 skips a credit-stopped key)
pr-unblock.yml adjudicate-feedback key only (:1858-1862)
intake-triage.yml refine-issue key, then subscription, with no fallback (:1116-1120)
pr-verify-capture.yml key, then subscription, with no fallback (:37-38)
post-merge-test-mutation.yml subscription only
maintenance-tidy-code-upkeep.yml subscription only
maintenance-measure-skill-edit.yml subscription only
eval-browser-dispatch.yml subscription only
eval-hill-climb-pass.yml subscription only

Done when

  • Every model-running workflow runs the same three-leg chain through the same mechanism: role API key, then role subscription, then FALLBACK_CLAUDE_CODE_OAUTH_TOKEN, with the same handoff triggers. No lane keeps its own variant.
  • A test fails when a model-running workflow lacks a leg, or passes credentials outside that mechanism.
  • The release lane's credit-stop skip is removed or reduced to the shared key-credit gate, and its header no longer says it has no subscription leg.
主要语言
Shell
星标
22
派生
2
平均合并
1 小时 18 分钟
30 天内合并 PR
942

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

melodic-software/claude-code-plugins 的其他 Issue

查看 melodic-software/claude-code-plugins 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。