fix(pr-pipeline): scope read-runner caller secrets per caller in check-read-caller-keys
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 74/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- github-actions, javascript
調査の方向性
scripts/check-read-caller-keys.mjsから始め、呼び出し元のworkflowをどのように読み込み、ALLOWED_SECRETSを検証しているかを調べます。既存のautomation tokenの処理を参考にしてください。スクリプトのテストを追加または特定し、各呼び出し元自身のsecret、別のlaneのsecret、マップにない呼び出し元をそれぞれ対象にします。3つのケースすべてが指定どおりに動作し、チェックが通れば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem
scripts/check-read-caller-keys.mjs holds the allowed secret names for read-runner callers in one global set, ALLOWED_SECRETS (line 30 after #8691). So any caller of pr-run-activity-read.yml may pass any allowed lane credential, for example issue_lane_claude_code_oauth_token from a caller that is not the issue lane, and the check stays green. The automations token already works this way.
Abusing this needs a workflow change that is already on main, so it is a hardening item, not a live gap.
Fix
Replace the global set with a per-caller map from caller workflow file to the secret names it may pass, for example work-resolve-issue.yml → the ISSUE_LANE_ names and pr-unblock.yml → the AUTOMATIONS_ names. A caller that passes a secret outside its own entry fails the check. Add tests:
- each caller's own secret passes;
- another lane's secret fails;
- a caller missing from the map fails.
Refs: #8691
- 主要言語
- Shell
- スター
- 22
- フォーク
- 2
- 平均マージ
- 6時間 58分
- マージ済み PR(30日)
- 951
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
melodic-software/claude-code-plugins のほかの issue
-
priority: medium status: needs-decision work-class: scoped
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
melodic-software/claude-code-plugins#9339 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
pipeline-canary priority: low status: ready work-class: mechanical
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
melodic-software/claude-code-plugins#9263 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
good first issue priority: low
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
melodic-software/claude-code-plugins#9251 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
area: security needs-triage priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 79/100
melodic-software/claude-code-plugins#9211 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
melodic-software/claude-code-plugins#9202 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
melodic-software/claude-code-plugins の issue をすべて見る
似ている issue
-
roadmap-100
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
メンテナーはふだん 1 日以内に返信
-
数据界面的横向滚动条缺失オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
zilliztech/attu#1037 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
community-scripts/ProxmoxVE#18073 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Uptime "Test Monitor" always fails with an empty HTTP 400 (uptime-checker API endpoint not configured)対応中かも @ayoubjemai が今日担当しました。 オープンWaiting for: Product Owner
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
getsentry/self-hosted#4582 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信