@mutmutco/cli 4.6.11 → 4.6.13
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 +1265 -750
- package/dist/runbook-sweep.cjs +42 -16
- package/package.json +1 -1
package/dist/runbook-sweep.cjs
CHANGED
|
@@ -363,13 +363,7 @@ async function ghFilingAppEnv(file, args, requireApp = false) {
|
|
|
363
363
|
if (!ghWriteTokenProvider || !/(^|[\\/])gh(\.exe)?$/i.test(file) || !requireApp && process.env.MMI_ACTOR?.trim() === "personal") return void 0;
|
|
364
364
|
if (!isAppFilingWrite(args)) return void 0;
|
|
365
365
|
const explicitApp = requireApp || process.env.MMI_ACTOR?.trim() === "app";
|
|
366
|
-
|
|
367
|
-
try {
|
|
368
|
-
token = await ghWriteTokenProvider();
|
|
369
|
-
} catch (e) {
|
|
370
|
-
if (explicitApp) throw e;
|
|
371
|
-
return void 0;
|
|
372
|
-
}
|
|
366
|
+
const token = await ghWriteTokenProvider();
|
|
373
367
|
if (!token && explicitApp) {
|
|
374
368
|
throw new Error("app actor: filing write token unavailable \u2014 refusing personal-token fallback under MMI_ACTOR=app");
|
|
375
369
|
}
|
|
@@ -461,7 +455,7 @@ var init_cli_shared = __esm({
|
|
|
461
455
|
try {
|
|
462
456
|
return await tag(run(appEnv), "app_installation");
|
|
463
457
|
} catch (e) {
|
|
464
|
-
if (shouldRetryIntegrationRefusalOnAmbient(e)) return tag(run(), ambient);
|
|
458
|
+
if (!reportsCredential && shouldRetryIntegrationRefusalOnAmbient(e)) return tag(run(), ambient);
|
|
465
459
|
throw e;
|
|
466
460
|
}
|
|
467
461
|
};
|
|
@@ -8547,6 +8541,36 @@ var DEPLOY_MODEL_SET = new Set(DEPLOY_MODELS);
|
|
|
8547
8541
|
var RELEASE_TRACK_SET = new Set(RELEASE_TRACKS);
|
|
8548
8542
|
var REQUIRED_CHECK_BRANCH_SET = new Set(REQUIRED_CHECK_BRANCHES);
|
|
8549
8543
|
|
|
8544
|
+
// src/bootstrap-apply.ts
|
|
8545
|
+
var LEGACY_RC_REUSE_STEP_YAML = String.raw`
|
|
8546
|
+
# #8206: keep a fresh successful tag gate; promote the exact development verdict, not a ref.
|
|
8547
|
+
- name: Reuse development gate for rc tag
|
|
8548
|
+
id: development-gate
|
|
8549
|
+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7
|
|
8550
|
+
with:
|
|
8551
|
+
script: |
|
|
8552
|
+
core.setOutput('reuse', 'false');
|
|
8553
|
+
if (context.eventName !== 'push' || !/^refs\/tags\/v.+-rc\.\d+$/.test(context.ref) || !/^[0-9a-f]{40}$/.test(context.sha)) return;
|
|
8554
|
+
try {
|
|
8555
|
+
const { data: current } = await github.rest.actions.getWorkflowRun({ ...context.repo, run_id: context.runId });
|
|
8556
|
+
const { data } = await github.rest.actions.listWorkflowRuns({
|
|
8557
|
+
...context.repo, workflow_id: current.workflow_id, branch: 'development',
|
|
8558
|
+
event: 'push', head_sha: context.sha, per_page: 100
|
|
8559
|
+
});
|
|
8560
|
+
// API returns newest first: a newer red/pending rerun must not reuse an older green.
|
|
8561
|
+
const run = data.workflow_runs[0];
|
|
8562
|
+
if (!run || run.head_sha !== context.sha || run.head_branch !== 'development' ||
|
|
8563
|
+
run.event !== 'push' || run.status !== 'completed' || run.conclusion !== 'success') return;
|
|
8564
|
+
const jobs = await github.paginate(github.rest.actions.listJobsForWorkflowRun, {
|
|
8565
|
+
...context.repo, run_id: run.id, filter: 'latest', per_page: 100
|
|
8566
|
+
});
|
|
8567
|
+
if (!jobs.some(job => job.name === 'gate' && job.status === 'completed' && job.conclusion === 'success')) return;
|
|
8568
|
+
core.setOutput('reuse', 'true');
|
|
8569
|
+
core.info('Reusing successful development gate run ' + run.id + ' for exact SHA ' + context.sha);
|
|
8570
|
+
} catch (error) {
|
|
8571
|
+
core.warning('Development gate proof unavailable; running normal gate: ' + error.message);
|
|
8572
|
+
}`;
|
|
8573
|
+
|
|
8550
8574
|
// src/train-apply-contracts.ts
|
|
8551
8575
|
function isCentralDispatchModel(model) {
|
|
8552
8576
|
return model === "tenant-container" || model === "solo-container" || model === "static-cdn";
|
|
@@ -8561,6 +8585,16 @@ init_github_quota();
|
|
|
8561
8585
|
|
|
8562
8586
|
// src/fleet-lockstep-enforce.ts
|
|
8563
8587
|
init_github_client();
|
|
8588
|
+
|
|
8589
|
+
// src/registry-repositories.ts
|
|
8590
|
+
function qualifyRegistryRepo(raw) {
|
|
8591
|
+
return raw.includes("/") ? raw : `mutmutco/${raw}`;
|
|
8592
|
+
}
|
|
8593
|
+
function registryRepoKey(repo) {
|
|
8594
|
+
return repo.toLowerCase();
|
|
8595
|
+
}
|
|
8596
|
+
|
|
8597
|
+
// src/fleet-lockstep-enforce.ts
|
|
8564
8598
|
init_clean_exit();
|
|
8565
8599
|
init_cli_shared();
|
|
8566
8600
|
|
|
@@ -13176,14 +13210,6 @@ function message(e) {
|
|
|
13176
13210
|
return e instanceof Error ? e.message : String(e);
|
|
13177
13211
|
}
|
|
13178
13212
|
|
|
13179
|
-
// src/registry-repositories.ts
|
|
13180
|
-
function qualifyRegistryRepo(raw) {
|
|
13181
|
-
return raw.includes("/") ? raw : `mutmutco/${raw}`;
|
|
13182
|
-
}
|
|
13183
|
-
function registryRepoKey(repo) {
|
|
13184
|
-
return repo.toLowerCase();
|
|
13185
|
-
}
|
|
13186
|
-
|
|
13187
13213
|
// src/ci-audit.ts
|
|
13188
13214
|
var import_yaml2 = __toESM(require_dist(), 1);
|
|
13189
13215
|
var HUB_REPO4 = "mutmutco/MMI-Hub";
|
package/package.json
CHANGED