@on-par/factory-cli 0.9.18-next.2 → 0.9.18-next.21
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/cli/awaiting-ci-recheck.d.ts +31 -0
- package/dist/cli/awaiting-ci-recheck.d.ts.map +1 -0
- package/dist/cli/awaiting-ci-recheck.js +61 -0
- package/dist/cli/awaiting-ci-recheck.js.map +1 -0
- package/dist/cli/awaiting-ci-wiring.d.ts +6 -0
- package/dist/cli/awaiting-ci-wiring.d.ts.map +1 -0
- package/dist/cli/awaiting-ci-wiring.js +45 -0
- package/dist/cli/awaiting-ci-wiring.js.map +1 -0
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +3 -3
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/detect-checks.d.ts +2 -0
- package/dist/cli/detect-checks.d.ts.map +1 -1
- package/dist/cli/detect-checks.js +13 -2
- package/dist/cli/detect-checks.js.map +1 -1
- package/dist/cli/doctor-verify.d.ts +3 -1
- package/dist/cli/doctor-verify.d.ts.map +1 -1
- package/dist/cli/doctor-verify.js +13 -8
- package/dist/cli/doctor-verify.js.map +1 -1
- package/dist/cli/errors.d.ts +6 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +11 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/host-claim-guards.d.ts +9 -0
- package/dist/cli/host-claim-guards.d.ts.map +1 -0
- package/dist/cli/host-claim-guards.js +11 -0
- package/dist/cli/host-claim-guards.js.map +1 -0
- package/dist/cli/host-slot.d.ts +15 -2
- package/dist/cli/host-slot.d.ts.map +1 -1
- package/dist/cli/host-slot.js +33 -3
- package/dist/cli/host-slot.js.map +1 -1
- package/dist/cli/index.d.ts +6 -16
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +52 -78
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/json-contract.d.ts +7 -0
- package/dist/cli/json-contract.d.ts.map +1 -1
- package/dist/cli/json-contract.js +3 -0
- package/dist/cli/json-contract.js.map +1 -1
- package/dist/cli/land-behind.d.ts +8 -0
- package/dist/cli/land-behind.d.ts.map +1 -0
- package/dist/cli/land-behind.js +21 -0
- package/dist/cli/land-behind.js.map +1 -0
- package/dist/cli/land-pr.d.ts +24 -0
- package/dist/cli/land-pr.d.ts.map +1 -1
- package/dist/cli/land-pr.js +143 -51
- package/dist/cli/land-pr.js.map +1 -1
- package/dist/cli/land.d.ts +9 -0
- package/dist/cli/land.d.ts.map +1 -1
- package/dist/cli/land.js +24 -23
- package/dist/cli/land.js.map +1 -1
- package/dist/cli/lane-heartbeat.d.ts +31 -3
- package/dist/cli/lane-heartbeat.d.ts.map +1 -1
- package/dist/cli/lane-heartbeat.js +74 -6
- package/dist/cli/lane-heartbeat.js.map +1 -1
- package/dist/cli/lane-park-comment.d.ts.map +1 -1
- package/dist/cli/lane-park-comment.js +2 -1
- package/dist/cli/lane-park-comment.js.map +1 -1
- package/dist/cli/lane-pause.d.ts +6 -1
- package/dist/cli/lane-pause.d.ts.map +1 -1
- package/dist/cli/lane-pause.js +30 -0
- package/dist/cli/lane-pause.js.map +1 -1
- package/dist/cli/model-override-messages.d.ts +5 -1
- package/dist/cli/model-override-messages.d.ts.map +1 -1
- package/dist/cli/model-override-messages.js +9 -1
- package/dist/cli/model-override-messages.js.map +1 -1
- package/dist/cli/notify.d.ts +12 -0
- package/dist/cli/notify.d.ts.map +1 -1
- package/dist/cli/notify.js +28 -0
- package/dist/cli/notify.js.map +1 -1
- package/dist/cli/queue-preflight.d.ts +4 -2
- package/dist/cli/queue-preflight.d.ts.map +1 -1
- package/dist/cli/queue-preflight.js +1 -1
- package/dist/cli/queue-preflight.js.map +1 -1
- package/dist/cli/queue-startup.d.ts +57 -0
- package/dist/cli/queue-startup.d.ts.map +1 -1
- package/dist/cli/queue-startup.js +64 -1
- package/dist/cli/queue-startup.js.map +1 -1
- package/dist/cli/repo-live-run-lock.d.ts +7 -0
- package/dist/cli/repo-live-run-lock.d.ts.map +1 -0
- package/dist/cli/repo-live-run-lock.js +14 -0
- package/dist/cli/repo-live-run-lock.js.map +1 -0
- package/dist/cli/repo-run-lock.d.ts +14 -0
- package/dist/cli/repo-run-lock.d.ts.map +1 -0
- package/dist/cli/repo-run-lock.js +27 -0
- package/dist/cli/repo-run-lock.js.map +1 -0
- package/dist/cli/reset.d.ts.map +1 -1
- package/dist/cli/reset.js +2 -2
- package/dist/cli/reset.js.map +1 -1
- package/dist/cli/run-branch.js +1 -1
- package/dist/cli/run-branch.js.map +1 -1
- package/dist/cli/run-lane-deps.d.ts +16 -1
- package/dist/cli/run-lane-deps.d.ts.map +1 -1
- package/dist/cli/run-lane-disk-hold.d.ts +14 -0
- package/dist/cli/run-lane-disk-hold.d.ts.map +1 -0
- package/dist/cli/run-lane-disk-hold.js +25 -0
- package/dist/cli/run-lane-disk-hold.js.map +1 -0
- package/dist/cli/run-lane-load-hold.d.ts +14 -0
- package/dist/cli/run-lane-load-hold.d.ts.map +1 -0
- package/dist/cli/run-lane-load-hold.js +22 -0
- package/dist/cli/run-lane-load-hold.js.map +1 -0
- package/dist/cli/run-lane-restack.d.ts +13 -0
- package/dist/cli/run-lane-restack.d.ts.map +1 -0
- package/dist/cli/run-lane-restack.js +21 -0
- package/dist/cli/run-lane-restack.js.map +1 -0
- package/dist/cli/run-lane.d.ts.map +1 -1
- package/dist/cli/run-lane.js +77 -61
- package/dist/cli/run-lane.js.map +1 -1
- package/dist/cli/run.d.ts +1 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +19 -15
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/self-update-apply.d.ts +1 -1
- package/dist/cli/self-update-apply.d.ts.map +1 -1
- package/dist/cli/self-update-apply.js +4 -5
- package/dist/cli/self-update-apply.js.map +1 -1
- package/dist/cli/ship-run-state.d.ts +5 -0
- package/dist/cli/ship-run-state.d.ts.map +1 -1
- package/dist/cli/ship-run-state.js +18 -1
- package/dist/cli/ship-run-state.js.map +1 -1
- package/dist/cli/ship-steps.d.ts +4 -2
- package/dist/cli/ship-steps.d.ts.map +1 -1
- package/dist/cli/ship-steps.js +3 -1
- package/dist/cli/ship-steps.js.map +1 -1
- package/dist/cli/ship.d.ts +4 -2
- package/dist/cli/ship.d.ts.map +1 -1
- package/dist/cli/ship.js +11 -17
- package/dist/cli/ship.js.map +1 -1
- package/dist/cli/status-json.d.ts +1 -0
- package/dist/cli/status-json.d.ts.map +1 -1
- package/dist/cli/status-json.js +1 -0
- package/dist/cli/status-json.js.map +1 -1
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +16 -1
- package/dist/cli/status.js.map +1 -1
- package/dist/cli/steer.js +3 -3
- package/dist/cli/steer.js.map +1 -1
- package/dist/cli/unpark.d.ts.map +1 -1
- package/dist/cli/unpark.js +4 -2
- package/dist/cli/unpark.js.map +1 -1
- package/package.json +4 -4
- package/schemas/logs-line.schema.json +10 -0
- package/schemas/status.schema.json +24 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { getFactoryPaths, ParkReason, ProviderBreaker, RunOutcome } from '@on-par/factory-core';
|
|
2
|
-
import type { logEvent, LoadGuardDecision, QueueClaim, QueueReleaseOutcome, StackRestackOutcome } from '@on-par/factory-core/internal';
|
|
2
|
+
import type { AwaitingCiRecord, logEvent, DiskGuardDecision, LoadGuardDecision, QueueClaim, QueueReleaseOutcome, StackRestackOutcome } from '@on-par/factory-core/internal';
|
|
3
3
|
import type { Octokit } from '@octokit/rest';
|
|
4
|
+
import type { AwaitingCiLaneOps } from './awaiting-ci-recheck.js';
|
|
4
5
|
import type { BaseHoldDecision } from './base-hold.js';
|
|
5
6
|
import type { ChildEnqueueResult } from './run-lane-decompose.js';
|
|
6
7
|
import type { waitForMerge } from './land.js';
|
|
@@ -31,6 +32,8 @@ export type RunLaneDeps = {
|
|
|
31
32
|
/** Issues still pending behind this one on the lane, for the park payload (#3511). */
|
|
32
33
|
blockedBehind?: number[];
|
|
33
34
|
onOutcome?: (outcome: RunOutcome) => void;
|
|
35
|
+
/** Aborts when this issue's claim lease is lost (#3146). */
|
|
36
|
+
signal?: AbortSignal;
|
|
34
37
|
}) => Promise<string>;
|
|
35
38
|
waitMerge?: typeof waitForMerge;
|
|
36
39
|
/** ADR-0161: records a landed stack layer as merged in the slice-plan comment. Defaults to a no-op. */
|
|
@@ -46,6 +49,11 @@ export type RunLaneDeps = {
|
|
|
46
49
|
/** #3563: polls open factory PRs for trusted changes-requested reviews and queues their issues; run before every remote claim.
|
|
47
50
|
* Fail-closed: a rejection is logged as a warn and never changes lane flow. Absent for local lanes. */
|
|
48
51
|
pollReviewRework?: () => Promise<void>;
|
|
52
|
+
/** #3208: persists the record of a PR whose CI never started (the AwaitingCiError outcome). A rejection is logged as a warn. */
|
|
53
|
+
recordAwaitingCi?: (rec: AwaitingCiRecord) => Promise<void>;
|
|
54
|
+
/** #3208: re-checks due awaiting-ci PRs before every claim, parking through the lane's own park path via `ops`.
|
|
55
|
+
* Fail-closed: a rejection is logged as a warn and never changes lane flow. */
|
|
56
|
+
recheckAwaitingCi?: (ops: AwaitingCiLaneOps) => Promise<void>;
|
|
49
57
|
releaseIssue?: (issue: number, outcome: QueueReleaseOutcome) => Promise<void>;
|
|
50
58
|
/** Writes decomposed children into the GitHub queue (queued, lane, order right behind the parent)
|
|
51
59
|
* before the lane moves on, so a restart never loses them (#3539). Absent for static local lanes. */
|
|
@@ -53,6 +61,10 @@ export type RunLaneDeps = {
|
|
|
53
61
|
/** Refreshes the claim lease every HEARTBEAT_INTERVAL_MS while an issue is in flight
|
|
54
62
|
* (#1500). Absent for static local-queue lanes, which carry no remote claim to lease. */
|
|
55
63
|
heartbeat?: (issue: number) => Promise<unknown>;
|
|
64
|
+
/** Claim lease length the heartbeat keeps alive (#3146). Defaults to DEFAULT_CLAIM_LEASE_MS, matching GithubQueue. */
|
|
65
|
+
leaseMs?: number;
|
|
66
|
+
/** This host's claimant id, reported on `claim_lost` (#3146). Defaults to defaultClaimantId(). */
|
|
67
|
+
hostId?: string;
|
|
56
68
|
/** Eager park-time worktree reap (#1007). Defaults to a no-op so injected-deps callers and
|
|
57
69
|
* tests are unaffected; cmdRun wires it to reapParkedLaneWorktree. */
|
|
58
70
|
reapWorktree?: (issue: number) => Promise<void>;
|
|
@@ -74,6 +86,9 @@ export type RunLaneDeps = {
|
|
|
74
86
|
/** Host load guard (#3048): consulted before every remote claim, after the base-hold gate; 'hold'
|
|
75
87
|
* waits retryMs and re-checks. Absent = always claim (local lanes, injected-deps callers, tests). */
|
|
76
88
|
loadGuard?: () => LoadGuardDecision;
|
|
89
|
+
/** Host disk guard (#2284): consulted before every remote claim, after the load guard; 'hold' waits
|
|
90
|
+
* retryMs and re-checks (one `disk_low` event per episode). Absent = always claim. */
|
|
91
|
+
diskGuard?: () => DiskGuardDecision;
|
|
77
92
|
/** Breaker read while the lane is paused for all_providers_down (#3235). Defaults to the repo's breaker file. */
|
|
78
93
|
providerBreaker?: Pick<ProviderBreaker, 'status'>;
|
|
79
94
|
/** Stamp of the repo config file; a change ends the all_providers_down pause (#3235). Defaults to its mtime and size. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-lane-deps.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane-deps.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACrG,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,MAAM,WAAW,GAAG;IACxB,mGAAmG;IACnG,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC;IACxB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD;;uCAEmC;IACnC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;mGAC+F;IAC/F,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,EAAE,CACL,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,EAC9F,GAAG,CAAC,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,sFAAsF;QACtF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"run-lane-deps.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { getFactoryPaths } from '@on-par/factory-core';
|
|
2
|
+
import type { DiskGuardDecision, logEvent } from '@on-par/factory-core/internal';
|
|
3
|
+
interface DiskHoldIo {
|
|
4
|
+
lane: string;
|
|
5
|
+
paths: Pick<ReturnType<typeof getFactoryPaths>, 'events' | 'stop'>;
|
|
6
|
+
emitEvent: typeof logEvent;
|
|
7
|
+
now: () => Date;
|
|
8
|
+
sleep: (ms: number) => Promise<void>;
|
|
9
|
+
pathExists: (path: string) => boolean;
|
|
10
|
+
}
|
|
11
|
+
/** Holds the claim while disk is low: one `disk_low` event per episode, `warn` per retry, until space recovers or STOP appears. */
|
|
12
|
+
export declare function holdForDisk(guard: () => DiskGuardDecision, io: DiskHoldIo): Promise<'claim' | 'stopped'>;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=run-lane-disk-hold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-disk-hold.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane-disk-hold.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEjF,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;IACnE,SAAS,EAAE,OAAO,QAAQ,CAAC;IAC3B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACvC;AAUD,mIAAmI;AACnI,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,iBAAiB,EAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAW9G"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// packages/cli/src/cli/run-lane-disk-hold.ts — runLane's host disk claim gate (#2284)
|
|
2
|
+
import { formatDiskHold } from '@on-par/factory-core/internal';
|
|
3
|
+
const decide = (guard) => {
|
|
4
|
+
try {
|
|
5
|
+
return guard();
|
|
6
|
+
}
|
|
7
|
+
catch {
|
|
8
|
+
return { kind: 'claim' };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
/** Holds the claim while disk is low: one `disk_low` event per episode, `warn` per retry, until space recovers or STOP appears. */
|
|
12
|
+
export async function holdForDisk(guard, io) {
|
|
13
|
+
let first = true;
|
|
14
|
+
for (let d = decide(guard); d.kind === 'hold'; d = decide(guard)) {
|
|
15
|
+
const retryAt = new Date(io.now().getTime() + d.retryMs);
|
|
16
|
+
const line = formatDiskHold(`lane '${io.lane}' not claiming:`, d, retryAt);
|
|
17
|
+
io.emitEvent(io.paths.events, first ? 'disk_low' : 'warn', io.lane, line, { lane: io.lane });
|
|
18
|
+
first = false;
|
|
19
|
+
await io.sleep(d.retryMs);
|
|
20
|
+
if (io.pathExists(io.paths.stop))
|
|
21
|
+
return 'stopped';
|
|
22
|
+
}
|
|
23
|
+
return 'claim';
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=run-lane-disk-hold.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-disk-hold.js","sourceRoot":"","sources":["../../src/cli/run-lane-disk-hold.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAGtF,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAY/D,MAAM,MAAM,GAAG,CAAC,KAA8B,EAAqB,EAAE;IACnE,IAAI,CAAC;QACH,OAAO,KAAK,EAAE,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC,CAAC;AAEF,mIAAmI;AACnI,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAA8B,EAAE,EAAc;IAC9E,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3E,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7F,KAAK,GAAG,KAAK,CAAC;QACd,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { getFactoryPaths } from '@on-par/factory-core';
|
|
2
|
+
import type { LoadGuardDecision, logEvent } from '@on-par/factory-core/internal';
|
|
3
|
+
interface LoadHoldIo {
|
|
4
|
+
lane: string;
|
|
5
|
+
paths: Pick<ReturnType<typeof getFactoryPaths>, 'events' | 'stop'>;
|
|
6
|
+
emitEvent: typeof logEvent;
|
|
7
|
+
now: () => Date;
|
|
8
|
+
sleep: (ms: number) => Promise<void>;
|
|
9
|
+
pathExists: (path: string) => boolean;
|
|
10
|
+
}
|
|
11
|
+
/** Holds the claim while the host is loaded: one `warn` per retry until load recovers or STOP appears. */
|
|
12
|
+
export declare function holdForLoad(guard: () => LoadGuardDecision, io: LoadHoldIo): Promise<'claim' | 'stopped'>;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=run-lane-load-hold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-load-hold.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane-load-hold.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEjF,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;IACnE,SAAS,EAAE,OAAO,QAAQ,CAAC;IAC3B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACvC;AAUD,0GAA0G;AAC1G,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,iBAAiB,EAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAQ9G"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// packages/cli/src/cli/run-lane-load-hold.ts — runLane's host load claim gate (#3048)
|
|
2
|
+
import { formatLoadHold } from '@on-par/factory-core/internal';
|
|
3
|
+
const decide = (guard) => {
|
|
4
|
+
try {
|
|
5
|
+
return guard();
|
|
6
|
+
}
|
|
7
|
+
catch {
|
|
8
|
+
return { kind: 'claim' };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
/** Holds the claim while the host is loaded: one `warn` per retry until load recovers or STOP appears. */
|
|
12
|
+
export async function holdForLoad(guard, io) {
|
|
13
|
+
for (let d = decide(guard); d.kind === 'hold'; d = decide(guard)) {
|
|
14
|
+
const retryAt = new Date(io.now().getTime() + d.retryMs);
|
|
15
|
+
io.emitEvent(io.paths.events, 'warn', io.lane, formatLoadHold(io.lane, d, retryAt), { lane: io.lane });
|
|
16
|
+
await io.sleep(d.retryMs);
|
|
17
|
+
if (io.pathExists(io.paths.stop))
|
|
18
|
+
return 'stopped';
|
|
19
|
+
}
|
|
20
|
+
return 'claim';
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=run-lane-load-hold.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-load-hold.js","sourceRoot":"","sources":["../../src/cli/run-lane-load-hold.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAGtF,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAY/D,MAAM,MAAM,GAAG,CAAC,KAA8B,EAAqB,EAAE;IACnE,IAAI,CAAC;QACH,OAAO,KAAK,EAAE,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC,CAAC;AAEF,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAA8B,EAAE,EAAc;IAC9E,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QACvG,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { StackRestackOutcome } from '@on-par/factory-core/internal';
|
|
2
|
+
/** Restacks the open layers above a merged slice while keeping the claim lease fresh; a failure comes back as a park reason. */
|
|
3
|
+
export declare function restackUnderHeartbeat(issue: number, heartbeat: ((issue: number) => Promise<unknown>) | undefined, restack: (issue: number, merged: {
|
|
4
|
+
index: number;
|
|
5
|
+
prNumber: number;
|
|
6
|
+
}) => Promise<StackRestackOutcome>, merged: {
|
|
7
|
+
index: number;
|
|
8
|
+
prNumber: number;
|
|
9
|
+
}): Promise<{
|
|
10
|
+
parkReason?: string;
|
|
11
|
+
note: string;
|
|
12
|
+
}>;
|
|
13
|
+
//# sourceMappingURL=run-lane-restack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-restack.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane-restack.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAKzE,gIAAgI;AAChI,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,EAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,mBAAmB,CAAC,EACrG,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC1C,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAchD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// packages/cli/src/cli/run-lane-restack.ts — runLane's model-free restack step, split out of run-lane.ts (ADR-0161)
|
|
2
|
+
import { withHeartbeat } from './lane-heartbeat.js';
|
|
3
|
+
import { shipRuntime } from './ship-runtime.js';
|
|
4
|
+
/** Restacks the open layers above a merged slice while keeping the claim lease fresh; a failure comes back as a park reason. */
|
|
5
|
+
export async function restackUnderHeartbeat(issue, heartbeat, restack, merged) {
|
|
6
|
+
try {
|
|
7
|
+
const out = await withHeartbeat(issue, heartbeat, () => restack(issue, merged));
|
|
8
|
+
if (out.status === 'park')
|
|
9
|
+
return { parkReason: out.reason, note: out.reason };
|
|
10
|
+
return {
|
|
11
|
+
note: out.status === 'restacked'
|
|
12
|
+
? `restacked slice(s) ${out.slices.map((r) => r.index).join(', ')} onto main after slice ${merged.index} merged`
|
|
13
|
+
: out.reason,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
catch (err) {
|
|
17
|
+
const reason = `restack failed: ${shipRuntime().errorDetail(err)}`;
|
|
18
|
+
return { parkReason: reason, note: reason };
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=run-lane-restack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-lane-restack.js","sourceRoot":"","sources":["../../src/cli/run-lane-restack.ts"],"names":[],"mappings":"AAAA,oHAAoH;AAIpH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,gIAAgI;AAChI,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,SAA4D,EAC5D,OAAqG,EACrG,MAA2C;IAE3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QAChF,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/E,OAAO;YACL,IAAI,EACF,GAAG,CAAC,MAAM,KAAK,WAAW;gBACxB,CAAC,CAAC,sBAAsB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,KAAK,SAAS;gBAChH,CAAC,CAAC,GAAG,CAAC,MAAM;SACjB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,mBAAmB,WAAW,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACnE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-lane.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"run-lane.d.ts","sourceRoot":"","sources":["../../src/cli/run-lane.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAa,eAAe,EAA2B,MAAM,sBAAsB,CAAC;AAgChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,wBAAsB,OAAO,CAC3B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EAAE,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,EACzC,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,IAAI,CAAC,CAkcf"}
|
package/dist/cli/run-lane.js
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
// packages/cli/src/cli/run-lane.ts — the lane loop, moved out of index.ts (#2800)
|
|
2
2
|
import { existsSync, statSync } from 'node:fs';
|
|
3
|
-
import { parkReasonFor } from '@on-par/factory-core';
|
|
4
|
-
import {
|
|
3
|
+
import { parkReasonFor, workKeyFromIssue } from '@on-par/factory-core';
|
|
4
|
+
import { DEFAULT_CLAIM_LEASE_MS, defaultClaimantId, logEvent, nextRecheckAt, PARKED_LABEL, parkPayload, } from '@on-par/factory-core/internal';
|
|
5
5
|
import { formatBaseHoldKept } from './base-hold.js';
|
|
6
|
+
import { holdForDisk } from './run-lane-disk-hold.js';
|
|
7
|
+
import { holdForLoad } from './run-lane-load-hold.js';
|
|
6
8
|
import { laneParkCommenter } from './lane-park-comment.js';
|
|
7
9
|
import { pauseLaneForAllProvidersDown, pauseLaneForBrokenBase, pauseLaneForProviderCap, tripLaneBreaker, waitForProviderReset, waitForProvidersRestored, } from './lane-pause.js';
|
|
8
10
|
import { waitForMerge } from './land.js';
|
|
9
|
-
import { AwaitingReviewError } from './land-pr.js';
|
|
11
|
+
import { AwaitMergeStoppedError, AwaitingCiError, AwaitingReviewError } from './land-pr.js';
|
|
10
12
|
import { restoredLoggingBreaker } from './provider-restored-log.js';
|
|
11
13
|
import { releaseKeepOnRequeue } from './worktree-keep.js';
|
|
12
14
|
import { shipIssue } from './ship.js';
|
|
13
|
-
import { withHeartbeat } from './lane-heartbeat.js';
|
|
15
|
+
import { ClaimLostError, createClaimLease, laneRenewLogger, onClaimLost, withHeartbeat } from './lane-heartbeat.js';
|
|
16
|
+
import { restackUnderHeartbeat } from './run-lane-restack.js';
|
|
14
17
|
import { queueDecomposedChildren } from './run-lane-decompose.js';
|
|
15
18
|
import { shipRuntime } from './ship-runtime.js';
|
|
16
19
|
export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {}) {
|
|
17
|
-
const { ship = shipIssue, waitMerge = waitForMerge, recordStackMerge = async () => { }, restack = async () => ({ status: 'nothing', reason: 'restack not wired' }), pathExists = existsSync, emitEvent = logEvent, claimNext = async () => null, pollReviewRework, releaseIssue = async () => { }, queueChildren, heartbeat, reapWorktree = async () => { }, closeParkedPr = async () => { }, sweepFinished = async () => { }, activeIssues = new Set(), countRemaining, baseHoldGate, loadGuard, sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)), now = () => new Date(), laneBreakerThreshold = 0, commentIssue = async () => { }, octokit: getOctokit, runId = '-', readParkSha = () => Promise.reject(new Error('no park sha reader')), providerBreaker = restoredLoggingBreaker(paths.breaker, paths.events, '-', lane, emitEvent), configStamp = () => {
|
|
20
|
+
const { ship = shipIssue, waitMerge = waitForMerge, recordStackMerge = async () => { }, restack = async () => ({ status: 'nothing', reason: 'restack not wired' }), pathExists = existsSync, emitEvent = logEvent, claimNext = async () => null, pollReviewRework, recordAwaitingCi, recheckAwaitingCi, releaseIssue = async () => { }, queueChildren, heartbeat, leaseMs = DEFAULT_CLAIM_LEASE_MS, hostId = defaultClaimantId(), reapWorktree = async () => { }, closeParkedPr = async () => { }, sweepFinished = async () => { }, activeIssues = new Set(), countRemaining, baseHoldGate, loadGuard, diskGuard, sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)), now = () => new Date(), laneBreakerThreshold = 0, commentIssue = async () => { }, octokit: getOctokit, runId = '-', readParkSha = () => Promise.reject(new Error('no park sha reader')), providerBreaker = restoredLoggingBreaker(paths.breaker, paths.events, '-', lane, emitEvent), configStamp = () => {
|
|
18
21
|
try {
|
|
19
22
|
const st = statSync(paths.config);
|
|
20
23
|
return `${st.mtimeMs}:${st.size}`;
|
|
@@ -38,9 +41,8 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
38
41
|
// Issues still pending on this lane after `index`, in queue order (#3511).
|
|
39
42
|
const queuedBehind = (index) => pending.slice(index + 1).map((c) => c.issue);
|
|
40
43
|
const seen = new Set(issues);
|
|
41
|
-
// Truthful park-time remaining count (#1222): local pending plus the lane's still-queued
|
|
42
|
-
//
|
|
43
|
-
// local truth, and never lane flow.
|
|
44
|
+
// Truthful park-time remaining count (#1222): local pending plus the lane's still-queued remote issues.
|
|
45
|
+
// Fail-closed — a count lookup may never change the message beyond the local truth, nor lane flow.
|
|
44
46
|
const remainingAfter = async (index) => {
|
|
45
47
|
const local = pending.length - index - 1;
|
|
46
48
|
if (!countRemaining)
|
|
@@ -52,8 +54,7 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
52
54
|
return local;
|
|
53
55
|
}
|
|
54
56
|
};
|
|
55
|
-
// Every terminal outcome releases the claim, then
|
|
56
|
-
// the lane moves on (#1757). The pass is fail-closed and must never change lane flow.
|
|
57
|
+
// Every terminal outcome releases the claim, then GCs finished worktrees (#1757); fail-closed, never changes flow.
|
|
57
58
|
const settle = async (issue, outcome) => {
|
|
58
59
|
// Drop the in-flight mark first so this lane's own finished worktree stays reapable.
|
|
59
60
|
activeIssues.delete(issue);
|
|
@@ -64,9 +65,8 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
64
65
|
};
|
|
65
66
|
// A park raised outside runIssue upserts the issue park comment (#3534); fail-closed, never changes lane flow.
|
|
66
67
|
const postParkComment = laneParkCommenter({ getOctokit, ghRepo, repoRoot, runId, lane, readParkSha }, (issue, m) => emitEvent(paths.events, 'warn', issue, m, { lane }));
|
|
67
|
-
const pauseCtx = { lane, paths, emitEvent };
|
|
68
|
-
// A parked release adds factory:parked (#3424). Log the clean park
|
|
69
|
-
// landed; a rejected add is surfaced as a fail event naming the issue and label (#3425).
|
|
68
|
+
const pauseCtx = { lane, paths, emitEvent, now };
|
|
69
|
+
// A parked release adds factory:parked (#3424). Log the clean park once the label landed; a rejected add fails (#3425).
|
|
70
70
|
const parkAndSettle = async (issue, parkedMsg, park) => {
|
|
71
71
|
activeIssues.delete(issue);
|
|
72
72
|
try {
|
|
@@ -81,24 +81,19 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
81
81
|
await sweepFinished(issue).catch(() => { });
|
|
82
82
|
return true;
|
|
83
83
|
};
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
const emitAwaitingCi = (kind, issue, message) => emitEvent(paths.events, kind, issue, message, { lane });
|
|
85
|
+
// #3208: parks an awaiting-ci PR through the lane's park path: reason event, issue comment, worktree reap, label.
|
|
86
|
+
const parkAwaitingCi = async (rec, reason, message) => {
|
|
87
|
+
emitAwaitingCi(reason, rec.issue, message);
|
|
88
|
+
await postParkComment(rec.issue, reason, message, rec.branch);
|
|
89
|
+
await reapWorktree(rec.issue).catch(() => { });
|
|
90
|
+
const msg = `issue #${rec.issue} parked (${reason}); lane '${lane}' continuing`;
|
|
91
|
+
if (!(await parkAndSettle(rec.issue, msg, parkPayload(reason, workKeyFromIssue(rec.issue), lane, [])))) {
|
|
92
|
+
throw new Error(`could not park issue #${rec.issue}`);
|
|
90
93
|
}
|
|
94
|
+
parked++;
|
|
91
95
|
};
|
|
92
|
-
const
|
|
93
|
-
for (let d = decide(guard); d.kind === 'hold'; d = decide(guard)) {
|
|
94
|
-
const retryAt = new Date(now().getTime() + d.retryMs);
|
|
95
|
-
emitEvent(paths.events, 'warn', lane, formatLoadHold(lane, d, retryAt), { lane });
|
|
96
|
-
await sleep(d.retryMs);
|
|
97
|
-
if (pathExists(paths.stop))
|
|
98
|
-
return 'stopped';
|
|
99
|
-
}
|
|
100
|
-
return 'claim';
|
|
101
|
-
};
|
|
96
|
+
const diskIo = { lane, paths, emitEvent, now, sleep, pathExists };
|
|
102
97
|
for (let i = 0;; i++) {
|
|
103
98
|
if (await waitForProviderReset(pauseCtx, providerPauseUntil, now, sleep, pathExists))
|
|
104
99
|
return;
|
|
@@ -110,20 +105,27 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
110
105
|
}
|
|
111
106
|
providersDownWatch = undefined;
|
|
112
107
|
if (i >= pending.length) {
|
|
113
|
-
// A persisted base hold on the unchanged origin/main SHA means the base is still broken
|
|
114
|
-
//
|
|
108
|
+
// A persisted base hold on the unchanged origin/main SHA means the base is still broken (#2349):
|
|
109
|
+
// stop this lane without claiming.
|
|
115
110
|
const gate = baseHoldGate ? await baseHoldGate().catch(() => ({ kind: 'claim' })) : null;
|
|
116
111
|
if (gate?.kind === 'hold') {
|
|
117
112
|
emitEvent(paths.events, 'warn', lane, formatBaseHoldKept(lane, gate), { lane });
|
|
118
113
|
return;
|
|
119
114
|
}
|
|
120
|
-
if (loadGuard && (await holdForLoad(loadGuard)) === 'stopped')
|
|
115
|
+
if (loadGuard && (await holdForLoad(loadGuard, diskIo)) === 'stopped')
|
|
116
|
+
break;
|
|
117
|
+
if (diskGuard && (await holdForDisk(diskGuard, diskIo)) === 'stopped')
|
|
121
118
|
break;
|
|
122
119
|
if (pollReviewRework) {
|
|
123
120
|
await pollReviewRework().catch((err) => emitEvent(paths.events, 'warn', lane, `review-rework poll failed: ${shipRuntime().errorDetail(err)}`, {
|
|
124
121
|
lane,
|
|
125
122
|
}));
|
|
126
123
|
}
|
|
124
|
+
if (recheckAwaitingCi) {
|
|
125
|
+
await recheckAwaitingCi({ park: parkAwaitingCi, emit: emitAwaitingCi }).catch((err) => emitEvent(paths.events, 'warn', lane, `awaiting-ci recheck failed: ${shipRuntime().errorDetail(err)}`, {
|
|
126
|
+
lane,
|
|
127
|
+
}));
|
|
128
|
+
}
|
|
127
129
|
const claimed = await claimNext();
|
|
128
130
|
if (claimed === null)
|
|
129
131
|
break;
|
|
@@ -131,6 +133,7 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
131
133
|
pending.push(claimed);
|
|
132
134
|
}
|
|
133
135
|
const { issue, decision } = pending[i];
|
|
136
|
+
const key = workKeyFromIssue(issue);
|
|
134
137
|
activeIssues.add(issue);
|
|
135
138
|
if (pathExists(paths.stop)) {
|
|
136
139
|
emitEvent(paths.events, 'stopped', issue, 'STOP file present', { lane });
|
|
@@ -138,6 +141,11 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
138
141
|
await releaseIssue(issue, 'queued');
|
|
139
142
|
return;
|
|
140
143
|
}
|
|
144
|
+
const lease = createClaimLease(issue, {
|
|
145
|
+
leaseMs,
|
|
146
|
+
now: () => now().getTime(),
|
|
147
|
+
onRenewFailed: laneRenewLogger(emitEvent, paths.events, lane, issue),
|
|
148
|
+
});
|
|
141
149
|
const parkIssue = async (reason) => {
|
|
142
150
|
emitEvent(paths.events, 'escalate', issue, reason, { lane });
|
|
143
151
|
const msg = `issue #${issue} parked (${reason}); lane '${lane}' continuing, ${await remainingAfter(i)} issue(s) remaining`;
|
|
@@ -145,26 +153,11 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
145
153
|
// A preflight-parked issue may still have a stale worktree from a prior run; the reap
|
|
146
154
|
// is fail-closed and must never change lane flow.
|
|
147
155
|
await reapWorktree(issue).catch(() => { });
|
|
148
|
-
if (await parkAndSettle(issue, msg, parkPayload('escalate',
|
|
156
|
+
if (await parkAndSettle(issue, msg, parkPayload('escalate', key, lane, queuedBehind(i))))
|
|
149
157
|
parked++;
|
|
150
158
|
streak = null;
|
|
151
159
|
};
|
|
152
|
-
const runRestack =
|
|
153
|
-
try {
|
|
154
|
-
const out = await withHeartbeat(issue, heartbeat, () => restack(issue, merged));
|
|
155
|
-
if (out.status === 'park')
|
|
156
|
-
return { parkReason: out.reason, note: out.reason };
|
|
157
|
-
return {
|
|
158
|
-
note: out.status === 'restacked'
|
|
159
|
-
? `restacked slice(s) ${out.slices.map((r) => r.index).join(', ')} onto main after slice ${merged.index} merged`
|
|
160
|
-
: out.reason,
|
|
161
|
-
};
|
|
162
|
-
}
|
|
163
|
-
catch (err) {
|
|
164
|
-
const reason = `restack failed: ${shipRuntime().errorDetail(err)}`;
|
|
165
|
-
return { parkReason: reason, note: reason };
|
|
166
|
-
}
|
|
167
|
-
};
|
|
160
|
+
const runRestack = (merged) => restackUnderHeartbeat(issue, heartbeat, restack, merged);
|
|
168
161
|
if (decision.kind === 'park') {
|
|
169
162
|
await parkIssue(decision.reason);
|
|
170
163
|
continue;
|
|
@@ -187,7 +180,7 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
187
180
|
try {
|
|
188
181
|
const branch = decision.kind === 'adopt'
|
|
189
182
|
? decision.branch
|
|
190
|
-
: await withHeartbeat(issue, heartbeat, () => ship(issue, {}, {
|
|
183
|
+
: await withHeartbeat(issue, heartbeat, (signal) => ship(issue, {}, {
|
|
191
184
|
repoRoot,
|
|
192
185
|
ghRepo,
|
|
193
186
|
paths,
|
|
@@ -196,7 +189,8 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
196
189
|
onOutcome: (o) => {
|
|
197
190
|
sliceOutcome.value = o;
|
|
198
191
|
},
|
|
199
|
-
|
|
192
|
+
signal,
|
|
193
|
+
}), lease);
|
|
200
194
|
landBranch = branch;
|
|
201
195
|
const shipped = sliceOutcome.value;
|
|
202
196
|
if (shipped?.state === 'released' && shipped.reason === 'stack-wait') {
|
|
@@ -237,7 +231,7 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
237
231
|
if (layer) {
|
|
238
232
|
// ADR-0161: land exactly this layer's branch, record it, and re-queue for the next layer.
|
|
239
233
|
landing = branch;
|
|
240
|
-
await withHeartbeat(issue, heartbeat, () => waitMerge(issue, branch, repoRoot, ghRepo, paths, { landBranch: branch }));
|
|
234
|
+
await withHeartbeat(issue, heartbeat, (signal) => waitMerge(issue, branch, repoRoot, ghRepo, paths, { landBranch: branch, signal }), lease);
|
|
241
235
|
await recordStackMerge(issue, layer.prNumber).catch((err) => emitEvent(paths.events, 'warn', issue, `slice ${layer.index}/${layer.count} merged but recording it failed: ${shipRuntime().errorDetail(err)}`, { lane }));
|
|
242
236
|
merged++;
|
|
243
237
|
if (layer.index < layer.count) {
|
|
@@ -253,23 +247,47 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
253
247
|
continue;
|
|
254
248
|
}
|
|
255
249
|
landing = branch;
|
|
256
|
-
await withHeartbeat(issue, heartbeat, () => waitMerge(issue, branch, repoRoot, ghRepo, paths, {
|
|
250
|
+
await withHeartbeat(issue, heartbeat, (signal) => waitMerge(issue, branch, repoRoot, ghRepo, paths, {
|
|
257
251
|
syncMain: decision.kind === 'adopt' && decision.syncMain === true,
|
|
258
|
-
|
|
252
|
+
signal,
|
|
253
|
+
}), lease);
|
|
259
254
|
merged++;
|
|
260
255
|
streak = null;
|
|
261
256
|
await settle(issue, 'done');
|
|
262
257
|
}
|
|
263
258
|
catch (err) {
|
|
264
259
|
const { LaneParkError, LaneEnvironmentPauseError, IssueSkippedError, IssueDecomposedError } = shipRuntime();
|
|
260
|
+
if (err instanceof ClaimLostError) {
|
|
261
|
+
// #3146: another host owns the claim. Keep the worktree; never release, reap, comment or park.
|
|
262
|
+
onClaimLost(err, emitEvent, paths.events, lane, hostId, runId);
|
|
263
|
+
activeIssues.delete(issue);
|
|
264
|
+
streak = null;
|
|
265
|
+
continue;
|
|
266
|
+
}
|
|
265
267
|
if (err instanceof AwaitingReviewError) {
|
|
266
|
-
// The land path already emitted
|
|
267
|
-
// worktree — this is a clean outcome, not a park; move to the next issue.
|
|
268
|
+
// The land path already emitted awaiting-review and cleaned the worktree: a clean outcome, not a park.
|
|
268
269
|
awaitingReview++;
|
|
269
270
|
streak = null;
|
|
270
271
|
await settle(issue, layer && layer.index < layer.count ? 'queued' : 'done');
|
|
271
272
|
continue;
|
|
272
273
|
}
|
|
274
|
+
if (err instanceof AwaitingCiError) {
|
|
275
|
+
// #3208: no CI run ever registered. Keep the PR open and record it for the backoff re-check; never a park.
|
|
276
|
+
const firstSeenAt = now().getTime();
|
|
277
|
+
const rec = { issue, prNumber: err.prNumber, branch: landBranch ?? '', headSha: err.headSha, firstSeenAt };
|
|
278
|
+
await recordAwaitingCi?.({ ...rec, attempts: 0, nextRecheckAt: nextRecheckAt(firstSeenAt, 0) }).catch((e) => emitAwaitingCi('warn', issue, `could not record awaiting-ci for PR #${err.prNumber}: ${shipRuntime().errorDetail(e)}`));
|
|
279
|
+
emitAwaitingCi('awaiting-ci', issue, `PR #${err.prNumber} awaiting CI on ${err.headSha}; re-checking soon`);
|
|
280
|
+
awaitingReview++;
|
|
281
|
+
streak = null;
|
|
282
|
+
await settle(issue, 'done');
|
|
283
|
+
continue;
|
|
284
|
+
}
|
|
285
|
+
if (err instanceof AwaitMergeStoppedError) {
|
|
286
|
+
emitEvent(paths.events, 'await-merge-stopped', issue, `${err.message}; re-queued (#3291)`, { lane });
|
|
287
|
+
streak = null;
|
|
288
|
+
await settle(issue, 'queued');
|
|
289
|
+
continue;
|
|
290
|
+
}
|
|
273
291
|
if (err instanceof IssueSkippedError) {
|
|
274
292
|
// shipIssue already emitted skipped-already-closed; nothing was attempted.
|
|
275
293
|
skipped++;
|
|
@@ -311,10 +329,8 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
311
329
|
}
|
|
312
330
|
const reason = parkReasonFor(err);
|
|
313
331
|
const logSuffix = /(?:^|\n)(Run logs: [^\r\n]+)$/.exec(String(err instanceof Error ? err.message : ''))?.[1];
|
|
314
|
-
// Terminal reason events (escalate/timeout/fail/conflict) are emitted
|
|
315
|
-
//
|
|
316
|
-
// the land path for merge failures. runLane owns only lane-lifecycle events
|
|
317
|
-
// (stopped/parked/lane-done), so injected ship functions never change ownership.
|
|
332
|
+
// Terminal reason events (escalate/timeout/fail/conflict) are emitted once by the detecting layer (shipIssue
|
|
333
|
+
// for pipeline failures, the land path for merge failures); runLane owns only lane-lifecycle events.
|
|
318
334
|
// A blocked park waits on a filed blocker (#2315); it never counts toward the lane breaker.
|
|
319
335
|
const signature = err instanceof LaneParkError && err.reason !== 'blocked' ? err.failureSignature : undefined;
|
|
320
336
|
const checks = err instanceof LaneParkError ? (err.failingChecks ?? []) : [];
|
|
@@ -335,7 +351,7 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
|
|
|
335
351
|
if (landing !== undefined)
|
|
336
352
|
await closeParkedPr(issue, landing, reason).catch(() => { });
|
|
337
353
|
await reapWorktree(issue).catch(() => { });
|
|
338
|
-
if (await parkAndSettle(issue, msg, parkPayload(reason,
|
|
354
|
+
if (await parkAndSettle(issue, msg, parkPayload(reason, key, lane, queuedBehind(i))))
|
|
339
355
|
parked++;
|
|
340
356
|
const down = sliceOutcome.value?.state === 'parked' ? sliceOutcome.value.providersDown : undefined;
|
|
341
357
|
if (reason === 'all_providers_down' && down) {
|
package/dist/cli/run-lane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-lane.js","sourceRoot":"","sources":["../../src/cli/run-lane.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-lane.js","sourceRoot":"","sources":["../../src/cli/run-lane.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/run.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export interface RunRuntime {
|
|
|
27
27
|
runAutoWorktreeGc: (repoRoot: string, paths: ReturnType<typeof getFactoryPaths>, ghRepo: string, eventScope: string | number) => Promise<void>;
|
|
28
28
|
sweepStaleLaneClaims: (paths: ReturnType<typeof getFactoryPaths>, ghRepo: string) => Promise<void>;
|
|
29
29
|
sweepOrphanDrafts: (paths: ReturnType<typeof getFactoryPaths>, ghRepo: string) => Promise<void>;
|
|
30
|
+
reapExpiredClaims: (paths: ReturnType<typeof getFactoryPaths>, ghRepo: string) => Promise<void>;
|
|
30
31
|
planRunLanes: typeof planRunLanes;
|
|
31
32
|
preflightQueuedIssue: typeof preflightQueuedIssue;
|
|
32
33
|
createQueuePreflightOps: typeof createQueuePreflightOps;
|
package/dist/cli/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAIL,eAAe,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
|