@mutmutco/cli 4.5.177 → 4.5.178
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 +28 -19
- package/dist/runbook-sweep.cjs +18 -13
- package/package.json +1 -1
package/dist/main.cjs
CHANGED
|
@@ -15958,7 +15958,6 @@ function encodeGitHubContents(content) {
|
|
|
15958
15958
|
}
|
|
15959
15959
|
|
|
15960
15960
|
// src/bootstrap-ruleset.ts
|
|
15961
|
-
init_github_client();
|
|
15962
15961
|
var PRODUCT_RULESET_NAME = "mmi-product-required-checks";
|
|
15963
15962
|
var PRODUCT_PENDING_RULESET_PREFIX = "mmi-product-required-checks-pending-";
|
|
15964
15963
|
var PRODUCT_GATE_CONTEXT = "gate";
|
|
@@ -19193,10 +19192,10 @@ var rollout_plan_default = {
|
|
|
19193
19192
|
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)."
|
|
19194
19193
|
},
|
|
19195
19194
|
baseline: {
|
|
19196
|
-
version: "4.5.
|
|
19197
|
-
tag: "v4.5.
|
|
19198
|
-
commit: "
|
|
19199
|
-
npm: "@mutmutco/cli@4.5.
|
|
19195
|
+
version: "4.5.178",
|
|
19196
|
+
tag: "v4.5.178",
|
|
19197
|
+
commit: "849ac348b955",
|
|
19198
|
+
npm: "@mutmutco/cli@4.5.178"
|
|
19200
19199
|
},
|
|
19201
19200
|
exitCriterion: "fleet-n-of-n",
|
|
19202
19201
|
hubOnlyShortcut: "forbidden",
|
|
@@ -19213,14 +19212,14 @@ var rollout_plan_default = {
|
|
|
19213
19212
|
repo: "mutmutco/mmi-hub",
|
|
19214
19213
|
role: "canary",
|
|
19215
19214
|
schedule: "train",
|
|
19216
|
-
v3Target: "v4.5.
|
|
19215
|
+
v3Target: "v4.5.178"
|
|
19217
19216
|
}
|
|
19218
19217
|
],
|
|
19219
19218
|
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.",
|
|
19220
19219
|
rollback: {
|
|
19221
19220
|
independent: true,
|
|
19222
|
-
mechanism: "npm dist-tag latest -> 4.5.
|
|
19223
|
-
v3Target: "v4.5.
|
|
19221
|
+
mechanism: "npm dist-tag latest -> 4.5.178 and redeploy the Hub Lambda from tag v4.5.178 (849ac348b955); installed clients repair via `mmi-cli doctor`. No other cohort is touched.",
|
|
19222
|
+
v3Target: "v4.5.178 (@mutmutco/cli@4.5.178, tag commit 849ac348b955 \u2014 last known-good release carrying the repo-index v4-only contract)"
|
|
19224
19223
|
}
|
|
19225
19224
|
},
|
|
19226
19225
|
{
|
|
@@ -25762,20 +25761,15 @@ async function defaultWatchRun(deps, runId, repo) {
|
|
|
25762
25761
|
} catch {
|
|
25763
25762
|
watchSaidSuccess = false;
|
|
25764
25763
|
}
|
|
25765
|
-
let confirmError;
|
|
25766
25764
|
for (let attempt = 0; attempt < RUN_CONFIRM_ATTEMPTS2; attempt++) {
|
|
25767
25765
|
if (attempt > 0) await new Promise((resolve7) => setTimeout(resolve7, RUN_CONFIRM_DELAY_MS2));
|
|
25768
25766
|
try {
|
|
25769
25767
|
const parsed = JSON.parse(await deps.run("gh", ["run", "view", String(runId), "--repo", repo, "--json", "status,conclusion"]));
|
|
25770
25768
|
if (parsed.status === "completed") return parsed.conclusion === "success" ? "success" : "failure";
|
|
25771
|
-
|
|
25772
|
-
} catch (e) {
|
|
25773
|
-
confirmError = e;
|
|
25769
|
+
} catch {
|
|
25774
25770
|
}
|
|
25775
25771
|
}
|
|
25776
|
-
|
|
25777
|
-
if (confirmError) return "pending";
|
|
25778
|
-
return "success";
|
|
25772
|
+
return watchSaidSuccess ? "pending" : "failure";
|
|
25779
25773
|
}
|
|
25780
25774
|
function alignmentPhaseEntry(dev, rc) {
|
|
25781
25775
|
if (!dev && !rc) return { state: "skipped", note: "no protected-branch alignment leg on this release" };
|
|
@@ -30066,6 +30060,14 @@ async function runPipelineWithBump(bump, mode, input) {
|
|
|
30066
30060
|
return { ...await runTrainApplyPipeline(mode, input), bump };
|
|
30067
30061
|
}
|
|
30068
30062
|
|
|
30063
|
+
// src/registry-repositories.ts
|
|
30064
|
+
function qualifyRegistryRepo(raw) {
|
|
30065
|
+
return raw.includes("/") ? raw : `mutmutco/${raw}`;
|
|
30066
|
+
}
|
|
30067
|
+
function registryRepoKey(repo) {
|
|
30068
|
+
return repo.toLowerCase();
|
|
30069
|
+
}
|
|
30070
|
+
|
|
30069
30071
|
// src/ci-audit.ts
|
|
30070
30072
|
var HUB_REPO4 = "mutmutco/MMI-Hub";
|
|
30071
30073
|
var HUB_GATE_CONTEXTS = ["cli", "infra", "docs"];
|
|
@@ -30425,8 +30427,8 @@ function collectRegistryRepos(projects) {
|
|
|
30425
30427
|
const seen = /* @__PURE__ */ new Map();
|
|
30426
30428
|
for (const project2 of projects) {
|
|
30427
30429
|
for (const raw of project2.repos ?? []) {
|
|
30428
|
-
const repo = raw
|
|
30429
|
-
const key = repo
|
|
30430
|
+
const repo = qualifyRegistryRepo(raw);
|
|
30431
|
+
const key = registryRepoKey(repo);
|
|
30430
30432
|
if (!seen.has(key)) seen.set(key, repo);
|
|
30431
30433
|
}
|
|
30432
30434
|
}
|
|
@@ -41600,8 +41602,15 @@ async function runPrLand(prNumber, options, deps) {
|
|
|
41600
41602
|
return queueMerged(base, deps);
|
|
41601
41603
|
}
|
|
41602
41604
|
const deadline = (deps.now ?? (() => Date.now()))() + (options.queueTimeoutMs ?? PR_LAND_QUEUE_TIMEOUT_MS);
|
|
41603
|
-
|
|
41604
|
-
|
|
41605
|
+
let confirmed;
|
|
41606
|
+
if (options.enqueueOnly) {
|
|
41607
|
+
const read = await deps.readMergeQueue(prNumber, repo);
|
|
41608
|
+
if (read.isInMergeQueue || read.state === "MERGED") confirmed = read;
|
|
41609
|
+
}
|
|
41610
|
+
if (!confirmed) {
|
|
41611
|
+
await (deps.sleep ?? ((ms) => new Promise((resolve7) => setTimeout(resolve7, ms))))(deps.pollDelayMs?.(0) ?? PR_LAND_POLL_MS);
|
|
41612
|
+
}
|
|
41613
|
+
return pollPrMergeQueue(prNumber, options, deps, base, confirmed, deadline);
|
|
41605
41614
|
}
|
|
41606
41615
|
if (merge.mergeStatus === "merged") {
|
|
41607
41616
|
return {
|
package/dist/runbook-sweep.cjs
CHANGED
|
@@ -281,14 +281,6 @@ var init_gh_usage = __esm({
|
|
|
281
281
|
}
|
|
282
282
|
});
|
|
283
283
|
|
|
284
|
-
// src/github-quota.ts
|
|
285
|
-
var init_github_quota = __esm({
|
|
286
|
-
"src/github-quota.ts"() {
|
|
287
|
-
"use strict";
|
|
288
|
-
init_github_client();
|
|
289
|
-
}
|
|
290
|
-
});
|
|
291
|
-
|
|
292
284
|
// src/fetch-retry.ts
|
|
293
285
|
var init_fetch_retry = __esm({
|
|
294
286
|
"src/fetch-retry.ts"() {
|
|
@@ -441,6 +433,14 @@ var init_github_client = __esm({
|
|
|
441
433
|
}
|
|
442
434
|
});
|
|
443
435
|
|
|
436
|
+
// src/github-quota.ts
|
|
437
|
+
var init_github_quota = __esm({
|
|
438
|
+
"src/github-quota.ts"() {
|
|
439
|
+
"use strict";
|
|
440
|
+
init_github_client();
|
|
441
|
+
}
|
|
442
|
+
});
|
|
443
|
+
|
|
444
444
|
// src/runbook-sweep-entry.ts
|
|
445
445
|
var runbook_sweep_entry_exports = {};
|
|
446
446
|
__export(runbook_sweep_entry_exports, {
|
|
@@ -1138,9 +1138,6 @@ function createRunbookLiveDeps(cliBin) {
|
|
|
1138
1138
|
var PR_CHECKS_TIMEOUT_MS = 30 * 6e4;
|
|
1139
1139
|
var PR_CHECKS_ZERO_RUNS_GRACE_MS = 2 * 6e4;
|
|
1140
1140
|
|
|
1141
|
-
// src/bootstrap-ruleset.ts
|
|
1142
|
-
init_github_client();
|
|
1143
|
-
|
|
1144
1141
|
// src/gate-budget.ts
|
|
1145
1142
|
var TEST_RUNNER_AT_START = new RegExp(
|
|
1146
1143
|
"^(?:(?:npm|yarn|pnpm|bun)\\s+(?:run\\s+)?(?:test|t)(?:[:\\s]|$)|(?:npx|bunx|pnpm\\s+dlx)\\s+(?:vitest|jest|mocha|playwright|cypress|ava|tap)\\b|(?:vitest|jest|mocha|pytest|py\\.test|phpunit|rspec)\\b|python[0-9.]*\\s+-m\\s+(?:pytest|unittest)\\b|(?:poetry|pipenv)\\s+run\\s+(?:pytest|py\\.test|python[0-9.]*\\s+-m\\s+(?:pytest|unittest))\\b|(?:bundle\\s+exec\\s+)?rspec\\b|(?:go|cargo|dotnet|mvn|gradle|swift)\\s+test\\b|(?:rails|php\\s+artisan)\\s+test\\b|playwright\\s+test\\b)",
|
|
@@ -5777,6 +5774,14 @@ function message(e) {
|
|
|
5777
5774
|
return e instanceof Error ? e.message : String(e);
|
|
5778
5775
|
}
|
|
5779
5776
|
|
|
5777
|
+
// src/registry-repositories.ts
|
|
5778
|
+
function qualifyRegistryRepo(raw) {
|
|
5779
|
+
return raw.includes("/") ? raw : `mutmutco/${raw}`;
|
|
5780
|
+
}
|
|
5781
|
+
function registryRepoKey(repo) {
|
|
5782
|
+
return repo.toLowerCase();
|
|
5783
|
+
}
|
|
5784
|
+
|
|
5780
5785
|
// src/ci-audit.ts
|
|
5781
5786
|
var HUB_REPO4 = "mutmutco/MMI-Hub";
|
|
5782
5787
|
var DEV_STAGE_STALE_TOLERANCE_MS = 30 * 60 * 1e3;
|
|
@@ -5784,8 +5789,8 @@ function collectRegistryRepos(projects) {
|
|
|
5784
5789
|
const seen = /* @__PURE__ */ new Map();
|
|
5785
5790
|
for (const project of projects) {
|
|
5786
5791
|
for (const raw of project.repos ?? []) {
|
|
5787
|
-
const repo = raw
|
|
5788
|
-
const key = repo
|
|
5792
|
+
const repo = qualifyRegistryRepo(raw);
|
|
5793
|
+
const key = registryRepoKey(repo);
|
|
5789
5794
|
if (!seen.has(key)) seen.set(key, repo);
|
|
5790
5795
|
}
|
|
5791
5796
|
}
|
package/package.json
CHANGED