feat: ジョブサマリに導入結果を出力(NFR-5)#50
Conversation
|
Warning Review limit reached
More reviews will be available in 48 minutes and 6 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (1)
📝 WalkthroughWalkthrough
Changesジョブサマリ出力の実装
TODO.md の Issue
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #50 +/- ##
==========================================
- Coverage 65.88% 62.92% -2.97%
==========================================
Files 9 9
Lines 170 178 +8
Branches 50 51 +1
==========================================
Hits 112 112
- Misses 51 59 +8
Partials 7 7
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
3 issues found across 5 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/main.ts`:
- Around line 124-136: The comment "// 8. Job summary (NFR-5)" incorrectly
introduces an 8th step to the fixed 7-step pipeline contract defined in
src/main.ts, which violates the established pipeline sequence (resolve version →
tool-cache lookup → download → checksum → extract+cache → chmod+addPath →
outputs). The core.summary block that adds the job summary table should not be
numbered as a new step but instead should be clearly marked as post-processing
output outside the 7-step pipeline. Remove the "8." numbering from the comment
and rephrase it to indicate this is post-processing (for example, "// Job
summary (post-processing)" or "// Job summary output") to maintain alignment
with the fixed pipeline contract and prevent future maintenance confusion.
- Around line 125-136: The core.summary.write() method call at the end of the
summary chain is missing an await keyword. Since run() is an async function and
core.summary.write() returns a Promise, you must add await before the entire
method chain (core.summary.addHeading().addTable().write()) to ensure the
asynchronous file I/O operation completes before the function continues
execution.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 2d089b4d-2bf9-42b3-8d94-a8eaae10992f
⛔ Files ignored due to path filters (3)
.github/workflows/ci.ymlis excluded by!**/*.yml.github/workflows/docs.ymlis excluded by!**/*.yml.github/workflows/self-test.ymlis excluded by!**/*.yml
📒 Files selected for processing (2)
TODO.mdsrc/main.ts
- core.summary にバージョン・アセット・取得元・cache・checksum・実行ファイルパスを表形式で記載 - cache hit 時は checksum を n/a、skip-checksum 時は skipped、通常時は verified と表示
- ci.yml check-gate: changes / check の failure/cancelled を両方確認 - self-test.yml self-test-gate: changes / matrix / skip-checksum の failure/cancelled を確認 - self-test.yml: dorny/paths-filter 用に pull-requests: read を追加
- core.summary.write() returns a Promise; await it in the async run() function - Rephrase the comment so it does not introduce an 8th step to the fixed 7-step pipeline
概要
要求仕様書 NFR-5(可観測性)に対応。アクション完了時に
core.summaryで導入結果をジョブサマリに出力する。変更内容
src/main.tscore.summaryで表形式のサマリを記録core.setSecretでマスク済みのため、サマリに漏れないワークフロー修正(#49 フォローアップ、レビュー指摘対応)
ci.yml/self-test.ymlの bridge job (*-gate) がchangesjob の失敗・キャンセルを正しく検出するよう修正self-test.ymlにpull-requests: readを追加(dorny/paths-filter用)サマリに含まれる項目
3.51.1task_linux_amd64.tar.gzgo-task/task GitHub Releaseshit/missverified (SHA256)/skipped/n/a/runner/tool-cache/task/3.51.1/x64/task注意点
core.setFailedで終了。サマリは成功時にのみ出力。core.summary.write()自体の失敗は考慮していない(Actions API の失敗は極めて稀)。検証
pnpm run all✅actionlint✅dist/index.jsが再ビルド済み(source branch には commit しない方針)参照