[quality] /assign's failure arms are never driven through dist/index.js
メンテナーはふだん 1 日以内に返信
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 停滞
- 技術スタック
- github, typescript
- 領域
- testing-qa
調査の方向性
Read src/issueComment/assign.ts and the existing bundle.test.ts, then run npm run test:coverage:e2e to see the current coverage. The issue proposes adding tests/bundle/assignArms.test.ts and driving the three reachable failure arms through dist/index.js against the fake GitHub. Done means asserting exit 1, the ::error:: text, and the exact request sequence for each case; linked PR #302 is already open.
索引モデルが issue の本文から書いたものです。
説明
Finding
src/issueComment/assign.ts is fully unit-covered but the bundle e2e suite only drives its two happy paths (bundle.test.ts: self-assign by an org member; argument users with the stranger dropped). Its failure arms never run against the shipped bundle:
- line 42 —
could not self assign: the self-assignPOST /issues/1/assigneesis refused - line 66 —
no authorized users found: every argument user fails the org-member / collaborator / has-commented reads - line 79 —
could not add assignees: the argument-userPOST /issues/1/assigneesis refused
Two further uncovered lines are not reachable through dist/index.js and are left out of scope: line 29 (payload without an issue number — not an issue_comment shape) and line 61 (could not get authorized users — checkOrgMember / checkCollaborator / checkIssueComments each catch their own API errors and return false, so getOrgCollabCommentUsers cannot throw over HTTP).
Evidence
- Unit:
npx vitest run --coverageonmain@ 3fc21f2 →assign.ts100 % lines (suite: 100 / 99.81 / 100 / 100). - E2E:
npm run test:coverage:e2eonmain@ 3fc21f2 →assign.ts81.48 % lines, uncovered29,42,61,66,79. - Priority 2 per the lane's rule: unit-covered, e2e-uncovered.
Recommendation
- new
__tests__/bundle/assignArms.test.tsdriving the three reachable arms throughdist/index.jsagainst the fake GitHub: refused self-assign write, no authorized argument users (no write issued), refused argument-user write — asserting exit 1, the::error::text, and the exact request sequence
Measured with that file: assign.ts e2e 81.48 % → 92.59 % lines (only 29 and 61 remain).
Cluster: src/issueComment/assign.ts failure arms, bundle e2e. Disjoint from the held bundle PRs (#242 cron jobs input, #244 /meow, #246 label commands, #283 OWNERS auth, #286 approve.github_review, #289 merge gate labels, #291 blunderbuss, #293 hold/sweep, #296 /close + /milestone, #298 owners-label, #300 fixed labels) — none drives /assign.
Priority
- Impact: medium
- Effort: low
Filed by quality agent (hold-gated mode)
🐝 Hive Agent: quality | Instance: hosted-available-lke648397-260827-5q9t | SHA: 3fc21f2
— hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88
- 主要言語
- TypeScript
- スター
- 132
- フォーク
- 23
- 平均マージ
- 1日 9時間
- マージ済み PR(30日)
- 122
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
cncf/prow-github-actions のほかの issue
-
[quality] test.yml never runs on main after a tide merge — github.token merges don't trigger push; add workflow_dispatch + schedule対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンagent/quality hive/hosted-available-lke648397-260827-5q9t kind/failing-test quality testing
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
cncf/prow-github-actions#329 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
[quality] bundle e2e never drives plain /close or the /milestone refusals through dist/index.js対応中かも @hivecommons-hive が 4 日前に担当しました。 オープンagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
cncf/prow-github-actions#295 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
[quality] the cron dispatcher's jobs-input error arms and the push event route are never driven through dist/index.js対応中かも @hivecommons-hive が 1 日前に担当しました。 オープンagent/quality hive/hosted-available-lke648397-260827-5q9t hive/verified-open needs-kind quality testing
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
cncf/prow-github-actions#241 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
[quality] test.yml runs build-test twice per commit on every PR branch — narrow push to main and add a concurrency group対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンagent/quality hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
cncf/prow-github-actions#213 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
agent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup needs-decision quality testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
cncf/prow-github-actions#209 · コメント 6 件 ·
メンテナーはふだん 1 日以内に返信
cncf/prow-github-actions の issue をすべて見る
似ている issue
-
area: backend bug priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
snapotter-hq/SnapOtter#2254 ·
メンテナーはふだん 1 日以内に返信
-
bug ticket
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
cratestack/cratestack#1154 ·
メンテナーはふだん 1 日以内に返信
-
server 消息处理器 cmd 分支补显式错误回报——竞态非法命令现走未处理拒绝対応中かも @openaddr が今日担当しました。 オープンready-for-agent refactor wayfinder:task
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
openaddr/dafung-web#428 ·
メンテナーはふだん 1 日以内に返信
-
Flaky: mongodb-memory-server 'Port already in use' when another process starts a mongod concurrentlyオープンarea:testing bug effort:S priority:P2
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
lens:agent lens:process process
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
thebristolsound/birdbrain#1772 ·
メンテナーはふだん 1 日以内に返信