@integrity-labs/agt-cli 0.28.1151 → 0.28.1153
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/agt.js +6 -6
- package/dist/{chunk-AJ2Z3VSN.js → chunk-E5BVBODT.js} +2 -2
- package/dist/{chunk-OISSVMYG.js → chunk-OGEAF6HE.js} +3 -3
- package/dist/{chunk-TLDY7AE4.js → chunk-PQ6K7IGT.js} +1 -1
- package/dist/{chunk-TLDY7AE4.js.map → chunk-PQ6K7IGT.js.map} +1 -1
- package/dist/{chunk-MVZDF2MR.js → chunk-ZC7SC63V.js} +5 -5
- package/dist/{chunk-NSX27ZTP.js → chunk-ZW6MEVUD.js} +2 -2
- package/dist/{claude-code-updater-JXL4CM2V.js → claude-code-updater-54ZISKTQ.js} +3 -3
- package/dist/{claude-pair-runtime-7QPXNON3.js → claude-pair-runtime-OKT66D2H.js} +3 -3
- package/dist/lib/manager-worker.js +19 -85
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/{persistent-session-YKRO5RLK.js → persistent-session-JRNQ3OMQ.js} +4 -4
- package/dist/{responsiveness-probe-LVRBC2AA.js → responsiveness-probe-KQSVBU2O.js} +4 -4
- package/dist/{session-auth-dead-FREXPXHN.js → session-auth-dead-MSTRS7FK.js} +3 -3
- package/package.json +1 -1
- /package/dist/{chunk-AJ2Z3VSN.js.map → chunk-E5BVBODT.js.map} +0 -0
- /package/dist/{chunk-OISSVMYG.js.map → chunk-OGEAF6HE.js.map} +0 -0
- /package/dist/{chunk-MVZDF2MR.js.map → chunk-ZC7SC63V.js.map} +0 -0
- /package/dist/{chunk-NSX27ZTP.js.map → chunk-ZW6MEVUD.js.map} +0 -0
- /package/dist/{claude-code-updater-JXL4CM2V.js.map → claude-code-updater-54ZISKTQ.js.map} +0 -0
- /package/dist/{claude-pair-runtime-7QPXNON3.js.map → claude-pair-runtime-OKT66D2H.js.map} +0 -0
- /package/dist/{persistent-session-YKRO5RLK.js.map → persistent-session-JRNQ3OMQ.js.map} +0 -0
- /package/dist/{responsiveness-probe-LVRBC2AA.js.map → responsiveness-probe-KQSVBU2O.js.map} +0 -0
- /package/dist/{session-auth-dead-FREXPXHN.js.map → session-auth-dead-MSTRS7FK.js.map} +0 -0
|
@@ -16,11 +16,11 @@ import {
|
|
|
16
16
|
parseEnvFileEntries,
|
|
17
17
|
parseEnvIntegrations,
|
|
18
18
|
shellQuote
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-OGEAF6HE.js";
|
|
20
20
|
import {
|
|
21
21
|
readDailySessionPin,
|
|
22
22
|
sessionTranscriptDir
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-E5BVBODT.js";
|
|
24
24
|
import {
|
|
25
25
|
classifyUnanswerablePane,
|
|
26
26
|
isConsumerTermsDialogVisible,
|
|
@@ -95,7 +95,7 @@ import {
|
|
|
95
95
|
scanConfigForLiteralSecrets,
|
|
96
96
|
worseConnectivityOutcome,
|
|
97
97
|
wrapScheduledTaskPrompt
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-PQ6K7IGT.js";
|
|
99
99
|
|
|
100
100
|
// ../../packages/core/dist/provisioning/mcp-config-guards.js
|
|
101
101
|
import { chmodSync, existsSync, readFileSync, renameSync, writeFileSync, unlinkSync } from "fs";
|
|
@@ -8078,7 +8078,7 @@ function exchangeFailureKind(err) {
|
|
|
8078
8078
|
}
|
|
8079
8079
|
|
|
8080
8080
|
// src/lib/api-client.ts
|
|
8081
|
-
var agtCliVersion = true ? "0.28.
|
|
8081
|
+
var agtCliVersion = true ? "0.28.1153" : "dev";
|
|
8082
8082
|
var lastConfigHash = null;
|
|
8083
8083
|
function setConfigHash(hash) {
|
|
8084
8084
|
lastConfigHash = hash && hash.length > 0 ? hash : null;
|
|
@@ -13235,4 +13235,4 @@ export {
|
|
|
13235
13235
|
managerInstallSystemUnitCommand,
|
|
13236
13236
|
managerUninstallSystemUnitCommand
|
|
13237
13237
|
};
|
|
13238
|
-
//# sourceMappingURL=chunk-
|
|
13238
|
+
//# sourceMappingURL=chunk-ZC7SC63V.js.map
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from "./chunk-EL5MWGGH.js";
|
|
8
8
|
import {
|
|
9
9
|
FORCED_UPDATE_HARD_DEADLINE_MS
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-PQ6K7IGT.js";
|
|
11
11
|
|
|
12
12
|
// src/lib/claude-code-updater.ts
|
|
13
13
|
import { execFile, execFileSync } from "child_process";
|
|
@@ -339,4 +339,4 @@ export {
|
|
|
339
339
|
probeClaudeInstalls,
|
|
340
340
|
maybeUpdateClaudeCode
|
|
341
341
|
};
|
|
342
|
-
//# sourceMappingURL=chunk-
|
|
342
|
+
//# sourceMappingURL=chunk-ZW6MEVUD.js.map
|
|
@@ -12,10 +12,10 @@ import {
|
|
|
12
12
|
probeClaudeInstalls,
|
|
13
13
|
readsAsNativeInstall,
|
|
14
14
|
shouldRunClaudeCodeUpdater
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ZW6MEVUD.js";
|
|
16
16
|
import "./chunk-XWVM4KPK.js";
|
|
17
17
|
import "./chunk-EL5MWGGH.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-PQ6K7IGT.js";
|
|
19
19
|
import "./chunk-DGUM43GV.js";
|
|
20
20
|
export {
|
|
21
21
|
CLAUDE_CODE_SECURITY_FLOOR,
|
|
@@ -32,4 +32,4 @@ export {
|
|
|
32
32
|
readsAsNativeInstall,
|
|
33
33
|
shouldRunClaudeCodeUpdater
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=claude-code-updater-
|
|
35
|
+
//# sourceMappingURL=claude-code-updater-54ZISKTQ.js.map
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
redactPaneFrame,
|
|
17
17
|
sanitizeTerminalFrame
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-PQ6K7IGT.js";
|
|
19
19
|
import "./chunk-DGUM43GV.js";
|
|
20
20
|
|
|
21
21
|
// src/lib/claude-pair-runtime.ts
|
|
@@ -295,7 +295,7 @@ async function spawnPairSession(session) {
|
|
|
295
295
|
return { ok: true };
|
|
296
296
|
} catch {
|
|
297
297
|
}
|
|
298
|
-
const { resolveClaudeBinary } = await import("./persistent-session-
|
|
298
|
+
const { resolveClaudeBinary } = await import("./persistent-session-JRNQ3OMQ.js");
|
|
299
299
|
const claudeBin = resolveClaudeBinary();
|
|
300
300
|
const pairEnv = {
|
|
301
301
|
...process.env,
|
|
@@ -802,4 +802,4 @@ export {
|
|
|
802
802
|
startClaudePair,
|
|
803
803
|
submitClaudePairCode
|
|
804
804
|
};
|
|
805
|
-
//# sourceMappingURL=claude-pair-runtime-
|
|
805
|
+
//# sourceMappingURL=claude-pair-runtime-OKT66D2H.js.map
|
|
@@ -77,11 +77,11 @@ import {
|
|
|
77
77
|
setConfigHash,
|
|
78
78
|
shellGuard,
|
|
79
79
|
tripClass
|
|
80
|
-
} from "../chunk-
|
|
80
|
+
} from "../chunk-ZC7SC63V.js";
|
|
81
81
|
import {
|
|
82
82
|
CLAUDE_CODE_SECURITY_FLOOR,
|
|
83
83
|
compareVersions
|
|
84
|
-
} from "../chunk-
|
|
84
|
+
} from "../chunk-ZW6MEVUD.js";
|
|
85
85
|
import {
|
|
86
86
|
getProjectDir as getProjectDir2,
|
|
87
87
|
getReadyTasks,
|
|
@@ -168,7 +168,7 @@ import {
|
|
|
168
168
|
webFetchBaselineValue,
|
|
169
169
|
webFetchRestartNeeded,
|
|
170
170
|
writeEgressAllowlist
|
|
171
|
-
} from "../chunk-
|
|
171
|
+
} from "../chunk-OGEAF6HE.js";
|
|
172
172
|
import {
|
|
173
173
|
isAgentIdle,
|
|
174
174
|
isStaleForToday,
|
|
@@ -177,7 +177,7 @@ import {
|
|
|
177
177
|
sessionTranscriptDir,
|
|
178
178
|
subagentActivityAgeSeconds,
|
|
179
179
|
transcriptActivityAgeSeconds
|
|
180
|
-
} from "../chunk-
|
|
180
|
+
} from "../chunk-E5BVBODT.js";
|
|
181
181
|
import {
|
|
182
182
|
classifyUnanswerablePane,
|
|
183
183
|
focusedConfirmDialogBlock,
|
|
@@ -300,7 +300,7 @@ import {
|
|
|
300
300
|
serializeAccountEnforcementMarker,
|
|
301
301
|
stabiliseResetInstant,
|
|
302
302
|
sumTranscriptUsageInWindow
|
|
303
|
-
} from "../chunk-
|
|
303
|
+
} from "../chunk-PQ6K7IGT.js";
|
|
304
304
|
import "../chunk-DGUM43GV.js";
|
|
305
305
|
|
|
306
306
|
// src/lib/manager-worker.ts
|
|
@@ -13674,7 +13674,6 @@ var client = null;
|
|
|
13674
13674
|
var chatChannel = null;
|
|
13675
13675
|
var driftChannel = null;
|
|
13676
13676
|
var assignChannel = null;
|
|
13677
|
-
var configChannel = null;
|
|
13678
13677
|
var kanbanChannel = null;
|
|
13679
13678
|
var integrationContextChannel = null;
|
|
13680
13679
|
var tokenRotationChannels = [];
|
|
@@ -13721,7 +13720,6 @@ function startRealtimeChat(config2) {
|
|
|
13721
13720
|
chatChannel = null;
|
|
13722
13721
|
driftChannel = null;
|
|
13723
13722
|
assignChannel = null;
|
|
13724
|
-
configChannel = null;
|
|
13725
13723
|
kanbanChannel = null;
|
|
13726
13724
|
integrationContextChannel = null;
|
|
13727
13725
|
tokenRotationChannels = [];
|
|
@@ -13809,34 +13807,6 @@ function startRealtimeAssignments(config2) {
|
|
|
13809
13807
|
});
|
|
13810
13808
|
log2(`[realtime] Subscribing to host_agents for host ${hostId}`);
|
|
13811
13809
|
}
|
|
13812
|
-
function startRealtimeConfig(config2) {
|
|
13813
|
-
const { agentIds, onConfigChange, log: log2 } = config2;
|
|
13814
|
-
if (agentIds.length === 0) return;
|
|
13815
|
-
const sb = ensureClient(config2);
|
|
13816
|
-
const filterStr = agentIds.length === 1 ? `agent_id=eq.${agentIds[0]}` : `agent_id=in.(${agentIds.join(",")})`;
|
|
13817
|
-
const lastKnown = /* @__PURE__ */ new Map();
|
|
13818
|
-
configChannel = sb.channel("config-realtime").on("postgres_changes", {
|
|
13819
|
-
event: "UPDATE",
|
|
13820
|
-
schema: "public",
|
|
13821
|
-
table: "agents",
|
|
13822
|
-
filter: filterStr
|
|
13823
|
-
}, (payload) => {
|
|
13824
|
-
const agent = payload.new;
|
|
13825
|
-
const fingerprint3 = `${agent.status}|${agent.framework}|${agent.session_mode}|${agent.primary_model}`;
|
|
13826
|
-
const prev = lastKnown.get(agent.agent_id);
|
|
13827
|
-
if (prev === fingerprint3) return;
|
|
13828
|
-
lastKnown.set(agent.agent_id, fingerprint3);
|
|
13829
|
-
log2(`[realtime] Agent config changed: ${agent.code_name} (status=${agent.status})`);
|
|
13830
|
-
onConfigChange(agent);
|
|
13831
|
-
}).subscribe((status) => {
|
|
13832
|
-
if (status === "SUBSCRIBED") {
|
|
13833
|
-
log2("[realtime] Config channel connected");
|
|
13834
|
-
} else if (status === "CLOSED" || status === "CHANNEL_ERROR") {
|
|
13835
|
-
log2(`[realtime] Config channel: ${status}`);
|
|
13836
|
-
}
|
|
13837
|
-
});
|
|
13838
|
-
log2(`[realtime] Subscribing to agents table for ${agentIds.length} agent(s)`);
|
|
13839
|
-
}
|
|
13840
13810
|
var METRICS_WINDOW = 200;
|
|
13841
13811
|
var kanbanMetrics = {
|
|
13842
13812
|
delivered: 0,
|
|
@@ -14056,13 +14026,6 @@ function stopRealtimeChat() {
|
|
|
14056
14026
|
}
|
|
14057
14027
|
assignChannel = null;
|
|
14058
14028
|
}
|
|
14059
|
-
if (configChannel) {
|
|
14060
|
-
try {
|
|
14061
|
-
configChannel.unsubscribe();
|
|
14062
|
-
} catch {
|
|
14063
|
-
}
|
|
14064
|
-
configChannel = null;
|
|
14065
|
-
}
|
|
14066
14029
|
if (kanbanChannel) {
|
|
14067
14030
|
try {
|
|
14068
14031
|
kanbanChannel.unsubscribe();
|
|
@@ -15041,7 +15004,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
|
|
|
15041
15004
|
var dayRolloverInboundHold = /* @__PURE__ */ new Map();
|
|
15042
15005
|
var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
|
|
15043
15006
|
async function channelInboundActivityAgeSecondsFor(codeName) {
|
|
15044
|
-
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-
|
|
15007
|
+
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-KQSVBU2O.js");
|
|
15045
15008
|
const newest = newestPendingInboundActivityMtimeMs(dirname11(paneLogPath(codeName)));
|
|
15046
15009
|
if (newest === null) return null;
|
|
15047
15010
|
return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
|
|
@@ -15799,7 +15762,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
|
|
|
15799
15762
|
var lastVersionCheckAt = 0;
|
|
15800
15763
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
15801
15764
|
var lastResponsivenessProbeAt = 0;
|
|
15802
|
-
var agtCliVersion = true ? "0.28.
|
|
15765
|
+
var agtCliVersion = true ? "0.28.1153" : "dev";
|
|
15803
15766
|
function resolveBrewPath(execFileSync3) {
|
|
15804
15767
|
try {
|
|
15805
15768
|
const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -17574,7 +17537,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
|
|
|
17574
17537
|
if (codeNames.length === 0) return;
|
|
17575
17538
|
void (async () => {
|
|
17576
17539
|
try {
|
|
17577
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
17540
|
+
const { collectDiagnostics } = await import("../persistent-session-JRNQ3OMQ.js");
|
|
17578
17541
|
await api.post("/host/heartbeat", {
|
|
17579
17542
|
host_id: hostId,
|
|
17580
17543
|
agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
|
|
@@ -17716,7 +17679,7 @@ async function pollCycleInner() {
|
|
|
17716
17679
|
}
|
|
17717
17680
|
try {
|
|
17718
17681
|
const { detectHostSecurity } = await import("../host-security-KQYYZZVW.js");
|
|
17719
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
17682
|
+
const { collectDiagnostics } = await import("../persistent-session-JRNQ3OMQ.js");
|
|
17720
17683
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
17721
17684
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor) : void 0;
|
|
17722
17685
|
let tailscaleHostname;
|
|
@@ -17916,7 +17879,7 @@ async function pollCycleInner() {
|
|
|
17916
17879
|
setConfigHash(hbResp?.config_hash ?? null);
|
|
17917
17880
|
try {
|
|
17918
17881
|
const desiredClaudeCodeVersion = hbResp?.desired_claude_code_version?.trim();
|
|
17919
|
-
const { maybeUpdateClaudeCode, shouldRunClaudeCodeUpdater } = await import("../claude-code-updater-
|
|
17882
|
+
const { maybeUpdateClaudeCode, shouldRunClaudeCodeUpdater } = await import("../claude-code-updater-54ZISKTQ.js");
|
|
17920
17883
|
claudeUpdaterInFlight = true;
|
|
17921
17884
|
if (desiredClaudeCodeVersion && (claudePairLoop.busy || claudePairingInProgress())) {
|
|
17922
17885
|
log(
|
|
@@ -17948,7 +17911,7 @@ async function pollCycleInner() {
|
|
|
17948
17911
|
collectPanelessActivityProbes,
|
|
17949
17912
|
getResponsivenessIntervalMs,
|
|
17950
17913
|
occupancyQualificationClassifications
|
|
17951
|
-
} = await import("../responsiveness-probe-
|
|
17914
|
+
} = await import("../responsiveness-probe-KQSVBU2O.js");
|
|
17952
17915
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
17953
17916
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
17954
17917
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
@@ -18065,7 +18028,7 @@ async function pollCycleInner() {
|
|
|
18065
18028
|
collectResponsivenessProbes,
|
|
18066
18029
|
livePendingInboundOldestAgeSeconds,
|
|
18067
18030
|
parkPendingInbound
|
|
18068
|
-
} = await import("../responsiveness-probe-
|
|
18031
|
+
} = await import("../responsiveness-probe-KQSVBU2O.js");
|
|
18069
18032
|
const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-M6AFZWNU.js");
|
|
18070
18033
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
18071
18034
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -18351,7 +18314,7 @@ async function pollCycleInner() {
|
|
|
18351
18314
|
}
|
|
18352
18315
|
}
|
|
18353
18316
|
);
|
|
18354
|
-
const { parkPendingInbound } = await import("../responsiveness-probe-
|
|
18317
|
+
const { parkPendingInbound } = await import("../responsiveness-probe-KQSVBU2O.js");
|
|
18355
18318
|
const { parked, deadLettered } = parkPendingInbound(codeName, new Date(fatalNowMs));
|
|
18356
18319
|
paneFatalStreak.delete(codeName);
|
|
18357
18320
|
paneFatalRestarts.set(codeName, [...history, fatalNowMs]);
|
|
@@ -18382,7 +18345,7 @@ async function pollCycleInner() {
|
|
|
18382
18345
|
TRANSCRIPT_MOUNT_ESCALATION_REFRESH_MS,
|
|
18383
18346
|
bindSourceEscalations
|
|
18384
18347
|
} = await import("../transcript-mount-health-OHE6IVJV.js");
|
|
18385
|
-
const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-
|
|
18348
|
+
const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-JRNQ3OMQ.js");
|
|
18386
18349
|
const mountConfig = resolveTranscriptMountConfig();
|
|
18387
18350
|
const liveAgents = agentState.persistentSessionAgents;
|
|
18388
18351
|
for (const tracked of [
|
|
@@ -18547,7 +18510,7 @@ async function pollCycleInner() {
|
|
|
18547
18510
|
}
|
|
18548
18511
|
try {
|
|
18549
18512
|
const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-VR5QGP3J.js");
|
|
18550
|
-
const { probeSessionAuth } = await import("../session-auth-dead-
|
|
18513
|
+
const { probeSessionAuth } = await import("../session-auth-dead-MSTRS7FK.js");
|
|
18551
18514
|
const observations = [];
|
|
18552
18515
|
const pendingCacheCommits = [];
|
|
18553
18516
|
const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
|
|
@@ -19212,7 +19175,6 @@ async function pollCycleInner() {
|
|
|
19212
19175
|
ensureRealtimeStarted(agentStates);
|
|
19213
19176
|
ensureRealtimeDriftStarted(agentStates);
|
|
19214
19177
|
ensureRealtimeAssignStarted(agentStates);
|
|
19215
|
-
ensureRealtimeConfigStarted(agentStates);
|
|
19216
19178
|
ensureRealtimeKanbanStarted(agentStates);
|
|
19217
19179
|
ensureRealtimeIntegrationContextStarted(agentStates);
|
|
19218
19180
|
try {
|
|
@@ -23052,7 +23014,6 @@ function holdRealtimeRebindInFlight(failures, agentIds, now, graceMs = REALTIME_
|
|
|
23052
23014
|
}
|
|
23053
23015
|
}
|
|
23054
23016
|
var realtimeAssignStarted = false;
|
|
23055
|
-
var realtimeConfigStarted = false;
|
|
23056
23017
|
var realtimeSubscribedAgentIds = /* @__PURE__ */ new Set();
|
|
23057
23018
|
function healRealtimeSocketDivergence() {
|
|
23058
23019
|
if (!shouldForcePollFallback(isRealtimeConnected(), isRealtimeSocketConnected())) return false;
|
|
@@ -23061,7 +23022,6 @@ function healRealtimeSocketDivergence() {
|
|
|
23061
23022
|
realtimeStarted = false;
|
|
23062
23023
|
realtimeDriftStarted = false;
|
|
23063
23024
|
realtimeAssignStarted = false;
|
|
23064
|
-
realtimeConfigStarted = false;
|
|
23065
23025
|
realtimeKanbanStarted = false;
|
|
23066
23026
|
subscribedIntegrationContextAgentIds = /* @__PURE__ */ new Set();
|
|
23067
23027
|
return true;
|
|
@@ -23079,7 +23039,6 @@ function ensureRealtimeStarted(agentStates) {
|
|
|
23079
23039
|
realtimeStarted = false;
|
|
23080
23040
|
realtimeDriftStarted = false;
|
|
23081
23041
|
realtimeAssignStarted = false;
|
|
23082
|
-
realtimeConfigStarted = false;
|
|
23083
23042
|
realtimeKanbanStarted = false;
|
|
23084
23043
|
subscribedIntegrationContextAgentIds = /* @__PURE__ */ new Set();
|
|
23085
23044
|
}
|
|
@@ -23119,7 +23078,6 @@ function ensureRealtimeStarted(agentStates) {
|
|
|
23119
23078
|
realtimeStarted = false;
|
|
23120
23079
|
realtimeDriftStarted = false;
|
|
23121
23080
|
realtimeAssignStarted = false;
|
|
23122
|
-
realtimeConfigStarted = false;
|
|
23123
23081
|
realtimeKanbanStarted = false;
|
|
23124
23082
|
subscribedIntegrationContextAgentIds = /* @__PURE__ */ new Set();
|
|
23125
23083
|
}
|
|
@@ -23207,7 +23165,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
|
|
|
23207
23165
|
try {
|
|
23208
23166
|
const freshId = rotateSessionForWedge(codeName);
|
|
23209
23167
|
consecutiveWedgeCycles.delete(codeName);
|
|
23210
|
-
const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-
|
|
23168
|
+
const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-KQSVBU2O.js");
|
|
23211
23169
|
const { parked, deadLettered } = parkForRestart(codeName, /* @__PURE__ */ new Date());
|
|
23212
23170
|
const parkNote = parked > 0 ? `, ${parked} inbound parked` : "";
|
|
23213
23171
|
const deadNote = deadLettered > 0 ? `, ${deadLettered} undeliverable dead-lettered` : "";
|
|
@@ -23250,7 +23208,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
|
|
|
23250
23208
|
void api.post("/host/restart-ack", { host_id: hostId, agent_id: agentId, restart_requested_at: requestedAt }).catch((err) => log(`[restart-lane] ack failed for '${codeName}': ${err.message}`));
|
|
23251
23209
|
void (async () => {
|
|
23252
23210
|
try {
|
|
23253
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
23211
|
+
const { collectDiagnostics } = await import("../persistent-session-JRNQ3OMQ.js");
|
|
23254
23212
|
await api.post("/host/heartbeat", {
|
|
23255
23213
|
host_id: hostId,
|
|
23256
23214
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
|
|
@@ -23301,7 +23259,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
|
|
|
23301
23259
|
}
|
|
23302
23260
|
try {
|
|
23303
23261
|
const hostId = await getHostId();
|
|
23304
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
23262
|
+
const { collectDiagnostics } = await import("../persistent-session-JRNQ3OMQ.js");
|
|
23305
23263
|
await api.post("/host/heartbeat", {
|
|
23306
23264
|
host_id: hostId,
|
|
23307
23265
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
|
|
@@ -23360,30 +23318,6 @@ function ensureRealtimeAssignStarted(agentStates) {
|
|
|
23360
23318
|
log(`[realtime] Assignment subscription failed: ${err.message}`);
|
|
23361
23319
|
});
|
|
23362
23320
|
}
|
|
23363
|
-
function ensureRealtimeConfigStarted(agentStates) {
|
|
23364
|
-
if (realtimeConfigStarted) return;
|
|
23365
|
-
const activeAgentIds = agentStates.filter((a) => a.status === "active").map((a) => a.agentId);
|
|
23366
|
-
if (activeAgentIds.length === 0) return;
|
|
23367
|
-
const apiKey = process.env["AGT_API_KEY"];
|
|
23368
|
-
if (!apiKey) return;
|
|
23369
|
-
void exchangeApiKey(apiKey).then((exchange) => {
|
|
23370
|
-
if (!exchange.supabaseUrl || !exchange.supabaseAnonKey) return;
|
|
23371
|
-
startRealtimeConfig({
|
|
23372
|
-
supabaseUrl: exchange.supabaseUrl,
|
|
23373
|
-
supabaseAnonKey: exchange.supabaseAnonKey,
|
|
23374
|
-
token: exchange.token,
|
|
23375
|
-
agentIds: activeAgentIds,
|
|
23376
|
-
onConfigChange: (agent) => {
|
|
23377
|
-
agentState.knownStatuses.delete(agent.agent_id);
|
|
23378
|
-
},
|
|
23379
|
-
log
|
|
23380
|
-
});
|
|
23381
|
-
realtimeConfigStarted = true;
|
|
23382
|
-
log(`[realtime] Config subscription started for ${activeAgentIds.length} agent(s)`);
|
|
23383
|
-
}).catch((err) => {
|
|
23384
|
-
log(`[realtime] Config subscription failed: ${err.message}`);
|
|
23385
|
-
});
|
|
23386
|
-
}
|
|
23387
23321
|
function ensureRealtimeKanbanStarted(agentStates) {
|
|
23388
23322
|
if (realtimeKanbanStarted) return;
|
|
23389
23323
|
const activeAgentIds = agentStates.filter((a) => a.status === "active").map((a) => a.agentId);
|
|
@@ -24018,7 +23952,7 @@ async function processClaudePairSessions(agents) {
|
|
|
24018
23952
|
snapshotPairConfig,
|
|
24019
23953
|
// ENG-11659: result -> report body + the manager.log line that records it.
|
|
24020
23954
|
planPairStartReport
|
|
24021
|
-
} = await import("../claude-pair-runtime-
|
|
23955
|
+
} = await import("../claude-pair-runtime-OKT66D2H.js");
|
|
24022
23956
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
24023
23957
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
24024
23958
|
const killed = await killPairSession(pairTmuxSession(pairId));
|