Skip to content

Convert update-release-branch.py to TypeScript#4010

Draft
mbg wants to merge 28 commits into
mainfrom
mbg/ts/update-release-branch
Draft

Convert update-release-branch.py to TypeScript#4010
mbg wants to merge 28 commits into
mainfrom
mbg/ts/update-release-branch

Conversation

@mbg

@mbg mbg commented Jul 14, 2026

Copy link
Copy Markdown
Member

Converts the update-release-branch.py script to TypeScript.

Risk assessment

For internal use only. Please select the risk level of this change:

  • Low risk: Changes are fully under feature flags, or have been fully tested and validated in pre-production environments and are highly observable, or are documentation or test only.
  • High risk: Changes are not fully under feature flags, have limited visibility and/or cannot be tested outside of production.

Which use cases does this change impact?

Workflow types:

  • Advanced setup - Impacts users who have custom CodeQL workflows.
  • Managed - Impacts users with dynamic workflows (Default Setup, Code Quality, ...).

Products:

  • Code Scanning - The changes impact analyses when analysis-kinds: code-scanning.
  • Code Quality - The changes impact analyses when analysis-kinds: code-quality.
  • Other first-party - The changes impact other first-party analyses.
  • Third-party analyses - The changes affect the upload-sarif action.

Environments:

  • Dotcom - Impacts CodeQL workflows on github.com and/or GitHub Enterprise Cloud with Data Residency.
  • GHES - Impacts CodeQL workflows on GitHub Enterprise Server.
  • Testing/None - This change does not impact any CodeQL workflows in production.

How did/will you validate this change?

  • Test repository - This change will be tested on a test repository before merging.
  • Unit tests - I am depending on unit test coverage (i.e. tests in .test.ts files).
  • End-to-end tests - I am depending on PR checks (i.e. tests in pr-checks).
  • Other - Please provide details.
  • None - I am not validating these changes.

If something goes wrong after this change is released, what are the mitigation and rollback strategies?

  • Feature flags - All new or changed code paths can be fully disabled with corresponding feature flags.
  • Rollback - Change can only be disabled by rolling back the release or releasing a new version with a fix.
  • Development/testing only - This change cannot cause any failures in production.
  • Other - Please provide details.

How will you know if something goes wrong after this change is released?

  • Telemetry - I rely on existing telemetry or have made changes to the telemetry.
    • Dashboards - I will watch relevant dashboards for issues after the release. Consider whether this requires this change to be released at a particular time rather than as part of a regular release.
    • Alerts - New or existing monitors will trip if something goes wrong with this change.
  • Other - Please provide details.

Are there any special considerations for merging or releasing this change?

  • No special considerations - This change can be merged at any time.
  • Special considerations - This change should only be merged once certain preconditions are met. Please provide details of those or link to this PR from an internal issue.

Merge / deployment checklist

  • Confirm this change is backwards compatible with existing workflows.
  • Consider adding a changelog entry for this change.
  • Confirm the readme and docs have been updated if necessary.

@mbg mbg self-assigned this Jul 14, 2026
@mbg mbg requested a review from Copilot July 14, 2026 13:19
@github-actions github-actions Bot added the size/XL May be very hard to review label Jul 14, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Ports release-branch preparation and backport automation from Python to TypeScript.

Changes:

  • Adds TypeScript release, changelog, API, and dry-run logic.
  • Updates release workflows and dependency installation.
  • Adds shared paths and editor skill settings.
Show a summary per file
File Description
pr-checks/update-release-branch.ts Implements release branch preparation and PR creation.
pr-checks/changelog.ts Implements changelog transformations.
pr-checks/config.ts Adds shared paths and dry-run options.
.github/workflows/update-release-branch.yml Invokes the TypeScript script.
.github/actions/release-initialise/action.yml Installs JavaScript dependencies.
.github/actions/release-branches/action.yml Removes redundant dependency installation.
.vscode/settings.json Adds agent skill locations.

Review details

  • Files reviewed: 7/7 changed files
  • Comments generated: 9
  • Review effort level: Medium

Comment thread pr-checks/update-release-branch.ts
Comment thread pr-checks/update-release-branch.ts Outdated
Comment thread pr-checks/update-release-branch.ts Outdated
Comment thread pr-checks/update-release-branch.ts
Comment thread pr-checks/changelog.ts Outdated
Comment thread .vscode/settings.json Outdated
Comment thread .github/workflows/update-release-branch.yml
Comment thread pr-checks/update-release-branch.ts Outdated
Comment thread pr-checks/config.ts Outdated
Comment thread pr-checks/changelog.ts Fixed
@mbg mbg force-pushed the mbg/ts/update-release-branch branch from 29bc2b4 to ae48798 Compare July 14, 2026 14:51
@mbg mbg requested a review from Copilot July 14, 2026 16:02

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Review details

  • Files reviewed: 9/9 changed files
  • Comments generated: 3
  • Review effort level: Medium

Comment on lines +246 to +251
const { data: prs } =
await client.rest.repos.listPullRequestsAssociatedWithCommit({
owner,
repo,
commit_sha: commit.sha,
});
Comment thread pr-checks/update-release-branch.ts
Comment thread .github/workflows/update-release-branch.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XL May be very hard to review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants