Skip to content

Enhance CLI version checker to fetch and parse GitHub release notes#3495

Merged
pelikhan merged 4 commits intomainfrom
copilot/enhance-cli-version-checker
Nov 8, 2025
Merged

Enhance CLI version checker to fetch and parse GitHub release notes#3495
pelikhan merged 4 commits intomainfrom
copilot/enhance-cli-version-checker

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Nov 8, 2025

Enhance CLI version checker to fetch and parse GitHub release notes

Task: Update the CLI version checker workflow to fetch and parse GitHub release notes for better version update information.

Completed:

  • Explore the repository and understand the issue
  • Review the patch file from the failed workflow run
  • Apply the patch changes to .github/workflows/cli-version-checker.md
  • Compile the workflow to ensure it works
  • Run unit tests to validate no breakage
  • Commit changes
  • Fix merge conflict with duplicate sections
  • Recompile workflow after cleanup

Changes Applied:

  1. Version Sources section:

    • Added GitHub repository information for each CLI tool
    • Documented which tools have public release notes
    • Identified repository availability (public/private/none)
  2. Research & Analysis section:

    • Added instructions for fetching GitHub release notes
    • Specified URL patterns for Codex and GitHub MCP Server releases
    • Added parsing instructions for "Highlights" and "PRs merged" sections
    • Included fallback strategy for tools without public repositories
  3. Issue Format section:

    • Added "Release Highlights (from GitHub)" section
    • Added "Merged PRs (from GitHub)" section
    • Updated "Package Links" to include "Release Notes" and "Specific Release"
    • Removed duplicate "Changelog Links" section after merge
  4. Guidelines section:

    • Added "FETCH GITHUB RELEASE NOTES" guideline
    • Specified which tools to always fetch release notes for
    • Documented handling of private/inaccessible repositories

Recent Fix:

  • Resolved merge conflict that created duplicate section headers
  • Cleaned up "Changelog Links" vs "Package Links" duplication
  • Recompiled workflow to ensure lock.yml matches source

Validation:

  • ✅ Workflow compiles successfully (gh-aw compile cli-version-checker)
  • ✅ All unit tests pass
  • ✅ No duplicate sections in template
  • ✅ Lock file properly synchronized
Original prompt

This section details on the original issue you should resolve

<issue_title>[q] Enhance CLI version checker to inspect GitHub release notes</issue_title>
<issue_description># Q Workflow Optimization Report

Context

This PR addresses the request in issue #3482 to update the CLI version checker script to inspect release notes on GitHub projects. The user specifically mentioned Codex, which has release notes at https://github.com/openai/codex/releases/tag/rust-v0.56.0.

Issues Found

CLI Version Checker Workflow

Current Limitations:

  • Only fetches version numbers from NPM registry
  • No inspection of GitHub release notes for detailed changelogs
  • Missing structured information about what changed between versions
  • Cannot parse highlights, PR lists, or breaking changes from official sources

Investigation Results:

Changes Made

.github/workflows/cli-version-checker.md

Enhanced Version Sources Section:

  • Added GitHub repository URLs for each CLI tool
  • Documented which tools have public release notes
  • Identified repository availability (public/private/none)

Enhanced Research & Analysis Section:

  • Added instructions to fetch GitHub release notes when available
  • Specified URL patterns for Codex and GitHub MCP Server releases
  • Added parsing instructions for "Highlights" and "PRs merged" sections
  • Included fallback strategy for tools without public repositories

Enhanced Issue Format Template:

  • Added "Release Highlights (from GitHub)" section
  • Added "Merged PRs (from GitHub)" section
  • Added "Specific Release" link to changelog URLs
  • Maintained existing NPM and CLI discovery sections

Enhanced Guidelines:

  • Added "FETCH GITHUB RELEASE NOTES" guideline with specific URLs
  • Specified which tools to always fetch release notes for
  • Documented handling of private/inaccessible repositories

Expected Improvements

  1. Better Change Visibility: Workflow now fetches official release notes from GitHub for:

    • Codex (always available)
    • GitHub MCP Server (always available)
    • Copilot CLI (when accessible)
  2. Structured Information: Release notes parsing provides:

    • Highlights section for quick understanding of major changes
    • Complete list of merged PRs for detailed change tracking
    • Direct links to PRs and issues for context
  3. Enhanced Issue Reports: Generated issues will now include:

    • Official highlights from release notes
    • Comprehensive PR lists with links
    • Better categorization of changes (features, fixes, breaking changes)
    • More accurate impact assessment based on actual release notes
  4. Maintained Compatibility: Workflow still works for tools without GitHub releases:

    • Claude Code continues using NPM metadata and CLI help comparison
    • Fallback to existing analysis methods when release notes unavailable

