@mutmutco/cli 3.118.0 → 3.119.0
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/dist/main.cjs +20 -14
- package/package.json +2 -2
package/dist/main.cjs
CHANGED
|
@@ -15820,10 +15820,10 @@ var rollout_plan_default = {
|
|
|
15820
15820
|
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)."
|
|
15821
15821
|
},
|
|
15822
15822
|
baseline: {
|
|
15823
|
-
version: "3.
|
|
15824
|
-
tag: "v3.
|
|
15825
|
-
commit: "
|
|
15826
|
-
npm: "@mutmutco/cli@3.
|
|
15823
|
+
version: "3.119.0",
|
|
15824
|
+
tag: "v3.119.0",
|
|
15825
|
+
commit: "32fef9b214ee",
|
|
15826
|
+
npm: "@mutmutco/cli@3.119.0"
|
|
15827
15827
|
},
|
|
15828
15828
|
exitCriterion: "fleet-n-of-n",
|
|
15829
15829
|
hubOnlyShortcut: "forbidden",
|
|
@@ -15840,14 +15840,14 @@ var rollout_plan_default = {
|
|
|
15840
15840
|
repo: "mutmutco/mmi-hub",
|
|
15841
15841
|
role: "canary",
|
|
15842
15842
|
schedule: "train",
|
|
15843
|
-
v3Target: "v3.
|
|
15843
|
+
v3Target: "v3.119.0"
|
|
15844
15844
|
}
|
|
15845
15845
|
],
|
|
15846
15846
|
rollbackTrigger: "Any red inside the post-cut soak window: `devops train gate` FAIL attributable to the v4 doors, Hub endpoint health probe failure, a v3 client refused while the compat window must still admit it (SUPPORTED_MINOR_WINDOW=2, MIN_CLIENT_VERSION 0.0.0 \u2014 D6a), or npm consumer install/doctor failure on the v4 dist.",
|
|
15847
15847
|
rollback: {
|
|
15848
15848
|
independent: true,
|
|
15849
|
-
mechanism: "npm dist-tag latest -> 3.
|
|
15850
|
-
v3Target: "v3.
|
|
15849
|
+
mechanism: "npm dist-tag latest -> 3.119.0 and redeploy the Hub Lambda from tag v3.119.0 (32fef9b214ee); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
|
|
15850
|
+
v3Target: "v3.119.0 (@mutmutco/cli@3.119.0, tag commit 32fef9b214ee \u2014 the preserved latest-v3 distribution, D6b)"
|
|
15851
15851
|
}
|
|
15852
15852
|
},
|
|
15853
15853
|
{
|
|
@@ -24657,6 +24657,7 @@ function buildCommand(cmd, path2) {
|
|
|
24657
24657
|
path: path2,
|
|
24658
24658
|
...aliases.length ? { aliases: [...aliases] } : {},
|
|
24659
24659
|
house,
|
|
24660
|
+
canonical: canonicalPathFor(path2) ?? path2,
|
|
24660
24661
|
arguments: cmd.registeredArguments.map(buildArgument),
|
|
24661
24662
|
// A hand-parsed command registers no Commander options, so its declared set is merged in (#3682).
|
|
24662
24663
|
options: [...cmd.options.map(buildOption), ...readDeclaredOptions(cmd)],
|
|
@@ -32881,7 +32882,7 @@ var defaultLeaseCloseExec = (_cmd, args) => execJervCli(args, { timeout: GIT_TIM
|
|
|
32881
32882
|
async function bestEffortLeaseClose(wtPath, exec = defaultLeaseCloseExec) {
|
|
32882
32883
|
const step = "close jerv worktree lease";
|
|
32883
32884
|
try {
|
|
32884
|
-
await exec("jerv-cli", ["lease", "close", "--ref", wtPath]);
|
|
32885
|
+
await exec("jerv-cli", ["cli", "lease", "close", "--ref", wtPath]);
|
|
32885
32886
|
return { step, status: "done" };
|
|
32886
32887
|
} catch (e) {
|
|
32887
32888
|
const err = e;
|
|
@@ -35787,8 +35788,9 @@ function formatExplainCommand(cmd, rootName) {
|
|
|
35787
35788
|
return lines.join("\n").trimEnd();
|
|
35788
35789
|
}
|
|
35789
35790
|
function formatExplainGroup(cmd, rootName) {
|
|
35791
|
+
const canonical = (node) => canonicalPathFor(node.path) ?? node.path;
|
|
35790
35792
|
const lines = [
|
|
35791
|
-
`${rootName} ${cmd
|
|
35793
|
+
`${rootName} ${canonical(cmd)}${cmd.description ? ` \u2014 ${cmd.description}` : ""}`,
|
|
35792
35794
|
`Category: ${cmd.category} \xB7 Discovery: ${cmd.discovery}`,
|
|
35793
35795
|
"",
|
|
35794
35796
|
"Commands:"
|
|
@@ -35798,7 +35800,7 @@ function formatExplainGroup(cmd, rootName) {
|
|
|
35798
35800
|
const name = arg.variadic ? `${arg.name}...` : arg.name;
|
|
35799
35801
|
return arg.required ? `<${name}>` : `[${name}]`;
|
|
35800
35802
|
}).join(" ");
|
|
35801
|
-
lines.push(` ${child2
|
|
35803
|
+
lines.push(` ${canonical(child2)}${args ? ` ${args}` : ""}${child2.description ? ` \u2014 ${child2.description}` : ""}`);
|
|
35802
35804
|
}
|
|
35803
35805
|
return lines.join("\n");
|
|
35804
35806
|
}
|
|
@@ -35812,7 +35814,7 @@ function formatExplainLoop(playbook) {
|
|
|
35812
35814
|
}
|
|
35813
35815
|
function findCommandInManifest(manifest, commandPath3) {
|
|
35814
35816
|
const visit = (command) => {
|
|
35815
|
-
if (command.path === commandPath3) return command;
|
|
35817
|
+
if (command.path === commandPath3 || canonicalPathFor(command.path) === commandPath3) return command;
|
|
35816
35818
|
for (const child2 of command.subcommands) {
|
|
35817
35819
|
const found = visit(child2);
|
|
35818
35820
|
if (found) return found;
|
|
@@ -39751,12 +39753,15 @@ function positionalTargetForm(cmd, opts = {}) {
|
|
|
39751
39753
|
const args = cmd.registeredArguments ?? [];
|
|
39752
39754
|
const first = args[0];
|
|
39753
39755
|
if (!first) return void 0;
|
|
39754
|
-
return formatPositionalTarget(commandPath2(cmd), first.name(), opts);
|
|
39756
|
+
return formatPositionalTarget(canonicalPathFor(commandPath2(cmd)) ?? commandPath2(cmd), first.name(), opts);
|
|
39755
39757
|
}
|
|
39756
39758
|
function resolveParseHint() {
|
|
39757
39759
|
if (lastParseErrorKind === "unknown-command") {
|
|
39758
|
-
const
|
|
39759
|
-
|
|
39760
|
+
const parent = resolveCommandFromArgv(program2, process.argv.slice(2));
|
|
39761
|
+
const candidates = parent && parent.commands.length ? parent.commands.filter((child2) => commandMetadata(child2)?.category !== "internal").map(commandPath2) : allCommandPaths();
|
|
39762
|
+
const path3 = lastUnknownCommand ? suggestCommandPath(lastUnknownCommand, candidates) : void 0;
|
|
39763
|
+
const canonical = path3 ? canonicalPathFor(path3) ?? path3 : void 0;
|
|
39764
|
+
return canonical ? `(did you mean \`mmi-cli ${canonical}\`? ${DISCOVERY_HINT})` : STALE_HINT;
|
|
39760
39765
|
}
|
|
39761
39766
|
if (lastParseErrorKind !== "bad-arguments") return STALE_HINT;
|
|
39762
39767
|
const cmd = resolveCommandFromArgv(program2, process.argv.slice(2));
|
|
@@ -40330,6 +40335,7 @@ withExamples(mutating(
|
|
|
40330
40335
|
let lease;
|
|
40331
40336
|
try {
|
|
40332
40337
|
await execJervCli([
|
|
40338
|
+
"cli",
|
|
40333
40339
|
"lease",
|
|
40334
40340
|
"open",
|
|
40335
40341
|
"--kind",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mutmutco/cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.119.0",
|
|
4
4
|
"description": "MMI Future CLI — the org dev toolbox and shared cross-IDE engine for every registry-declared MMI coding surface.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"access": "public"
|
|
31
31
|
},
|
|
32
32
|
"scripts": {
|
|
33
|
-
"build": "node build.mjs",
|
|
33
|
+
"build": "node build.mjs && node ../scripts/refresh-distribution-bom.mjs",
|
|
34
34
|
"test": "vitest run",
|
|
35
35
|
"typecheck": "tsc --noEmit"
|
|
36
36
|
},
|