@mutmutco/cli 4.5.126 → 4.5.127
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 +9 -9
- package/package.json +1 -1
package/dist/main.cjs
CHANGED
|
@@ -18244,10 +18244,10 @@ var rollout_plan_default = {
|
|
|
18244
18244
|
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)."
|
|
18245
18245
|
},
|
|
18246
18246
|
baseline: {
|
|
18247
|
-
version: "4.5.
|
|
18248
|
-
tag: "v4.5.
|
|
18249
|
-
commit: "
|
|
18250
|
-
npm: "@mutmutco/cli@4.5.
|
|
18247
|
+
version: "4.5.127",
|
|
18248
|
+
tag: "v4.5.127",
|
|
18249
|
+
commit: "1a7a42121998",
|
|
18250
|
+
npm: "@mutmutco/cli@4.5.127"
|
|
18251
18251
|
},
|
|
18252
18252
|
exitCriterion: "fleet-n-of-n",
|
|
18253
18253
|
hubOnlyShortcut: "forbidden",
|
|
@@ -18264,14 +18264,14 @@ var rollout_plan_default = {
|
|
|
18264
18264
|
repo: "mutmutco/mmi-hub",
|
|
18265
18265
|
role: "canary",
|
|
18266
18266
|
schedule: "train",
|
|
18267
|
-
v3Target: "v4.5.
|
|
18267
|
+
v3Target: "v4.5.127"
|
|
18268
18268
|
}
|
|
18269
18269
|
],
|
|
18270
18270
|
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.",
|
|
18271
18271
|
rollback: {
|
|
18272
18272
|
independent: true,
|
|
18273
|
-
mechanism: "npm dist-tag latest -> 4.5.
|
|
18274
|
-
v3Target: "v4.5.
|
|
18273
|
+
mechanism: "npm dist-tag latest -> 4.5.127 and redeploy the Hub Lambda from tag v4.5.127 (1a7a42121998); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
|
|
18274
|
+
v3Target: "v4.5.127 (@mutmutco/cli@4.5.127, tag commit 1a7a42121998 \u2014 last known-good release carrying the repo-index v4-only contract)"
|
|
18275
18275
|
}
|
|
18276
18276
|
},
|
|
18277
18277
|
{
|
|
@@ -32314,7 +32314,7 @@ function parseTenantTasksVar(raw) {
|
|
|
32314
32314
|
if (typeof task.service !== "string" || !serviceRe.test(task.service)) throw new Error(`org project set: tenantTasks.${name}.service has an unsafe shape`);
|
|
32315
32315
|
if (!Array.isArray(task.command) || task.command.length < 1 || task.command.length > 32 || task.command.some((arg) => typeof arg !== "string" || arg.length < 1 || arg.length > 256 || /[\u0000\r\n]/.test(arg))) throw new Error(`org project set: tenantTasks.${name}.command must be 1-32 bounded argv strings`);
|
|
32316
32316
|
if (!Array.isArray(task.stages) || task.stages.length < 1 || task.stages.length > 3 || task.stages.some((stage) => typeof stage !== "string" || !validStages.has(stage)) || new Set(task.stages).size !== task.stages.length) throw new Error(`org project set: tenantTasks.${name}.stages must be unique dev/rc/main values`);
|
|
32317
|
-
const maxTimeout = task.secretOutput !== void 0 ? 3600 :
|
|
32317
|
+
const maxTimeout = task.secretOutput !== void 0 ? 3600 : 10800;
|
|
32318
32318
|
if (task.timeoutSeconds !== void 0 && (!Number.isInteger(task.timeoutSeconds) || task.timeoutSeconds < 1 || task.timeoutSeconds > maxTimeout)) throw new Error(`org project set: tenantTasks.${name}.timeoutSeconds must be an integer 1..${maxTimeout}`);
|
|
32319
32319
|
const artifact = task.artifact ?? "none";
|
|
32320
32320
|
if (artifact !== "none" && artifact !== "required") throw new Error(`org project set: tenantTasks.${name}.artifact must be none or required`);
|
|
@@ -56457,7 +56457,7 @@ ${filelessTransitionGuide(target, o.stage)}`
|
|
|
56457
56457
|
return reportWrite("org project set-deploy", res);
|
|
56458
56458
|
});
|
|
56459
56459
|
var projectTenantTasks = project.command("tenant-tasks").description("project-admin self-declare of tenant tasks for every stage of your own repo \u2014 new-task-only; editing an existing task stays master-only (`org project set --var tenantTasks=...`)");
|
|
56460
|
-
projectTenantTasks.command("declare <name>").description("register a NEW tenant task \u2014 becomes runnable via `runtime tenant control \u2026 run-task` on its declared dev/rc/main stages. Body shape {service,command[],stages[],timeoutSeconds?,artifact?}; required artifact tasks must carry {artifact} in the command argv.").option("--service <name>", "service in the tenant runtime the task runs in (required unless --var carries it)").option("--command <argv...>", `task command as argv (repeatable; required unless --var carries it). An argv token that starts with "-" (python -m mod) is read as an option and the whole call fails to parse: declare such a command with --var '{"service":"<svc>","command":["python","-m","mod"],"stages":["dev"]}' instead (#7668)`).option("--stages <list>", "comma-separated dev,rc,main stages this task may run on (required unless --var carries it)").option("--timeout-seconds <n>", "optional wall-clock ceiling 1..
|
|
56460
|
+
projectTenantTasks.command("declare <name>").description("register a NEW tenant task \u2014 becomes runnable via `runtime tenant control \u2026 run-task` on its declared dev/rc/main stages. Body shape {service,command[],stages[],timeoutSeconds?,artifact?}; required artifact tasks must carry {artifact} in the command argv.").option("--service <name>", "service in the tenant runtime the task runs in (required unless --var carries it)").option("--command <argv...>", `task command as argv (repeatable; required unless --var carries it). An argv token that starts with "-" (python -m mod) is read as an option and the whole call fails to parse: declare such a command with --var '{"service":"<svc>","command":["python","-m","mod"],"stages":["dev"]}' instead (#7668)`).option("--stages <list>", "comma-separated dev,rc,main stages this task may run on (required unless --var carries it)").option("--timeout-seconds <n>", "optional wall-clock ceiling 1..10800 (1..3600 with a secretOutput)").option("--artifact <none|required>", "artifact contract (default none; required tasks must contain {artifact} in argv)").option("--var <json>", "full task object {service,command[],stages[],timeoutSeconds?,artifact?} \u2014 use instead of the individual flags. A task carrying secretOutput:{path,vault:{repo,key},overwrite?} is master-only; declare that via `org project set --var tenantTasks=...`").option("--repo <owner/repo>", "target repo (defaults to the current repo)").option("--json", "machine-readable output").action(async (name, o) => {
|
|
56461
56461
|
const cfg = await loadConfig();
|
|
56462
56462
|
let target;
|
|
56463
56463
|
try {
|
package/package.json
CHANGED