@mutmutco/codex-plugin 4.3.2 → 4.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codex-plugin/plugin.json +1 -1
- package/package.json +1 -1
- package/skills/release/SKILL.md +40 -5
package/package.json
CHANGED
package/skills/release/SKILL.md
CHANGED
|
@@ -525,8 +525,29 @@ For `tenant-container` repos, publish the GitHub Release and dispatch the centra
|
|
|
525
525
|
gh release create "vX.Y.0" --target main --generate-notes --latest
|
|
526
526
|
gh workflow run tenant-deploy.yml --repo mutmutco/MMI-Hub \
|
|
527
527
|
-f slug={slug} -f repo={owner}/{repo} -f ref=main -f stage=main
|
|
528
|
-
|
|
529
|
-
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
On PowerShell, read the run as a structured receipt and filter it natively; do not nest a
|
|
531
|
+
`gh run list` query inside `gh run watch`:
|
|
532
|
+
```powershell
|
|
533
|
+
$runs = gh run list --workflow tenant-deploy.yml --limit 10 --json databaseId,createdAt,url,status,conclusion | ConvertFrom-Json
|
|
534
|
+
$run = $runs |
|
|
535
|
+
Where-Object { $_.databaseId -and $_.createdAt } |
|
|
536
|
+
Sort-Object { [DateTimeOffset]$_.createdAt } -Descending |
|
|
537
|
+
Select-Object -First 1
|
|
538
|
+
if (-not $run) { throw 'tenant-deploy workflow run was not found' }
|
|
539
|
+
$run | Select-Object databaseId,createdAt,url,status,conclusion | ConvertTo-Json -Compress
|
|
540
|
+
# Run this in the BACKGROUND (PowerShell Start-Job / task runner).
|
|
541
|
+
gh run watch $run.databaseId --exit-status
|
|
542
|
+
```
|
|
543
|
+
|
|
544
|
+
When several run receipts need collecting, assign the loop output before serializing it; a top-level
|
|
545
|
+
`foreach (...) { ... } | ConvertTo-Json` is a PowerShell parser trap:
|
|
546
|
+
```powershell
|
|
547
|
+
$out = foreach ($run in $runs) {
|
|
548
|
+
gh run view $run.databaseId --json databaseId,url,status,conclusion,createdAt | ConvertFrom-Json
|
|
549
|
+
}
|
|
550
|
+
$out | ConvertTo-Json -Compress
|
|
530
551
|
```
|
|
531
552
|
|
|
532
553
|
For `hub-serverless` (MMI-Hub), publish the GitHub Release but do **not** dispatch `tenant-deploy.yml`:
|
|
@@ -731,6 +752,12 @@ gh api repos/{owner}/{repo}/releases/latest --jq '{tagName:.tag_name,targetCommi
|
|
|
731
752
|
Require its `tagName` to equal the expected `$TAG`; a mismatch means Latest does not identify this
|
|
732
753
|
release and is unverified.
|
|
733
754
|
|
|
755
|
+
**`gh release view` has no `isLatest` field (#6019).** Never request Latest status through
|
|
756
|
+
`gh release view`: the field is not in its JSON schema, so gh rejects the whole read and lists its
|
|
757
|
+
supported fields — the check errors instead of answering, and Latest stays unverified. This bounded
|
|
758
|
+
read is the supported Latest probe; `gh release list --json <fields>,isLatest` is the supported form
|
|
759
|
+
only when a list receipt is genuinely the right shape.
|
|
760
|
+
|
|
734
761
|
Collect the backgrounded prod-deploy watch from Step 4 (it has typically finished by now). Confirm prod is
|
|
735
762
|
healthy (the central deploy workflow smoke step / a health check); **red** → report the failure prominently and flag
|
|
736
763
|
that the release shipped on a failed deploy (re-run just the deploy — `main` is already correct).
|
|
@@ -750,9 +777,17 @@ verify`: use their own release-workflow evidence and the publish-visibility cont
|
|
|
750
777
|
Hub releases always carry a distribution bump (the Step 1b fold), so the **publish workflow**
|
|
751
778
|
(`publish.yml`) ships every registry-declared public npm artifact on the GitHub Release from Step 4 —
|
|
752
779
|
don't publish by hand.
|
|
753
|
-
Watch
|
|
754
|
-
|
|
755
|
-
|
|
780
|
+
Watch the release-triggered `publish.yml` receipt with the same structured PowerShell probe above
|
|
781
|
+
(`--workflow publish.yml --event release`), then confirm npm caught up:
|
|
782
|
+
```powershell
|
|
783
|
+
$runs = gh run list --workflow publish.yml --event release --limit 10 --json databaseId,createdAt,url,status,conclusion | ConvertFrom-Json
|
|
784
|
+
$run = $runs |
|
|
785
|
+
Where-Object { $_.databaseId -and $_.createdAt } |
|
|
786
|
+
Sort-Object { [DateTimeOffset]$_.createdAt } -Descending |
|
|
787
|
+
Select-Object -First 1
|
|
788
|
+
if (-not $run) { throw 'release-triggered publish workflow run was not found' }
|
|
789
|
+
$run | Select-Object databaseId,createdAt,url,status,conclusion | ConvertTo-Json -Compress
|
|
790
|
+
gh run watch $run.databaseId --exit-status
|
|
756
791
|
node scripts/release-distribution.mjs verify "X.Y.0" # bare semver — asserts registry versions, BOM identities, and published npm artifacts
|
|
757
792
|
```
|
|
758
793
|
**verify takes bare semver (#5379).** Pass `X.Y.Z`, not the git-tag form `vX.Y.Z`. Checkout still
|