@mutmutco/codex-plugin 4.5.139 → 4.5.141
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/cli/dist/main.cjs
CHANGED
|
@@ -18277,10 +18277,10 @@ var rollout_plan_default = {
|
|
|
18277
18277
|
note: "The v4.0.0 stamp happens at cut time (D6e #4463); until then the candidate is the origin/development head artifacts (built cli/dist + npm pack), identity proven by dist content hash (D6a)."
|
|
18278
18278
|
},
|
|
18279
18279
|
baseline: {
|
|
18280
|
-
version: "4.5.
|
|
18281
|
-
tag: "v4.5.
|
|
18282
|
-
commit: "
|
|
18283
|
-
npm: "@mutmutco/cli@4.5.
|
|
18280
|
+
version: "4.5.141",
|
|
18281
|
+
tag: "v4.5.141",
|
|
18282
|
+
commit: "ade3705c0828",
|
|
18283
|
+
npm: "@mutmutco/cli@4.5.141"
|
|
18284
18284
|
},
|
|
18285
18285
|
exitCriterion: "fleet-n-of-n",
|
|
18286
18286
|
hubOnlyShortcut: "forbidden",
|
|
@@ -18297,14 +18297,14 @@ var rollout_plan_default = {
|
|
|
18297
18297
|
repo: "mutmutco/mmi-hub",
|
|
18298
18298
|
role: "canary",
|
|
18299
18299
|
schedule: "train",
|
|
18300
|
-
v3Target: "v4.5.
|
|
18300
|
+
v3Target: "v4.5.141"
|
|
18301
18301
|
}
|
|
18302
18302
|
],
|
|
18303
18303
|
rollbackTrigger: "Any red inside the post-contract soak window: `devops train gate` FAIL attributable to the v4 doors, Hub endpoint health probe failure, a pre-v4 client admitted instead of receiving actionable HTTP 426, or npm consumer install/doctor failure on the v4-only dist.",
|
|
18304
18304
|
rollback: {
|
|
18305
18305
|
independent: true,
|
|
18306
|
-
mechanism: "npm dist-tag latest -> 4.5.
|
|
18307
|
-
v3Target: "v4.5.
|
|
18306
|
+
mechanism: "npm dist-tag latest -> 4.5.141 and redeploy the Hub Lambda from tag v4.5.141 (ade3705c0828); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
|
|
18307
|
+
v3Target: "v4.5.141 (@mutmutco/cli@4.5.141, tag commit ade3705c0828 \u2014 last known-good release carrying the repo-index v4-only contract)"
|
|
18308
18308
|
}
|
|
18309
18309
|
},
|
|
18310
18310
|
{
|
|
@@ -26494,6 +26494,14 @@ var UPDATE_LINE_MAX = 120;
|
|
|
26494
26494
|
var UPDATE_SECTION_MAX = 8;
|
|
26495
26495
|
var UPDATE_LINE = /^[^:\s][^:]{0,39}: \S.*\.$/u;
|
|
26496
26496
|
var UPDATE_FORBIDDEN = /#\d|\bv?\d+\.\d+\.\d+|^(?:feat|fix|chore|refactor|docs|test|ci|build|perf|style)\b/;
|
|
26497
|
+
var FIXED_OUTCOME = {
|
|
26498
|
+
en: /\b(?:now|again|no longer)\b/i,
|
|
26499
|
+
tr: /(?:^|[\s:])(?:artık|yeniden|tekrar|yine)(?=[\s.,]|$)/iu
|
|
26500
|
+
};
|
|
26501
|
+
var FIXED_EXAMPLE = {
|
|
26502
|
+
en: "Drive: Scans of large drives now finish without timing out.",
|
|
26503
|
+
tr: "Drive: B\xFCy\xFCk s\xFCr\xFCc\xFClerde tarama art\u0131k zaman a\u015F\u0131m\u0131na u\u011Framadan tamamlan\u0131yor."
|
|
26504
|
+
};
|
|
26497
26505
|
function parseUpdateNotes(content, lang = "en") {
|
|
26498
26506
|
const words = UPDATE_SECTIONS[lang];
|
|
26499
26507
|
const lines2 = content.split(/\r?\n/).map((s) => s.trim()).filter(Boolean);
|
|
@@ -26512,6 +26520,9 @@ function parseUpdateNotes(content, lang = "en") {
|
|
|
26512
26520
|
if (line.length > UPDATE_LINE_MAX || !UPDATE_LINE.test(line) || UPDATE_FORBIDDEN.test(line)) {
|
|
26513
26521
|
throw new Error(`${lang} summary line must read "<Area>: <sentence>." in at most ${UPDATE_LINE_MAX} characters, with no issue numbers, versions or commit prefixes: "${line}" \u2014 see ${SUMMARY_GUIDE}`);
|
|
26514
26522
|
}
|
|
26523
|
+
if (section === "fixed" && !FIXED_OUTCOME[lang].test(line)) {
|
|
26524
|
+
throw new Error(`${lang} summary: a "${words.fixed}" line states what works now, not the problem (e.g. "${FIXED_EXAMPLE[lang]}"): "${line}" \u2014 see ${SUMMARY_GUIDE}`);
|
|
26525
|
+
}
|
|
26515
26526
|
notes[section].push(line);
|
|
26516
26527
|
}
|
|
26517
26528
|
for (const key of seen) {
|
package/cli/package.json
CHANGED
package/package.json
CHANGED
|
@@ -109,7 +109,7 @@ commit, so build and verify the lines from one pass over that range —
|
|
|
109
109
|
subject, body and changed files — never from subjects, PR titles or memory; a line whose claim is not
|
|
110
110
|
in that output does not go in the file. A Hub summary never mentions a Jerv-side project; the train
|
|
111
111
|
refuses such a line.
|
|
112
|
-
Every new MM-Work suite Release, solo and hotfix included, requires `--announce-summary-file` and `--announce-summary-file-tr` in the bilingual update-notes template of the [MM-Work GUIDE, "Update notes"](https://github.com/mutmutco/MM-Work/blob/development/packages/mmwork-ds/GUIDE.md#update-notes) (`Fixed`/`Düzeldi`, then `New`/`Yeni`, with `<Area>: <sentence>.` lines). A suite release requires `--member-summary-file owner/repo=path` and `--member-summary-file-tr owner/repo=path` for every member it releases. Details: the release skill.
|
|
112
|
+
Every new MM-Work suite Release, solo and hotfix included, requires `--announce-summary-file` and `--announce-summary-file-tr` in the bilingual update-notes template of the [MM-Work GUIDE, "Update notes"](https://github.com/mutmutco/MM-Work/blob/development/packages/mmwork-ds/GUIDE.md#update-notes) (`Fixed`/`Düzeldi`, then `New`/`Yeni`, with `<Area>: <sentence>.` lines; a Fixed line states what works now, never the problem). A suite release requires `--member-summary-file owner/repo=path` and `--member-summary-file-tr owner/repo=path` for every member it releases. Details: the release skill.
|
|
113
113
|
|
|
114
114
|
Announcement delivery uses the developer's GitHub-authenticated Hub session. The Hub checks project
|
|
115
115
|
authority, resolves the registered channel, and reads the MMI Future Slack key inside its vault boundary.
|
package/skills/release/SKILL.md
CHANGED
|
@@ -15,7 +15,7 @@ Full-track repos ship exactly what is on `rc` (never `development`): merge `rc
|
|
|
15
15
|
|
|
16
16
|
In the suite lead (MM-Work) a plain rcand, release or hotfix refuses: run `mmi-cli devops suite rcand --owner-go` or `mmi-cli devops suite release --owner-go` instead (a lead-only cut needs `--suite-solo --owner-go`). A suite member cannot run standalone rcand, release or hotfix: cut from the suite lead; only a backward-compatible solo backend release/hotfix with explicit owner approval may pass `--suite-solo --owner-go`, and its MM-Work development pin PR must land before the suite is in sync.
|
|
17
17
|
|
|
18
|
-
Every new mm-work suite Release (including solo and hotfix releases) requires both `--announce-summary-file <path>` (English) and `--announce-summary-file-tr <path>` (Turkish, "sen" form) in the update-notes template. The canonical wording lives in the [MM-Work GUIDE, "Update notes"](https://github.com/mutmutco/MM-Work/blob/development/packages/mmwork-ds/GUIDE.md#update-notes); this repo links it and never copies it. Each file has the section word `Fixed` / `Düzeldi` (the problem
|
|
18
|
+
Every new mm-work suite Release (including solo and hotfix releases) requires both `--announce-summary-file <path>` (English) and `--announce-summary-file-tr <path>` (Turkish, "sen" form) in the update-notes template. The canonical wording lives in the [MM-Work GUIDE, "Update notes"](https://github.com/mutmutco/MM-Work/blob/development/packages/mmwork-ds/GUIDE.md#update-notes); this repo links it and never copies it. Each file has the section word `Fixed` / `Düzeldi` (what works now, never the problem: "Drive: Scans of large drives now finish without timing out."; a line without now / again / no longer, or artık / yeniden / tekrar / yine, is refused) and/or `New` / `Yeni` (what you can now do) on its own line, Fixed first, each only when it has lines. Under them go 1–8 lines of `<Area>: <sentence>.`, each at most 120 characters, with no issue numbers, versions or commit prefixes. Off-template or missing files refuse before tagging. Do not write the head (app · date · time) or the thanks line: MM-Work renders both from the Release date and credits. Suite release also requires a valid `--member-summary-file <owner/repo=path>` and `--member-summary-file-tr <owner/repo=path>` for every member being released, before promoting any member. Carried, held and already-released members need none, and existing Releases can resume without new files.
|
|
19
19
|
The `/user-releases` feed serves template notes as `updateNotes: {en?, tr?: {fixed[], new[]}}`. Older title-and-notes bodies keep `plainWords` and get `updateNotes: null`.
|
|
20
20
|
|
|
21
21
|
Read META and name the lane before describing or executing anything:
|