@integrity-labs/agt-cli 0.28.792 → 0.28.794

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.
@@ -100,7 +100,7 @@ async function spawnPairSession(session) {
100
100
  return { ok: true };
101
101
  } catch {
102
102
  }
103
- const { resolveClaudeBinary } = await import("./persistent-session-56YC375I.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-ASBS4W6J.js");
104
104
  const claudeBin = resolveClaudeBinary();
105
105
  const pairEnv = {
106
106
  ...process.env,
@@ -373,4 +373,4 @@ export {
373
373
  startClaudePair,
374
374
  submitClaudePairCode
375
375
  };
376
- //# sourceMappingURL=claude-pair-runtime-WKQRAJMK.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-G4MPPDM2.js.map
@@ -58,7 +58,7 @@ import {
58
58
  safeWriteJsonAtomic,
59
59
  setConfigHash,
60
60
  tripClass
61
- } from "../chunk-GQLJGQVM.js";
61
+ } from "../chunk-MOEYG2Z7.js";
62
62
  import {
63
63
  getProjectDir as getProjectDir2,
64
64
  getReadyTasks,
@@ -74,6 +74,7 @@ import {
74
74
  checkChannelInputs,
75
75
  collectChannelSpawnSecrets,
76
76
  creditWatchdogGiveUpCount,
77
+ creditWatchdogUnclaimedDialogCount,
77
78
  egressMode,
78
79
  execFilePromiseLong,
79
80
  getLastFailureContext,
@@ -117,10 +118,11 @@ import {
117
118
  stopOpencodeSession,
118
119
  stopPersistentSession,
119
120
  takeWatchdogGiveUpCount,
121
+ takeWatchdogUnclaimedDialogCount,
120
122
  takeZombieDetection,
121
123
  toOpencodeModel,
122
124
  writeEgressAllowlist
123
- } from "../chunk-RBRA7WOL.js";
125
+ } from "../chunk-YLAXQKMK.js";
124
126
  import {
125
127
  ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
126
128
  AnchorSessionClient,
@@ -212,7 +214,7 @@ import {
212
214
  subagentActivityAgeSeconds,
213
215
  sumTranscriptUsageInWindow,
214
216
  transcriptActivityAgeSeconds
215
- } from "../chunk-6DWVW3Y3.js";
217
+ } from "../chunk-YCI7CHYI.js";
216
218
  import {
217
219
  reapOrphanChannelMcps
218
220
  } from "../chunk-XWVM4KPK.js";
@@ -12915,7 +12917,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
12915
12917
  var dayRolloverInboundHold = /* @__PURE__ */ new Map();
12916
12918
  var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
12917
12919
  async function channelInboundActivityAgeSecondsFor(codeName) {
12918
- const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-PW4RGBR4.js");
12920
+ const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-RSTRMWV5.js");
12919
12921
  const newest = newestPendingInboundActivityMtimeMs(dirname10(paneLogPath(codeName)));
12920
12922
  if (newest === null) return null;
12921
12923
  return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
@@ -13575,7 +13577,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
13575
13577
  var lastVersionCheckAt = 0;
13576
13578
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
13577
13579
  var lastResponsivenessProbeAt = 0;
13578
- var agtCliVersion = true ? "0.28.792" : "dev";
13580
+ var agtCliVersion = true ? "0.28.794" : "dev";
13579
13581
  function resolveBrewPath(execFileSync2) {
13580
13582
  try {
13581
13583
  const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -15122,7 +15124,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
15122
15124
  if (codeNames.length === 0) return;
15123
15125
  void (async () => {
15124
15126
  try {
15125
- const { collectDiagnostics } = await import("../persistent-session-56YC375I.js");
15127
+ const { collectDiagnostics } = await import("../persistent-session-ASBS4W6J.js");
15126
15128
  await api.post("/host/heartbeat", {
15127
15129
  host_id: hostId,
15128
15130
  agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -15263,7 +15265,7 @@ async function pollCycleInner() {
15263
15265
  }
15264
15266
  try {
15265
15267
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
15266
- const { collectDiagnostics } = await import("../persistent-session-56YC375I.js");
15268
+ const { collectDiagnostics } = await import("../persistent-session-ASBS4W6J.js");
15267
15269
  const diagCodeNames = [...agentState.persistentSessionAgents];
15268
15270
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor) : void 0;
15269
15271
  let tailscaleHostname;
@@ -15432,12 +15434,13 @@ async function pollCycleInner() {
15432
15434
  collectPanelessActivityProbes,
15433
15435
  getResponsivenessIntervalMs,
15434
15436
  occupancyQualificationClassifications
15435
- } = await import("../responsiveness-probe-PW4RGBR4.js");
15437
+ } = await import("../responsiveness-probe-RSTRMWV5.js");
15436
15438
  const probeIntervalMs = getResponsivenessIntervalMs();
15437
15439
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
15438
15440
  const probeCodeNames = [...agentState.persistentSessionAgents];
15439
15441
  if (probeCodeNames.length > 0) {
15440
15442
  const drainedGiveUps = /* @__PURE__ */ new Map();
15443
+ const drainedUnclaimedDialogs = /* @__PURE__ */ new Map();
15441
15444
  const paneless = collectPanelessActivityProbes(probeCodeNames, {
15442
15445
  busyActivityAgeSeconds: (codeName) => getOpencodeActivityAgeSeconds(codeName),
15443
15446
  turnCompletionAgeSeconds: (codeName) => {
@@ -15492,10 +15495,13 @@ async function pollCycleInner() {
15492
15495
  const probes = [...collectResponsivenessProbes(probeCodeNames), ...paneless].map((p) => {
15493
15496
  const giveUps = takeWatchdogGiveUpCount(p.code_name);
15494
15497
  if (giveUps > 0) drainedGiveUps.set(p.code_name, giveUps);
15498
+ const unclaimedDialogs = takeWatchdogUnclaimedDialogCount(p.code_name);
15499
+ if (unclaimedDialogs > 0) drainedUnclaimedDialogs.set(p.code_name, unclaimedDialogs);
15495
15500
  const { buckets: busyBuckets, classifications } = takeBuckets(p.code_name);
15496
15501
  return {
15497
15502
  ...p,
15498
15503
  input_stuck_give_ups: giveUps,
15504
+ ...unclaimedDialogs > 0 ? { unclaimed_dialogs: unclaimedDialogs } : {},
15499
15505
  ...busyBuckets.length > 0 ? { busy_buckets: busyBuckets } : {},
15500
15506
  ...classifications ? { occupancy_qualification_classifications: classifications } : {}
15501
15507
  };
@@ -15521,11 +15527,14 @@ async function pollCycleInner() {
15521
15527
  for (const [codeName, count] of drainedGiveUps) {
15522
15528
  creditWatchdogGiveUpCount(codeName, count);
15523
15529
  }
15530
+ for (const [codeName, count] of drainedUnclaimedDialogs) {
15531
+ creditWatchdogUnclaimedDialogCount(codeName, count);
15532
+ }
15524
15533
  for (const [codeName, buckets] of drainedBuckets) {
15525
15534
  sharedBusyBuckets.credit(codeName, buckets);
15526
15535
  }
15527
15536
  log(
15528
- `[responsiveness-probe] post failed (give-up counts + ${drainedBuckets.size} busy-bucket set(s) re-credited): ${err.message}`
15537
+ `[responsiveness-probe] post failed (give-up counts + ${drainedUnclaimedDialogs.size} unclaimed-dialog count(s) + ${drainedBuckets.size} busy-bucket set(s) re-credited): ${err.message}`
15529
15538
  );
15530
15539
  });
15531
15540
  }
@@ -15542,7 +15551,7 @@ async function pollCycleInner() {
15542
15551
  collectResponsivenessProbes,
15543
15552
  livePendingInboundOldestAgeSeconds,
15544
15553
  parkPendingInbound
15545
- } = await import("../responsiveness-probe-PW4RGBR4.js");
15554
+ } = await import("../responsiveness-probe-RSTRMWV5.js");
15546
15555
  const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-NDP36U7O.js");
15547
15556
  const wedgeNow = /* @__PURE__ */ new Date();
15548
15557
  const liveAgents = agentState.persistentSessionAgents;
@@ -15698,7 +15707,7 @@ async function pollCycleInner() {
15698
15707
  }
15699
15708
  try {
15700
15709
  const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-JA437JIB.js");
15701
- const { probeSessionAuth } = await import("../session-auth-dead-4GZDGAWS.js");
15710
+ const { probeSessionAuth } = await import("../session-auth-dead-WRJ3JN6Z.js");
15702
15711
  const observations = [];
15703
15712
  const pendingCacheCommits = [];
15704
15713
  const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
@@ -19799,7 +19808,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
19799
19808
  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}`));
19800
19809
  void (async () => {
19801
19810
  try {
19802
- const { collectDiagnostics } = await import("../persistent-session-56YC375I.js");
19811
+ const { collectDiagnostics } = await import("../persistent-session-ASBS4W6J.js");
19803
19812
  await api.post("/host/heartbeat", {
19804
19813
  host_id: hostId,
19805
19814
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -19845,7 +19854,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
19845
19854
  }
19846
19855
  try {
19847
19856
  const hostId = await getHostId();
19848
- const { collectDiagnostics } = await import("../persistent-session-56YC375I.js");
19857
+ const { collectDiagnostics } = await import("../persistent-session-ASBS4W6J.js");
19849
19858
  await api.post("/host/heartbeat", {
19850
19859
  host_id: hostId,
19851
19860
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -20481,7 +20490,7 @@ async function processClaudePairSessions(agents) {
20481
20490
  killPairSession,
20482
20491
  pairTmuxSession,
20483
20492
  finalizeClaudePairOnboarding
20484
- } = await import("../claude-pair-runtime-WKQRAJMK.js");
20493
+ } = await import("../claude-pair-runtime-G4MPPDM2.js");
20485
20494
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
20486
20495
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
20487
20496
  const killed = await killPairSession(pairTmuxSession(pairId));