feat: drop cosmetic title-case + ending-period PR-title rules#7
Open
johnxie wants to merge 1 commit into
Open
Conversation
Remove the TITLE_NOT_CAPITALISED and TITLE_HAS_ENDING_PERIOD checks from verifyPRTitle. They flag the conventional-commit *subject* first-letter case and a trailing period — both purely cosmetic: - They have zero effect on releases. Consuming repos build release notes from conventional-changelog parsing commit *subjects*; subject case/trailing-period are copied through verbatim and never inspected by the parser. - Capitalising a conventional-commit subject is in fact anti-conventional (commitlint config-conventional sets subject-case to error on sentence-case). The result is ~20 PRs perpetually carrying an advisory 'pr/title-not-capitalised' label that gates nothing and never clears. Kept rules: TYPE_MISSING, ISSUE_REFERENCE_MISSING, FEAT_FIX_NO_SCOPE (the type/scope token IS load-bearing for changelog categorisation + version bump) and the approvals logic — untouched. lib/index.js is hand-patched to mirror the src change exactly (the repo's pinned ncc 0.28.6 + tsc toolchain no longer runs on Node 22); diff is symmetric and the bundle parses (node --check). Refs taskade/taskcade#27047.
There was a problem hiding this comment.
Pull request overview
This PR removes two cosmetic PR-title validation rules (subject first-letter capitalization and trailing period) from the verifyPRTitle logic, aligning PR-title checks more closely with conventional-commit expectations and reducing non-actionable advisory labeling for consuming repositories.
Changes:
- Removes
TITLE_NOT_CAPITALISEDandTITLE_HAS_ENDING_PERIODlabels from theTitleLabelenum. - Deletes the PR-title “Subject” validation block that previously added/removed those labels.
- Applies the equivalent change to the checked-in bundled output (
lib/index.js).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| src/verifyPRTitle.ts | Removes the two cosmetic title-subject label rules and their validation logic. |
| lib/index.js | Mirrors the same removals in the bundled action output. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
6
to
10
| enum TitleLabel { | ||
| TYPE_MISSING = 'pr/type-missing :question:', | ||
| ISSUE_REFERENCE_MISSING = 'pr/issue-ref-missing :hash:', | ||
| TITLE_NOT_CAPITALISED = 'pr/title-not-capitalised :a:', | ||
| TITLE_HAS_ENDING_PERIOD = 'pr/title-has-ending-period :black_circle:', | ||
| FEAT_FIX_NO_SCOPE = 'pr/feat-fix-no-scope :infinity:', | ||
| } |
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.
What & why
Removes two cosmetic rules from
verifyPRTitle:TITLE_NOT_CAPITALISED→pr/title-not-capitalised :a:TITLE_HAS_ENDING_PERIOD→pr/title-has-ending-period :black_circle:Both flag the conventional-commit subject (first-letter case / trailing period), which is purely cosmetic:
conventional-changelogparsing commit subjects; the parser routes on the lowercase type token only and copies the subject through verbatim — subject case and trailing period are never inspected.@commitlint/config-conventional(subject-caseerrors on sentence-case).Net effect today: ~20 open PRs in taskcade perpetually carry an advisory
pr/title-not-capitalisedlabel that gates nothing (the action is advisory-only — no status check) and never clears.What's kept (untouched)
TYPE_MISSING,ISSUE_REFERENCE_MISSING,FEAT_FIX_NO_SCOPE— the type/scope token is load-bearing (changelog categorisation + version-bump), so those stay.verifyApprovals(ship_it / needs-more-reviewers) untouched.Build note
The repo's pinned toolchain (
ncc 0.28.6+ oldtsc) no longer runs on Node 22 (webpack can't resolvenode:scheme imports; pinned tsc can't parse newer@octokit.d.ts).lib/index.jsis therefore hand-patched to mirror thesrcchange exactly — the diff is symmetric (same enum members + the// Subjectblock removed from both), and the bundle parses (node --check lib/index.js✓). Kept-label strings verified present, removed-label strings verified absent in both files. (Out of scope:runs.using: node16is deprecated — separate modernization.)Rollout
Pinned
@mainby consumers, so this propagates on merge. After merge, delete the now-orphanedpr/title-not-capitalised :a:label in each consuming repo (the action no longer self-heals it).Refs taskade/taskcade#27047