GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Convert most remaining CI scripts to TypeScript in `pr-checks` by mbg · Pull Request #4064 · github/codeql-action

Conversation

@mbg

@mbg mbg commented Jul 31, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

This PR converts most remaining CI scripts to TypeScript (if they weren't already) and integrates them with the sub-project in pr-checks. There are a couple or so left which I'll address separately in the future.

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.

Which use cases does this change impact?

Environments:

  • Testing/None - This change does not impact any CodeQL workflows in production.

How did/will you validate this change?

  • 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).

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

  • Development/testing only - This change cannot cause any failures in production.

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

  • 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.

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.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@mbg mbg self-assigned this Jul 31, 2026
@github-actions github-actions Bot added size/M Should be of average difficulty to review size/XL May be very hard to review and removed size/M Should be of average difficulty to review labels Jul 31, 2026
mbg added 3 commits July 31, 2026 14:01
@mbg
Add DEFAULTS_FILE constant
6e32e88
@mbg
Move upgrade-bundle.ts to pr-checks and add tests
40b3f0c
@mbg
Convert check-sarif/index.js and add tests
58f39a7
@mbg
mbg force-pushed the mbg/ts/remaining-scripts branch from c30ddcc to 86a0c12 Compare July 31, 2026 13:24
mbg added 2 commits July 31, 2026 14:38
@mbg
Move check-codescanning-config/index.ts to pr-checks and add tests
f8f91fb
@mbg
Move subprocess helpers from update-release-branch.ts to command.ts
fccc166
@mbg
mbg force-pushed the mbg/ts/remaining-scripts branch from 86a0c12 to d8e40bf Compare July 31, 2026 13:38
@mbg
Convert check-js.sh to TypeScript
7e36708
@mbg
mbg force-pushed the mbg/ts/remaining-scripts branch from d8e40bf to 7e36708 Compare July 31, 2026 16:18
@mbg
Merge branch 'main' into mbg/ts/remaining-scripts
7fbadd1
@mbg mbg changed the title Add remaining CI scripts to pr-checks Convert most remaining CI scripts to TypeScript in pr-checks Oct 14, 2026
@mbg
Update for ESM
2e5cfb2
@mbg
mbg marked this pull request as ready for review October 14, 2026 09:44
@mbg
mbg requested a review from a team as a code owner October 14, 2026 09:44
Copilot AI balanced review requested due to automatic review settings October 14, 2026 09:44
Copilot started reviewing on behalf of mbg October 14, 2026 09:44
View session
Copilot AI reviewed Oct 14, 2026
View reviewed changes

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

🟡 Changes recommended

The JavaScript check can miss generated files and omit its job summary, while moved-action paths may use an unpinned runtime dependency.

6 open findings
  • Medium severity Use installed tsx binary after moving node_modules · New
  • Medium severity Invoke installed tsx binary directly · New
  • Medium severity Use status check to detect staged and untracked changes · New
  • Medium severity Await summary write before exiting failure path · New
  • Low severity Test query-array sorting with reordered queries · New
  • Low severity Correct LIB_ROOT documentation · New
What changed in this PR

Converts remaining CI utilities into the pr-checks TypeScript project with unit coverage and shared helpers.

Changes:

  • Migrates bundle, SARIF, configuration, and generated-JavaScript checks.
  • Adds tests for migrated scripts.
  • Updates workflows and composite actions to invoke TypeScript scripts.
File Description
pr-checks/​update-release-branch.ts Uses shared command helpers.
pr-checks/​update-bundle.ts Adds TypeScript bundle updater.
pr-checks/​update-bundle.test.ts Tests bundle metadata updates.
pr-checks/​config.ts Exports source, library, and defaults paths.
pr-checks/​command.ts Adds shared command and Git helpers.
pr-checks/​check-sarif.ts Adds TypeScript SARIF validator.
pr-checks/​check-sarif.test.ts Tests SARIF validation.
pr-checks/​check-js.ts Replaces generated-JavaScript shell check.
pr-checks/​check-cs-config.ts Adds TypeScript configuration validator.
pr-checks/​check-cs-config.test.ts Tests configuration comparison.
.github/​workflows/​update-bundle.yml Runs the new bundle updater.
.github/​workflows/​script/​check-js.sh Removes superseded shell script.
.github/​workflows/​pr-checks.yml Runs the TypeScript JavaScript check.
.github/​actions/​update-bundle/​index.ts Removes the old updater implementation.
.github/​actions/​update-bundle/​action.yml Removes the old composite updater.
.github/​actions/​check-sarif/​index.js Removes the old SARIF implementation.
.github/​actions/​check-sarif/​action.yml Delegates SARIF validation to pr-checks.
.github/​actions/​check-codescanning-config/​index.ts Removes the old configuration checker.
.github/​actions/​check-codescanning-config/​action.yml Delegates configuration validation to pr-checks.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread .github/actions/check-codescanning-config/action.yml
EXPECTED_CONFIG_FILE_CONTENTS: '${{ inputs.expected-config-file-contents }}'
run: ts-node ./index.ts "$RUNNER_TEMP/user-config.yaml" "$EXPECTED_CONFIG_FILE_CONTENTS"
run: |
npx tsx ../action/pr-checks/check-cs-config.ts \
Comment thread .github/actions/check-sarif/action.yml
--queries-run "$QUERIES_RUN" \
--queries-not-run "$QUERIES_NOT_RUN"
else
npx tsx ../action/pr-checks/check-sarif.ts \
Comment thread pr-checks/check-js.ts
function main() {
// Sanity check that repo is clean to start with
try {
runGit(["diff", "--exit-code"], { allowNonZeroExitCode: false });
Comment thread pr-checks/check-js.ts
Comment on lines +50 to +51
core.summary.addHeading("Transpiled JS diff", 3);
core.summary.addCodeBlock(fs.readFileSync(diffFile, "utf-8"), "diff");
Comment thread pr-checks/check-cs-config.test.ts
Comment on lines +19 to +22
await it("passes when queries arrays match after sorting", () => {
const actual: UserConfig = { paths: ["b", "a", "c"] };
const expected = JSON.stringify(actual);
assert.doesNotThrow(() => checkConfiguration(actual, expected));
Comment thread pr-checks/config.ts
const SOURCE_ROOT = path.join(REPO_ROOT, "src");
export const SOURCE_ROOT = path.join(REPO_ROOT, "src");

/** The `src` directory. */
@mbg mbg mentioned this pull request Oct 30, 2026
Consistently format YAML and add CI check #4280
Merged

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

Copilot code review Copilot
Copilot review effort
Applies to this pull request for everyone.Learn more about Copilot code review.
Copilot left review comments

At least 1 approving review is required to merge this pull request.

Uh oh!

There was an error while loading. Please reload this page.

Assignees

@mbg mbg

Labels

size/XL May be very hard to review

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@mbg
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.