@on-par/factory-cli 0.9.11-next.8 → 0.9.11-next.81
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/README.md +1 -1
- package/dist/cli/base-health-ci.d.ts +16 -2
- package/dist/cli/base-health-ci.d.ts.map +1 -1
- package/dist/cli/base-health-ci.js +30 -5
- package/dist/cli/base-health-ci.js.map +1 -1
- package/dist/cli/base-hold.d.ts +7 -13
- package/dist/cli/base-hold.d.ts.map +1 -1
- package/dist/cli/base-hold.js +44 -30
- package/dist/cli/base-hold.js.map +1 -1
- package/dist/cli/cost-json.d.ts +5 -31
- package/dist/cli/cost-json.d.ts.map +1 -1
- package/dist/cli/cost-json.js +13 -2
- package/dist/cli/cost-json.js.map +1 -1
- package/dist/cli/daemon.d.ts +2 -15
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +5 -11
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +3 -1
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/harness-check.d.ts.map +1 -1
- package/dist/cli/harness-check.js +8 -3
- package/dist/cli/harness-check.js.map +1 -1
- package/dist/cli/help-groups.d.ts.map +1 -1
- package/dist/cli/help-groups.js +16 -2
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/index.d.ts +29 -32
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +88 -174
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/json-contract.d.ts +309 -0
- package/dist/cli/json-contract.d.ts.map +1 -0
- package/dist/cli/json-contract.js +211 -0
- package/dist/cli/json-contract.js.map +1 -0
- package/dist/cli/land-pr.d.ts +4 -4
- package/dist/cli/land-pr.d.ts.map +1 -1
- package/dist/cli/land-pr.js +18 -17
- package/dist/cli/land-pr.js.map +1 -1
- package/dist/cli/land-risk.d.ts +29 -0
- package/dist/cli/land-risk.d.ts.map +1 -0
- package/dist/cli/land-risk.js +92 -0
- package/dist/cli/land-risk.js.map +1 -0
- package/dist/cli/land-runtime.d.ts +2 -1
- package/dist/cli/land-runtime.d.ts.map +1 -1
- package/dist/cli/land-runtime.js +3 -0
- package/dist/cli/land-runtime.js.map +1 -1
- package/dist/cli/land.d.ts +2 -0
- package/dist/cli/land.d.ts.map +1 -1
- package/dist/cli/land.js +46 -4
- package/dist/cli/land.js.map +1 -1
- package/dist/cli/lane-environment-pause-error.d.ts +3 -0
- package/dist/cli/lane-environment-pause-error.d.ts.map +1 -1
- package/dist/cli/lane-environment-pause-error.js +4 -0
- package/dist/cli/lane-environment-pause-error.js.map +1 -1
- package/dist/cli/logs.d.ts +4 -0
- package/dist/cli/logs.d.ts.map +1 -1
- package/dist/cli/logs.js +6 -2
- package/dist/cli/logs.js.map +1 -1
- package/dist/cli/model-override-messages.d.ts +4 -0
- package/dist/cli/model-override-messages.d.ts.map +1 -0
- package/dist/cli/model-override-messages.js +15 -0
- package/dist/cli/model-override-messages.js.map +1 -0
- package/dist/cli/octokit.d.ts +3 -0
- package/dist/cli/octokit.d.ts.map +1 -1
- package/dist/cli/octokit.js +1 -1
- package/dist/cli/octokit.js.map +1 -1
- package/dist/cli/program-observe.d.ts.map +1 -1
- package/dist/cli/program-observe.js +11 -0
- package/dist/cli/program-observe.js.map +1 -1
- package/dist/cli/program-run-work.d.ts.map +1 -1
- package/dist/cli/program-run-work.js +12 -0
- package/dist/cli/program-run-work.js.map +1 -1
- package/dist/cli/queue-add-json.d.ts +3 -25
- package/dist/cli/queue-add-json.d.ts.map +1 -1
- package/dist/cli/queue-add-json.js.map +1 -1
- package/dist/cli/queue-list.d.ts +6 -24
- package/dist/cli/queue-list.d.ts.map +1 -1
- package/dist/cli/queue-list.js +6 -1
- package/dist/cli/queue-list.js.map +1 -1
- package/dist/cli/queue-preflight.d.ts +52 -0
- package/dist/cli/queue-preflight.d.ts.map +1 -0
- package/dist/cli/queue-preflight.js +358 -0
- package/dist/cli/queue-preflight.js.map +1 -0
- package/dist/cli/risk-policy.d.ts +8 -0
- package/dist/cli/risk-policy.d.ts.map +1 -0
- package/dist/cli/risk-policy.js +39 -0
- package/dist/cli/risk-policy.js.map +1 -0
- package/dist/cli/risk.d.ts +42 -0
- package/dist/cli/risk.d.ts.map +1 -0
- package/dist/cli/risk.js +103 -0
- package/dist/cli/risk.js.map +1 -0
- package/dist/cli/run-branch.d.ts +26 -0
- package/dist/cli/run-branch.d.ts.map +1 -0
- package/dist/cli/run-branch.js +42 -0
- package/dist/cli/run-branch.js.map +1 -0
- package/dist/cli/run-lane.d.ts +6 -1
- package/dist/cli/run-lane.d.ts.map +1 -1
- package/dist/cli/run-lane.js +53 -6
- package/dist/cli/run-lane.js.map +1 -1
- package/dist/cli/run-restack.d.ts +14 -0
- package/dist/cli/run-restack.d.ts.map +1 -0
- package/dist/cli/run-restack.js +21 -0
- package/dist/cli/run-restack.js.map +1 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +19 -11
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/runs-diffstat.d.ts +6 -25
- package/dist/cli/runs-diffstat.d.ts.map +1 -1
- package/dist/cli/runs-diffstat.js.map +1 -1
- package/dist/cli/runs.d.ts +4 -19
- package/dist/cli/runs.d.ts.map +1 -1
- package/dist/cli/runs.js +1 -1
- package/dist/cli/runs.js.map +1 -1
- package/dist/cli/self-update-stop.d.ts +7 -0
- package/dist/cli/self-update-stop.d.ts.map +1 -0
- package/dist/cli/self-update-stop.js +27 -0
- package/dist/cli/self-update-stop.js.map +1 -0
- package/dist/cli/ship-reports.d.ts +34 -0
- package/dist/cli/ship-reports.d.ts.map +1 -0
- package/dist/cli/ship-reports.js +54 -0
- package/dist/cli/ship-reports.js.map +1 -0
- package/dist/cli/ship-run-state.d.ts +5 -0
- package/dist/cli/ship-run-state.d.ts.map +1 -0
- package/dist/cli/ship-run-state.js +17 -0
- package/dist/cli/ship-run-state.js.map +1 -0
- package/dist/cli/ship-steps.d.ts +4 -47
- package/dist/cli/ship-steps.d.ts.map +1 -1
- package/dist/cli/ship-steps.js +22 -82
- package/dist/cli/ship-steps.js.map +1 -1
- package/dist/cli/ship.d.ts +2 -0
- package/dist/cli/ship.d.ts.map +1 -1
- package/dist/cli/ship.js +64 -67
- package/dist/cli/ship.js.map +1 -1
- package/dist/cli/slice-index.d.ts +16 -0
- package/dist/cli/slice-index.d.ts.map +1 -0
- package/dist/cli/slice-index.js +27 -0
- package/dist/cli/slice-index.js.map +1 -0
- package/dist/cli/status-json.d.ts +7 -28
- package/dist/cli/status-json.d.ts.map +1 -1
- package/dist/cli/status-json.js +3 -1
- package/dist/cli/status-json.js.map +1 -1
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +4 -1
- package/dist/cli/status.js.map +1 -1
- package/dist/cli/steer.d.ts +50 -0
- package/dist/cli/steer.d.ts.map +1 -0
- package/dist/cli/steer.js +145 -0
- package/dist/cli/steer.js.map +1 -0
- package/dist/cli/steerability-report.d.ts +9 -0
- package/dist/cli/steerability-report.d.ts.map +1 -0
- package/dist/cli/steerability-report.js +28 -0
- package/dist/cli/steerability-report.js.map +1 -0
- package/dist/cli/stop-resume-json.d.ts +2 -10
- package/dist/cli/stop-resume-json.d.ts.map +1 -1
- package/dist/cli/stop-resume-json.js +1 -0
- package/dist/cli/stop-resume-json.js.map +1 -1
- package/dist/cli/usage-json.d.ts +4 -13
- package/dist/cli/usage-json.d.ts.map +1 -1
- package/dist/cli/usage-json.js.map +1 -1
- package/dist/cli/worktree-reap.d.ts.map +1 -1
- package/dist/cli/worktree-reap.js +7 -1
- package/dist/cli/worktree-reap.js.map +1 -1
- package/package.json +9 -5
- package/schemas/cost.schema.json +114 -0
- package/schemas/daemon-status.schema.json +44 -0
- package/schemas/logs-line.schema.json +133 -0
- package/schemas/queue-add.schema.json +73 -0
- package/schemas/queue-list.schema.json +77 -0
- package/schemas/resume.schema.json +36 -0
- package/schemas/runs-diffstat.schema.json +81 -0
- package/schemas/runs.schema.json +75 -0
- package/schemas/status.schema.json +200 -0
- package/schemas/stop.schema.json +36 -0
- package/schemas/unpark.schema.json +57 -0
- package/schemas/usage.schema.json +28 -0
package/dist/cli/land-pr.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
// packages/cli/src/cli/land-pr.ts — PR-level land: CI watch,
|
|
1
|
+
// packages/cli/src/cli/land-pr.ts — PR-level land: CI watch, main sync, SHA-pinned squash merge (#2784)
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
|
-
import { shellEscape, watchChecksWithInfraRerun } from '@on-par/factory-core/internal';
|
|
3
|
+
import { shellEscape, syncLandBranch, watchChecksWithInfraRerun } from '@on-par/factory-core/internal';
|
|
4
4
|
import { landRuntime } from './land-runtime.js';
|
|
5
5
|
export async function squashMergeAndDelete(octokit, owner, repoName, branch, prNumber,
|
|
6
6
|
/** `sha`: the CI-verified head commit. GitHub refuses the merge if the PR head has moved. */
|
|
@@ -110,22 +110,18 @@ export async function markPullRequestReady(octokit, pullRequestId) {
|
|
|
110
110
|
}
|
|
111
111
|
}`, { id: pullRequestId });
|
|
112
112
|
}
|
|
113
|
-
export async function
|
|
113
|
+
export async function syncDirtyPullRequest(opts) {
|
|
114
114
|
const { issue, branch, worktree, prNumber, log, run = landRuntime().shellOps.exec, pathExists = existsSync } = opts;
|
|
115
115
|
if (!pathExists(worktree)) {
|
|
116
116
|
const msg = `PR #${prNumber} DIRTY on ${branch} and worktree gone`;
|
|
117
117
|
log('conflict', msg);
|
|
118
118
|
throw new LandConflictError(msg);
|
|
119
119
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
// Best-effort cleanup: the conflict logged below is the error we surface.
|
|
126
|
-
await run('git rebase --abort', { cwd: worktree }).catch(() => { });
|
|
127
|
-
const msg = `rebase conflict on ${branch} — parked`;
|
|
128
|
-
log('conflict', msg);
|
|
120
|
+
const result = await syncLandBranch({ worktree, branch, run, log });
|
|
121
|
+
if (!result.ok) {
|
|
122
|
+
const suffix = result.paths.length > 0 ? ` (${result.paths.join(', ')})` : '';
|
|
123
|
+
const msg = `land sync failed on ${branch}${suffix}: ${result.message} — parked`;
|
|
124
|
+
log('conflict', msg, result.paths.length > 0 ? { paths: result.paths } : undefined);
|
|
129
125
|
throw new LandConflictError(`issue #${issue}: ${msg}`);
|
|
130
126
|
}
|
|
131
127
|
}
|
|
@@ -140,6 +136,7 @@ export async function landOpenPullRequest(opts) {
|
|
|
140
136
|
try {
|
|
141
137
|
const { data: pr } = await octokit.rest.pulls.get({ owner, repo: repoName, pull_number: prNumber });
|
|
142
138
|
headSha = pr.head.sha;
|
|
139
|
+
const baseRef = pr.base?.ref;
|
|
143
140
|
outcome = await watchChecksWithInfraRerun({
|
|
144
141
|
octokit,
|
|
145
142
|
owner,
|
|
@@ -147,6 +144,10 @@ export async function landOpenPullRequest(opts) {
|
|
|
147
144
|
ref: headSha,
|
|
148
145
|
watch,
|
|
149
146
|
rerun,
|
|
147
|
+
...(baseRef ? { requiredChecks: { branch: baseRef } } : {}),
|
|
148
|
+
onProgress: ({ total, completed, pending, remainingMs, waitingFor }) => log('land', waitingFor?.length
|
|
149
|
+
? `CI for PR #${prNumber}: waiting for required check${waitingFor.length > 1 ? 's' : ''} ${waitingFor.map((w) => `${w.name} (${w.state})`).join(', ')}, ${Math.ceil(remainingMs / 60_000)} min left`
|
|
150
|
+
: `CI for PR #${prNumber}: ${pending} pending, ${completed}/${total} completed, ${Math.ceil(remainingMs / 60_000)} min left before the CI timeout`),
|
|
150
151
|
onRescued: ({ runIds }) => log('ci-rescued', `CI rescued for PR #${prNumber} on ${branch}: reran infra-failed run(s) ${runIds.join(', ')} once and the re-watch is green`),
|
|
151
152
|
onRescueFailed: ({ runIds, outcome: failedOutcome }) => log('ci-rescue-failed', `CI rescue failed for PR #${prNumber} on ${branch}: reran infra-failed run(s) ${runIds.join(', ')} once and the re-watch ended ${failedOutcome}`),
|
|
152
153
|
});
|
|
@@ -177,17 +178,17 @@ export async function landOpenPullRequest(opts) {
|
|
|
177
178
|
let verifiedSha = skipCI ? undefined : await watchCi();
|
|
178
179
|
let state = await getPullRequestLandState(octokit, owner, repoName, prNumber);
|
|
179
180
|
if (state.mergeStateStatus === 'DIRTY') {
|
|
180
|
-
const
|
|
181
|
-
// Re-check under the lock: a sibling lane may have landed (or
|
|
181
|
+
const synced = await withLock(async () => {
|
|
182
|
+
// Re-check under the lock: a sibling lane may have landed (or synced this branch)
|
|
182
183
|
// while we waited for it, so the DIRTY verdict read above can be stale.
|
|
183
184
|
state = await getPullRequestLandState(octokit, owner, repoName, prNumber);
|
|
184
185
|
if (state.mergeStateStatus !== 'DIRTY')
|
|
185
186
|
return false;
|
|
186
187
|
await ensureWorktree?.();
|
|
187
|
-
await
|
|
188
|
+
await syncDirtyPullRequest({ issue, branch, worktree, prNumber, log, run, pathExists });
|
|
188
189
|
return true;
|
|
189
190
|
});
|
|
190
|
-
if (
|
|
191
|
+
if (synced) {
|
|
191
192
|
if (!skipCI) {
|
|
192
193
|
verifiedSha = await watchCi();
|
|
193
194
|
}
|
|
@@ -197,7 +198,7 @@ export async function landOpenPullRequest(opts) {
|
|
|
197
198
|
for (let attempt = 1;; attempt++) {
|
|
198
199
|
try {
|
|
199
200
|
await withLock(async () => {
|
|
200
|
-
// Same rule as the
|
|
201
|
+
// Same rule as the sync section: whatever we read before taking the lock (or before
|
|
201
202
|
// the backoff sleep) may be stale, so the attempt decides from a fresh read.
|
|
202
203
|
state = await getPullRequestLandState(octokit, owner, repoName, prNumber);
|
|
203
204
|
if (state.isDraft && state.id) {
|
package/dist/cli/land-pr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"land-pr.js","sourceRoot":"","sources":["../../src/cli/land-pr.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"land-pr.js","sourceRoot":"","sources":["../../src/cli/land-pr.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Octokit } from '@octokit/rest';
|
|
2
|
+
import type { EventKind } from '@on-par/factory-core';
|
|
3
|
+
import { type RiskEvaluation, type RiskPolicy, type TrustTier } from '@on-par/factory-core/internal';
|
|
4
|
+
/** Every path a PR touches (new and previous names), paged; GitHub caps a PR at 3000 files. */
|
|
5
|
+
export declare function listPullRequestPaths(octokit: Octokit, owner: string, repo: string, pullNumber: number): Promise<string[]>;
|
|
6
|
+
export interface RiskGateInput {
|
|
7
|
+
octokit: Octokit;
|
|
8
|
+
owner: string;
|
|
9
|
+
repoName: string;
|
|
10
|
+
issue: number;
|
|
11
|
+
prNumber: number;
|
|
12
|
+
/** Issue and PR labels, combined. */
|
|
13
|
+
labels: readonly string[];
|
|
14
|
+
trustTier: TrustTier;
|
|
15
|
+
/** The repo risk policy rules (#3387), so the gate and the risk receipt agree; omitted means the packaged defaults. */
|
|
16
|
+
rules?: RiskPolicy['rules'];
|
|
17
|
+
log: (type: EventKind, msg: string) => void;
|
|
18
|
+
}
|
|
19
|
+
export type RiskGateOutcome = {
|
|
20
|
+
merge: true;
|
|
21
|
+
risk: RiskEvaluation;
|
|
22
|
+
} | {
|
|
23
|
+
merge: false;
|
|
24
|
+
reason: string;
|
|
25
|
+
risk?: RiskEvaluation;
|
|
26
|
+
};
|
|
27
|
+
/** Decide whether the autonomous merge may proceed; on a hold, label the PR and notify on the issue. */
|
|
28
|
+
export declare function enforceRiskAtLand(input: RiskGateInput): Promise<RiskGateOutcome>;
|
|
29
|
+
//# sourceMappingURL=land-risk.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"land-risk.d.ts","sourceRoot":"","sources":["../../src/cli/land-risk.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AAMvC,+FAA+F;AAC/F,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAiBnB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,uHAAuH;IACvH,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,GAAG,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,MAAM,eAAe,GACzB;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,cAAc,CAAA;CAAE,CAAC;AAwBlG,wGAAwG;AACxG,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CA0CtF"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// packages/cli/src/cli/land-risk.ts — risk tier gate on the autonomous merge path (#3381)
|
|
2
|
+
import { decideRiskMerge, evaluateRisk, RISK_HIGH_LABEL, } from '@on-par/factory-core/internal';
|
|
3
|
+
const PAGE_SIZE = 100;
|
|
4
|
+
const MAX_PAGES = 30;
|
|
5
|
+
const MAX_PATHS_PER_RULE = 10;
|
|
6
|
+
/** Every path a PR touches (new and previous names), paged; GitHub caps a PR at 3000 files. */
|
|
7
|
+
export async function listPullRequestPaths(octokit, owner, repo, pullNumber) {
|
|
8
|
+
const out = [];
|
|
9
|
+
for (let page = 1; page <= MAX_PAGES; page++) {
|
|
10
|
+
const { data } = await octokit.rest.pulls.listFiles({
|
|
11
|
+
owner,
|
|
12
|
+
repo,
|
|
13
|
+
pull_number: pullNumber,
|
|
14
|
+
per_page: PAGE_SIZE,
|
|
15
|
+
page,
|
|
16
|
+
});
|
|
17
|
+
for (const file of data) {
|
|
18
|
+
out.push(file.filename);
|
|
19
|
+
if (file.previous_filename)
|
|
20
|
+
out.push(file.previous_filename);
|
|
21
|
+
}
|
|
22
|
+
if (data.length < PAGE_SIZE)
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
return out;
|
|
26
|
+
}
|
|
27
|
+
function errMessage(err) {
|
|
28
|
+
return err instanceof Error ? err.message : String(err);
|
|
29
|
+
}
|
|
30
|
+
function highRiskComment(prNumber, summary, risk) {
|
|
31
|
+
const rules = risk.rules.map((r) => {
|
|
32
|
+
const shown = r.paths.slice(0, MAX_PATHS_PER_RULE).map((p) => ` - \`${p}\``);
|
|
33
|
+
const more = r.paths.length > MAX_PATHS_PER_RULE ? [` - … ${r.paths.length - MAX_PATHS_PER_RULE} more`] : [];
|
|
34
|
+
return [`- ${r.id} (${r.tier})`, ...shown, ...more].join('\n');
|
|
35
|
+
});
|
|
36
|
+
return [
|
|
37
|
+
'<!-- factory:risk-high -->',
|
|
38
|
+
`High-risk PR #${prNumber} held for human review (Patrick): auto-merge is blocked.`,
|
|
39
|
+
'',
|
|
40
|
+
summary,
|
|
41
|
+
'',
|
|
42
|
+
...rules,
|
|
43
|
+
'',
|
|
44
|
+
'Merge it by hand once reviewed (GitHub, or `factory land <issue>`).',
|
|
45
|
+
].join('\n');
|
|
46
|
+
}
|
|
47
|
+
/** Decide whether the autonomous merge may proceed; on a hold, label the PR and notify on the issue. */
|
|
48
|
+
export async function enforceRiskAtLand(input) {
|
|
49
|
+
const { octokit, owner, repoName, issue, prNumber, labels, trustTier, rules, log } = input;
|
|
50
|
+
let paths;
|
|
51
|
+
try {
|
|
52
|
+
paths = await listPullRequestPaths(octokit, owner, repoName, prNumber);
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
const reason = `risk could not be evaluated for PR #${prNumber} (${errMessage(err)}) — failing closed`;
|
|
56
|
+
log('merge-gated', reason);
|
|
57
|
+
return { merge: false, reason };
|
|
58
|
+
}
|
|
59
|
+
const risk = evaluateRisk(rules ? { paths, rules } : { paths });
|
|
60
|
+
const decision = decideRiskMerge({ tier: risk.tier, trustTier, labels });
|
|
61
|
+
const summary = `risk ${risk.tier} (rules: ${risk.rules.map((r) => r.id).join(', ')}), trust tier ${trustTier}`;
|
|
62
|
+
if (decision.merge) {
|
|
63
|
+
log('land', `${summary} — eligible for auto-merge`);
|
|
64
|
+
return { merge: true, risk };
|
|
65
|
+
}
|
|
66
|
+
const missing = decision.addLabels.filter((l) => !labels.includes(l));
|
|
67
|
+
if (missing.length > 0) {
|
|
68
|
+
try {
|
|
69
|
+
await octokit.rest.issues.addLabels({ owner, repo: repoName, issue_number: prNumber, labels: missing });
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
log('warn', `could not label PR #${prNumber} ${missing.join(', ')}: ${errMessage(err)}`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (decision.notify && !labels.includes(RISK_HIGH_LABEL)) {
|
|
76
|
+
try {
|
|
77
|
+
await octokit.rest.issues.createComment({
|
|
78
|
+
owner,
|
|
79
|
+
repo: repoName,
|
|
80
|
+
issue_number: issue,
|
|
81
|
+
body: highRiskComment(prNumber, summary, risk),
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
log('warn', `could not notify on issue #${issue} about high-risk PR #${prNumber}: ${errMessage(err)}`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const reason = `${summary} — ${decision.reason}`;
|
|
89
|
+
log('merge-gated', `${reason}; auto-merge held for a human`);
|
|
90
|
+
return { merge: false, reason, risk };
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=land-risk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"land-risk.js","sourceRoot":"","sources":["../../src/cli/land-risk.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAI1F,OAAO,EACL,eAAe,EACf,YAAY,EACZ,eAAe,GAIhB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,+FAA+F;AAC/F,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,UAAkB;IAElB,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAClD,KAAK;YACL,IAAI;YACJ,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,SAAS;YACnB,IAAI;SACL,CAAC,CAAC;QACH,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxB,IAAI,IAAI,CAAC,iBAAiB;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS;YAAE,MAAM;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAmBD,SAAS,UAAU,CAAC,GAAY;IAC9B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB,EAAE,OAAe,EAAE,IAAoB;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,kBAAkB,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9G,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,OAAO;QACL,4BAA4B;QAC5B,iBAAiB,QAAQ,0DAA0D;QACnF,EAAE;QACF,OAAO;QACP,EAAE;QACF,GAAG,KAAK;QACR,EAAE;QACF,qEAAqE;KACtE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,wGAAwG;AACxG,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAAoB;IAC1D,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IAC3F,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,uCAAuC,QAAQ,KAAK,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;QACvG,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,QAAQ,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,SAAS,EAAE,CAAC;IAChH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,GAAG,CAAC,MAAM,EAAE,GAAG,OAAO,4BAA4B,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1G,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,EAAE,uBAAuB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;gBACtC,KAAK;gBACL,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,KAAK;gBACnB,IAAI,EAAE,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC;aAC/C,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,EAAE,8BAA8B,KAAK,wBAAwB,QAAQ,KAAK,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzG,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,OAAO,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;IACjD,GAAG,CAAC,aAAa,EAAE,GAAG,MAAM,+BAA+B,CAAC,CAAC;IAC7D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC"}
|
|
@@ -11,6 +11,7 @@ export interface LandRuntime {
|
|
|
11
11
|
worktreePathFor: (repoRoot: string, ghRepo: string, issueNum: number, prefix?: string) => string;
|
|
12
12
|
LaneParkError: typeof LaneParkError;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
/** Register the accessor; returns the previous one so a caller (a test) can put it back. */
|
|
15
|
+
export declare function setLandRuntime(fn: () => LandRuntime): (() => LandRuntime) | undefined;
|
|
15
16
|
export declare function landRuntime(): LandRuntime;
|
|
16
17
|
//# sourceMappingURL=land-runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"land-runtime.d.ts","sourceRoot":"","sources":["../../src/cli/land-runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE/G,+GAA+G;AAC/G,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IACxD,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IACpD,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC9C,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,WAAW,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;IACtC,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACjG,aAAa,EAAE,OAAO,aAAa,CAAC;CACrC;AAID,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"land-runtime.d.ts","sourceRoot":"","sources":["../../src/cli/land-runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE/G,+GAA+G;AAC/G,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IACxD,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IACpD,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC9C,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,WAAW,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;IACtC,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACjG,aAAa,EAAE,OAAO,aAAa,CAAC;CACrC;AAID,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,GAAG,SAAS,CAIrF;AAED,wBAAgB,WAAW,IAAI,WAAW,CAGzC"}
|
package/dist/cli/land-runtime.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
// packages/cli/src/cli/land-runtime.ts — accessor for index.ts's per-invocation ops, so the land flow reads them live without a runtime import cycle (#2784)
|
|
2
2
|
let get;
|
|
3
|
+
/** Register the accessor; returns the previous one so a caller (a test) can put it back. */
|
|
3
4
|
export function setLandRuntime(fn) {
|
|
5
|
+
const previous = get;
|
|
4
6
|
get = fn;
|
|
7
|
+
return previous;
|
|
5
8
|
}
|
|
6
9
|
export function landRuntime() {
|
|
7
10
|
if (!get)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"land-runtime.js","sourceRoot":"","sources":["../../src/cli/land-runtime.ts"],"names":[],"mappings":"AAAA,6JAA6J;AAiB7J,IAAI,GAAoC,CAAC;AAEzC,MAAM,UAAU,cAAc,CAAC,EAAqB;IAClD,GAAG,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"land-runtime.js","sourceRoot":"","sources":["../../src/cli/land-runtime.ts"],"names":[],"mappings":"AAAA,6JAA6J;AAiB7J,IAAI,GAAoC,CAAC;AAEzC,4FAA4F;AAC5F,MAAM,UAAU,cAAc,CAAC,EAAqB;IAClD,MAAM,QAAQ,GAAG,GAAG,CAAC;IACrB,GAAG,GAAG,EAAE,CAAC;IACT,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAClF,OAAO,GAAG,EAAE,CAAC;AACf,CAAC"}
|
package/dist/cli/land.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { LandFailureError } from './land-pr.js';
|
|
|
7
7
|
export declare function landIssue(issueNum: number, repoRoot: string, ghRepo: string, paths: ReturnType<typeof getFactoryPaths>, octokit: Octokit, skipCI?: boolean, branchPrefix?: string, opts?: {
|
|
8
8
|
allowGated?: boolean;
|
|
9
9
|
branch?: string;
|
|
10
|
+
enforceRisk?: boolean;
|
|
10
11
|
}): Promise<{
|
|
11
12
|
branch: string;
|
|
12
13
|
prNumber: number;
|
|
@@ -32,6 +33,7 @@ export type WaitForMergeDeps = {
|
|
|
32
33
|
land?: (issueNum: number, repoRoot: string, ghRepo: string, paths: ReturnType<typeof getFactoryPaths>, octokit: Octokit, skipCI?: boolean, branchPrefix?: string, opts?: {
|
|
33
34
|
allowGated?: boolean;
|
|
34
35
|
branch?: string;
|
|
36
|
+
enforceRisk?: boolean;
|
|
35
37
|
}) => Promise<{
|
|
36
38
|
branch: string;
|
|
37
39
|
prNumber: number;
|
package/dist/cli/land.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"land.d.ts","sourceRoot":"","sources":["../../src/cli/land.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"land.d.ts","sourceRoot":"","sources":["../../src/cli/land.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/land.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
// packages/cli/src/cli/land.ts — issue-level land flow: resolve the PR, honor the merge gate, land it (#2784)
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
3
|
import { LaneFileGuard, phaseSnapshotFile, resolveMergePolicy, resolveSandboxPolicy, touchRunActivity, } from '@on-par/factory-core';
|
|
4
|
-
import { branchFor, factoryBranchPrefixes, getIssueTitle, isAutoMergeBlocked, LEGACY_BRANCH_PREFIX, logEvent, releaseLaneClaim, resolveEffectiveConfig, resolveFilingPolicy, withFileLock, withGitLock, worktreeSandboxFor, } from '@on-par/factory-core/internal';
|
|
4
|
+
import { branchFor, factoryBranchPrefixes, getIssueTitle, isAutoMergeBlocked, LEGACY_BRANCH_PREFIX, logEvent, publishRiskReceipt, releaseLaneClaim, resolveEffectiveConfig, resolveFilingPolicy, resolveTrustTier, withFileLock, withGitLock, worktreeSandboxFor, } from '@on-par/factory-core/internal';
|
|
5
5
|
import { AwaitingReviewError, CiFailedError, LandConflictError, LandFailureError, MergeGatedError, landOpenPullRequest, } from './land-pr.js';
|
|
6
|
+
import { enforceRiskAtLand } from './land-risk.js';
|
|
6
7
|
import { landRuntime } from './land-runtime.js';
|
|
8
|
+
import { riskPolicyLines } from './risk-policy.js';
|
|
7
9
|
async function releaseLandedClaim(paths, ghRepo, issue, log) {
|
|
8
10
|
if (!paths.laneFiles)
|
|
9
11
|
return;
|
|
@@ -19,7 +21,8 @@ export async function landIssue(issueNum, repoRoot, ghRepo, paths, octokit, skip
|
|
|
19
21
|
// branch from the current title first, but fall back to matching the open
|
|
20
22
|
// PR that references this issue directly and use its real head branch.
|
|
21
23
|
// Legacy-prefix (LEGACY_BRANCH_PREFIX) branches are guessed too, after the resolved prefix (#1708).
|
|
22
|
-
const
|
|
24
|
+
const repoConfig = configLoaders.loadRepoConfig(repoRoot);
|
|
25
|
+
const resolved = branchPrefix ?? resolveEffectiveConfig(repoConfig).branchPrefix;
|
|
23
26
|
const title = await getIssueTitle(ghRepo, issueNum, octokit);
|
|
24
27
|
// ADR-0161: a stack layer lands by its exact branch, never by title guess or the Closes PR (the top layer).
|
|
25
28
|
const guesses = opts.branch
|
|
@@ -61,6 +64,7 @@ export async function landIssue(issueNum, repoRoot, ghRepo, paths, octokit, skip
|
|
|
61
64
|
// Every merge path honors the no-auto-merge gate on the issue and on the PR; unreadable labels fail closed (#1720).
|
|
62
65
|
const filingPolicy = resolveFilingPolicy(landFactoryConfig);
|
|
63
66
|
const gateLabel = filingPolicy.selfFixLabel;
|
|
67
|
+
let gateLabels = [];
|
|
64
68
|
if (opts.allowGated) {
|
|
65
69
|
console.log(`AUDIT factory land #${issueNum}: --allow-gated override — merging PR #${prNumber} past the ${gateLabel} gate`);
|
|
66
70
|
log('merge-gated-override', `--allow-gated: merging PR #${prNumber} past ${gateLabel} gate (human override)`);
|
|
@@ -72,6 +76,7 @@ export async function landIssue(issueNum, repoRoot, ghRepo, paths, octokit, skip
|
|
|
72
76
|
defaultListIssueLabels(octokit, owner, repoName, issueNum),
|
|
73
77
|
defaultListIssueLabels(octokit, owner, repoName, prNumber),
|
|
74
78
|
]);
|
|
79
|
+
gateLabels = [...issueLabels, ...prLabels];
|
|
75
80
|
if (isAutoMergeBlocked(issueLabels, filingPolicy))
|
|
76
81
|
where = `issue #${issueNum} is labelled ${gateLabel}`;
|
|
77
82
|
else if (isAutoMergeBlocked(prLabels, filingPolicy))
|
|
@@ -85,6 +90,23 @@ export async function landIssue(issueNum, repoRoot, ghRepo, paths, octokit, skip
|
|
|
85
90
|
throw new MergeGatedError(`not merging PR #${prNumber} for issue #${issueNum}: ${where} (human approval required). Re-run \`factory land ${issueNum} --allow-gated\` to merge it deliberately.`, issueNum, prNumber, gateLabel);
|
|
86
91
|
}
|
|
87
92
|
}
|
|
93
|
+
// Risk policy (#3387) and receipt (#3386): best-effort, never blocks or changes the merge.
|
|
94
|
+
const riskPolicy = riskPolicyLines(repoRoot);
|
|
95
|
+
for (const line of riskPolicy.lines)
|
|
96
|
+
console.log(line);
|
|
97
|
+
try {
|
|
98
|
+
const receipt = await publishRiskReceipt({
|
|
99
|
+
octokit,
|
|
100
|
+
owner,
|
|
101
|
+
repo: repoName,
|
|
102
|
+
prNumber,
|
|
103
|
+
...(riskPolicy.rules ? { rules: riskPolicy.rules } : {}),
|
|
104
|
+
});
|
|
105
|
+
log('land', `risk receipt ${receipt.updated ? 'published' : 'unchanged'} on PR #${prNumber}: tier ${receipt.evaluation.tier}`);
|
|
106
|
+
}
|
|
107
|
+
catch (err) {
|
|
108
|
+
log('warn', `could not publish the risk receipt on PR #${prNumber}: ${errorDetail(err)}`);
|
|
109
|
+
}
|
|
88
110
|
const worktree = worktreePathFor(repoRoot, ghRepo, issueNum, branch.startsWith(`${LEGACY_BRANCH_PREFIX}/`) ? LEGACY_BRANCH_PREFIX : resolved);
|
|
89
111
|
const landSandboxPolicy = resolveSandboxPolicy(landFactoryConfig.sandbox, {
|
|
90
112
|
worktree,
|
|
@@ -96,6 +118,23 @@ export async function landIssue(issueNum, repoRoot, ghRepo, paths, octokit, skip
|
|
|
96
118
|
const withLandLock = (fn) => withGitLock(repoRoot, () => withFileLock(paths.mergeLock, fn, {
|
|
97
119
|
onSteal: (pid) => log('lock-stolen', `stole ${paths.mergeLock} from dead holder pid ${pid ?? 'unknown'}`),
|
|
98
120
|
}));
|
|
121
|
+
if (opts.enforceRisk && !opts.allowGated) {
|
|
122
|
+
const gate = await enforceRiskAtLand({
|
|
123
|
+
octokit,
|
|
124
|
+
owner,
|
|
125
|
+
repoName,
|
|
126
|
+
issue: issueNum,
|
|
127
|
+
prNumber,
|
|
128
|
+
labels: gateLabels,
|
|
129
|
+
trustTier: resolveTrustTier(repoConfig),
|
|
130
|
+
...(riskPolicy.rules ? { rules: riskPolicy.rules } : {}),
|
|
131
|
+
log,
|
|
132
|
+
});
|
|
133
|
+
if (!gate.merge) {
|
|
134
|
+
await withLandLock(() => gitOps.cleanupWorktree(repoRoot, worktree, log, worktreeSandbox));
|
|
135
|
+
throw new AwaitingReviewError(`PR #${prNumber} held for a human: ${gate.reason}`, prNumber);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
99
138
|
try {
|
|
100
139
|
try {
|
|
101
140
|
await landOpenPullRequest({
|
|
@@ -292,9 +331,12 @@ export async function waitForMerge(issue, branch, repoRoot, ghRepo, paths, deps
|
|
|
292
331
|
continue;
|
|
293
332
|
}
|
|
294
333
|
if (landBranch)
|
|
295
|
-
await land(issue, repoRoot, ghRepo, paths, octokit, skipCI, undefined, {
|
|
334
|
+
await land(issue, repoRoot, ghRepo, paths, octokit, skipCI, undefined, {
|
|
335
|
+
branch: landBranch,
|
|
336
|
+
enforceRisk: true,
|
|
337
|
+
});
|
|
296
338
|
else
|
|
297
|
-
await land(issue, repoRoot, ghRepo, paths, octokit, skipCI);
|
|
339
|
+
await land(issue, repoRoot, ghRepo, paths, octokit, skipCI, undefined, { enforceRisk: true });
|
|
298
340
|
await releaseLandedClaim(paths, ghRepo, issue, (type, msg) => emitEvent(paths.events, type, issue, msg));
|
|
299
341
|
return;
|
|
300
342
|
}
|
package/dist/cli/land.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"land.js","sourceRoot":"","sources":["../../src/cli/land.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"land.js","sourceRoot":"","sources":["../../src/cli/land.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,15 @@ export declare class LaneEnvironmentPauseError extends Error {
|
|
|
8
8
|
readonly buildPreserved?: boolean;
|
|
9
9
|
/** Red only because a base compile timeout awaits green CI (#3186). */
|
|
10
10
|
readonly awaitingCi?: boolean;
|
|
11
|
+
/** A fresh local re-run failed while CI was green (#3287). */
|
|
12
|
+
readonly confirmedLocally?: boolean;
|
|
11
13
|
constructor(message: string, failure: {
|
|
12
14
|
baseSha: string;
|
|
13
15
|
failingChecks: string[];
|
|
14
16
|
failureSignature?: string;
|
|
15
17
|
buildPreserved?: boolean;
|
|
16
18
|
awaitingCi?: boolean;
|
|
19
|
+
confirmedLocally?: boolean;
|
|
17
20
|
});
|
|
18
21
|
}
|
|
19
22
|
//# sourceMappingURL=lane-environment-pause-error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lane-environment-pause-error.d.ts","sourceRoot":"","sources":["../../src/cli/lane-environment-pause-error.ts"],"names":[],"mappings":"AAEA;2DAC2D;AAC3D,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,iGAAiG;IACjG,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,uEAAuE;IACvE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"lane-environment-pause-error.d.ts","sourceRoot":"","sources":["../../src/cli/lane-environment-pause-error.ts"],"names":[],"mappings":"AAEA;2DAC2D;AAC3D,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,iGAAiG;IACjG,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,uEAAuE;IACvE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,8DAA8D;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAEpC,YACE,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,EASF;CACF"}
|
|
@@ -9,10 +9,14 @@ export class LaneEnvironmentPauseError extends Error {
|
|
|
9
9
|
buildPreserved;
|
|
10
10
|
/** Red only because a base compile timeout awaits green CI (#3186). */
|
|
11
11
|
awaitingCi;
|
|
12
|
+
/** A fresh local re-run failed while CI was green (#3287). */
|
|
13
|
+
confirmedLocally;
|
|
12
14
|
constructor(message, failure) {
|
|
13
15
|
super(message);
|
|
14
16
|
if (failure.awaitingCi !== undefined)
|
|
15
17
|
this.awaitingCi = failure.awaitingCi;
|
|
18
|
+
if (failure.confirmedLocally !== undefined)
|
|
19
|
+
this.confirmedLocally = failure.confirmedLocally;
|
|
16
20
|
if (failure.buildPreserved !== undefined)
|
|
17
21
|
this.buildPreserved = failure.buildPreserved;
|
|
18
22
|
this.baseSha = failure.baseSha;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lane-environment-pause-error.js","sourceRoot":"","sources":["../../src/cli/lane-environment-pause-error.ts"],"names":[],"mappings":"AAAA,yGAAyG;AAEzG;2DAC2D;AAC3D,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IACzC,OAAO,CAAS;IAChB,aAAa,CAAW;IACxB,gBAAgB,CAAU;IACnC,iGAAiG;IACxF,cAAc,CAAW;IAClC,uEAAuE;IAC9D,UAAU,CAAW;
|
|
1
|
+
{"version":3,"file":"lane-environment-pause-error.js","sourceRoot":"","sources":["../../src/cli/lane-environment-pause-error.ts"],"names":[],"mappings":"AAAA,yGAAyG;AAEzG;2DAC2D;AAC3D,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IACzC,OAAO,CAAS;IAChB,aAAa,CAAW;IACxB,gBAAgB,CAAU;IACnC,iGAAiG;IACxF,cAAc,CAAW;IAClC,uEAAuE;IAC9D,UAAU,CAAW;IAC9B,8DAA8D;IACrD,gBAAgB,CAAW;IAEpC,YACE,OAAe,EACf,OAOC;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAC3E,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS;YAAE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAC7F,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QACvF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS;YAAE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAC/F,CAAC;CACF"}
|
package/dist/cli/logs.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { FactoryEvent } from '@on-par/factory-core';
|
|
2
|
+
import type { LogsLineJson } from './json-contract.js';
|
|
2
3
|
export interface LogsOptions {
|
|
3
4
|
follow?: boolean;
|
|
4
5
|
json?: boolean;
|
|
@@ -23,6 +24,9 @@ export interface LogsDeps {
|
|
|
23
24
|
/** Test hook: bytes read from the log by --limit/--since. */
|
|
24
25
|
onBytesRead?: (n: number) => void;
|
|
25
26
|
}
|
|
27
|
+
export declare function buildLogsJson(event: FactoryEvent, extra?: {
|
|
28
|
+
cursor?: string;
|
|
29
|
+
}): LogsLineJson;
|
|
26
30
|
export declare function eventMatchesIssue(e: FactoryEvent, issue?: string): boolean;
|
|
27
31
|
export declare function renderEvent(e: FactoryEvent, opts: {
|
|
28
32
|
json?: boolean;
|
package/dist/cli/logs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/cli/logs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/cli/logs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AASzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE;QAAE,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,GAAG,CAAC,EAAE;QAAE,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACpC,6DAA6D;IAC7D,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,YAAY,CAEhG;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAE1E;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAG7F;AAED,8GAA8G;AAC9G,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE,QAAa,GAAG,MAAM,IAAI,CAkD9F;AAED,wGAAwG;AACxG,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCvG"}
|
package/dist/cli/logs.js
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
// packages/cli/src/cli/logs.ts — `factory logs` [--follow] [--json] [--issue <n>] [--limit <n>] [--since <cursor>]
|
|
2
2
|
import { followEvents, readEvents } from '@on-par/factory-core';
|
|
3
3
|
import { InvalidEventCursorError, colorEnabled, formatEventLine, readEventsSince, readEventsTail, } from '@on-par/factory-core/internal';
|
|
4
|
+
export function buildLogsJson(event, extra = {}) {
|
|
5
|
+
return { ...event, ...extra };
|
|
6
|
+
}
|
|
4
7
|
export function eventMatchesIssue(e, issue) {
|
|
5
8
|
return !issue || e.issue === issue;
|
|
6
9
|
}
|
|
7
10
|
export function renderEvent(e, opts) {
|
|
8
11
|
if (opts.json)
|
|
9
|
-
return JSON.stringify(e);
|
|
12
|
+
return JSON.stringify(buildLogsJson(e));
|
|
10
13
|
return formatEventLine(e.type, e.issue, e.msg, { color: opts.color, lane: e.lane, ts: e.ts });
|
|
11
14
|
}
|
|
12
15
|
/** Print current events; with follow, keep tailing. Returns a stop() function (no-op stop for non-follow). */
|
|
@@ -24,7 +27,8 @@ export function runLogs(eventsFile, opts, deps = {}) {
|
|
|
24
27
|
: undefined;
|
|
25
28
|
if (page) {
|
|
26
29
|
for (const { event, cursor } of page.events) {
|
|
27
|
-
out.write((opts.json ? JSON.stringify(
|
|
30
|
+
out.write((opts.json ? JSON.stringify(buildLogsJson(event, { cursor })) : renderEvent(event, { json: false, color })) +
|
|
31
|
+
'\n');
|
|
28
32
|
}
|
|
29
33
|
if (!opts.follow)
|
|
30
34
|
return () => { };
|