@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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mmi",
3
- "version": "4.3.2",
3
+ "version": "4.3.3",
4
4
  "mmiCompat": "4.x",
5
5
  "description": "MMI workflow skills and org gates delivery.",
6
6
  "author": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/codex-plugin",
3
- "version": "4.3.2",
3
+ "version": "4.3.3",
4
4
  "description": "MMI workflow skills and org gates delivery.",
5
5
  "author": {
6
6
  "name": "MMI Future",
@@ -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
- gh run watch "$(gh run list --workflow tenant-deploy.yml --limit 1 --json databaseId -q '.[0].databaseId')" \
529
- --exit-status # the central prod-deploy run — run this in the BACKGROUND (Bash run_in_background)
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 it, then confirm npm caught up:
754
- ```bash
755
- gh run watch "$(gh run list --workflow publish.yml --event release --limit 1 --json databaseId -q '.[0].databaseId')" --exit-status
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