@mutmutco/cli 4.5.201 → 4.5.203
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 +59 -17
- package/package.json +1 -1
package/dist/main.cjs
CHANGED
|
@@ -1595,7 +1595,6 @@ __export(index_exports, {
|
|
|
1595
1595
|
argvWantsJson: () => argvWantsJson3,
|
|
1596
1596
|
awsCallerArn: () => awsCallerArn,
|
|
1597
1597
|
ciAuditDeps: () => ciAuditDeps2,
|
|
1598
|
-
classifyParseError: () => classifyParseError,
|
|
1599
1598
|
commandOwnLongFlags: () => commandOwnLongFlags,
|
|
1600
1599
|
envHealLockPath: () => envHealLockPath,
|
|
1601
1600
|
isOrgRegisteredRepo: () => isOrgRegisteredRepo,
|
|
@@ -6299,6 +6298,31 @@ function excessArgumentMessage(extra, corrected) {
|
|
|
6299
6298
|
const head = `unexpected positional argument ${list} \u2014 this command does not take it`;
|
|
6300
6299
|
return corrected ? `${head}. Did you mean \`${corrected}\`?` : head;
|
|
6301
6300
|
}
|
|
6301
|
+
function boardClaimStatusFlagRecovery(flag, canonicalPath, argv) {
|
|
6302
|
+
if (canonicalPath !== "oracle board claim") return void 0;
|
|
6303
|
+
if (flag !== "--status" && !flag.startsWith("--status=")) return void 0;
|
|
6304
|
+
const kept = [];
|
|
6305
|
+
for (let i = 0; i < argv.length; i++) {
|
|
6306
|
+
const tok = argv[i];
|
|
6307
|
+
if (tok.startsWith("--status=")) continue;
|
|
6308
|
+
if (tok === "--status") {
|
|
6309
|
+
if (i + 1 < argv.length && !argv[i + 1].startsWith("-")) i++;
|
|
6310
|
+
continue;
|
|
6311
|
+
}
|
|
6312
|
+
kept.push(tok);
|
|
6313
|
+
}
|
|
6314
|
+
return {
|
|
6315
|
+
message: "unknown option '--status' \u2014 `oracle board claim` automatically sets status to In Progress; retry without --status and its value",
|
|
6316
|
+
corrected: `mmi-cli ${kept.join(" ")}`
|
|
6317
|
+
};
|
|
6318
|
+
}
|
|
6319
|
+
function classifyParseError(plain) {
|
|
6320
|
+
if (/unknown command/i.test(plain)) return "unknown-command";
|
|
6321
|
+
if (/unknown option|missing required argument|too many arguments|argument missing|is invalid\. Allowed choices are|cannot be used with/i.test(plain)) {
|
|
6322
|
+
return "bad-arguments";
|
|
6323
|
+
}
|
|
6324
|
+
return "other";
|
|
6325
|
+
}
|
|
6302
6326
|
|
|
6303
6327
|
// src/released-version-cache.ts
|
|
6304
6328
|
var import_node_fs10 = require("node:fs");
|
|
@@ -14180,6 +14204,12 @@ function evaluateClaim(item, login) {
|
|
|
14180
14204
|
}
|
|
14181
14205
|
if (others.length) return { ok: false, reason: `${item.ref} is already assigned to @${others.join(", @")}` };
|
|
14182
14206
|
if (item.status === "In Progress" && mine) return { ok: true, alreadyClaimed: true };
|
|
14207
|
+
if (item.status === "Done") {
|
|
14208
|
+
return {
|
|
14209
|
+
ok: false,
|
|
14210
|
+
reason: `${item.ref} is not claimable: Status is Done \u2014 claim does not reopen terminal cards; skip completed items and pass only open issues (never chain separate claims with &&)`
|
|
14211
|
+
};
|
|
14212
|
+
}
|
|
14183
14213
|
if (item.status !== "Todo" && item.status !== "In Progress" && item.status !== "In Review") {
|
|
14184
14214
|
return { ok: false, reason: `${item.ref} is not claimable: Status is ${item.status}` };
|
|
14185
14215
|
}
|
|
@@ -19279,10 +19309,10 @@ var rollout_plan_default = {
|
|
|
19279
19309
|
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)."
|
|
19280
19310
|
},
|
|
19281
19311
|
baseline: {
|
|
19282
|
-
version: "4.5.
|
|
19283
|
-
tag: "v4.5.
|
|
19284
|
-
commit: "
|
|
19285
|
-
npm: "@mutmutco/cli@4.5.
|
|
19312
|
+
version: "4.5.203",
|
|
19313
|
+
tag: "v4.5.203",
|
|
19314
|
+
commit: "de3cb25fda6a",
|
|
19315
|
+
npm: "@mutmutco/cli@4.5.203"
|
|
19286
19316
|
},
|
|
19287
19317
|
exitCriterion: "fleet-n-of-n",
|
|
19288
19318
|
hubOnlyShortcut: "forbidden",
|
|
@@ -19299,14 +19329,14 @@ var rollout_plan_default = {
|
|
|
19299
19329
|
repo: "mutmutco/mmi-hub",
|
|
19300
19330
|
role: "canary",
|
|
19301
19331
|
schedule: "train",
|
|
19302
|
-
v3Target: "v4.5.
|
|
19332
|
+
v3Target: "v4.5.203"
|
|
19303
19333
|
}
|
|
19304
19334
|
],
|
|
19305
19335
|
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.",
|
|
19306
19336
|
rollback: {
|
|
19307
19337
|
independent: true,
|
|
19308
|
-
mechanism: "npm dist-tag latest -> 4.5.
|
|
19309
|
-
v3Target: "v4.5.
|
|
19338
|
+
mechanism: "npm dist-tag latest -> 4.5.203 and redeploy the Hub Lambda from tag v4.5.203 (de3cb25fda6a); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
|
|
19339
|
+
v3Target: "v4.5.203 (@mutmutco/cli@4.5.203, tag commit de3cb25fda6a \u2014 last known-good release carrying the repo-index v4-only contract)"
|
|
19310
19340
|
}
|
|
19311
19341
|
},
|
|
19312
19342
|
{
|
|
@@ -57958,13 +57988,7 @@ var DISCOVERY_HINT = "run `mmi-cli commands` for the agentic-coding map, `mmi-cl
|
|
|
57958
57988
|
var STALE_HINT = `(${DISCOVERY_HINT}). If you expected this command to exist, your installed tooling may be stale \u2014 run \`mmi-hub update\`, then retry`;
|
|
57959
57989
|
var lastParseErrorKind = "other";
|
|
57960
57990
|
var lastUnknownCommand;
|
|
57961
|
-
|
|
57962
|
-
if (/unknown command/i.test(plain)) return "unknown-command";
|
|
57963
|
-
if (/unknown option|missing required argument|too many arguments|argument missing|is invalid\. Allowed choices are/i.test(plain)) {
|
|
57964
|
-
return "bad-arguments";
|
|
57965
|
-
}
|
|
57966
|
-
return "other";
|
|
57967
|
-
}
|
|
57991
|
+
var lastParseErrorConflict = false;
|
|
57968
57992
|
function parseInvalidChoiceError(plain) {
|
|
57969
57993
|
const m = /option '([^']+)' argument '([^']*)' is invalid\. Allowed choices are ([^.]+)\./.exec(plain);
|
|
57970
57994
|
if (!m) return void 0;
|
|
@@ -58045,7 +58069,7 @@ function resolveParseHint() {
|
|
|
58045
58069
|
const path2 = canonicalPathFor(commandPath3(cmd));
|
|
58046
58070
|
return [
|
|
58047
58071
|
`Usage: mmi-cli ${path2} ${cmd.usage()}`,
|
|
58048
|
-
"This command exists and your mmi-cli is not the problem \u2014 the ARGUMENTS did not parse.",
|
|
58072
|
+
lastParseErrorConflict ? "This command exists and your mmi-cli is not the problem \u2014 two of the options conflict. Choose one of them and retry." : "This command exists and your mmi-cli is not the problem \u2014 the ARGUMENTS did not parse.",
|
|
58049
58073
|
`Run \`mmi-cli ${path2} --help\` for its signature, \`mmi-cli explain ${path2} --json\` for exact detail, or \`mmi-cli commands\` for the task map.`
|
|
58050
58074
|
].join("\n");
|
|
58051
58075
|
}
|
|
@@ -58101,6 +58125,7 @@ function envelopeAwareWriteErr(str2) {
|
|
|
58101
58125
|
return;
|
|
58102
58126
|
}
|
|
58103
58127
|
lastParseErrorKind = classifyParseError(plain);
|
|
58128
|
+
lastParseErrorConflict = /cannot be used with/i.test(plain);
|
|
58104
58129
|
lastUnknownCommand = /unknown command '?([\w:-]+)'?/.exec(plain)?.[1];
|
|
58105
58130
|
const badChoice = parseInvalidChoiceError(plain);
|
|
58106
58131
|
if (badChoice) {
|
|
@@ -58141,6 +58166,24 @@ function envelopeAwareWriteErr(str2) {
|
|
|
58141
58166
|
const flag = match[1];
|
|
58142
58167
|
const argv = process.argv.slice(2);
|
|
58143
58168
|
const invoked = resolveCommandFromArgv(program2, argv);
|
|
58169
|
+
const claimStatus = invoked ? boardClaimStatusFlagRecovery(flag, canonicalPathFor(commandPath3(invoked)) ?? commandPath3(invoked), canonicalArgvFor(argv)) : void 0;
|
|
58170
|
+
if (claimStatus) {
|
|
58171
|
+
if (argvWantsJson3()) {
|
|
58172
|
+
process.stderr.write(
|
|
58173
|
+
formatErrorEnvelope(claimStatus.message, {
|
|
58174
|
+
code: ERROR_CODES.ERR_UNKNOWN_FLAG,
|
|
58175
|
+
offending_flag: "--status",
|
|
58176
|
+
corrected_command: claimStatus.corrected
|
|
58177
|
+
}) + "\n"
|
|
58178
|
+
);
|
|
58179
|
+
unknownFlagJsonHandled = true;
|
|
58180
|
+
return;
|
|
58181
|
+
}
|
|
58182
|
+
writeHumanParseError(
|
|
58183
|
+
str2.replace(/unknown option '[^']+'/, `${claimStatus.message}: run \`${claimStatus.corrected}\``)
|
|
58184
|
+
);
|
|
58185
|
+
return;
|
|
58186
|
+
}
|
|
58144
58187
|
const positional = TARGET_SELECTOR_FLAGS.has(flag) ? positionalTargetForm(invoked, { flag, argv }) : void 0;
|
|
58145
58188
|
if (argvWantsJson3()) {
|
|
58146
58189
|
const ownFlags = commandOwnLongFlags(invoked);
|
|
@@ -59367,7 +59410,6 @@ program2.parseAsync(process.argv).then(() => finishCliRun()).catch((e) => failGr
|
|
|
59367
59410
|
argvWantsJson,
|
|
59368
59411
|
awsCallerArn,
|
|
59369
59412
|
ciAuditDeps,
|
|
59370
|
-
classifyParseError,
|
|
59371
59413
|
commandOwnLongFlags,
|
|
59372
59414
|
envHealLockPath,
|
|
59373
59415
|
isOrgRegisteredRepo,
|
package/package.json
CHANGED