@mutmutco/cli 4.5.202 → 4.5.204

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.
Files changed (2) hide show
  1. package/dist/main.cjs +16 -10
  2. package/package.json +1 -1
package/dist/main.cjs CHANGED
@@ -13439,7 +13439,7 @@ async function loadConfigForBoardSelector(selector, repoOption) {
13439
13439
  var SKILL_LESSON_LABEL = "skill-lesson";
13440
13440
  var SKILL_LESSON_FILE_LABELS = [SKILL_LESSON_LABEL, LEARNING_LABEL2];
13441
13441
  var SKILL_LESSON_LOOP_KIND = "lesson";
13442
- var SKILL_NAMES = ["board", "bootstrap", "epic", "hotfix", "rcand", "release", "secrets", "stage"];
13442
+ var SKILL_NAMES = ["board", "bootstrap", "epic", "hotfix", "rcand", "release", "secrets"];
13443
13443
  function assertSkillName(name) {
13444
13444
  const match = SKILL_NAMES.find((skill) => skill === name);
13445
13445
  if (!match) throw new Error(`unknown skill "${name}" \u2014 expected one of: ${SKILL_NAMES.join(", ")}`);
@@ -14204,6 +14204,12 @@ function evaluateClaim(item, login) {
14204
14204
  }
14205
14205
  if (others.length) return { ok: false, reason: `${item.ref} is already assigned to @${others.join(", @")}` };
14206
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
+ }
14207
14213
  if (item.status !== "Todo" && item.status !== "In Progress" && item.status !== "In Review") {
14208
14214
  return { ok: false, reason: `${item.ref} is not claimable: Status is ${item.status}` };
14209
14215
  }
@@ -19303,10 +19309,10 @@ var rollout_plan_default = {
19303
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)."
19304
19310
  },
19305
19311
  baseline: {
19306
- version: "4.5.202",
19307
- tag: "v4.5.202",
19308
- commit: "e1fe495d9b63",
19309
- npm: "@mutmutco/cli@4.5.202"
19312
+ version: "4.5.204",
19313
+ tag: "v4.5.204",
19314
+ commit: "571bd6b94824",
19315
+ npm: "@mutmutco/cli@4.5.204"
19310
19316
  },
19311
19317
  exitCriterion: "fleet-n-of-n",
19312
19318
  hubOnlyShortcut: "forbidden",
@@ -19323,14 +19329,14 @@ var rollout_plan_default = {
19323
19329
  repo: "mutmutco/mmi-hub",
19324
19330
  role: "canary",
19325
19331
  schedule: "train",
19326
- v3Target: "v4.5.202"
19332
+ v3Target: "v4.5.204"
19327
19333
  }
19328
19334
  ],
19329
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.",
19330
19336
  rollback: {
19331
19337
  independent: true,
19332
- mechanism: "npm dist-tag latest -> 4.5.202 and redeploy the Hub Lambda from tag v4.5.202 (e1fe495d9b63); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
19333
- v3Target: "v4.5.202 (@mutmutco/cli@4.5.202, tag commit e1fe495d9b63 \u2014 last known-good release carrying the repo-index v4-only contract)"
19338
+ mechanism: "npm dist-tag latest -> 4.5.204 and redeploy the Hub Lambda from tag v4.5.204 (571bd6b94824); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
19339
+ v3Target: "v4.5.204 (@mutmutco/cli@4.5.204, tag commit 571bd6b94824 \u2014 last known-good release carrying the repo-index v4-only contract)"
19334
19340
  }
19335
19341
  },
19336
19342
  {
@@ -46449,7 +46455,7 @@ async function ensureStagePortAvailable(port, cwd, deps) {
46449
46455
  const plan = planStagePortTeardown(containers, port, cwd);
46450
46456
  if (plan.unownedContainers.length) {
46451
46457
  throw new Error(
46452
- `stage port ${port} is held by non-compose container(s): ${plan.unownedContainers.join(", ")} \u2014 stop them manually before re-running /stage`
46458
+ `stage port ${port} is held by non-compose container(s): ${plan.unownedContainers.join(", ")} \u2014 stop them manually before re-running mmi-cli stage`
46453
46459
  );
46454
46460
  }
46455
46461
  for (const project2 of [...plan.ownProjects, ...plan.foreignProjects]) {
@@ -46568,7 +46574,7 @@ async function ensureStageRuntimeEnv(config, opts, cwd) {
46568
46574
  targetMtimeMs: (0, import_node_fs44.statSync)(target).mtimeMs
46569
46575
  });
46570
46576
  if (stale) {
46571
- const msg = `stale ${config.ensureEnv.target} (${stale}) \u2014 delete it or refresh from ${config.ensureEnv.example} before re-running /stage`;
46577
+ const msg = `stale ${config.ensureEnv.target} (${stale}) \u2014 delete it or refresh from ${config.ensureEnv.example} before re-running mmi-cli stage`;
46572
46578
  if (!opts.allowStaleEnv) throw new Error(msg);
46573
46579
  console.error(`mmi-cli stage: ${msg} (allowed via --allow-stale-env)`);
46574
46580
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/cli",
3
- "version": "4.5.202",
3
+ "version": "4.5.204",
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",