@mutmutco/codex-plugin 4.3.7 → 4.3.9

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.7",
3
+ "version": "4.3.9",
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.7",
3
+ "version": "4.3.9",
4
4
  "description": "MMI workflow skills and org gates delivery.",
5
5
  "author": {
6
6
  "name": "MMI Future",
@@ -541,7 +541,9 @@ mmi-cli devops train doctor --lane release --repo "$OWNER/$REPO" --json
541
541
 
542
542
  `ready: true` is the bootstrap's train-readiness proof; every finding carries `code`, `severity`, `source`,
543
543
  `remedy` and a `docs/Guides/train-troubleshooting.md#<code>` anchor. A full-track repo runs
544
- `--lane rcand` as well. A `bootstrap-gap` blocker names the apply row still missing.
544
+ `--lane rcand` as well. A `bootstrap-gap` finding names the apply row still missing — a blocker for a
545
+ train branch absent on origin, a warning for a stage with no required status check (#6136): read the
546
+ warnings too, `ready: true` alone does not prove the product ruleset is active.
545
547
 
546
548
  ## Retro — one check before you finish
547
549
  Before your final report, answer one question honestly: did **this skill's own instructions** misfire
@@ -50,9 +50,9 @@ Write a JSON array (one object per child) to a scratch path under `.jerv/tmp/`.
50
50
 
51
51
  - `type` — `bug` · `feature` · `task` (required; maps to the repo's issue-template label).
52
52
  - `title` — required, non-empty; keep it a short, greppable deliverable.
53
- - `parent` — the umbrella ref (`#N`, `owner/repo#N`, or URL); links each child as a native sub-issue on
54
- create, so you do not need a separate `link-child` pass. Cross-repo is fine (a Hub umbrella can parent
55
- product-repo children).
53
+ - `parent` — the umbrella ref (`N` or `#N` as a string, a bare JSON number, `owner/repo#N`, or
54
+ URL); links each child as a native sub-issue on create, so you do not need a separate `link-child`
55
+ pass. Cross-repo is fine (a Hub umbrella can parent product-repo children).
56
56
  - `priority` — `urgent|high|medium|low` (defaults to `medium`); sets the board Priority **field**.
57
57
  - `repo` — optional per-row target repo (`owner/repo`); defaults to `--repo`, then the current repo.
58
58
  This is how one batch fans children out across repos under a single umbrella.
@@ -65,7 +65,7 @@ MMI-Hub adds `--announce-summary-file "$f"` with a fresh 3–6 line neutral summ
65
65
 
66
66
  Read the receipts, never the exit code (exit `2` = a follow-up pending; exit `1` = a follow-up failed after the tag):
67
67
 
68
- - `runs[]` — the release-triggered runs on the tagged SHA (workflow, conclusion, url). Watch each non-success entry to conclusion: `gh run watch <run-id> --repo {owner}/{repo} --exit-status`. Name which run is red: `deploy.yml` / `publish.yml` / `tenant-deploy.yml` is a deploy or publish verdict; a `gate` push run is ordinary CI sharing the SHA.
68
+ - `runs[]` — the release-triggered runs on the tagged SHA (workflow, conclusion, url). Watch each non-success entry to conclusion: `gh run watch <run-id> --repo {owner}/{repo} --exit-status`. Name which run is red: `deploy.yml` / `publish.yml` / `tenant-deploy.yml` / `jerv-gateway` is a deploy or publish verdict; a `gate` push run is ordinary CI sharing the SHA. `jerv-gateway` is the operator-host deploy leg: it has no run id to watch, so read its `deployNote` / `ledger.phases.deploy` — `pending` there means production was never deployed and blocks the next train run.
69
69
  - `foldStatus` + `foldNote` — the `hotfix-fold/<tag>` development PR; land it by true merge (Merge floor) and say whether it landed.
70
70
  - `announceNote` (Hub), `verifyNote`, `checkout`, `localSync`, `ledger` — the durable phase legs; a pending or failed leg is unresolved, never done.
71
71
 
@@ -53,6 +53,7 @@ Read the receipt at `$r`, never the exit code (exit `2` = shipped with a follow-
53
53
  - `announceNote` (Hub) — `announced`, `skipped`, or the failure note.
54
54
  - `devRollForward` / `rcAlignment` — `pushed`, or `pr-pending` with the alignment PR to land by true merge (Merge floor).
55
55
  - `versionFold`, `rcRetirement`, `checkout` — `returned`, or the named reason you are still on `main`.
56
+ - A `private` npm surface (`surfaces.json`): the doctor's `npm-token-rejected` finding comes first. A 401 from `npm whoami` through the `_org` `npm/NPM_TOKEN` vault hop means the token is rejected, and every authenticated `npm view` then 404s exactly like an absent package — rotate the token; only after a login is a restricted 404 "unverifiable from here", never "not published" (`publish-private-package`).
56
57
 
57
58
  Then the bounded Latest Release read; its `tagName` must equal the resolved tag:
58
59