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 — Add `changenotes.mts assemble` command to move changenotes to CHANGELOG.md by mario-campos · Pull Request #4155 · github/codeql-action

Conversation

@mario-campos

@mario-campos mario-campos commented Sep 18, 2026 •
edited
Loading

Uh oh!

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

Copy link
Copy Markdown
Contributor

This PR extends the pr-checks/changenotes.mts functionality by adding an assemble command that will be used to "flush" (or empty the contents of unreleased-change-notes) to the [UNRELEASED] section of CHANGELOG.md.

This PR also replaces the use of constants 0 and 1 for process exit codes with the ExitCode type from @actions/core.

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?

Workflow types:

  • N/A

Products:

  • N/A

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

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?

  • N/A

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
@mario-campos
Do not include trailing newlines in NO_CHANGES_STR
cb31eab
Changing `NO_CHANGES_STR` to just be the text will make it easier to insert/use. To not break anything, I added the deleted newlines to the locations where `NO_CHANGES_STR` was used.
@mario-campos
mario-campos requested a review from a team as a code owner September 18, 2026 14:42
Copilot AI balanced review requested due to automatic review settings September 18, 2026 14:42
Copilot started reviewing on behalf of mario-campos September 18, 2026 14:42
View session
@github-actions github-actions Bot added the size/M Should be of average difficulty to review label Sep 18, 2026
Copilot AI reviewed Sep 18, 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.

Copilot review overview

🟡 Changes recommended

Empty or invalid inputs can mutate the changelog, and deletion failures can leave a partially completed flush.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 3 Medium severity

Open (3)
  • Medium severity Preserve the placeholder when there are no notes · New
  • Medium severity Validate changenotes before deleting them · New
  • Medium severity Avoid partial flushes when deletion fails · New
What changed in this PR

Adds a development command to move unreleased changenotes into CHANGELOG.md.

Changes:

  • Adds the changenotes.mts flush command.
  • Adds changelog insertion helpers and unit tests.
  • Normalizes the default no-changes placeholder.
File Description
pr-checks/​changenotes.mts Implements changenote flushing and deletion.
pr-checks/​changelog.ts Adds unreleased-section insertion logic.
pr-checks/​changelog.test.ts Tests header parsing and insertion behavior.
pr-checks/​bundle-changelog.test.ts Updates assertions for the normalized placeholder.

💡 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 pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

@mario-campos
mario-campos force-pushed the mario-campos/merge-changenotes branch from 36485ce to ff33914 Compare September 18, 2026 16:05
mbg
mbg reviewed Sep 18, 2026
View reviewed changes

@mbg mbg left a comment

Copy link
Copy Markdown
Member

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.

Thanks for preparing this! I think functionally this looks fine, but as always, I have had a few comments and suggestions on the details of this initial implementation.

Sorry, something went wrong.

Uh oh!

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

All reactions
Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

mario-campos added 9 commits September 18, 2026 11:14
@mario-campos
Add changelog parsing helper getHeader
47d607e
@mario-campos
Add CHANGELOG function addBodyLinesToUnreleasedSection
bb1dc54
This will be used by the `pr-checks/changenotes.mts` script to "compile" the latest release entry of CHANGELOG.md.
@mario-campos
Add changenotes.mts flush command
1ee3265
This command will "flush" or move the changenotes in the `unreleased-change-notes` directory to the `[UNRELEASED]` section of the CHANGELOG.md file.
@mario-campos
Use withChangelog I/O helper
bffae1c
@mario-campos
Use ExitCode instead of 0/1
b246e56
@mario-campos
Assume '[UNRELEASED]' section is first section
d63b2a4
@mario-campos
Simplify getHeader to operate on ChangelogSections
128614a
@mario-campos
Simplify addBodyLinesToUnreleasedSection
bc0efd6
@mario-campos
Replace splice with push and pop
977b29b
@mario-campos
mario-campos force-pushed the mario-campos/merge-changenotes branch from ff33914 to 977b29b Compare September 18, 2026 18:47
mario-campos added 2 commits September 18, 2026 13:49
@mario-campos
Rename flush command to assemble
7f54212
@mario-campos
Refactor changenote file listing into function to D.R.Y.
a92f7fb
@mario-campos mario-campos mentioned this pull request Sep 18, 2026
Fix path-resolution bug in changenotes.mts validate by using getChangenotes #4156
Merged
@mario-campos mario-campos changed the title Add changenotes.mts flush command to move changenotes to CHANGELOG.md Add changenotes.mts assemble command to move changenotes to CHANGELOG.md Sep 18, 2026
@mario-campos
mario-campos requested a review from mbg September 21, 2026 16:42
mbg
mbg previously approved these changes Sep 21, 2026
View reviewed changes

@mbg mbg left a comment

Copy link
Copy Markdown
Member

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.

Thanks for addressing the feedback! This continues to look good in terms of functionality. I have a few more comments with minor suggestions and there was an inconsistency or two I spotted, but I don't think there's anything major that's blocking this, so I am happy to approve.

Sorry, something went wrong.

Uh oh!

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

All reactions
Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changelog.ts Resolved

Uh oh!

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

Comment thread pr-checks/changenotes.mts Resolved

Uh oh!

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

@mario-campos @mbg
Update JSDoc comment with parameter lines
7715606
Co-authored-by: Michael B. Gale <[email protected]>
@mario-campos
mario-campos dismissed mbg’s stale review via 7715606 September 21, 2026 21:28
mario-campos and others added 4 commits September 21, 2026 16:28
@mario-campos @mbg
Apply suggestion from @mbg
598cda3
Co-authored-by: Michael B. Gale <[email protected]>
@mario-campos
Rename name to absolutePath for clarity
c496c6c
@mario-campos
Format code with npm run lint-fix
0263122
@mario-campos
Replace JSDoc text with @throws
c0bd54f
@mario-campos
Flesh out a comment
b1668d6
mbg
mbg approved these changes Sep 22, 2026
View reviewed changes

@mbg mbg left a comment

Copy link
Copy Markdown
Member

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.

Thanks!

Sorry, something went wrong.

Uh oh!

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

All reactions
@mario-campos
mario-campos added this pull request to the merge queue Sep 22, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Sep 22, 2026

Uh oh!

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

@mario-campos
mario-campos added this pull request to the merge queue Sep 22, 2026
Merged via the queue into main with commit 6dd161b Sep 22, 2026
233 checks passed

Uh oh!

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

@mario-campos
mario-campos deleted the mario-campos/merge-changenotes branch September 22, 2026 13:09
This was referenced Sep 23, 2026
Merge main into releases/v4 #4164
Closed
Merge main into releases/v4 #4168
Merged
Merge releases/v4 into releases/v3 #4171
Merged
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
@mbg mbg mbg approved these changes

Uh oh!

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

Assignees

No one assigned

Labels

size/M Should be of average difficulty 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.

3 participants

@mario-campos @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.