Repository navigation
List every PR comment command in /help, not just the first per job - #837
Merged
Merged
Conversation
get_help_text.py took only the first `contains(github.event.comment.body, ...)` match in each job's `if`, so /help showed one command per job and hid the others. /all_test, which triggers the unit, integration, e2e and lint jobs, never appeared at all. Collect every match with re.findall and list them, deduplicated, on the job's line, e.g. "`/e2e_test`, `/all_test` - Run E2E Tests". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Three jobs trigger on a comment that ends with `/unit_test`, which the workflow expresses with endsWith rather than contains. The help text skipped those, so the one command its footer uses as an example was missing from the list. The regex now accepts both functions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The contains() pre-filter skipped jobs that only use endsWith, so their commands never reached the regex. Drop it and let findall decide. Also state that /unit_test only matches at the end of a comment, and build the command list with an explicit join. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A job that has an outputs key feeds other jobs (for example a plan job that builds a matrix) and is never a PR comment command. With endsWith matched, such a job would be listed as a command, so skip it explicitly. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
svij-sc
approved these changes
Nov 4, 2026
yliu2-sc
approved these changes
Nov 5, 2026
kmontemayor2-sc
marked this pull request as ready for review
November 5, 2026 02:26
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.
Scope of work done
/helponly listed the firstcontains(github.event.comment.body, ...)command in each job'sif:, so/unit_testand/all_testnever showed up even though they trigger jobs.get_help_text.pynow collects everycontainsandendsWithcommand in the condition, deduplicates them in order, and lists them all on the job's line.Before and after, from the repo root against all workflows under
.github/workflows(excerpt):The script no longer pre-filters on
contains(github.event.comment.body,; the regex decides, so jobs that use onlyendsWithare also picked up. Jobs with anoutputs:key are skipped: they feed other jobs (for example a plan job that builds a matrix) and are never a command, and withendsWithnow matched they would show up as a bogus command. The/helpusage line now says/unit_testonly works as the last token of the comment (the workflows match it withendsWith). The script imports PyYAML, so run it in an environment that has it (thegh-actionsdependency group).Where is the documentation for this feature?: N/A
Did you add automated tests or write a test plan?
No test added; the repo has no existing tests for
.github/scripts/. Test plan, run on the branch head:python .github/scripts/get_help_text.py(the same invocation as thehelpjob, with PyYAML installed): the output above. Diffed against the output of main's script, the only difference is the added/unit_testusage sentence plus the extra commands per job shown above.outputs:; main has none that match a command).ruff checkandruff format --checkon.github/scripts examples gigl tests snapchat scripts: All checks passed, 697 files already formatted.ty checkon the same paths: All checks passed.Updated Changelog.md? NO (CI helper script only; no user-facing library change)
Ready for code review?: YES
🤖 Generated with Claude Code