@on-par/factory-cli 0.9.0 → 0.9.1

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.
@@ -6,7 +6,9 @@ import type { CiOutcome, GithubQueue, QueueClaim, QueueIssue, QueuePreflightDeci
6
6
  import { migrateRepoConfigToYaml, cleanupWorktree, createLocalSmallDryRun, findUnmergedGreenPrs, formatGcReport, gitFetch, listMicroVms, listOrphanContainers, logEvent, readCosts, reapOrphanContainers, reapOrphanMicroVm, releaseStaleClaims, setupWorktree, sweepWorktrees, watchChecks, withRunLock } from '@on-par/factory-core/internal';
7
7
  import { type QueueReader, runTui } from '@on-par/factory-tui';
8
8
  import { type DaemonCtlDeps } from './daemon.js';
9
+ import { type SelfUpdateDeps } from './self-update.js';
9
10
  import { type FeedbackDeps } from './feedback.js';
11
+ import { type BaseHoldDecision } from './base-hold.js';
10
12
  type ConfigLoaderKey = 'loadModelsConfig' | 'loadRoutesConfig' | 'loadFactoryConfigForRepo' | 'loadRepoConfig' | 'resolveTimeouts' | 'resolveSkipCI' | 'getConstitutionsDir' | 'resolveEffectiveModelPins';
11
13
  type GitOpKey = 'setupWorktree' | 'cleanupWorktree' | 'gitFetch';
12
14
  type InternalOpKey = 'watchChecks' | 'createLocalSmallDryRun' | 'readCosts' | 'sweepWorktrees' | 'releaseStaleClaims' | 'findUnmergedGreenPrs' | 'listOrphanContainers' | 'reapOrphanContainers' | 'listMicroVms' | 'reapOrphanMicroVm' | 'formatGcReport';
@@ -212,7 +214,7 @@ export declare function shipIssue(issueNum: number, opts: {
212
214
  localOnly?: LocalOnlyPolicy;
213
215
  /** Benchmark artifact directory (#509) — only set for local-only runs. */
214
216
  artifactsDir?: string;
215
- }, deps?: Pick<CliDeps, 'octokit' | 'planPhase' | 'buildPhase' | 'checkPhase' | 'shipPhase' | ConfigLoaderKey | GitOpKey | ShellOpKey | CoreOpKey>): Promise<string>;
217
+ }, deps?: Pick<CliDeps, 'octokit' | 'planPhase' | 'buildPhase' | 'checkPhase' | 'shipPhase' | 'checkBaseHealth' | ConfigLoaderKey | GitOpKey | ShellOpKey | CoreOpKey>): Promise<string>;
216
218
  export interface LaneGcDeps {
217
219
  loadConfig?: (configPath: string) => Pick<FactoryConfig, 'worktree' | 'sandbox'>;
218
220
  sweep?: typeof sweepWorktrees;
@@ -354,6 +356,9 @@ type RunLaneDeps = {
354
356
  /** Number of issues still claimable on this lane's remote queue (#1222). Absent for
355
357
  * static local lanes, whose pending list is the whole truth. */
356
358
  countRemaining?: () => Promise<number>;
359
+ /** Base-hold claim gate (#2349): consulted before every remote claim; 'hold' stops the lane
360
+ * without claiming. Absent = always claim (local lanes, injected-deps callers, tests). */
361
+ baseHoldGate?: () => Promise<BaseHoldDecision>;
357
362
  };
358
363
  export interface PlannedLane {
359
364
  lane: string;
@@ -451,6 +456,12 @@ export declare class CiFailedError extends Error {
451
456
  * exactly like "we know it's red": never merge. */
452
457
  export declare class CiUnverifiedError extends CiFailedError {
453
458
  }
459
+ /** Thrown when the one infra rerun (#2365) also failed for infrastructure reasons on the same head SHA (#2366).
460
+ * A CiFailedError subclass so every guard still leaves the PR open and unmerged, but it parks as
461
+ * 'ci-infra', which the ADR-0155 steward skips. */
462
+ export declare class CiInfraError extends CiFailedError {
463
+ readonly parkReason: ParkReason;
464
+ }
454
465
  /** True when GitHub refused a SHA-pinned merge because the PR head moved past the verified
455
466
  * commit (REST 409, or gh's "Head branch was modified"). Retrying as-is can never succeed. */
456
467
  export declare function isHeadModifiedMergeError(err: unknown): boolean;
@@ -494,6 +505,9 @@ export declare function landOpenPullRequest(opts: {
494
505
  skipCI?: boolean;
495
506
  adminMerge?: boolean;
496
507
  watch?: (opts: WatchChecksOptions) => Promise<CiOutcome>;
508
+ rerun?: (argv: readonly string[]) => Promise<{
509
+ ok: boolean;
510
+ }>;
497
511
  withLock?: LandLock;
498
512
  /** Materializes an adopted branch only after its locked state re-read confirms it needs rebasing. */
499
513
  ensureWorktree?: () => Promise<void>;
@@ -598,6 +612,8 @@ export interface CliDeps {
598
612
  execSync?: ShellExecSync;
599
613
  /** Passed to the `factory daemon start|stop|status|logs` wrappers. */
600
614
  daemon?: DaemonCtlDeps;
615
+ /** Passed to `factory self-update --check` (registry fetch, install detection, stdout). */
616
+ selfUpdate?: SelfUpdateDeps;
601
617
  /** Replaces the TUI entry point used by `factory tui`. */
602
618
  runTui?: typeof runTui;
603
619
  /** Builds the GitHub client for every CLI GitHub call (shipIssue, land, queue, triage, …). Defaults to createFactoryOctokit with the resolved token. */
@@ -607,6 +623,8 @@ export interface CliDeps {
607
623
  buildPhase?: RunPorts['buildPhase'];
608
624
  checkPhase?: RunPorts['checkPhase'];
609
625
  shipPhase?: RunPorts['shipPhase'];
626
+ /** Pre-PLAN base health check (#2339) forwarded into RunPorts by shipIssue. Defaults to the factory-core checkBaseHealth. */
627
+ checkBaseHealth?: RunPorts['checkBaseHealth'];
610
628
  /** Config loaders and resolvers. Each defaults to the factory-core export of the same name. */
611
629
  loadModelsConfig?: typeof loadModelsConfig;
612
630
  loadRoutesConfig?: typeof loadRoutesConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -5,16 +5,17 @@ import { randomUUID } from 'node:crypto';
5
5
  import { appendFileSync, existsSync, mkdirSync, readFileSync, renameSync, rmSync, unlinkSync, writeFileSync, } from 'node:fs';
6
6
  import { createRequire } from 'node:module';
7
7
  import { arch, hostname as osHostname, release, platform, userInfo } from 'node:os';
8
- import { basename, dirname, relative, resolve } from 'node:path';
8
+ import { basename, dirname, join, relative, resolve } from 'node:path';
9
9
  import { promisify, styleText } from 'node:util';
10
10
  import { BRANCH_PREFIX_MATCH_OPTION_DESCRIPTION, BRANCH_PREFIX_OPTION_DESCRIPTION, INVALID_BRANCH_PREFIX_MESSAGE, resolveBranchPrefixOption, } from './branch-prefix.js';
11
- import { acquirePortLease, aggregateCosts, appendKpiHistoryLine, applyRepoConfig, buildPhase, checkPhase, clearProxyState, closedWorkSkipReason, computeHealthKpis, ConstitutionLoader, createDefaultWorkSourceRegistry, createFileApprovalGate, createLogger, createLaneProxy, defaultFindPortListeners, describeEffectiveConfig, detectPostMergeDefects, diagnoseModels, drainSteering, estimateTrailingSpend, fetchDefectSources, fetchHumanEventSources, fetchSubscriptionUsage, formatKpiLines, formatUsageReport, getConstitutionsDir, getFactoryPaths, GITHUB_ISSUE_SOURCE, hasUnresolvedPark, InvalidArtifactsDirError, InvalidWorkRequestInputError, InvalidWorkspaceError, inspectPortLeases, isCommandAvailable, isProxyRunning, kpisToHistoryRecord, laneBaseUrl, laneEnv, LaneFileGuard, laneHostLabel, listQueuedSteering, loadFactoryConfigForRepo, loadModelsConfig, loadRepoConfig, loadRoutesConfig, LOCAL_BRIEF_SOURCE, localOnlyWorkspace, joinClassifierOutcomes, mergeClassifierOutcomes, parseClassifierOutcomes, summarizeClassifierOutcomes, formatClassifierReport, mergedPrRefs, ModelRegistry, ModelRouter, parkReasonFor, parseKpiHistory, parseQueue, partitionLocalQueueByActivity, phaseSnapshotFile, planPhase, provisionLaneContainer, ProviderBreaker, readEvents, readPortLeases, readQueue, readUsage, reapOrphanProcesses, reapStalePortLeases, reconstructHumanEvents, recordLeasePgid, releasePortLease, renderKpiReport, renderKpiTrend, resolveAutoFailover, resolveCodexDisabled, resolveDefectWindowDays, resolveBuildPublish, resolveSizeGateMode, parseSizeGateMode, parseMaxSlices, resolveSizeGateMaxSlices, SIZE_GATE_MODES, resolveDesignRegressionBlock, resolveEffectiveModelPins, resolveEfficiencyPolicy, resolveLaneBreakerThreshold, resolveEnvironmentPorts, resolveEnvironmentProxy, resolveArtifactsDir, resolveIngestConfig, resolveLocalOnlyPolicy, resolveMergePolicy, resolvePlanApproval, resolveProcessGroupGraceMs, resolveSandboxPolicy, resolveSkipCI, resolveTimeouts, resolveUsageCap, resolveWatchdogPolicy, ReworkHistory, rewriteQueueForDecomposition, runAutoIngest, runIssue, shipPhase, summarizeEvent, formatCostTotal, touchLastEvent, touchRunActivity, validateQueue, watchUsage, worktreeWorkspace, writeBenchmarkArtifacts, writeLocalRunReport, writePhaseSnapshot, writeProxyState, } from '@on-par/factory-core';
12
- import { acquirePidFile, currentSlice, egressSummaryMessage, findSlicePlanComment, upsertSlicePlanComment, withSliceState, DEFAULT_GARDEN_MAX_CLUSTERS, DEFAULT_GARDEN_SINCE, capGardenClusters, clusterGarden, dedupGardenClusters, filterGardenOnlyNew, filterGardenWindow, markGardenTrackingUnknown, parseGardenDuration, readHarvestEvents, renderGardenJson, renderGardenReport, formatWorktreeLocation, laneWorktreePath, resolveWorktreeRoot, migrateRepoConfigToYaml, REPO_CONFIG_YAML_HEADER, branchFor, claudeConfigDirOverride, claudeKeychainService, cleanupWorktree, createDaemonLogSink, factoryBranchIssue, factoryBranchPrefixes, getIssueTitle, LEGACY_BRANCH_PREFIX, createDockerEngine, createFactorydServer, createRunRuntime, createShipExecutor, createGithubQueue, createLocalSmallDryRun, createOctokitFilingClient, createOctokitGreenPrClient, createOctokitQueueClient, daemonRuntimePaths, DEFAULT_FACTORYD_PORT, ensureDir, FACTORY_RUNTIME_CONFIG_KEYS, findUnmergedGreenPrs, formatGcReport, gitFetch, isAutoMergeBlocked, listMicroVms, listOrphanContainers, logCost, logEvent, microVmName, planQueueMigration, readCosts, readGithubQueueSnapshot, reapLaneWorktree, reapOrphanContainers, reapOrphanMicroVm, releaseRuntimeFiles, releaseStaleClaims, resolveBranchPrefix, resolveEffectiveConfig, worktreeSandboxFor, resolveExperimental, resolveFilingPolicy, resolveLocalOnly, resolvePrClassifierPolicy, resolveReviewFloorRules, RunLockHeldError, runOvernightQueue, findOpenPR, setupWorktree, shellEscape, shouldProxyEgress, slugify, startEgressProxy, sweepWorktrees, watchChecks, withAdmissionGuard, withFileLock, withGitLock, withRunLock, wrapCommandInSandbox, writePortFile, } from '@on-par/factory-core/internal';
11
+ import { acquirePortLease, aggregateCosts, appendKpiHistoryLine, applyRepoConfig, buildPhase, checkPhase, clearProxyState, closedWorkSkipReason, computeHealthKpis, ConstitutionLoader, createDefaultWorkSourceRegistry, createFileApprovalGate, createLogger, createLaneProxy, defaultFindPortListeners, describeEffectiveConfig, detectPostMergeDefects, diagnoseModels, drainSteering, estimateTrailingSpend, fetchDefectSources, fetchHumanEventSources, fetchSubscriptionUsage, formatKpiLines, formatUsageReport, getConstitutionsDir, getFactoryPaths, GITHUB_ISSUE_SOURCE, hasUnresolvedPark, InvalidArtifactsDirError, InvalidWorkRequestInputError, InvalidWorkspaceError, inspectPortLeases, isCommandAvailable, isProxyRunning, kpiBranchPrefixes, kpisToHistoryRecord, laneBaseUrl, laneEnv, LaneFileGuard, laneHostLabel, listQueuedSteering, loadFactoryConfigForRepo, loadModelsConfig, loadRepoConfig, loadRoutesConfig, LOCAL_BRIEF_SOURCE, localOnlyWorkspace, joinClassifierOutcomes, mergeClassifierOutcomes, parseClassifierOutcomes, summarizeClassifierOutcomes, formatClassifierReport, mergedPrRefs, ModelRegistry, ModelRouter, parkReasonFor, parseKpiHistory, parseQueue, partitionLocalQueueByActivity, phaseSnapshotFile, planPhase, provisionLaneContainer, ProviderBreaker, readEvents, readPortLeases, readQueue, readUsage, reapOrphanProcesses, reapStalePortLeases, reconstructKpiEvents, recordLeasePgid, releasePortLease, renderKpiReport, renderKpiTrend, resolveAutoFailover, resolveCodexDisabled, resolveDefectWindowDays, resolveBuildPublish, resolveSizeGateMode, parseSizeGateMode, parseMaxSlices, resolveSizeGateMaxSlices, SIZE_GATE_MODES, resolveDesignRegressionBlock, resolveEffectiveModelPins, resolveEfficiencyPolicy, resolveLaneBreakerThreshold, resolveEnvironmentPorts, resolveEnvironmentProxy, resolveArtifactsDir, resolveIngestConfig, resolveLocalOnlyPolicy, resolveMergePolicy, resolvePlanApproval, resolveProcessGroupGraceMs, resolveSandboxPolicy, resolveSkipCI, resolveTimeouts, resolveUsageCap, resolveWatchdogPolicy, ReworkHistory, rewriteQueueForDecomposition, runAutoIngest, runIssue, shipPhase, summarizeEvent, formatCostTotal, touchLastEvent, touchRunActivity, validateQueue, watchUsage, worktreeWorkspace, writeBenchmarkArtifacts, writeLocalRunReport, writePhaseSnapshot, writeProxyState, } from '@on-par/factory-core';
12
+ import { acquirePidFile, createPlanReuseStore, checkBaseHealth, currentSlice, egressSummaryMessage, findSlicePlanComment, upsertSlicePlanComment, withSliceState, DEFAULT_GARDEN_MAX_CLUSTERS, DEFAULT_GARDEN_SINCE, capGardenClusters, clusterGarden, dedupGardenClusters, filterGardenOnlyNew, filterGardenWindow, markGardenTrackingUnknown, parseGardenDuration, readHarvestEvents, renderGardenJson, renderGardenReport, formatWorktreeLocation, laneWorktreePath, resolveWorktreeRoot, migrateRepoConfigToYaml, REPO_CONFIG_YAML_HEADER, branchFor, claudeConfigDirOverride, claudeKeychainService, cleanupWorktree, createDaemonLogSink, factoryBranchIssue, factoryBranchPrefixes, getIssueTitle, LEGACY_BRANCH_PREFIX, createDockerEngine, createFactorydServer, createRunRuntime, createShipExecutor, createGithubQueue, createLocalSmallDryRun, createOctokitFilingClient, createOctokitGreenPrClient, createOctokitQueueClient, daemonRuntimePaths, DEFAULT_FACTORYD_PORT, defaultRegistryPath, ensureDir, FACTORY_RUNTIME_CONFIG_KEYS, findUnmergedGreenPrs, formatGcReport, gitFetch, isAutoMergeBlocked, listMicroVms, listOrphanContainers, logCost, logEvent, microVmName, planQueueMigration, readCosts, readGithubQueueSnapshot, reapLaneWorktree, reapOrphanContainers, reapOrphanMicroVm, releaseRuntimeFiles, releaseStaleClaims, resolveBranchPrefix, resolveEffectiveConfig, worktreeSandboxFor, resolveExperimental, resolveFilingPolicy, resolveLocalOnly, resolvePrClassifierPolicy, resolveReviewFloorRules, RunLockHeldError, runOvernightQueue, findOpenPR, setupWorktree, shellEscape, shouldProxyEgress, slugify, startEgressProxy, sweepWorktrees, watchChecks, watchChecksWithInfraRerun, withAdmissionGuard, withFileLock, withGitLock, withRunLock, wrapCommandInSandbox, writePortFile, } from '@on-par/factory-core/internal';
13
13
  import { runTui } from '@on-par/factory-tui';
14
14
  import { Command } from 'commander';
15
15
  import { admissionStateReaderFor, runQueueReconcile } from './admission.js';
16
16
  import { cmdClassifierBacktest, ClassifierBacktestInputError, } from './classifier-backtest.js';
17
17
  import { runQueueClear } from './queue-clear.js';
18
+ import { applyStateRootOption } from './state-root.js';
18
19
  import { buildCostJson } from './cost-json.js';
19
20
  import { buildQueueAddJson } from './queue-add-json.js';
20
21
  import { buildQueueListJson } from './queue-list.js';
@@ -22,10 +23,12 @@ import { runUnpark, UnparkError } from './unpark.js';
22
23
  import { buildRunsJson, parseRunsLimit } from './runs.js';
23
24
  import { buildRunDiffstatJson, NoRunError, parseDiffstatIssue } from './runs-diffstat.js';
24
25
  import { buildStatusJson } from './status-json.js';
26
+ import { buildStatusUpdateJson, formatUpdateStartupLine, formatUpdateStatusLine, initialUpdateState, readUpdateState, updateStatePath, writeUpdateState, } from './update-state.js';
25
27
  import { buildStopResumeJson } from './stop-resume-json.js';
26
28
  import { buildUsageJson } from './usage-json.js';
27
29
  import { parseResetIssues, runReset } from './reset.js';
28
- import { cmdDaemonLogs, cmdDaemonStart, cmdDaemonStatus, cmdDaemonStop, DaemonCtlError, resolveFactorydConfig, } from './daemon.js';
30
+ import { cmdDaemonLogs, cmdDaemonStart, cmdDaemonStatus, cmdDaemonStop, DaemonCtlError, detectInstall, loadDaemonFileConfig, resolveFactorydConfig, } from './daemon.js';
31
+ import { cmdSelfUpdateCheck } from './self-update.js';
29
32
  import { analyzeEventLog, claudeKeychainCheck, doctorFailed, eventLogCheck, formatClaimReconcileReport, formatContainerReconcileReport, formatDoctorChecks, formatMicroVmReconcileReport, formatReconcileReport, formatWorktreeReconcileReport, leaseChecks, keychainPreflightError, orphanContainerChecks, orphanMicroVmChecks, runDoctorChecks, sandboxClaudeAuthChecks, unmergedGreenPrChecks, } from './doctor.js';
30
33
  import { DOCS_URL, formatOverview, missingClaudeCliMessage, missingTokenMessage, notInitializedMessage, } from './first-run.js';
31
34
  import { cmdHostedSmoke } from './hosted.js';
@@ -40,6 +43,7 @@ import { mergeScopeNotice } from './merge-scope.js';
40
43
  import { createFactoryOctokit, formatDeprecation } from './octokit.js';
41
44
  import { DeepCheckError, createDeepModelRunner, runIssueCheck } from './ready-check.js';
42
45
  import { childRunSucceeded, formatChildRunSummary, runChildrenInOrder } from './run-children.js';
46
+ import { createBaseHoldGate, formatBaseHoldCleared, formatBaseHoldStatus, readBaseHold, writeBaseHold, } from './base-hold.js';
43
47
  import { readRunFlagOverrides, writeRunFlagOverrides } from './run-flags.js';
44
48
  import { distFreshnessProbe, runStalenessGuard } from './staleness.js';
45
49
  import { readStopFileStatus, stopSentinelCheck, stopSentinelRunSkipMessage } from './stop-sentinel.js';
@@ -809,10 +813,24 @@ function readTextFileOrEmpty(path) {
809
813
  throw err;
810
814
  }
811
815
  }
812
- async function appendKpiSnapshot(paths, repoRoot, kpis) {
816
+ /** Local events plus human-* events reconstructed from GitHub; warns and marks the result partial when the fetch fails (#2342). */
817
+ async function reconstructHumanEventsForKpis(events, branchPrefix) {
818
+ let owner = '';
819
+ let repoName = '';
820
+ const recon = await reconstructKpiEvents(events, async (issues) => {
821
+ [owner, repoName] = (await getGitHubRepo()).split('/');
822
+ return fetchHumanEventSources(getOctokit(), owner, repoName, issues, kpiBranchPrefixes(branchPrefix));
823
+ });
824
+ if (recon.partial) {
825
+ console.error(styleText('yellow', `factory: GitHub human-event reconstruction failed (${recon.error}) — KPI snapshot marked partial (local log only)`));
826
+ }
827
+ return { ...recon, owner, repoName };
828
+ }
829
+ async function appendKpiSnapshot(paths, repoRoot, kpis, opts = {}) {
813
830
  const record = kpisToHistoryRecord(kpis, new Date().toISOString().slice(0, 10), {
814
831
  commitSha: await currentCommitSha(),
815
832
  models: resolvedModelTiers(repoRoot, paths.root),
833
+ partial: opts.partial,
816
834
  });
817
835
  const updated = appendKpiHistoryLine(readTextFileOrEmpty(paths.kpiHistory), record);
818
836
  ensureDir(paths.state);
@@ -938,20 +956,10 @@ async function cmdKpis(opts = {}) {
938
956
  const paths = getFactoryPaths(repoRoot);
939
957
  const events = existsSync(paths.events) ? readEvents(paths.events) : [];
940
958
  const costs = existsSync(paths.costs) ? internalOps.readCosts(paths.costs) : [];
941
- let allEvents = events;
942
- let prSources = [];
943
- let owner = '';
944
- let repoName = '';
945
- try {
946
- const ghRepo = await getGitHubRepo();
947
- [owner, repoName] = ghRepo.split('/');
948
- const issues = new Set(events.map((e) => e.issue).filter((i) => /^\d+$/.test(i)));
949
- prSources = await fetchHumanEventSources(getOctokit(), owner, repoName, issues, branchPrefix);
950
- allEvents = [...events, ...reconstructHumanEvents(prSources, events)];
951
- }
952
- catch (err) {
953
- console.error(styleText('yellow', `factory: GitHub human-event reconstruction unavailable (${err?.message ?? err}) — KPIs use the local log only`));
954
- }
959
+ const recon = await reconstructHumanEventsForKpis(events, branchPrefix);
960
+ let allEvents = recon.events;
961
+ const prSources = recon.sources;
962
+ const { owner, repoName } = recon;
955
963
  if (prSources.length > 0) {
956
964
  try {
957
965
  const windowDays = resolveDefectWindowDays(configLoaders.loadFactoryConfigForRepo(paths.config));
@@ -973,7 +981,7 @@ async function cmdKpis(opts = {}) {
973
981
  const kpis = computeHealthKpis(allEvents, costs);
974
982
  let history;
975
983
  try {
976
- ({ history } = await appendKpiSnapshot(paths, repoRoot, kpis));
984
+ ({ history } = await appendKpiSnapshot(paths, repoRoot, kpis, { partial: recon.partial }));
977
985
  }
978
986
  catch (err) {
979
987
  console.error(styleText('yellow', `factory: KPI snapshot failed (${err?.message ?? err}) — showing the report without persisting a new snapshot`));
@@ -1085,6 +1093,7 @@ export async function cmdStatus(opts = {}) {
1085
1093
  stop: existsSync(paths.stop),
1086
1094
  breakers: await new ProviderBreaker(paths.breaker).list(),
1087
1095
  active,
1096
+ update: buildStatusUpdateJson(readUpdateState(updateStatePath(daemonRuntimePaths().dir))),
1088
1097
  now: Date.now(),
1089
1098
  })));
1090
1099
  return;
@@ -1128,6 +1137,12 @@ export async function cmdStatus(opts = {}) {
1128
1137
  else {
1129
1138
  console.log(' (no queue file)');
1130
1139
  }
1140
+ const baseHold = readBaseHold(paths.baseHold);
1141
+ if (baseHold !== null && baseHold.repo === ghRepo) {
1142
+ console.log(styleText('bold', '\n== Base hold =='));
1143
+ for (const line of formatBaseHoldStatus(baseHold))
1144
+ console.log(line);
1145
+ }
1131
1146
  console.log(styleText('bold', '\n== Queue =='));
1132
1147
  if (!hasGitHubToken()) {
1133
1148
  console.log(' (no GitHub token — run `gh auth login`)');
@@ -1154,6 +1169,8 @@ export async function cmdStatus(opts = {}) {
1154
1169
  }
1155
1170
  }
1156
1171
  console.log(styleText('bold', '\n== Health =='));
1172
+ const update = buildStatusUpdateJson(readUpdateState(updateStatePath(daemonRuntimePaths().dir)));
1173
+ console.log(` ${formatUpdateStatusLine(update)}`);
1157
1174
  if (opts.kpis) {
1158
1175
  console.log(styleText('bold', '\n Effective config:'));
1159
1176
  for (const line of describeEffectiveConfig({
@@ -1504,6 +1521,7 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
1504
1521
  'held',
1505
1522
  'conflict',
1506
1523
  'ci-failed',
1524
+ 'ci-infra',
1507
1525
  'timeout',
1508
1526
  ]);
1509
1527
  let terminalMessage;
@@ -1678,10 +1696,12 @@ export async function shipIssue(issueNum, opts, ctx, deps = {}) {
1678
1696
  resolveBaseUrl,
1679
1697
  getIssueSpend: () => issueSpend,
1680
1698
  breaker,
1699
+ planReuse: ctx?.localOnly ? undefined : createPlanReuseStore(specPath),
1681
1700
  planPhase: phases.planPhase,
1682
1701
  buildPhase: phases.buildPhase,
1683
1702
  checkPhase: phases.checkPhase,
1684
1703
  shipPhase: phases.shipPhase,
1704
+ checkBaseHealth: deps.checkBaseHealth ?? checkBaseHealth,
1685
1705
  resolveConstitution: () =>
1686
1706
  // Resolved once here — runIssue calls this exactly once and reuses the value for
1687
1707
  // every phase, so the build worker can never author the standards it is graded by.
@@ -2915,7 +2935,9 @@ async function cmdProxy() {
2915
2935
  async function cmdFactoryd(opts) {
2916
2936
  let config;
2917
2937
  try {
2918
- config = resolveFactorydConfig(opts);
2938
+ const registryFile = opts.registry ?? defaultRegistryPath();
2939
+ const fileConfig = loadDaemonFileConfig(join(dirname(registryFile), 'daemon.json'));
2940
+ config = resolveFactorydConfig({ ...opts, registry: registryFile }, { install: detectInstall(), fileConfig });
2919
2941
  }
2920
2942
  catch (err) {
2921
2943
  if (err instanceof DaemonCtlError)
@@ -2935,6 +2957,17 @@ async function cmdFactoryd(opts) {
2935
2957
  };
2936
2958
  if (acquired.stalePid !== null)
2937
2959
  log(`removed stale pid file (pid ${acquired.stalePid})`);
2960
+ for (const notice of config.notices)
2961
+ log(notice);
2962
+ const updateFile = updateStatePath(runtime.dir);
2963
+ const updateState = initialUpdateState(config, readUpdateState(updateFile));
2964
+ try {
2965
+ writeUpdateState(updateFile, updateState);
2966
+ }
2967
+ catch (err) {
2968
+ log(`could not write ${updateFile}: ${errorDetail(err)}`);
2969
+ }
2970
+ log(formatUpdateStartupLine(updateState));
2938
2971
  const runRuntime = await createRunRuntime({
2939
2972
  registryFile,
2940
2973
  allowParallel: true,
@@ -2946,6 +2979,8 @@ async function cmdFactoryd(opts) {
2946
2979
  const banner = [
2947
2980
  `factoryd: listening on 127.0.0.1:${boundPort}`,
2948
2981
  ` registry: ${registryFile}`,
2982
+ ` update mode: ${config.autoUpdate.mode} (channel ${config.autoUpdate.channel ?? 'none'}, install ${config.install.kind})`,
2983
+ ` update state: ${updateFile}`,
2949
2984
  ` pid file: ${runtime.pidFile} (pid ${process.pid})`,
2950
2985
  ` port file: ${runtime.portFile}`,
2951
2986
  ` log file: ${runtime.logFile}`,
@@ -3083,6 +3118,20 @@ async function cmdRun(opts = {}) {
3083
3118
  pids.push(runLane(planned.lane, planned.issues, repoRoot, ghRepo, paths, {
3084
3119
  ...planned.deps,
3085
3120
  laneBreakerThreshold,
3121
+ baseHoldGate: opts.localQueue === true
3122
+ ? undefined
3123
+ : createBaseHoldGate({
3124
+ file: paths.baseHold,
3125
+ repo: ghRepo,
3126
+ onCleared: (c) => logEvent(paths.events, 'base-hold-cleared', planned.lane, formatBaseHoldCleared(c), {
3127
+ lane: planned.lane,
3128
+ }),
3129
+ git: (cmd) => shellOps.exec(cmd, { cwd: repoRoot }).then((r) => r.stdout),
3130
+ listCheckRuns: (ref) => {
3131
+ const [owner, repoName] = ghRepo.split('/');
3132
+ return createOctokitGreenPrClient(getOctokit()).listCheckRuns({ owner, repo: repoName, ref });
3133
+ },
3134
+ }),
3086
3135
  commentIssue: async (issue, body) => {
3087
3136
  const [owner, repoName] = ghRepo.split('/');
3088
3137
  await getOctokit().rest.issues.createComment({ owner, repo: repoName, issue_number: issue, body });
@@ -3108,8 +3157,12 @@ async function cmdRun(opts = {}) {
3108
3157
  try {
3109
3158
  const events = existsSync(paths.events) ? readEvents(paths.events) : [];
3110
3159
  const costs = existsSync(paths.costs) ? internalOps.readCosts(paths.costs) : [];
3111
- const kpis = computeHealthKpis(events, costs);
3112
- await appendKpiSnapshot(paths, repoRoot, kpis);
3160
+ const recon = await reconstructHumanEventsForKpis(events, branchPrefix);
3161
+ const kpis = computeHealthKpis(recon.events, costs);
3162
+ await appendKpiSnapshot(paths, repoRoot, kpis, { partial: recon.partial });
3163
+ if (recon.partial) {
3164
+ logEvent(paths.events, 'warn', 'all', `kpi snapshot partial: GitHub human-event reconstruction failed: ${recon.error}`);
3165
+ }
3113
3166
  logEvent(paths.events, 'kpi-snapshot', 'all', `KPI snapshot appended to ${paths.kpiHistory}`);
3114
3167
  }
3115
3168
  catch (err) {
@@ -3388,7 +3441,7 @@ export function renderLanePausedComment(payload) {
3388
3441
  ].join('\n\n');
3389
3442
  }
3390
3443
  export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {}) {
3391
- const { ship = shipIssue, waitMerge = waitForMerge, pathExists = existsSync, emitEvent = logEvent, claimNext = async () => null, releaseIssue = async () => { }, heartbeat, reapWorktree = async () => { }, sweepFinished = async () => { }, countRemaining, laneBreakerThreshold = 0, commentIssue = async () => { }, } = deps;
3444
+ const { ship = shipIssue, waitMerge = waitForMerge, pathExists = existsSync, emitEvent = logEvent, claimNext = async () => null, releaseIssue = async () => { }, heartbeat, reapWorktree = async () => { }, sweepFinished = async () => { }, countRemaining, baseHoldGate, laneBreakerThreshold = 0, commentIssue = async () => { }, } = deps;
3392
3445
  let streak = null;
3393
3446
  let merged = 0;
3394
3447
  let awaitingReview = 0;
@@ -3420,6 +3473,13 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
3420
3473
  };
3421
3474
  for (let i = 0;; i++) {
3422
3475
  if (i >= pending.length) {
3476
+ // A persisted base hold on the unchanged origin/main SHA means the base is still broken
3477
+ // (#2349): claiming would just cycle an issue again, so stop this lane without claiming.
3478
+ const gate = baseHoldGate ? await baseHoldGate().catch(() => ({ kind: 'claim' })) : null;
3479
+ if (gate?.kind === 'hold') {
3480
+ emitEvent(paths.events, 'warn', lane, `lane '${lane}' not claiming: base hold on ${gate.hold.baseSha.slice(0, 8)} (${gate.hold.failingChecks.join(', ')}) — origin/main unchanged and its CI is not green`, { lane });
3481
+ return;
3482
+ }
3423
3483
  const claimed = await claimNext();
3424
3484
  if (claimed === null)
3425
3485
  break;
@@ -3503,6 +3563,17 @@ export async function runLane(lane, issues, repoRoot, ghRepo, paths, deps = {})
3503
3563
  streak = null;
3504
3564
  await reapWorktree(issue).catch(() => { });
3505
3565
  await settle(issue, 'queued');
3566
+ // Persist the hold so a restarted supervisor remembers the broken base (#2348);
3567
+ // best-effort, never allowed to change lane flow.
3568
+ try {
3569
+ writeBaseHold(paths.baseHold, {
3570
+ repo: ghRepo,
3571
+ baseSha: err.baseSha,
3572
+ failingChecks: err.failingChecks,
3573
+ since: new Date().toISOString(),
3574
+ });
3575
+ }
3576
+ catch { }
3506
3577
  const payload = {
3507
3578
  lane,
3508
3579
  signature: err.failureSignature ?? '',
@@ -3697,6 +3768,12 @@ export class CiFailedError extends Error {
3697
3768
  * exactly like "we know it's red": never merge. */
3698
3769
  export class CiUnverifiedError extends CiFailedError {
3699
3770
  }
3771
+ /** Thrown when the one infra rerun (#2365) also failed for infrastructure reasons on the same head SHA (#2366).
3772
+ * A CiFailedError subclass so every guard still leaves the PR open and unmerged, but it parks as
3773
+ * 'ci-infra', which the ADR-0155 steward skips. */
3774
+ export class CiInfraError extends CiFailedError {
3775
+ parkReason = 'ci-infra';
3776
+ }
3700
3777
  const MAX_MERGE_ATTEMPTS = 5;
3701
3778
  const MERGE_RETRY_BASE_MS = 5_000;
3702
3779
  /** True when GitHub refused a SHA-pinned merge because the PR head moved past the verified
@@ -3753,7 +3830,7 @@ export async function rebaseDirtyPullRequest(opts) {
3753
3830
  }
3754
3831
  }
3755
3832
  export async function landOpenPullRequest(opts) {
3756
- const { octokit, owner, repoName, issue, branch, worktree, prNumber, log, run, pathExists, sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)), skipCI = false, adminMerge = process.env.FACTORY_MERGE_ADMIN === '1', watch = internalOps.watchChecks, withLock = (fn) => fn(), ensureWorktree, } = opts;
3833
+ const { octokit, owner, repoName, issue, branch, worktree, prNumber, log, run, pathExists, sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)), skipCI = false, adminMerge = process.env.FACTORY_MERGE_ADMIN === '1', watch = internalOps.watchChecks, rerun, withLock = (fn) => fn(), ensureWorktree, } = opts;
3757
3834
  /** Watches CI on the PR's current head commit and returns that SHA once it is green, so the
3758
3835
  * merge can be pinned to exactly the commit CI verified. */
3759
3836
  const watchCi = async () => {
@@ -3762,7 +3839,16 @@ export async function landOpenPullRequest(opts) {
3762
3839
  try {
3763
3840
  const { data: pr } = await octokit.rest.pulls.get({ owner, repo: repoName, pull_number: prNumber });
3764
3841
  headSha = pr.head.sha;
3765
- outcome = await watch({ octokit, owner, repo: repoName, ref: headSha });
3842
+ outcome = await watchChecksWithInfraRerun({
3843
+ octokit,
3844
+ owner,
3845
+ repo: repoName,
3846
+ ref: headSha,
3847
+ watch,
3848
+ rerun,
3849
+ 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`),
3850
+ 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}`),
3851
+ });
3766
3852
  }
3767
3853
  catch (err) {
3768
3854
  const msg = `CI watch for ${branch} failed: ${errorDetail(err)} — refusing to merge without a green verdict`;
@@ -3771,6 +3857,11 @@ export async function landOpenPullRequest(opts) {
3771
3857
  }
3772
3858
  if (outcome === 'success')
3773
3859
  return headSha;
3860
+ if (outcome === 'infra-failure') {
3861
+ const msg = `CI failed again for infrastructure reasons for PR #${prNumber} on ${branch} after one rerun — parked as ci-infra, not merged`;
3862
+ log('ci-infra', msg);
3863
+ throw new CiInfraError(msg, prNumber);
3864
+ }
3774
3865
  if (outcome === 'failure') {
3775
3866
  const msg = `CI failed for PR #${prNumber} on ${branch} — refusing to merge with a failing check`;
3776
3867
  log('ci-failed', msg);
@@ -4374,7 +4465,19 @@ export async function main(argv = process.argv, deps = {}) {
4374
4465
  .description('Multi-agent software factory with boss-worker-checker orchestration')
4375
4466
  .version(getCliVersion())
4376
4467
  .addHelpText('before', PREREQUISITES_TEXT)
4377
- .addHelpText('after', HELP_FOOTER_TEXT);
4468
+ .addHelpText('after', HELP_FOOTER_TEXT)
4469
+ .option('--state-root <path>', 'Keep factory state and config outside the checkout: an absolute path, ~/..., or "auto" (~/.factory/<owner>/<name>); env FACTORY_STATE_ROOT');
4470
+ program.hook('preAction', async () => {
4471
+ const flag = program.opts().stateRoot;
4472
+ if (flag === undefined && !process.env.FACTORY_STATE_ROOT?.trim())
4473
+ return;
4474
+ try {
4475
+ applyStateRootOption(flag, await getRepoRoot());
4476
+ }
4477
+ catch (e) {
4478
+ throw new CliExitError(`factory: ${e.message}`, 2);
4479
+ }
4480
+ });
4378
4481
  program
4379
4482
  .command('init')
4380
4483
  .description('Set up .factory/ in this repo (config, constitution, queue file, .gitignore) and check model reachability')
@@ -4419,7 +4522,7 @@ export async function main(argv = process.argv, deps = {}) {
4419
4522
  .command('status')
4420
4523
  .description('Show active runs, the GitHub queue, provider health, and recent events')
4421
4524
  .option('--kpis', 'Also show the full health KPIs and the effective config')
4422
- .option('--json', 'Print one JSON object (schemaVersion 1): repo, product, stop, breaker, active claims; --kpis is ignored')
4525
+ .option('--json', 'Print one JSON object (schemaVersion 1): repo, product, stop, breaker, active claims, update; --kpis is ignored')
4423
4526
  .action((opts) => cmdStatus(opts));
4424
4527
  program
4425
4528
  .command('runs')
@@ -4696,7 +4799,8 @@ export async function main(argv = process.argv, deps = {}) {
4696
4799
  .description('Run factoryd in the foreground: a localhost-only HTTP API over the repo registry')
4697
4800
  .option('--port <n>', `Port to bind on 127.0.0.1 (default ${DEFAULT_FACTORYD_PORT})`)
4698
4801
  .option('--registry <file>', 'Registry file to serve (default ~/.factory/registry.json)')
4699
- .option('--auto-update', 'Opt in to automatic factoryd self-update (default: off)')
4802
+ .option('--update-mode <mode>', 'Self-update channel: manual, stable (npm latest) or prerelease (npm next) (default: stable on npm installs, manual otherwise)')
4803
+ .option('--auto-update', 'Deprecated: same as --update-mode stable')
4700
4804
  .action((opts) => cmdFactoryd(opts));
4701
4805
  const daemonCtl = (fn) => fn().catch((err) => {
4702
4806
  if (err instanceof DaemonCtlError)
@@ -4722,6 +4826,17 @@ export async function main(argv = process.argv, deps = {}) {
4722
4826
  .option('-f, --follow', 'Keep tailing')
4723
4827
  .option('-n, --lines <n>', 'Lines to print first (default 100)')
4724
4828
  .action((opts) => daemonCtl(() => cmdDaemonLogs(opts, deps.daemon)));
4829
+ program
4830
+ .command('self-update')
4831
+ .description('Check npm for a newer factory release (read-only; nothing is installed)')
4832
+ .option('--check', 'Compare the running version with the npm dist-tag (required)')
4833
+ .option('--json', 'Print one JSON object instead of text')
4834
+ .option('--update-mode <mode>', 'Channel to check: stable (npm latest, default) or prerelease (npm next)')
4835
+ .action(async (opts) => {
4836
+ if (opts.check !== true)
4837
+ throw new CliExitError('factory self-update: only --check is supported', 2);
4838
+ process.exitCode = await daemonCtl(() => cmdSelfUpdateCheck(opts, deps.selfUpdate));
4839
+ });
4725
4840
  const worktreeCmd = program.command('worktree').description('Clean up stale factory worktrees (gc)');
4726
4841
  worktreeCmd
4727
4842
  .command('gc')