@ashlr/hub 3.5.1 → 3.8.0
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/CHANGELOG.md +165 -0
- package/README.md +3 -0
- package/dist/build-identity.json +2 -2
- package/dist/cli/activation.d.ts +41 -0
- package/dist/cli/activation.js +485 -0
- package/dist/cli/activation.js.map +1 -0
- package/dist/core/daemon/cutoff-checkpoint-scheduler.js +7 -0
- package/dist/core/daemon/cutoff-checkpoint-scheduler.js.map +1 -1
- package/dist/core/daemon/loop.d.ts +19 -0
- package/dist/core/daemon/loop.js +235 -5
- package/dist/core/daemon/loop.js.map +1 -1
- package/dist/core/daemon/overnight-status.d.ts +152 -0
- package/dist/core/daemon/overnight-status.js +275 -0
- package/dist/core/daemon/overnight-status.js.map +1 -0
- package/dist/core/daemon/post-merge-halt.d.ts +212 -0
- package/dist/core/daemon/post-merge-halt.js +503 -0
- package/dist/core/daemon/post-merge-halt.js.map +1 -0
- package/dist/core/daemon/run-window.d.ts +218 -0
- package/dist/core/daemon/run-window.js +420 -0
- package/dist/core/daemon/run-window.js.map +1 -0
- package/dist/core/fleet/generated-repair-resolution.d.ts +36 -0
- package/dist/core/fleet/generated-repair-resolution.js +245 -0
- package/dist/core/fleet/generated-repair-resolution.js.map +1 -0
- package/dist/core/local-runtime/llama/port.d.ts +17 -0
- package/dist/core/local-runtime/llama/port.js +47 -0
- package/dist/core/local-runtime/llama/port.js.map +1 -0
- package/dist/core/local-runtime/llama/proxy-host.d.ts +54 -0
- package/dist/core/local-runtime/llama/proxy-host.js +159 -0
- package/dist/core/local-runtime/llama/proxy-host.js.map +1 -0
- package/dist/core/local-runtime/llama/proxy-process.d.ts +148 -0
- package/dist/core/local-runtime/llama/proxy-process.js +250 -0
- package/dist/core/local-runtime/llama/proxy-process.js.map +1 -0
- package/dist/core/local-runtime/llama/proxy-record.d.ts +40 -0
- package/dist/core/local-runtime/llama/proxy-record.js +133 -0
- package/dist/core/local-runtime/llama/proxy-record.js.map +1 -0
- package/dist/core/local-runtime/llama/proxy-supervisor.d.ts +118 -0
- package/dist/core/local-runtime/llama/proxy-supervisor.js +511 -0
- package/dist/core/local-runtime/llama/proxy-supervisor.js.map +1 -0
- package/dist/core/policy/local-only.d.ts +142 -2
- package/dist/core/policy/local-only.js +204 -15
- package/dist/core/policy/local-only.js.map +1 -1
- package/dist/core/run/budget.d.ts +22 -8
- package/dist/core/run/budget.js +80 -12
- package/dist/core/run/budget.js.map +1 -1
- package/dist/core/run/sandboxed-engine.js +3 -3
- package/dist/core/run/sandboxed-engine.js.map +1 -1
- package/dist/core/universe/builtins/preparation/manifest.json +1 -1
- package/dist/core/universe/builtins/preparation/preparation-bridge.mjs +61 -9
- package/dist/core/universe/builtins/preparation/preparation-verification-fixtures.mjs +60 -8
- package/dist/core/verse/session-engine.d.ts +42 -1
- package/dist/core/verse/session-engine.js +79 -2
- package/dist/core/verse/session-engine.js.map +1 -1
- package/dist/core/web/public/next/assets/{App-BbVoUCIi.js → App-BsbJFA2j.js} +2 -2
- package/dist/core/web/public/next/assets/{App-BbVoUCIi.js.map → App-BsbJFA2j.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ApprovalsSection-BW9iVjUa.js → ApprovalsSection-2CCSoBTJ.js} +2 -2
- package/dist/core/web/public/next/assets/{ApprovalsSection-BW9iVjUa.js.map → ApprovalsSection-2CCSoBTJ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{AutonomySection-Cpk_oEhc.css → AutonomySection-CHjxJt2z.css} +1 -1
- package/dist/core/web/public/next/assets/AutonomySection-yeNNUPur.js +2 -0
- package/dist/core/web/public/next/assets/AutonomySection-yeNNUPur.js.map +1 -0
- package/dist/core/web/public/next/assets/ChatSection-BfnLe5dT.css +1 -0
- package/dist/core/web/public/next/assets/ChatSection-DwDDnCZQ.js +80 -0
- package/dist/core/web/public/next/assets/ChatSection-DwDDnCZQ.js.map +1 -0
- package/dist/core/web/public/next/assets/{ConfirmDialog-CXevY3Au.js → ConfirmDialog-C363ty_c.js} +2 -2
- package/dist/core/web/public/next/assets/{ConfirmDialog-CXevY3Au.js.map → ConfirmDialog-C363ty_c.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Dialog-Bn0CgEGz.js → Dialog-nK15L1M0.js} +2 -2
- package/dist/core/web/public/next/assets/{Dialog-Bn0CgEGz.js.map → Dialog-nK15L1M0.js.map} +1 -1
- package/dist/core/web/public/next/assets/{DiffViewer-QKyisN2L.js → DiffViewer-D369eZe8.js} +2 -2
- package/dist/core/web/public/next/assets/{DiffViewer-QKyisN2L.js.map → DiffViewer-D369eZe8.js.map} +1 -1
- package/dist/core/web/public/next/assets/McpSection-D88QlDpG.css +1 -0
- package/dist/core/web/public/next/assets/McpSection-DVgiSYG1.js +2 -0
- package/dist/core/web/public/next/assets/McpSection-DVgiSYG1.js.map +1 -0
- package/dist/core/web/public/next/assets/Meter-CLcr-4wS.css +1 -0
- package/dist/core/web/public/next/assets/Meter-Cmo1pLbk.js +2 -0
- package/dist/core/web/public/next/assets/Meter-Cmo1pLbk.js.map +1 -0
- package/dist/core/web/public/next/assets/{MutationTokenDialog-DbSHPy3w.js → MutationTokenDialog-B9I4PAcp.js} +2 -2
- package/dist/core/web/public/next/assets/{MutationTokenDialog-DbSHPy3w.js.map → MutationTokenDialog-B9I4PAcp.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-C-PCgCzo.js → ResourcePoolConsoleApp-z6tJj3s9.js} +2 -2
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-C-PCgCzo.js.map → ResourcePoolConsoleApp-z6tJj3s9.js.map} +1 -1
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-Dw8ZjmkS.js → RouteErrorBoundary-OSajL45F.js} +2 -2
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-Dw8ZjmkS.js.map → RouteErrorBoundary-OSajL45F.js.map} +1 -1
- package/dist/core/web/public/next/assets/SettingsSection-B3YH2Npi.js +2 -0
- package/dist/core/web/public/next/assets/SettingsSection-B3YH2Npi.js.map +1 -0
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-Bk5HipM0.js → UniverseConsoleApp-wEKIzl1M.js} +2 -2
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-Bk5HipM0.js.map → UniverseConsoleApp-wEKIzl1M.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UniverseView-D8k9q0ce.js → UniverseView-CQVpJqqI.js} +2 -2
- package/dist/core/web/public/next/assets/{UniverseView-D8k9q0ce.js.map → UniverseView-CQVpJqqI.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UsageSection-B2E06ZH1.js → UsageSection-dToBThXe.js} +2 -2
- package/dist/core/web/public/next/assets/{UsageSection-B2E06ZH1.js.map → UsageSection-dToBThXe.js.map} +1 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-CMkCizvL.css +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-DHU32JCQ.js +3 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-DHU32JCQ.js.map +1 -0
- package/dist/core/web/public/next/assets/{charts-DSUpczxG.js → charts-BopViIha.js} +2 -2
- package/dist/core/web/public/next/assets/{charts-DSUpczxG.js.map → charts-BopViIha.js.map} +1 -1
- package/dist/core/web/public/next/assets/global-DMWakEhP.js +2 -0
- package/dist/core/web/public/next/assets/global-DMWakEhP.js.map +1 -0
- package/dist/core/web/public/next/assets/global-z-JfD3ow.css +1 -0
- package/dist/core/web/public/next/assets/{icons-BxOX8-XB.js → icons-L06pQH6j.js} +2 -2
- package/dist/core/web/public/next/assets/{icons-BxOX8-XB.js.map → icons-L06pQH6j.js.map} +1 -1
- package/dist/core/web/public/next/assets/{index-BMRIET7F.js → index-CXgVQHek.js} +3 -3
- package/dist/core/web/public/next/assets/{index-BMRIET7F.js.map → index-CXgVQHek.js.map} +1 -1
- package/dist/core/web/public/next/assets/{queries-AxnVa02h.js → queries-D3sSlan1.js} +2 -2
- package/dist/core/web/public/next/assets/{queries-AxnVa02h.js.map → queries-D3sSlan1.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-guarded-action-BO6c94Wp.js → use-guarded-action-BxfJ9E-n.js} +2 -2
- package/dist/core/web/public/next/assets/{use-guarded-action-BO6c94Wp.js.map → use-guarded-action-BxfJ9E-n.js.map} +1 -1
- package/dist/core/web/public/next/assets/workspace-model-v0a1gl-C.js +2 -0
- package/dist/core/web/public/next/assets/workspace-model-v0a1gl-C.js.map +1 -0
- package/dist/core/web/public/next/index.html +1 -1
- package/dist/release-dependency-inventory.json +1 -1
- package/package.json +1 -1
- package/dist/core/web/public/next/assets/AutonomySection-CRqHUhED.js +0 -2
- package/dist/core/web/public/next/assets/AutonomySection-CRqHUhED.js.map +0 -1
- package/dist/core/web/public/next/assets/ChatSection-5irrh6Jw.js +0 -80
- package/dist/core/web/public/next/assets/ChatSection-5irrh6Jw.js.map +0 -1
- package/dist/core/web/public/next/assets/ChatSection-LQiAn6Eu.css +0 -1
- package/dist/core/web/public/next/assets/SettingsSection-CWxtTNlD.js +0 -2
- package/dist/core/web/public/next/assets/SettingsSection-CWxtTNlD.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-CRfZUV-T.js +0 -3
- package/dist/core/web/public/next/assets/VerseConsoleApp-CRfZUV-T.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-D2E3mU9a.css +0 -1
- package/dist/core/web/public/next/assets/global-C4jfYHrj.js +0 -2
- package/dist/core/web/public/next/assets/global-C4jfYHrj.js.map +0 -1
- package/dist/core/web/public/next/assets/global-D463gG1X.css +0 -1
- package/dist/core/web/public/next/assets/workspace-model-cE4LkKpE.js +0 -2
- package/dist/core/web/public/next/assets/workspace-model-cE4LkKpE.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cutoff-checkpoint-scheduler.js","sourceRoot":"","sources":["../../../src/core/daemon/cutoff-checkpoint-scheduler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cutoff-checkpoint-scheduler.js","sourceRoot":"","sources":["../../../src/core/daemon/cutoff-checkpoint-scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
import type { AshlrConfig, DaemonDrainMode, DaemonDispatchProduction, DaemonState, DaemonTick, EngineId, WorkItem } from '../types.js';
|
|
41
41
|
import { killSwitchOn, setKill } from '../sandbox/policy.js';
|
|
42
42
|
import type { DaemonLock, SaveDaemonStateResult } from './state.js';
|
|
43
|
+
import { type RunWindowStopRule } from './run-window.js';
|
|
43
44
|
import { type DaemonActivationCapability } from './activation-permit.js';
|
|
44
45
|
import { readAgentActions, type AgentActionEvent } from '../fleet/agent-action-ledger.js';
|
|
45
46
|
import { type ContextRollupDecision } from '../fleet/context-rollup.js';
|
|
@@ -63,6 +64,24 @@ interface TickOptions {
|
|
|
63
64
|
interface DaemonRunOptions extends TickOptions {
|
|
64
65
|
once: boolean;
|
|
65
66
|
maxCycles?: number;
|
|
67
|
+
/**
|
|
68
|
+
* M-WINDOW: the BOUNDED RUN WINDOW — the stop rule for an unattended run.
|
|
69
|
+
* Absent = today's behaviour exactly (run until killed/paused/aborted).
|
|
70
|
+
*
|
|
71
|
+
* IN-PROCESS by necessity, not by preference: `StartCalendarInterval` appears
|
|
72
|
+
* nowhere in this repo and the two launch-trigger allowlists
|
|
73
|
+
* (runtime-activation-transaction.ts, resident-service-readiness.ts) reject
|
|
74
|
+
* an extra OS trigger, with tests locking that. See daemon/run-window.ts.
|
|
75
|
+
*/
|
|
76
|
+
runWindow?: RunWindowStopRule;
|
|
77
|
+
/**
|
|
78
|
+
* M-WINDOW: re-run each landed-on repo's own suite AFTER a merge and HALT
|
|
79
|
+
* the run when it is red. Default ON whenever a run window is set — an
|
|
80
|
+
* unattended run is exactly the case that cannot afford to build iteration
|
|
81
|
+
* N+1 on a regression merged at iteration N. Set false only for a run being
|
|
82
|
+
* watched by a human. See daemon/post-merge-halt.ts.
|
|
83
|
+
*/
|
|
84
|
+
postMergeHalt?: boolean;
|
|
66
85
|
}
|
|
67
86
|
/** Schedule advisory post-state work only after a durable resident tick returns. */
|
|
68
87
|
export declare function scheduleResolutionObserverAfterTick(tickResult: DaemonTick, opts: Pick<DaemonRunOptions, 'dryRun' | 'once'>, schedule?: typeof scheduleResolutionObserverChild, killIsOn?: typeof killSwitchOn): ScheduledResolutionObserverChild | null;
|
package/dist/core/daemon/loop.js
CHANGED
|
@@ -48,7 +48,16 @@ import { audit as persistAudit } from '../sandbox/audit.js';
|
|
|
48
48
|
import { buildBacklog, loadBacklog } from '../portfolio/backlog.js';
|
|
49
49
|
import { loadQueuedAutonomyItems } from '../portfolio/queued-autonomy.js';
|
|
50
50
|
import { acquireDaemonLock, accountDaemonSpendGuard, armDaemonSpendGuard, clearDaemonSpendGuard, DAEMON_SPEND_GUARD_ITEM_CAPACITY, daemonStatePath, heartbeatDaemonLock, loadDaemonState, loadDaemonStateStrict, readDaemonLockOwner, readDaemonSpendGuard, releaseDaemonLock, resetDayIfNeeded, saveDaemonStateResult, upgradeLegacyDaemonSpendGuard, } from './state.js';
|
|
51
|
-
import { daemonPaused } from './pause.js';
|
|
51
|
+
import { daemonPaused, pauseDaemon } from './pause.js';
|
|
52
|
+
// M-WINDOW: the bounded run window. Pure arithmetic — no I/O, no primitive.
|
|
53
|
+
import { evaluateRunWindow, resolveRunWindow, runWindowParkMs, } from './run-window.js';
|
|
54
|
+
// M-WINDOW: post-merge re-verification. Imports a VERIFY primitive and reads
|
|
55
|
+
// git; it imports NO apply/merge/push primitive, so the `daemon-no-primitive`
|
|
56
|
+
// contract (test/h4.proposal-only.test.ts 1.9) is untouched.
|
|
57
|
+
import { recordPostMergeHalt, runPostMergeGate, snapshotEnrolledHeads, } from './post-merge-halt.js';
|
|
58
|
+
// M-WINDOW: the engine half of GET /api/verse/overnight. A durable status
|
|
59
|
+
// record the route reads; this file never imports a web module.
|
|
60
|
+
import { armOvernightRun, concludeOvernightRun, recordOvernightActivity, recordOvernightIteration, } from './overnight-status.js';
|
|
52
61
|
import { acquireLocalStoreLock, releaseLocalStoreLock, } from '../fleet/local-store-lock.js';
|
|
53
62
|
import { readDaemonActivity, writeDaemonActivity, } from './activity.js';
|
|
54
63
|
import { consumeDaemonActivationPermit, isDaemonActivationCapability, } from './activation-permit.js';
|
|
@@ -7902,6 +7911,15 @@ export async function runDaemon(cfg, opts) {
|
|
|
7902
7911
|
}
|
|
7903
7912
|
}
|
|
7904
7913
|
let terminalFailure;
|
|
7914
|
+
/**
|
|
7915
|
+
* M-WINDOW: why a bounded run ended, when it ended on its own terms.
|
|
7916
|
+
*
|
|
7917
|
+
* Deliberately NOT `terminalFailure`: `src/cli/daemon.ts` maps any
|
|
7918
|
+
* terminalFailure to exit code 1, and a run window that elapsed exactly as
|
|
7919
|
+
* asked is a SUCCESS. An overnight run that reaches 07:00 and parks must not
|
|
7920
|
+
* look like a crash in the morning.
|
|
7921
|
+
*/
|
|
7922
|
+
const runWindowConclusion = { value: null };
|
|
7905
7923
|
try {
|
|
7906
7924
|
if (opts.once) {
|
|
7907
7925
|
// A permit is bound to the exact supplied config snapshot. Other manual
|
|
@@ -7946,7 +7964,125 @@ export async function runDaemon(cfg, opts) {
|
|
|
7946
7964
|
// Same discipline for the serving runtime: audit the transition, not
|
|
7947
7965
|
// every poll, so a runtime that is down for an hour writes two lines.
|
|
7948
7966
|
let localFleetRuntimeDownAudited = false;
|
|
7949
|
-
|
|
7967
|
+
// ── M-WINDOW: arm the bounded run window ───────────────────────────────
|
|
7968
|
+
// A refusal here does NOT start an unbounded run. An operator who asked
|
|
7969
|
+
// for "stop at 07:00" and mistyped it gets a refusal, not a daemon that
|
|
7970
|
+
// runs until someone notices — the failure direction for a bound on
|
|
7971
|
+
// autonomous work is always "does not run".
|
|
7972
|
+
let runWindow = null;
|
|
7973
|
+
let runWindowRefused = false;
|
|
7974
|
+
if (opts.runWindow !== undefined) {
|
|
7975
|
+
const resolved = resolveRunWindow(opts.runWindow);
|
|
7976
|
+
if (!resolved.ok) {
|
|
7977
|
+
runWindowRefused = true;
|
|
7978
|
+
terminalFailure = 'daemon-run-window-invalid';
|
|
7979
|
+
audit({
|
|
7980
|
+
action: 'daemon:start',
|
|
7981
|
+
repo: null,
|
|
7982
|
+
sandboxId: null,
|
|
7983
|
+
summary: `daemon run refused: ${resolved.reason}`,
|
|
7984
|
+
result: 'refused',
|
|
7985
|
+
});
|
|
7986
|
+
}
|
|
7987
|
+
else {
|
|
7988
|
+
runWindow = resolved.window;
|
|
7989
|
+
audit({
|
|
7990
|
+
action: 'daemon:run-window',
|
|
7991
|
+
repo: null,
|
|
7992
|
+
sandboxId: null,
|
|
7993
|
+
summary: `run window armed — ${runWindow.describe}; it ends by PAUSING ` +
|
|
7994
|
+
`(~/.ashlr/daemon.paused), never by the kill switch`,
|
|
7995
|
+
result: 'ok',
|
|
7996
|
+
});
|
|
7997
|
+
// Publish the armed run for GET /api/verse/overnight. The gate's
|
|
7998
|
+
// three pre-merge checks are structural (inbox/merge.verifyProposal
|
|
7999
|
+
// runs typecheck + tests + lint and fails closed without them), so
|
|
8000
|
+
// they are reported as true; autoMerge is tri-state because a config
|
|
8001
|
+
// that does not say is not the same as a config that says no.
|
|
8002
|
+
armOvernightRun(opts.runWindow, {
|
|
8003
|
+
repos: snapshotEnrolledHeads().length,
|
|
8004
|
+
gate: {
|
|
8005
|
+
tests: true,
|
|
8006
|
+
lint: true,
|
|
8007
|
+
typecheck: true,
|
|
8008
|
+
autoMerge: typeof cfg.foundry?.autoMerge?.enabled === 'boolean'
|
|
8009
|
+
? cfg.foundry.autoMerge.enabled
|
|
8010
|
+
: null,
|
|
8011
|
+
branch: null,
|
|
8012
|
+
},
|
|
8013
|
+
});
|
|
8014
|
+
}
|
|
8015
|
+
}
|
|
8016
|
+
// Post-merge halt defaults ON for a bounded (i.e. unattended) run.
|
|
8017
|
+
const postMergeHaltEnabled = opts.postMergeHalt ?? (runWindow !== null);
|
|
8018
|
+
// TICKS, not loop iterations. `cyclesLeft` above decrements before the
|
|
8019
|
+
// pause check, so a parked loop burns a "cycle" every second — that is
|
|
8020
|
+
// fine for its purpose but is NOT what "stop after N iterations" means
|
|
8021
|
+
// to an operator. This counts completed ticks only.
|
|
8022
|
+
let completedTicks = 0;
|
|
8023
|
+
/**
|
|
8024
|
+
* End the run by PARKING, never by killing.
|
|
8025
|
+
*
|
|
8026
|
+
* `stopDaemon()` is `setKill(true)`, and `~/.ashlr/KILL` is also read by
|
|
8027
|
+
* `assertMayMutate`, so it would refuse the operator's OWN MCP write
|
|
8028
|
+
* tools the moment they sat down. The run window's whole promise is that
|
|
8029
|
+
* "he's back" is a pause: reversible with one click, costing nothing to
|
|
8030
|
+
* try. So the window concludes by engaging the daemon-scoped pause
|
|
8031
|
+
* sentinel and breaking out of the loop.
|
|
8032
|
+
*/
|
|
8033
|
+
/**
|
|
8034
|
+
* Park for `ms`, but in chunks no longer than the window allows.
|
|
8035
|
+
*
|
|
8036
|
+
* `sleep()` is ONE `setTimeout`, and a suspended host does not fire
|
|
8037
|
+
* timers on time — it fires them late, on wake. Batch mode's default
|
|
8038
|
+
* park is 5 minutes and a suspend can stretch that to hours, which would
|
|
8039
|
+
* carry a run well past its own end time. So the park is CHUNKED (never
|
|
8040
|
+
* truncated: the total still adds up to `ms`, so tick cadence and the
|
|
8041
|
+
* daily budget are unchanged) and each chunk is capped at
|
|
8042
|
+
* RUN_WINDOW_MAX_PARK_MS, re-reading the wall clock in between. This is
|
|
8043
|
+
* the same discipline `sleepUntilNextUtcBudgetDay` already uses.
|
|
8044
|
+
*
|
|
8045
|
+
* Returns false only when the sleep was aborted, matching `sleep()`.
|
|
8046
|
+
*/
|
|
8047
|
+
const parkWithinWindow = async (ms) => {
|
|
8048
|
+
if (runWindow === null)
|
|
8049
|
+
return sleep(ms, shutdown.signal);
|
|
8050
|
+
const wakeAtMs = Date.now() + Math.max(0, ms);
|
|
8051
|
+
while (true) {
|
|
8052
|
+
const nowMs = Date.now();
|
|
8053
|
+
if (nowMs >= wakeAtMs)
|
|
8054
|
+
return true;
|
|
8055
|
+
// Window over? Stop parking immediately and let the loop-top check
|
|
8056
|
+
// conclude the run — do not serve out the rest of the interval.
|
|
8057
|
+
if (evaluateRunWindow(runWindow, { nowMs, iterations: completedTicks }).expired)
|
|
8058
|
+
return true;
|
|
8059
|
+
const chunkMs = runWindowParkMs(runWindow, wakeAtMs - nowMs, nowMs);
|
|
8060
|
+
if (chunkMs <= 0)
|
|
8061
|
+
return true;
|
|
8062
|
+
if (!(await sleep(chunkMs, shutdown.signal)))
|
|
8063
|
+
return false;
|
|
8064
|
+
}
|
|
8065
|
+
};
|
|
8066
|
+
const concludeByParking = (reason, summary) => {
|
|
8067
|
+
runWindowConclusion.value = { reason, summary };
|
|
8068
|
+
// The record is KEPT, not cleared — the morning's first question is
|
|
8069
|
+
// "what happened last night", and a status that erases itself on exit
|
|
8070
|
+
// cannot answer it. `armed` goes false: the NEXT run is not armed.
|
|
8071
|
+
try {
|
|
8072
|
+
concludeOvernightRun(`${reason} — ${summary}`);
|
|
8073
|
+
}
|
|
8074
|
+
catch { /* observability only */ }
|
|
8075
|
+
const parked = pauseDaemon();
|
|
8076
|
+
audit({
|
|
8077
|
+
action: 'daemon:run-window',
|
|
8078
|
+
repo: null,
|
|
8079
|
+
sandboxId: null,
|
|
8080
|
+
summary: `${summary} — daemon PARKED via ${parked.state.path} (${parked.reason}); ` +
|
|
8081
|
+
`the global kill switch is NOT engaged`,
|
|
8082
|
+
result: parked.ok ? 'ok' : 'error',
|
|
8083
|
+
});
|
|
8084
|
+
};
|
|
8085
|
+
while (!runWindowRefused) {
|
|
7950
8086
|
if (shutdown.signal.aborted)
|
|
7951
8087
|
break;
|
|
7952
8088
|
if (!ownsDaemonLock())
|
|
@@ -7955,6 +8091,20 @@ export async function runDaemon(cfg, opts) {
|
|
|
7955
8091
|
break;
|
|
7956
8092
|
if (killSwitchOn() || shutdown.signal.aborted)
|
|
7957
8093
|
break;
|
|
8094
|
+
// ── M-WINDOW: is the window already over? ───────────────────────────
|
|
8095
|
+
// Checked against an ABSOLUTE deadline and an ABSOLUTE `Date.now()`,
|
|
8096
|
+
// never against accumulated elapsed time — so a host that suspended at
|
|
8097
|
+
// 01:00 and woke at 09:00 finds its 07:00 window expired on the first
|
|
8098
|
+
// look, rather than serving out a timer armed eight hours ago. Checked
|
|
8099
|
+
// BEFORE the pause check below so an expired window concludes even if
|
|
8100
|
+
// the operator happened to pause first.
|
|
8101
|
+
if (runWindow !== null) {
|
|
8102
|
+
const verdict = evaluateRunWindow(runWindow, { iterations: completedTicks });
|
|
8103
|
+
if (verdict.expired) {
|
|
8104
|
+
concludeByParking(`run-window-${verdict.reason}`, verdict.detail);
|
|
8105
|
+
break;
|
|
8106
|
+
}
|
|
8107
|
+
}
|
|
7958
8108
|
// M-PAUSE: the daemon-scoped pause PARKS the loop; it does not stop it.
|
|
7959
8109
|
// Unlike the kill switch above (which breaks, letting the process exit
|
|
7960
8110
|
// and clear running/pid), a pause keeps the resident daemon alive and
|
|
@@ -8000,6 +8150,14 @@ export async function runDaemon(cfg, opts) {
|
|
|
8000
8150
|
});
|
|
8001
8151
|
break;
|
|
8002
8152
|
}
|
|
8153
|
+
// ── M-WINDOW: what did each ENROLLED repo's head look like BEFORE? ──
|
|
8154
|
+
// Repo-state truth, not a return value: anything that moves a default
|
|
8155
|
+
// branch during this tick is caught, whoever moved it. Only enrolled
|
|
8156
|
+
// repos are ever read (`listEnrolled()`), so a repo that is not
|
|
8157
|
+
// enrolled is never touched by this gate in any way.
|
|
8158
|
+
const headsBeforeTick = postMergeHaltEnabled && !opts.dryRun
|
|
8159
|
+
? snapshotEnrolledHeads()
|
|
8160
|
+
: [];
|
|
8003
8161
|
transitionActivity('tick');
|
|
8004
8162
|
const tickResult = await tick(liveCfg, {
|
|
8005
8163
|
dryRun: opts.dryRun,
|
|
@@ -8009,7 +8167,75 @@ export async function runDaemon(cfg, opts) {
|
|
|
8009
8167
|
ownerLock: daemonLock,
|
|
8010
8168
|
onOwnershipLost: requestOwnershipLoss,
|
|
8011
8169
|
});
|
|
8170
|
+
completedTicks++;
|
|
8171
|
+
if (runWindow !== null) {
|
|
8172
|
+
// Live progress for the cockpit. `iterationsDone` is a number the
|
|
8173
|
+
// engine genuinely knows, so it is never reported as null here.
|
|
8174
|
+
try {
|
|
8175
|
+
recordOvernightActivity({
|
|
8176
|
+
iterationsDone: completedTicks,
|
|
8177
|
+
activity: `tick ${completedTicks} finished: ${tickResult.reason}` +
|
|
8178
|
+
(tickResult.proposalsCreated > 0 ? `, ${tickResult.proposalsCreated} proposal(s) created` : ''),
|
|
8179
|
+
});
|
|
8180
|
+
}
|
|
8181
|
+
catch { /* observability only */ }
|
|
8182
|
+
}
|
|
8012
8183
|
await runOwnedPulseSync(liveCfg, tickResult, daemonLock, shutdown.signal, requestOwnershipLoss);
|
|
8184
|
+
// ── M-WINDOW: THE POST-MERGE HALT ───────────────────────────────────
|
|
8185
|
+
// The gate that makes an unattended night survivable. The PRE-merge
|
|
8186
|
+
// gate (fleet/automerge-pass → inbox/merge) already proved this diff
|
|
8187
|
+
// green in an isolated worktree before it landed; this proves the
|
|
8188
|
+
// MERGED tree is still green, which is a different claim and the one
|
|
8189
|
+
// that compounds. If it is red, the run ENDS HERE — iteration N+1 is
|
|
8190
|
+
// never built on iteration N's regression, so the morning costs one
|
|
8191
|
+
// revert (named in the halt record) instead of a bisect.
|
|
8192
|
+
//
|
|
8193
|
+
// Cheap when nothing merged: one `git rev-parse` per enrolled repo and
|
|
8194
|
+
// an immediate 'no-landing'. The suite only runs when a head moved.
|
|
8195
|
+
if (postMergeHaltEnabled && !opts.dryRun && ownsDaemonLock()) {
|
|
8196
|
+
let postMerge = null;
|
|
8197
|
+
try {
|
|
8198
|
+
postMerge = await runPostMergeGate(headsBeforeTick, snapshotEnrolledHeads(), liveCfg, { signal: shutdown.signal });
|
|
8199
|
+
}
|
|
8200
|
+
catch (error) {
|
|
8201
|
+
// runPostMergeGate never throws by contract; this covers a thrown
|
|
8202
|
+
// module-resolution path. An unprovable merge must still halt.
|
|
8203
|
+
postMerge = null;
|
|
8204
|
+
audit({
|
|
8205
|
+
action: 'daemon:post-merge-halt',
|
|
8206
|
+
repo: null,
|
|
8207
|
+
sandboxId: null,
|
|
8208
|
+
summary: `post-merge gate failed to run (${error instanceof Error ? error.message : String(error)}); halting rather than continuing unverified`,
|
|
8209
|
+
result: 'error',
|
|
8210
|
+
});
|
|
8211
|
+
concludeByParking('post-merge-gate-failed', 'post-merge gate could not run');
|
|
8212
|
+
break;
|
|
8213
|
+
}
|
|
8214
|
+
if (postMerge.verdict !== 'no-landing') {
|
|
8215
|
+
audit({
|
|
8216
|
+
action: 'daemon:post-merge-verify',
|
|
8217
|
+
repo: postMerge.landings[0]?.repo ?? null,
|
|
8218
|
+
sandboxId: null,
|
|
8219
|
+
summary: `${postMerge.detail} (${postMerge.durationMs}ms)`,
|
|
8220
|
+
result: postMerge.halt ? 'refused' : 'ok',
|
|
8221
|
+
});
|
|
8222
|
+
}
|
|
8223
|
+
// Fold this iteration into the overnight record — what merged (with
|
|
8224
|
+
// real commit OIDs) or what was discarded (with the gate's own
|
|
8225
|
+
// specific sentence and the exact revert). Best-effort: a status
|
|
8226
|
+
// write must never be the reason a run stops.
|
|
8227
|
+
if (runWindow !== null && postMerge.verdict !== 'no-landing') {
|
|
8228
|
+
try {
|
|
8229
|
+
recordOvernightIteration(postMerge, { iterationsDone: completedTicks });
|
|
8230
|
+
}
|
|
8231
|
+
catch { /* observability only */ }
|
|
8232
|
+
}
|
|
8233
|
+
if (postMerge.halt) {
|
|
8234
|
+
recordPostMergeHalt(postMerge);
|
|
8235
|
+
concludeByParking(`post-merge-${postMerge.verdict}`, `${postMerge.detail}; revert with: ${postMerge.revertPlan.join(' ; ') || '(see halt record)'}`);
|
|
8236
|
+
break;
|
|
8237
|
+
}
|
|
8238
|
+
}
|
|
8013
8239
|
// Dry-run is inherently a one-shot PLAN: it records spentUsd:0 forever,
|
|
8014
8240
|
// so the budget break can never fire. Terminate after a single iteration
|
|
8015
8241
|
// (matching --once semantics) so a dry-run loop is BOUNDED, not endless.
|
|
@@ -8132,12 +8358,12 @@ export async function runDaemon(cfg, opts) {
|
|
|
8132
8358
|
}
|
|
8133
8359
|
if (afterLoopCfg.mode === 'continuous') {
|
|
8134
8360
|
if (noWorkDispatched) {
|
|
8135
|
-
if (!(await
|
|
8361
|
+
if (!(await parkWithinWindow(afterLoopCfg.idleBackoffMs ?? 5_000)))
|
|
8136
8362
|
break;
|
|
8137
8363
|
}
|
|
8138
8364
|
}
|
|
8139
8365
|
else {
|
|
8140
|
-
if (!(await
|
|
8366
|
+
if (!(await parkWithinWindow(afterLoopCfg.intervalMs)))
|
|
8141
8367
|
break;
|
|
8142
8368
|
}
|
|
8143
8369
|
if (!ownsDaemonLock())
|
|
@@ -8190,7 +8416,11 @@ export async function runDaemon(cfg, opts) {
|
|
|
8190
8416
|
action: 'daemon:stop',
|
|
8191
8417
|
repo: null,
|
|
8192
8418
|
sandboxId: null,
|
|
8193
|
-
|
|
8419
|
+
// M-WINDOW: a bounded run says WHY it ended, so the morning does not have
|
|
8420
|
+
// to infer it from a bare 'daemon stopped' and a timestamp.
|
|
8421
|
+
summary: runWindowConclusion.value
|
|
8422
|
+
? `daemon stopped: ${runWindowConclusion.value.reason} — ${runWindowConclusion.value.summary}`
|
|
8423
|
+
: 'daemon stopped',
|
|
8194
8424
|
result: 'ok',
|
|
8195
8425
|
});
|
|
8196
8426
|
}
|