feat(ci): derive deterministic MSIX release versions - #36
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: needs maintainer review before merge. Reviewed September 17, 2026, 2:40 AM ET / 06:40 UTC (Revision 13). ClawSweeper reviewWhat this changesDerive Windows package and release versions from Gateway tags and packaging revisions, advance the payload to 2026.9.4, and add fresh-install and state-preserving upgrade checks. Merge readiness✅ Ready for maintainer review The previous upgrade-proof blocker is resolved by candidate-specific Windows acceptance results. No blocking defect remains; this maintainer-authored PR remains useful because main still uses the proof-release version policy. Priority: P2 Review scores
Verification
How this fits togetherThe packaging pipeline combines an approved OpenClaw payload with the Windows launcher to produce MSIX packages and bundles. Release policy supplies the identities checked before signing and publication. flowchart TD
A[Approved Gateway tag and commit] --> C[Derive release identity]
B[Packaging revision] --> C
C --> D[Build MSIX packages and bundle]
D --> E[Fresh install and upgrade checks]
D --> F[Validate official signing inputs]
F --> G[Protected signing and release publication]
Before mergeNone. Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Use one deterministic release identity throughout composition and signing, retaining the demonstrated proof-release transitions as the compatibility gate. Do we have a high-confidence way to reproduce the issue? Not applicable: this proposes a release-version policy rather than reporting a reproducible runtime defect. Is this the best way to solve the issue? Yes. A shared derivation helper avoids competing version assignments, and the current-candidate acceptance results address the earlier upgrade concern. AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning medium; reviewed against e6cac4e1091f. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (12 earlier review cycles; latest 8 shown)
|
|
lgtm. cc @paulcam206 |
391de36 to
0baf4c7
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. |
|
Exact-head Windows acceptance evidence is now complete on
The JSON artifact @clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. |
|
Candidate-specific Windows acceptance is now complete on exact head
The full host suite, pinned @clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. |
Summary
0.0.0.1policy with a Gateway tag plus an independent MSIX-only rebuild numberv2026.9.4Version mapping
v2026.7.1v2026.7.1-msix.02026.7.1.1000v2026.7.1-2v2026.7.1-2-msix.02026.7.1.2000v2026.7.1-2-msix.12026.7.1.2001v2026.7.2v2026.7.2-msix.02026.7.2.1000The unsuffixed Gateway tag is release sequence 1; correction tags use their numeric suffix. The fourth component is
gateway release sequence * 1000 + MSIX rebuild. An MSIX-only rebuild therefore cannot consume or shift the version assigned to a later Gateway correction.msixRevisionis constrained to0..999, and Gateway correction suffixes to2..64, giving every supported sequence a complete 1,000-number block beneath the MSIX component ceiling.The policy resolves pinned Gateway
v2026.9.4at immutable commit3a9d69db306cd7f081e06254cb89c4bcc14a7107, rebuild0, to release tagv2026.9.4-msix.0and MSIX identity2026.9.4.1000.Compatibility validation
Versioning changes run on a clean GitHub-hosted Windows account and test:
.msixbundlecandidate;v0.0.0.0andv0.0.0.1standalone x64 assets;v0.0.0.0andv0.0.0.1bundle assets;The harness refuses pre-existing
OpenClaw.Gatewayregistrations before importing a test certificate and removes only a package installed by its own invocation.Validation
release-policy.jsonand transition-baseline JSON parsegit diff --checkMicrosoft Store submissions reserve the fourth package-version component as zero. Store publication is explicitly out of scope here and will need a separate version policy when introduced.