Skip to content

fix: rate-limit comment API calls#1

Open
seth-martin-bold-penguin wants to merge 5 commits into
mainfrom
fix/rate-limit-comments
Open

fix: rate-limit comment API calls#1
seth-martin-bold-penguin wants to merge 5 commits into
mainfrom
fix/rate-limit-comments

Conversation

@seth-martin-bold-penguin

Copy link
Copy Markdown

Description

When CDK diff output is too large for a single PR comment, the action falls back to one comment per stack. It fires ALL comment API calls in parallel via Promise.allSettled, hitting GitHub's secondary rate limit with 100+ stacks.

Fix: Replace parallel Promise.allSettled with sequential execution + 200ms delay between API calls.

How did you test this?

Will validate via cdk-infra PR.

@szechyjs

szechyjs commented Jul 1, 2026

Copy link
Copy Markdown
Member

Can you instead update the source, and rebuild the dist part?

https://github.com/BoldPenguin/cdk-diff-action/blob/main/src/stage-processor.ts#L246

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread dist/index.js Outdated
Instead of listing every stack individually (causing per-stack comments
when the stage comment exceeds GitHub's size limit), collapse stacks
with no changes into a single summary line. Only show detail for stacks
with actual diffs. This prevents the per-stack comment fallback and
reduces email notification spam.
When the stage comment exceeds GitHub's 65536 char limit, truncate
with a notice to run cdk diff locally rather than splitting into
per-stack comments (which generates N email notifications).

Also collapse no-changes stacks into a summary count to minimize
comment size in the common case.
- Revert action.yml from node24 to node20 (runners don't support node24 yet,
  causing the action to silently produce no output or comments)
- Remove per-stack comment fallback when body is too long — just log a warning
  and let GitHub truncate on display (avoids 200+ comments and email notifications)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants