@on-par/factory-cli 0.9.11-next.6 → 0.9.11-next.60
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/help-groups.d.ts.map +1 -1
- package/dist/cli/help-groups.js +4 -1
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/index.d.ts +14 -32
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +60 -173
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/json-contract.d.ts +306 -0
- package/dist/cli/json-contract.d.ts.map +1 -0
- package/dist/cli/json-contract.js +208 -0
- package/dist/cli/json-contract.js.map +1 -0
- package/dist/cli/land-pr.d.ts.map +1 -1
- package/dist/cli/land-pr.js +5 -0
- package/dist/cli/land-pr.js.map +1 -1
- package/dist/cli/land.d.ts.map +1 -1
- package/dist/cli/land.js +19 -1
- 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 +14 -0
- package/dist/cli/logs.d.ts.map +1 -1
- package/dist/cli/logs.js +46 -4
- package/dist/cli/logs.js.map +1 -1
- package/dist/cli/program-observe.d.ts.map +1 -1
- package/dist/cli/program-observe.js +11 -2
- package/dist/cli/program-observe.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 +50 -0
- package/dist/cli/queue-preflight.d.ts.map +1 -0
- package/dist/cli/queue-preflight.js +327 -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 +34 -0
- package/dist/cli/risk-policy.js.map +1 -0
- package/dist/cli/run-branch.d.ts +24 -0
- package/dist/cli/run-branch.d.ts.map +1 -0
- package/dist/cli/run-branch.js +38 -0
- package/dist/cli/run-branch.js.map +1 -0
- package/dist/cli/run-lane.d.ts.map +1 -1
- package/dist/cli/run-lane.js +9 -1
- package/dist/cli/run-lane.js.map +1 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +17 -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-run-state.d.ts +5 -0
- package/dist/cli/ship-run-state.d.ts.map +1 -0
- package/dist/cli/ship-run-state.js +12 -0
- package/dist/cli/ship-run-state.js.map +1 -0
- package/dist/cli/ship-steps.d.ts +2 -14
- package/dist/cli/ship-steps.d.ts.map +1 -1
- package/dist/cli/ship-steps.js +19 -32
- package/dist/cli/ship-steps.js.map +1 -1
- package/dist/cli/ship.d.ts.map +1 -1
- package/dist/cli/ship.js +26 -24
- 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/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 +8 -5
- package/schemas/cost.schema.json +114 -0
- package/schemas/daemon-status.schema.json +44 -0
- package/schemas/logs-line.schema.json +118 -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/ship.js
CHANGED
|
@@ -3,11 +3,13 @@ import { resolve } from 'node:path';
|
|
|
3
3
|
import { styleText } from 'node:util';
|
|
4
4
|
import { applyRepoConfig, closedWorkSkipReason, createDefaultWorkSourceRegistry, createFileApprovalGate, drainSteering, getFactoryPaths, GITHUB_ISSUE_SOURCE, LaneFileGuard, phaseSnapshotFile, ProviderBreaker, resolveAutoFailover, resolveCodexDisabled, resolveEfficiencyPolicy, resolveEnvironmentPorts, resolveEnvironmentProxy, resolvePlanApproval, resolveProcessGroupGraceMs, resolveSandboxPolicy, resolveSizeGateMaxSlices, resolveSizeGateMode, ReworkHistory, runIssue, summarizeEvent, touchLastEvent, touchRunActivity, writePhaseSnapshot, } from '@on-par/factory-core';
|
|
5
5
|
import { hostBuildSlotPort } from './host-slot.js';
|
|
6
|
-
import {
|
|
6
|
+
import { createCheckResumeStore, createGithubLaneClaimStalenessProbe, createPlanReuseStore, egressHostMessage, egressSummaryMessage, logCost, logEvent, recordLocalAuthFailure, resolveBaseHealthChecks, resolveEffectiveConfig, resolvePrClassifierPolicy, shouldProxyEgress, startEgressProxy, worktreeSandboxFor, } from '@on-par/factory-core/internal';
|
|
7
7
|
import { baseHealthWithCi } from './base-health-ci.js';
|
|
8
8
|
import { formatDeprecation } from './octokit.js';
|
|
9
|
+
import { resolveRunBranch } from './run-branch.js';
|
|
9
10
|
import { shipRuntime } from './ship-runtime.js';
|
|
10
|
-
import {
|
|
11
|
+
import { runStateRecorder } from './ship-run-state.js';
|
|
12
|
+
import { buildRunRequest, decomposeQueue, finishOutcome, logSandboxPolicy, maybeWriteBenchmarkArtifacts, maybeWriteLocalRunReport, setupRunWorkspace, stubAwareShipPhase, TERMINAL_EVENT_KINDS, } from './ship-steps.js';
|
|
11
13
|
/** One `model-override` message per pinned phase, naming the file or env var it came from (#2497). */
|
|
12
14
|
function modelOverrideMessages(pins, repo, repoConfigLabel) {
|
|
13
15
|
const label = (source, envVar) => (source === 'repo' ? repoConfigLabel : envVar);
|
|
@@ -57,6 +59,7 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
57
59
|
: { ...resolveEffectiveConfig(repoConfig), branchPrefix: opts.branchPrefix },
|
|
58
60
|
};
|
|
59
61
|
const router = new core.ModelRouter(policy.models, policy.routes, false, undefined, policy.effective.allowExperimental, policy.effective.localOnly);
|
|
62
|
+
router.setCodexFullAccessTasks?.(policy.sandbox.codexFullAccessTasks);
|
|
60
63
|
router.setLocalAuthSink?.(recordLocalAuthFailure);
|
|
61
64
|
router.skipMissingHarnessClis(core.isCommandAvailable);
|
|
62
65
|
let issueSpend = 0;
|
|
@@ -85,16 +88,18 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
85
88
|
const issueTitle = work.title;
|
|
86
89
|
const sizeGateMode = opts.sizeGate ?? resolveSizeGateMode(factoryConfig);
|
|
87
90
|
const maxSlices = opts.maxSlices ?? resolveSizeGateMaxSlices(factoryConfig);
|
|
88
|
-
const
|
|
89
|
-
const
|
|
91
|
+
const { branchPrefix } = policy.effective;
|
|
92
|
+
const claim = { issueNum, issueTitle, ghRepo, sizeGateMode, work, ctx, octokit };
|
|
93
|
+
const branch = await resolveRunBranch({ ...claim, branchPrefix, eventsFile: paths.events });
|
|
90
94
|
const worktree = ctx?.resumeFrom
|
|
91
95
|
? ctx.resumeFrom.worktree
|
|
92
96
|
: ctx?.localOnly
|
|
93
97
|
? ctx.localOnly.workspace
|
|
94
|
-
: worktreePathFor(repoRoot, ghRepo, issueNum,
|
|
98
|
+
: worktreePathFor(repoRoot, ghRepo, issueNum, branchPrefix, loaders);
|
|
95
99
|
const specPath = resolve(paths.plans, `issue-${issueNum}.md`);
|
|
96
100
|
const runStartedAt = new Date().toISOString();
|
|
97
101
|
const lane = ctx?.lane;
|
|
102
|
+
const baseHealthOpts = { checks: resolveBaseHealthChecks(repoConfig), events: paths.events, lane };
|
|
98
103
|
let terminalMessage;
|
|
99
104
|
let laneReworkRounds = 0;
|
|
100
105
|
const mkLog = (phase) => (type, msg, extra) => {
|
|
@@ -102,20 +107,16 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
102
107
|
terminalMessage = msg;
|
|
103
108
|
if (type === 'rework')
|
|
104
109
|
laneReworkRounds++;
|
|
105
|
-
// checkPhase logs each skipped checker as a '
|
|
106
|
-
// echo it to the terminal the way shipIssue used to print it directly.
|
|
110
|
+
// checkPhase logs each skipped checker as a 'SKIPPED: ' check event — echo it to the terminal.
|
|
107
111
|
if (type === 'check' && msg.startsWith('SKIPPED: ')) {
|
|
108
112
|
console.error(styleText('yellow', ` SKIP: ${msg.slice('SKIPPED: '.length)}`));
|
|
109
113
|
}
|
|
110
|
-
// Likewise for
|
|
111
|
-
// failed and why — the parked RunOutcome carries only an aggregate count (#675).
|
|
114
|
+
// Likewise for failing checkers: the parked RunOutcome carries only an aggregate count (#675).
|
|
112
115
|
if (type === 'check' && msg.startsWith('FAILED: ')) {
|
|
113
116
|
console.error(styleText('red', ` FAIL: ${msg.slice('FAILED: '.length)}`));
|
|
114
117
|
}
|
|
115
118
|
logEvent(paths.events, type, issueNum, msg, { ...extra, lane, phase });
|
|
116
|
-
// Best-effort lastEvent summary (#1327)
|
|
117
|
-
// observability side channel, so a write failure is swallowed, not logged (that
|
|
118
|
-
// would re-enter this same function for every event this chokepoint fires on).
|
|
119
|
+
// Best-effort lastEvent summary (#1327): a write failure is swallowed, not logged (re-entrancy).
|
|
119
120
|
touchLastEvent(phaseSnapshotFile(paths.runs, issueNum), summarizeEvent(type, msg)).catch(() => { });
|
|
120
121
|
};
|
|
121
122
|
const log = mkLog();
|
|
@@ -132,6 +133,7 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
132
133
|
const sandboxPolicy = resolveSandboxPolicy(policy.sandbox, {
|
|
133
134
|
worktree,
|
|
134
135
|
repoRoot,
|
|
136
|
+
factoryStateDir: paths.state,
|
|
135
137
|
cliDisabled: opts.sandbox === false,
|
|
136
138
|
laneId: lane,
|
|
137
139
|
isAvailable: (cmd) => isCommandAvailableViaShell(shell, cmd),
|
|
@@ -141,9 +143,6 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
141
143
|
allowHosts: sandboxPolicy?.allowHosts ?? [],
|
|
142
144
|
});
|
|
143
145
|
const activeSandboxPolicy = logSandboxPolicy(opts, sandboxPolicy, log);
|
|
144
|
-
// Setup worktree FIRST — PLAN needs cwd=worktree to run claude. Worktree cleanup
|
|
145
|
-
// stays a CLI concern (not called here, matching today — a worktree persists past
|
|
146
|
-
// a successful run for GC/sweep commands to reclaim later).
|
|
147
146
|
const workspace = await setupRunWorkspace({
|
|
148
147
|
ctx,
|
|
149
148
|
repoRoot,
|
|
@@ -163,9 +162,7 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
163
162
|
if (!portsSettings.enabled) {
|
|
164
163
|
log('environment_lease', 'port leasing disabled (environment.ports.enabled=false or FACTORY_ENV_PORTS=0)');
|
|
165
164
|
}
|
|
166
|
-
//
|
|
167
|
-
// group tracking and killing is runIssue's own unconditional tracker (Invariant 3),
|
|
168
|
-
// so a lease-disabled/failed run still tears down every spawned agent process.
|
|
165
|
+
// recordPgid/release only persist/deallocate the lease; process-group killing is runIssue's own tracker (Invariant 3).
|
|
169
166
|
const acquireEnvironment = portsSettings.enabled
|
|
170
167
|
? resolveEnvironmentAcquirer({
|
|
171
168
|
laneSandboxRuntime: sandboxPolicy?.runtime ?? 'none',
|
|
@@ -226,11 +223,9 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
226
223
|
checkPhase: phases.checkPhase,
|
|
227
224
|
hostBuildSlot: hostBuildSlotPort(factoryConfig, ghRepo, issueNum, log, ctx?.runSlots),
|
|
228
225
|
shipPhase: shipPhaseForMode,
|
|
229
|
-
checkBaseHealth: deps.checkBaseHealth ?? baseHealthWithCi(octokit, ghOwner, ghName),
|
|
226
|
+
checkBaseHealth: deps.checkBaseHealth ?? baseHealthWithCi(octokit, ghOwner, ghName, baseHealthOpts),
|
|
230
227
|
resolveConstitution: () =>
|
|
231
|
-
// Resolved once
|
|
232
|
-
// every phase, so the build worker can never author the standards it is graded by.
|
|
233
|
-
// A local-only workspace is caller-provided, not a checkout of repoRoot, so it keeps its own constitution.
|
|
228
|
+
// Resolved once so the build worker can't author its own standards; a caller-provided local-only workspace keeps its own.
|
|
234
229
|
constitutionLoader.resolve(worktree, product, factoryConfig.paths?.constitution, ctx?.localOnly ? undefined : repoRoot),
|
|
235
230
|
createApprovalGate: () => createFileApprovalGate({ dir: paths.approvals, timeoutMs: timeouts.approval * 1000 }),
|
|
236
231
|
drainSteering: () => drainSteering(paths.steering, issueNum, worktree),
|
|
@@ -246,6 +241,14 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
246
241
|
lastActivityAt: now,
|
|
247
242
|
});
|
|
248
243
|
},
|
|
244
|
+
recordRunState: runStateRecorder(paths.runs, {
|
|
245
|
+
issue: issueNum,
|
|
246
|
+
lane: lane ?? '',
|
|
247
|
+
branch,
|
|
248
|
+
worktree,
|
|
249
|
+
specPath,
|
|
250
|
+
startedAt: runStartedAt,
|
|
251
|
+
}),
|
|
249
252
|
onActivity: () => touchRunActivity(phaseSnapshotFile(paths.runs, issueNum), new Date().toISOString()),
|
|
250
253
|
onDecomposed: (childIssues) => {
|
|
251
254
|
decomposeQueue({ issueNum, childIssues, paths, planLog: mkLog('plan') });
|
|
@@ -279,8 +282,7 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
|
|
|
279
282
|
log,
|
|
280
283
|
}),
|
|
281
284
|
};
|
|
282
|
-
// #2214: report-only per-lane egress proxy for sandbox-exec
|
|
283
|
-
// so the finally below is the single place that stops it on every exit path.
|
|
285
|
+
// #2214: report-only per-lane egress proxy for sandbox-exec, started after worktree setup; the finally below stops it.
|
|
284
286
|
const proxied = shouldProxyEgress(request.sandboxPolicy) ? request.sandboxPolicy : undefined;
|
|
285
287
|
const egressProxy = proxied
|
|
286
288
|
? await startEgressProxy({
|
package/dist/cli/ship.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ship.js","sourceRoot":"","sources":["../../src/cli/ship.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ship.js","sourceRoot":"","sources":["../../src/cli/ship.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Octokit } from '@octokit/rest';
|
|
2
|
+
import type { LocalOnlyPolicy, SizeGateMode, WorkRequest } from '@on-par/factory-core';
|
|
3
|
+
import type { CheckResumeRecord } from '@on-par/factory-core/internal';
|
|
4
|
+
/** ADR-0147: slice k >= 2 builds on its own branch, so the slice plan is read before the worktree exists. */
|
|
5
|
+
export declare function findSliceIndex({ sizeGateMode, ctx, work, octokit, ghRepo, issueNum, }: {
|
|
6
|
+
sizeGateMode: SizeGateMode;
|
|
7
|
+
ctx?: {
|
|
8
|
+
localOnly?: LocalOnlyPolicy;
|
|
9
|
+
resumeFrom?: CheckResumeRecord;
|
|
10
|
+
};
|
|
11
|
+
work: WorkRequest;
|
|
12
|
+
octokit: Octokit;
|
|
13
|
+
ghRepo: string;
|
|
14
|
+
issueNum: number;
|
|
15
|
+
}): Promise<number | undefined>;
|
|
16
|
+
//# sourceMappingURL=slice-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slice-index.d.ts","sourceRoot":"","sources":["../../src/cli/slice-index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,6GAA6G;AAC7G,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,GAAG,EACH,IAAI,EACJ,OAAO,EACP,MAAM,EACN,QAAQ,GACT,EAAE;IACD,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,eAAe,CAAC;QAAC,UAAU,CAAC,EAAE,iBAAiB,CAAA;KAAE,CAAC;IACtE,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAwB9B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// packages/cli/src/cli/slice-index.ts — which slice a ship run resumes at (ADR-0147, ADR-0161)
|
|
2
|
+
import { GITHUB_ISSUE_SOURCE } from '@on-par/factory-core';
|
|
3
|
+
import { currentSlice, findSlicePlanComment, nextStackSlice } from '@on-par/factory-core/internal';
|
|
4
|
+
import { shipRuntime } from './ship-runtime.js';
|
|
5
|
+
/** ADR-0147: slice k >= 2 builds on its own branch, so the slice plan is read before the worktree exists. */
|
|
6
|
+
export async function findSliceIndex({ sizeGateMode, ctx, work, octokit, ghRepo, issueNum, }) {
|
|
7
|
+
const { errorDetail, LaneParkError } = shipRuntime();
|
|
8
|
+
let sliceIndex;
|
|
9
|
+
// ADR-0161: stack mode resumes at the lowest pending slice.
|
|
10
|
+
if ((sizeGateMode === 'slice' || sizeGateMode === 'stack') &&
|
|
11
|
+
!ctx?.localOnly &&
|
|
12
|
+
!ctx?.resumeFrom &&
|
|
13
|
+
work.kind === GITHUB_ISSUE_SOURCE) {
|
|
14
|
+
try {
|
|
15
|
+
const lookup = await findSlicePlanComment({ octokit, repo: ghRepo, issue: issueNum });
|
|
16
|
+
if (lookup.status === 'found') {
|
|
17
|
+
const next = sizeGateMode === 'stack' ? nextStackSlice(lookup.plan) : undefined;
|
|
18
|
+
sliceIndex = (next ?? currentSlice(lookup.plan))?.index;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
throw new LaneParkError(`slice plan lookup failed for #${issueNum}: ${errorDetail(err)} — parked before creating a worktree`, 'escalate');
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return sliceIndex;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=slice-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slice-index.js","sourceRoot":"","sources":["../../src/cli/slice-index.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAG/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGnG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,6GAA6G;AAC7G,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,YAAY,EACZ,GAAG,EACH,IAAI,EACJ,OAAO,EACP,MAAM,EACN,QAAQ,GAQT;IACC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,WAAW,EAAE,CAAC;IACrD,IAAI,UAA8B,CAAC;IACnC,4DAA4D;IAC5D,IACE,CAAC,YAAY,KAAK,OAAO,IAAI,YAAY,KAAK,OAAO,CAAC;QACtD,CAAC,GAAG,EAAE,SAAS;QACf,CAAC,GAAG,EAAE,UAAU;QAChB,IAAI,CAAC,IAAI,KAAK,mBAAmB,EACjC,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtF,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChF,UAAU,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC;YAC1D,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,aAAa,CACrB,iCAAiC,QAAQ,KAAK,WAAW,CAAC,GAAG,CAAC,sCAAsC,EACpG,UAAU,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -1,41 +1,20 @@
|
|
|
1
1
|
import type { ActiveQueueClaim } from '@on-par/factory-core';
|
|
2
|
+
import type { StatusJson } from './json-contract.js';
|
|
2
3
|
import type { StatusUpdateJson } from './update-state.js';
|
|
4
|
+
export type { StatusJson } from './json-contract.js';
|
|
3
5
|
/** One open provider in `factory status --json` (#1101). */
|
|
4
|
-
export
|
|
5
|
-
provider: string;
|
|
6
|
-
reason: string;
|
|
7
|
-
openedAt: string;
|
|
8
|
-
remainingSec: number;
|
|
9
|
-
}
|
|
6
|
+
export type StatusBreakerProviderJson = StatusJson['breaker']['providers'][number];
|
|
10
7
|
/** Provider breaker state (state/breaker.json). `open` is true iff any provider is still open. */
|
|
11
|
-
export
|
|
12
|
-
open: boolean;
|
|
13
|
-
providers: StatusBreakerProviderJson[];
|
|
14
|
-
}
|
|
8
|
+
export type StatusBreakerJson = StatusJson['breaker'];
|
|
15
9
|
/** One fresh-heartbeat local queue claim. */
|
|
16
|
-
export
|
|
17
|
-
|
|
18
|
-
issue: number;
|
|
19
|
-
phase: string;
|
|
20
|
-
ageSec: number;
|
|
21
|
-
}
|
|
22
|
-
/** `factory status --json` payload (#1101). No queue (#2268) or usage (#2270) section.
|
|
23
|
-
* Additive changes only; bump schemaVersion on a breaking change. */
|
|
24
|
-
export interface StatusJson {
|
|
25
|
-
schemaVersion: 1;
|
|
26
|
-
repo: string;
|
|
27
|
-
product: string | null;
|
|
28
|
-
stop: boolean;
|
|
29
|
-
breaker: StatusBreakerJson;
|
|
30
|
-
active: StatusActiveRowJson[];
|
|
31
|
-
/** factoryd self-update state (#2129, additive); null when no readable update-state.json exists. */
|
|
32
|
-
update: StatusUpdateJson | null;
|
|
33
|
-
}
|
|
10
|
+
export type StatusActiveRowJson = StatusJson['active'][number];
|
|
11
|
+
export type StatusStopInfoJson = NonNullable<StatusJson['stopInfo']>;
|
|
34
12
|
/** Builds the `factory status --json` payload. An unparsable `lastActivityAt` reports `ageSec: 0`, never NaN. */
|
|
35
13
|
export declare function buildStatusJson(input: {
|
|
36
14
|
repo: string;
|
|
37
15
|
product: string | null;
|
|
38
16
|
stop: boolean;
|
|
17
|
+
stopInfo: StatusStopInfoJson | null;
|
|
39
18
|
breakers: ReadonlyArray<{
|
|
40
19
|
provider: string;
|
|
41
20
|
reason: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-json.d.ts","sourceRoot":"","sources":["../../src/cli/status-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"status-json.d.ts","sourceRoot":"","sources":["../../src/cli/status-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,4DAA4D;AAC5D,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,kGAAkG;AAClG,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AAEtD,6CAA6C;AAC7C,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;AAErE,iHAAiH;AACjH,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,aAAa,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrG,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAC7F,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,UAAU,CAsBb"}
|
package/dist/cli/status-json.js
CHANGED
|
@@ -10,12 +10,14 @@ export function buildStatusJson(input) {
|
|
|
10
10
|
const ageSec = Math.floor((input.now - Date.parse(c.lastActivityAt)) / 1000);
|
|
11
11
|
return { lane: c.lane, issue: c.issue, phase: c.phase, ageSec: Number.isFinite(ageSec) ? Math.max(0, ageSec) : 0 };
|
|
12
12
|
});
|
|
13
|
+
const breaker = { open: providers.length > 0, providers };
|
|
13
14
|
return {
|
|
14
15
|
schemaVersion: 1,
|
|
15
16
|
repo: input.repo,
|
|
16
17
|
product: input.product,
|
|
17
18
|
stop: input.stop,
|
|
18
|
-
|
|
19
|
+
stopInfo: input.stopInfo,
|
|
20
|
+
breaker,
|
|
19
21
|
active,
|
|
20
22
|
update: input.update,
|
|
21
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-json.js","sourceRoot":"","sources":["../../src/cli/status-json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status-json.js","sourceRoot":"","sources":["../../src/cli/status-json.ts"],"names":[],"mappings":"AAiBA,iHAAiH;AACjH,MAAM,UAAU,eAAe,CAAC,KAS/B;IACC,MAAM,SAAS,GAAgC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxE,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;KAC9C,CAAC,CAAC,CAAC;IACJ,MAAM,MAAM,GAA0B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7E,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAsB,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7E,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO;QACP,MAAM;QACN,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;AACJ,CAAC"}
|
package/dist/cli/status.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAa7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAa7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAoB5D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAQ3E,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,gHAAgH;AAChH,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,QAAQ,CACrB,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,0BAA0B,CAAC,CACvG,CAAC;IACF,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;IAC9C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,cAAc,EAAE,MAAM,OAAO,CAAC;IAC9B,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,oBAAoB,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC;IAC/D,WAAW,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;IACtC,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,uGAAuG;IACvG,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAChG;AAYD,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAmMrF"}
|
package/dist/cli/status.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { existsSync, readFileSync } from 'node:fs';
|
|
3
3
|
import { styleText } from 'node:util';
|
|
4
4
|
import { applyRepoConfig, computeHealthKpis, describeEffectiveConfig, formatKpiLines, getFactoryPaths, parseQueue, partitionLocalQueueByActivity, ProviderBreaker, readEvents, resolveMergePolicy, } from '@on-par/factory-core';
|
|
5
|
-
import { createGithubQueue, createOctokitQueueClient, daemonRuntimePaths, formatQueueOrderConflict, formatWorktreeLocation, hostBuildSlotsDir, listHostSlots, recordLocalAuthFailure, resolveEffectiveConfig, resolveHostMaxBuilds, resolvePrClassifierPolicy, resolveWorktreeRoot, } from '@on-par/factory-core/internal';
|
|
5
|
+
import { createGithubQueue, createOctokitQueueClient, daemonRuntimePaths, formatQueueOrderConflict, formatWorktreeLocation, hostBuildSlotsDir, listHostSlots, recordLocalAuthFailure, resolveEffectiveConfig, resolveHostMaxBuilds, resolvePrClassifierPolicy, resolveWorktreeRoot, readStopMarker, } from '@on-par/factory-core/internal';
|
|
6
6
|
import { formatBaseHoldStatus, readBaseHold } from './base-hold.js';
|
|
7
7
|
import { notInitializedMessage } from './first-run.js';
|
|
8
8
|
import { readRunFlagOverrides } from './run-flags.js';
|
|
@@ -35,10 +35,12 @@ export async function cmdStatus(opts, rt) {
|
|
|
35
35
|
({ active } = await partitionLocalQueueByActivity(entries, paths.runs));
|
|
36
36
|
rt.warnQueueDiagnostics(diagnostics);
|
|
37
37
|
}
|
|
38
|
+
const marker = readStopMarker(paths.stop);
|
|
38
39
|
console.log(JSON.stringify(buildStatusJson({
|
|
39
40
|
repo: ghRepo,
|
|
40
41
|
product: rt.readActiveProduct(paths.product) ?? null,
|
|
41
42
|
stop: existsSync(paths.stop),
|
|
43
|
+
stopInfo: marker ? { source: marker.source, setAt: marker.at ?? null } : null,
|
|
42
44
|
breakers: await new ProviderBreaker(paths.breaker).list(),
|
|
43
45
|
active,
|
|
44
46
|
update: buildStatusUpdateJson(readUpdateState(updateStatePath(daemonRuntimePaths().dir))),
|
|
@@ -54,6 +56,7 @@ export async function cmdStatus(opts, rt) {
|
|
|
54
56
|
const routesConfig = rt.configLoaders.loadRoutesConfig();
|
|
55
57
|
const effective = resolveEffectiveConfig(repoConfig);
|
|
56
58
|
const router = new rt.ModelRouter(modelsConfig, routesConfig, false, undefined, effective.allowExperimental, effective.localOnly);
|
|
59
|
+
router.setCodexFullAccessTasks?.(rt.configLoaders.loadFactoryConfigForRepo(paths.config).sandbox.codexFullAccessTasks);
|
|
57
60
|
router.setLocalAuthSink?.(recordLocalAuthFailure);
|
|
58
61
|
const product = rt.readActiveProduct(paths.product) ?? '(none)';
|
|
59
62
|
console.log(styleText('bold', `== ${ghRepo} ==`));
|
package/dist/cli/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAE7F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,UAAU,EACV,6BAA6B,EAC7B,eAAe,EACf,UAAU,EACV,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type IssueRunState, type SteerabilityReport } from '@on-par/factory-core/internal';
|
|
2
|
+
/** Every parseable `issue-<n>.json` run state in `runsDir`; phase snapshots and malformed files are skipped. */
|
|
3
|
+
export declare function readRunStates(runsDir: string): Promise<IssueRunState[]>;
|
|
4
|
+
/** Steers per merged PR from local run states and classifier-outcomes.jsonl (#3403). */
|
|
5
|
+
export declare function buildSteerabilityReport(paths: {
|
|
6
|
+
runs: string;
|
|
7
|
+
classifierOutcomes: string;
|
|
8
|
+
}): Promise<SteerabilityReport>;
|
|
9
|
+
//# sourceMappingURL=steerability-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steerability-report.d.ts","sourceRoot":"","sources":["../../src/cli/steerability-report.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AAWvC,gHAAgH;AAChH,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAM7E;AAED,wFAAwF;AACxF,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,CAAC;CAC5B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAK9B"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { readdir, readFile } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { parseClassifierOutcomes } from '@on-par/factory-core';
|
|
4
|
+
import { collectMergedPrSteers, readIssueRunState, summarizeSteerability, } from '@on-par/factory-core/internal';
|
|
5
|
+
async function readOrEmpty(read, empty) {
|
|
6
|
+
try {
|
|
7
|
+
return await read();
|
|
8
|
+
}
|
|
9
|
+
catch (err) {
|
|
10
|
+
if (err.code === 'ENOENT')
|
|
11
|
+
return empty;
|
|
12
|
+
throw err;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/** Every parseable `issue-<n>.json` run state in `runsDir`; phase snapshots and malformed files are skipped. */
|
|
16
|
+
export async function readRunStates(runsDir) {
|
|
17
|
+
const names = await readOrEmpty(() => readdir(runsDir), []);
|
|
18
|
+
const states = await Promise.all(names.filter((name) => /^issue-(\d+)\.json$/.test(name)).map((name) => readIssueRunState(join(runsDir, name))));
|
|
19
|
+
return states.filter((s) => s !== null && typeof s.issue === 'number');
|
|
20
|
+
}
|
|
21
|
+
/** Steers per merged PR from local run states and classifier-outcomes.jsonl (#3403). */
|
|
22
|
+
export async function buildSteerabilityReport(paths) {
|
|
23
|
+
const text = await readOrEmpty(() => readFile(paths.classifierOutcomes, 'utf-8'), '');
|
|
24
|
+
const runs = await readRunStates(paths.runs);
|
|
25
|
+
const { rows, unmatched } = collectMergedPrSteers(runs, parseClassifierOutcomes(text));
|
|
26
|
+
return summarizeSteerability(rows, unmatched);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=steerability-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steerability-report.js","sourceRoot":"","sources":["../../src/cli/steerability-report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,GAGtB,MAAM,+BAA+B,CAAC;AAEvC,KAAK,UAAU,WAAW,CAAI,IAAsB,EAAE,KAAQ;IAC5D,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACnE,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,gHAAgH;AAChH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAe;IACjD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAc,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAC/G,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAsB,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;AAC7F,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,KAG7C;IACC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,OAAO,qBAAqB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1,14 +1,6 @@
|
|
|
1
|
+
import type { StopResumeJson } from './json-contract.js';
|
|
2
|
+
export type { StopResumeJson } from './json-contract.js';
|
|
1
3
|
/** `factory stop|resume --json` payload (#2276). Additive changes only; bump schemaVersion on a breaking change. */
|
|
2
|
-
export interface StopResumeJson {
|
|
3
|
-
schemaVersion: 1;
|
|
4
|
-
ok: true;
|
|
5
|
-
action: 'stop' | 'resume';
|
|
6
|
-
repo: string;
|
|
7
|
-
stopFlag: {
|
|
8
|
-
before: boolean;
|
|
9
|
-
after: boolean;
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
4
|
export declare function buildStopResumeJson(input: {
|
|
13
5
|
action: 'stop' | 'resume';
|
|
14
6
|
repo: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-resume-json.d.ts","sourceRoot":"","sources":["../../src/cli/stop-resume-json.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"stop-resume-json.d.ts","sourceRoot":"","sources":["../../src/cli/stop-resume-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,oHAAoH;AAEpH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,cAAc,CAQjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-resume-json.js","sourceRoot":"","sources":["../../src/cli/stop-resume-json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stop-resume-json.js","sourceRoot":"","sources":["../../src/cli/stop-resume-json.ts"],"names":[],"mappings":"AAIA,oHAAoH;AAEpH,MAAM,UAAU,mBAAmB,CAAC,KAKnC;IACC,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;KACvD,CAAC;AACJ,CAAC"}
|
package/dist/cli/usage-json.d.ts
CHANGED
|
@@ -1,19 +1,10 @@
|
|
|
1
1
|
import type { SubscriptionUsage } from '@on-par/factory-core';
|
|
2
|
+
import type { UsageJson } from './json-contract.js';
|
|
3
|
+
/** `factory usage --json` payload (#2270); absent readings are null, never 0 (ADR-0099). */
|
|
4
|
+
export type { UsageJson } from './json-contract.js';
|
|
2
5
|
/** Hours in the trailing usage window `factory usage` reports on. */
|
|
3
6
|
export declare const USAGE_WINDOW_HOURS: number;
|
|
4
|
-
export type UsageJsonSource = '
|
|
5
|
-
/** `factory usage --json` payload (#2270). Absent readings are null, never 0 (ADR-0099).
|
|
6
|
-
* Additive changes only; bump schemaVersion on a breaking change. */
|
|
7
|
-
export interface UsageJson {
|
|
8
|
-
schemaVersion: 1;
|
|
9
|
-
source: UsageJsonSource;
|
|
10
|
-
/** Percent of the window used, 0-100 scale. */
|
|
11
|
-
utilizationPct: number | null;
|
|
12
|
-
resetsAt: string | null;
|
|
13
|
-
windowHours: number;
|
|
14
|
-
/** Trailing-window list-price estimate in USD. */
|
|
15
|
-
estimateUsd: number | null;
|
|
16
|
-
}
|
|
7
|
+
export type UsageJsonSource = UsageJson['source'];
|
|
17
8
|
/** Builds the `factory usage --json` payload: the real subscription reading when present, else the
|
|
18
9
|
* list-price heuristic against `cap`, else an explicit `unavailable` record. Numbers are not rounded. */
|
|
19
10
|
export declare function buildUsageJson(subscription: SubscriptionUsage | null, estimateUsd: number | null, cap: number): UsageJson;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-json.d.ts","sourceRoot":"","sources":["../../src/cli/usage-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"usage-json.d.ts","sourceRoot":"","sources":["../../src/cli/usage-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,4FAA4F;AAC5F,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,QAAiC,CAAC;AAEjE,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAElD;0GAC0G;AAC1G,wBAAgB,cAAc,CAC5B,YAAY,EAAE,iBAAiB,GAAG,IAAI,EACtC,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,GAAG,EAAE,MAAM,GACV,SAAS,CA6BX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-json.js","sourceRoot":"","sources":["../../src/cli/usage-json.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"usage-json.js","sourceRoot":"","sources":["../../src/cli/usage-json.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAMnE,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,SAAS,CAAC;AAIjE;0GAC0G;AAC1G,MAAM,UAAU,cAAc,CAC5B,YAAsC,EACtC,WAA0B,EAC1B,GAAW;IAEX,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO;YACL,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE,cAAc;YACtB,cAAc,EAAE,YAAY,CAAC,mBAAmB;YAChD,QAAQ,EAAE,YAAY,CAAC,gBAAgB;YACvC,WAAW,EAAE,kBAAkB;YAC/B,WAAW;SACZ,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO;YACL,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE,WAAW;YACnB,cAAc,EAAE,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG;YACzC,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,kBAAkB;YAC/B,WAAW;SACZ,CAAC;IACJ,CAAC;IACD,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,aAAa;QACrB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-reap.d.ts","sourceRoot":"","sources":["../../src/cli/worktree-reap.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAa,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEtF,OAAO,EACL,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"worktree-reap.d.ts","sourceRoot":"","sources":["../../src/cli/worktree-reap.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAa,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEtF,OAAO,EACL,KAAK,sBAAsB,EAE3B,KAAK,eAAe,EAGpB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EAItB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,KAAK,KAAK,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAEhD,mGAAmG;AACnG,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,GAAG,gBAAgB,CAAC,CAAC,CAAC;IACtF,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/F;AAED;2FAC2F;AAC3F,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,SAAS,EAChD,QAAQ,EAAE,MAAM,GACf,eAAe,GAAG,SAAS,CAI7B;AAED;uGACuG;AACvG,iBAAe,aAAa,CAAC,CAAC,EAC5B,EAAE,EAAE,WAAW,EACf,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,EACrG,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GACvF,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAA;CAAE,CAAC,CAkBtE;AAED;;mCAEmC;AACnC,wBAAsB,cAAc,CAClC,EAAE,EAAE,WAAW,EACf,IAAI,EAAE,OAAO,gBAAgB,EAC7B,IAAI,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAef;AAED;qFACqF;AACrF,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAkBlH;AAED;;qEAEqE;AACrE,wBAAsB,cAAc,CAClC,EAAE,EAAE,WAAW,EACf,IAAI,EAAE,OAAO,qBAAqB,EAClC,IAAI,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAUf"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// packages/cli/src/cli/worktree-reap.ts — eager lane-worktree reaps (#1007, #3008), moved out of index.ts
|
|
2
2
|
import { resolveSandboxPolicy } from '@on-par/factory-core';
|
|
3
|
-
import { logEvent, resolveEffectiveConfig, withFileLock, withGitLock, worktreeSandboxFor, } from '@on-par/factory-core/internal';
|
|
3
|
+
import { findWorktreeKeep, logEvent, resolveEffectiveConfig, withFileLock, withGitLock, worktreeSandboxFor, } from '@on-par/factory-core/internal';
|
|
4
4
|
/** The repo's current docker-sandbox descriptor for worktree-gc sweeps, or undefined for
|
|
5
5
|
* every other runtime/config state (including a fixture config with no `sandbox` key). */
|
|
6
6
|
export function gcWorktreeSandbox(sandboxCfg, repoRoot) {
|
|
@@ -32,6 +32,12 @@ async function reapUnderLock(rt, [issue, repoRoot, ghRepo, paths, prefixOverride
|
|
|
32
32
|
* gates live in reapLaneWorktree. A reap failure is logged as a warn and never surfaces —
|
|
33
33
|
* parking must always succeed. */
|
|
34
34
|
export async function reapParkedLane(rt, reap, args) {
|
|
35
|
+
const [issue, , , paths] = args;
|
|
36
|
+
const keep = findWorktreeKeep(paths.worktreeKeeps, issue, (type, msg) => logEvent(paths.events, type, issue, msg));
|
|
37
|
+
if (keep) {
|
|
38
|
+
logEvent(paths.events, 'worktree-gc', issue, `kept ${keep.path} — kept (${keep.reason}); not reaping the parked lane's worktree or branch`);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
35
41
|
await reapUnderLock(rt, args, 'parked-lane worktree reap failed', (worktreePath, opts) => reap(args[1], worktreePath, opts));
|
|
36
42
|
}
|
|
37
43
|
/** The one run-output line for a PR-less ship's reap: where the worktree is and why it was kept
|