fix(release): sync client manifest versions - #172
Conversation
|
nightcityblade please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
Contributor License AgreementContribution License AgreementThis Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”),
|
Nikola Metulev (nmetulev)
left a comment
There was a problem hiding this comment.
This PR correctly expands release version synchronization from five fields to seven, covering the Claude and Codex client manifests. I found two issues that need to be addressed before merging:
1. The release script changes files but does not commit them
What's wrong: scripts/open-release-pr.ps1 updates these manifests:
plugins/winui/.claude-plugin/plugin.jsonplugins/winui/.codex-plugin/plugin.json
However, neither path is included in the later git add command. The generated release commit therefore keeps their old versions, and the new seven-field CI check rejects the release PR.
How to resolve it: Add both client-manifest paths to the git add block before the release commit is created.
2. CI checks seven versions on the PR but only five on main
What's wrong: .github/workflows/release-policy.yml validates all seven fields on the PR side, but its main-side consistency guard still reads and compares only the original five. For example, an incorrect Codex client version on main would not be detected by that guard.
How to resolve it: Read the Claude and Codex client versions from BASE_SHA, include them in MAIN_ALL and the main-side diagnostic output, and update the remaining “5 fields” message to “7 fields”.
Everything else in the PR looks consistent, including the release documentation and the single-commit PowerShell array fix.
|
Addressed both review findings: the release script now stages the Claude and Codex client manifests, and the main-side policy reads, compares, and reports all seven version fields. Validation: PowerShell parser passed and git diff --check passed. |
|
Thanks nightcityblade.
|
|
Updated in 786c1e1: the main-side version consistency guard now exits with status 1 immediately when any of the seven fields differs. Validation: YAML parse and git diff --check both pass. The CELA acceptance requires an account-holder legal attestation, so I have not automated that step. |
I think there was some misunderstanding. You do not need to adjust your fix for the CLA. You just need to respond in this thread here with the an agree comment, to accept CLA for your contribution. See following comment how to do it: |
Description
Extends the release helper and promotion policy to update and validate the Claude and Codex client manifest versions alongside the five existing release fields. This prevents client plugin updates from remaining pinned to stale manifest versions.
The release helper also normalizes a single pending commit to an array so its dry-run path works when staging is exactly one commit ahead of main.
Related Issue
Fixes #170
Type of Change
Affected area
plugins/winui/agents/,plugins/winui/agent-plugin/com.github.copilot/agents/) — N/Aplugin.json,plugins/winui/)Checklist
RemoteSignedon macOSSKILL.mdfrontmatter still valid; cross-references to other skills still resolve — N/AMicrosoft.WindowsAppSDK.Analyzerssource changed: rebuilt the DLL and committed it (plugins/winui/agent-plugin/skills/winui-dev-workflow/analyzer/Microsoft.WindowsAppSDK.Analyzers.dll) — N/A.ps1script changed: tested under defaultRemoteSignedexecution policyREADME.mdupdated — N/A## [Unreleased]inCHANGELOG.md— N/A; no shipped plugin behavior changesversionfield inplugins/winui/agent-plugin/plugin.json,.github/plugin/marketplace.json, or.claude-plugin/marketplace.json(versions bump only on thestaging → mainpromotion PR — seeRELEASING.md)Screenshots / Demo
N/A; release automation only.
Additional Notes
Validation:
actionlint -ignore SC2001 .github/workflows/release-policy.ymlSet-JsonFieldcalls: all seven fields updated to the same test versionversion-syncarrays: all seven fields detected and unchangedpwsh -NoProfile -ExecutionPolicy RemoteSigned -File scripts/open-release-pr.ps1 -Version 0.6.1 -DryRungit diff --checkSC2001is an existing style warning in the unchanged changelog-validation step, so it was excluded from the actionlint run.AI Description
This section is auto-generated by AI when the PR is opened or updated. To opt out, delete this entire section including the marker comments.