Validation

Workflow compiled successfully using the compile tool from gh-aw MCP server:

  • ✅ cli-version-checker

Note: .lock.yml files will be generated automatically after merge.

Example Usage

When the workflow runs and detects a Codex update, it will now:

  1. Fetch version from NPM: npm view @openai/codex version
  2. Fetch release notes from GitHub: https://github.com/openai/codex/releases/tag/rust-v{VERSION}
  3. Parse the highlights (e.g., "Introducing GPT-5-Codex-Mini")
  4. Parse merged PRs (e.g., Add proactive staleness warnings with actionable guidance to status command #6211, Issue Monster: Create shared feature PR for sub-issue batches #6212, etc.)
  5. Include all information in the generated issue

This provides much richer context for version updates compared to NPM metadata alone.

References

AI generated by Q


[!NOTE]
This was originally intended as a pull request, but the git push operation failed.

Workflow Run: View run details and download patch artifact

The patch file is available as an artifact (aw.patch) in the workflow run linked above.
To apply the patch locally:

# Download the artifact from the workflow run https://github.com/githubnext/gh-aw/actions/runs/19195907408
# (Use GitHub MCP tools if gh CLI is not available)
gh run download 19195907408 -n aw.patch
# Apply the patch...

</details>

- Fixes githubnext/gh-aw#3494

<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

- Add GitHub repository URLs for each CLI tool
- Document which tools have public release notes (Codex, GitHub MCP Server)
- Add instructions to fetch and parse GitHub release notes
- Include "Highlights" and "Merged PRs" sections in issue template
- Add guidelines for fetching release notes in parallel
- Document repository availability (public/private/none) for each tool

This addresses issue #3482 by enabling the workflow to fetch official
release notes from GitHub repositories where available, providing richer
context for version updates compared to NPM metadata alone.

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Update CLI version checker to inspect GitHub release notes Enhance CLI version checker to fetch and parse GitHub release notes Nov 8, 2025
Copilot AI requested a review from pelikhan November 8, 2025 19:13
@pelikhan pelikhan marked this pull request as ready for review November 8, 2025 19:16
Copilot AI review requested due to automatic review settings November 8, 2025 19:16
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR enhances the CLI version checker workflow to fetch and include GitHub release notes for tools with public repositories. The changes add structured instructions for fetching release notes from GitHub repositories, parsing highlights and merged PRs, and including this information in version update issues.

Key Changes

  • Added repository URLs and release notes links for Codex and GitHub MCP Server in version sources
  • Added detailed instructions for fetching and parsing GitHub release notes with tool-specific guidance
  • Updated the issue template to include new sections for "Release Highlights" and "Merged PRs" from GitHub

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/cli-version-checker.md Added GitHub repository URLs, release notes instructions, and template sections for displaying release information from GitHub
.github/workflows/cli-version-checker.lock.yml Compiled version of the workflow markdown file with identical changes to the source file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pelikhan
Copy link
Copy Markdown
Collaborator

pelikhan commented Nov 8, 2025

@copilot recompile

- Remove duplicate "Changelog Links" section after merge
- Keep "Package Links" header (from main branch)
- Maintain enhanced content with Release Notes and Specific Release links
- Recompile workflow to ensure lock.yml is up to date

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Nov 8, 2025

@copilot recompile

Recompiled workflow in commit 761ce90. Fixed duplicate section headers that appeared after the merge from main, keeping the "Package Links" header with enhanced content including Release Notes and Specific Release links.

Copilot AI requested a review from pelikhan November 8, 2025 19:35
@pelikhan pelikhan merged commit 2686b50 into main Nov 8, 2025
42 of 46 checks passed
@pelikhan pelikhan deleted the copilot/enhance-cli-version-checker branch November 8, 2025 20:39
salmanmkc added a commit that referenced this pull request Apr 10, 2026
…10024)

Replace the 208-line JavaScript host repo resolver with a 6-line bash step
that uses the new job.workflow_repository and job.workflow_sha context fields
from ADR 10024.

Key improvements:
- job.workflow_repository directly provides the platform repo, eliminating
  GITHUB_WORKFLOW_REF parsing and the referenced_workflows API fallback
  for cross-org scenarios
- job.workflow_sha provides an immutable commit SHA for checkout pinning,
  instead of a potentially moving branch/tag ref
- Removes the actions/github-script dependency from the resolve-host-repo step
- Deletes resolve_host_repo.cjs (208 lines) and its test file (459 lines)

The job.workflow_* fields are populated by the runner (actions/runner#4335)
using data sent by actions-run-service (actions-run-service#3493, #3495),
gated behind the actions_expose_job_workflow_context feature flag.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants