Repository navigation
Truncate PR comment to fit GitHub's character limit - #21
Merged
Merged
Conversation
Large deployments (e.g. 1224 deleted files) produced a changes table far over GitHub's comment limit, failing the run with 'Body is too long'. Cut the action's section at a row boundary and point to the logs/job summary for the full list. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
wootware/magento-1#225 removes the legacy Sendy install, which is 1,224 file deletions. The kickflip PR-comment step failed with:
The changes table has one row per file, and
ConsoleTablepads every row to the widest path (about 290 characters here). That puts the comment at roughly 350k characters. Any large deployment will hit this.Change
PullRequestCommentComposer.Composenow checks the full body length. If it's over 65,000 characters (some headroom under GitHub's 65,536), it:I kept the per-row padding as is. Trimming it would save characters, but 1,224 rows still wouldn't fit, so truncation is needed regardless.
Testing
Compose_OversizedSection_TruncatesAtLineAndKeepsOtherSections: it checks that a 2,000-row section is truncated under the limit, the other section survives, the first rows are kept, the last rows are dropped, and every remaining table row is complete.magento-1 installs kickflip from NuGet without a pinned version, so once this is released, re-running the magento-1 job will pick up the fix.
🤖 Generated with Claude Code