@integrity-labs/agt-cli 0.28.637 → 0.28.638

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.
@@ -16,7 +16,7 @@ import {
16
16
  rotateDailySession,
17
17
  sessionFileExists,
18
18
  todayLocalIso
19
- } from "./chunk-JT2JQUK3.js";
19
+ } from "./chunk-MAZUBHNT.js";
20
20
  import {
21
21
  reapOrphanChannelMcps
22
22
  } from "./chunk-XWVM4KPK.js";
@@ -4313,4 +4313,4 @@ export {
4313
4313
  stopAllSessionsAndWait,
4314
4314
  getProjectDir
4315
4315
  };
4316
- //# sourceMappingURL=chunk-W4GVD3KK.js.map
4316
+ //# sourceMappingURL=chunk-MRQ2GRTN.js.map
@@ -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-SZLOBXBQ.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-NMGMDXTO.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-CE72HQE7.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-EZUIIJYB.js.map
@@ -15,6 +15,7 @@ import {
15
15
  decidePin,
16
16
  defaultFlagsCachePath,
17
17
  deriveMcpServerKey,
18
+ describeStartupCompletion,
18
19
  diffEnvIntegrations,
19
20
  envOnlyRespawnVars,
20
21
  exchangeApiKey,
@@ -54,7 +55,7 @@ import {
54
55
  safeWriteJsonAtomic,
55
56
  setConfigHash,
56
57
  tripClass
57
- } from "../chunk-3JBA6RYG.js";
58
+ } from "../chunk-LCKKFDCR.js";
58
59
  import {
59
60
  getProjectDir as getProjectDir2,
60
61
  getReadyTasks,
@@ -110,7 +111,7 @@ import {
110
111
  takeZombieDetection,
111
112
  toOpencodeModel,
112
113
  writeEgressAllowlist
113
- } from "../chunk-W4GVD3KK.js";
114
+ } from "../chunk-MRQ2GRTN.js";
114
115
  import {
115
116
  ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
116
117
  AnchorSessionClient,
@@ -187,7 +188,7 @@ import {
187
188
  subagentActivityAgeSeconds,
188
189
  sumTranscriptUsageInWindow,
189
190
  transcriptActivityAgeSeconds
190
- } from "../chunk-JT2JQUK3.js";
191
+ } from "../chunk-MAZUBHNT.js";
191
192
  import {
192
193
  reapOrphanChannelMcps
193
194
  } from "../chunk-XWVM4KPK.js";
@@ -1618,32 +1619,6 @@ function formatMissingMcpBundles(missing) {
1618
1619
  return `MCP bundle(s) not yet on disk in the host-shared _mcp mount: ${detail}`;
1619
1620
  }
1620
1621
 
1621
- // src/lib/startup-telemetry.ts
1622
- var SLOW_STARTUP_WARN_MS = 6e4;
1623
- function shouldWarnSlowStartup(elapsedMs, opts = {}) {
1624
- if (!Number.isFinite(elapsedMs) || elapsedMs < 0) return false;
1625
- const threshold = opts.thresholdMs ?? SLOW_STARTUP_WARN_MS;
1626
- if (!Number.isFinite(threshold) || threshold < 0) return false;
1627
- return elapsedMs >= threshold;
1628
- }
1629
- function formatStartupElapsed(elapsedMs) {
1630
- if (!Number.isFinite(elapsedMs) || elapsedMs < 0) return "unknown";
1631
- const seconds = elapsedMs / 1e3;
1632
- if (seconds < 60) return `${seconds.toFixed(1)}s`;
1633
- return `${seconds.toFixed(1)}s (${(seconds / 60).toFixed(1)} min)`;
1634
- }
1635
- function describeStartupCompletion(elapsedMs, opts = {}) {
1636
- const elapsed = formatStartupElapsed(elapsedMs);
1637
- if (!shouldWarnSlowStartup(elapsedMs, opts)) {
1638
- return { warn: false, message: `[startup] ready in ${elapsed}` };
1639
- }
1640
- const threshold = opts.thresholdMs ?? SLOW_STARTUP_WARN_MS;
1641
- return {
1642
- warn: true,
1643
- message: `[startup] SLOW BOOT \u2014 ready in ${elapsed}, over the ${formatStartupElapsed(threshold)} threshold. MCP bundles are deployed during startup, so agents spawning in this window can come up with no MCP tools (ENG-9129). Check for a build/install running on the host.`
1644
- };
1645
- }
1646
-
1647
1622
  // src/lib/self-update-coalesce.ts
1648
1623
  import { readFileSync as readFileSync5, writeFileSync as writeFileSync3, mkdirSync as mkdirSync3 } from "fs";
1649
1624
  import { dirname as dirname3 } from "path";
@@ -11522,7 +11497,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
11522
11497
  var dayRolloverInboundHold = /* @__PURE__ */ new Map();
11523
11498
  var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
11524
11499
  async function channelInboundActivityAgeSecondsFor(codeName) {
11525
- const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-MDPLVVKC.js");
11500
+ const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-ZUFKGLDN.js");
11526
11501
  const newest = newestPendingInboundActivityMtimeMs(dirname9(paneLogPath(codeName)));
11527
11502
  if (newest === null) return null;
11528
11503
  return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
@@ -12165,7 +12140,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
12165
12140
  var lastVersionCheckAt = 0;
12166
12141
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
12167
12142
  var lastResponsivenessProbeAt = 0;
12168
- var agtCliVersion = true ? "0.28.637" : "dev";
12143
+ var agtCliVersion = true ? "0.28.638" : "dev";
12169
12144
  function resolveBrewPath(execFileSync3) {
12170
12145
  try {
12171
12146
  const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -13472,7 +13447,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
13472
13447
  if (codeNames.length === 0) return;
13473
13448
  void (async () => {
13474
13449
  try {
13475
- const { collectDiagnostics } = await import("../persistent-session-SZLOBXBQ.js");
13450
+ const { collectDiagnostics } = await import("../persistent-session-NMGMDXTO.js");
13476
13451
  await api.post("/host/heartbeat", {
13477
13452
  host_id: hostId,
13478
13453
  agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
@@ -13588,7 +13563,7 @@ async function pollCycleInner() {
13588
13563
  }
13589
13564
  try {
13590
13565
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
13591
- const { collectDiagnostics } = await import("../persistent-session-SZLOBXBQ.js");
13566
+ const { collectDiagnostics } = await import("../persistent-session-NMGMDXTO.js");
13592
13567
  const diagCodeNames = [...agentState.persistentSessionAgents];
13593
13568
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor) : void 0;
13594
13569
  let tailscaleHostname;
@@ -13711,7 +13686,7 @@ async function pollCycleInner() {
13711
13686
  collectPanelessActivityProbes,
13712
13687
  getResponsivenessIntervalMs,
13713
13688
  occupancyQualificationClassifications
13714
- } = await import("../responsiveness-probe-MDPLVVKC.js");
13689
+ } = await import("../responsiveness-probe-ZUFKGLDN.js");
13715
13690
  const probeIntervalMs = getResponsivenessIntervalMs();
13716
13691
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
13717
13692
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -13817,7 +13792,7 @@ async function pollCycleInner() {
13817
13792
  collectResponsivenessProbes,
13818
13793
  livePendingInboundOldestAgeSeconds,
13819
13794
  parkPendingInbound
13820
- } = await import("../responsiveness-probe-MDPLVVKC.js");
13795
+ } = await import("../responsiveness-probe-ZUFKGLDN.js");
13821
13796
  const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-NDP36U7O.js");
13822
13797
  const wedgeNow = /* @__PURE__ */ new Date();
13823
13798
  const liveAgents = agentState.persistentSessionAgents;
@@ -13973,7 +13948,7 @@ async function pollCycleInner() {
13973
13948
  }
13974
13949
  try {
13975
13950
  const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-JA437JIB.js");
13976
- const { probeSessionAuth } = await import("../session-auth-dead-ZLENJLLO.js");
13951
+ const { probeSessionAuth } = await import("../session-auth-dead-TDWEX7R5.js");
13977
13952
  const observations = [];
13978
13953
  const pendingCacheCommits = [];
13979
13954
  const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
@@ -17540,7 +17515,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
17540
17515
  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}`));
17541
17516
  void (async () => {
17542
17517
  try {
17543
- const { collectDiagnostics } = await import("../persistent-session-SZLOBXBQ.js");
17518
+ const { collectDiagnostics } = await import("../persistent-session-NMGMDXTO.js");
17544
17519
  await api.post("/host/heartbeat", {
17545
17520
  host_id: hostId,
17546
17521
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
@@ -17591,7 +17566,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
17591
17566
  }
17592
17567
  try {
17593
17568
  const hostId = await getHostId();
17594
- const { collectDiagnostics } = await import("../persistent-session-SZLOBXBQ.js");
17569
+ const { collectDiagnostics } = await import("../persistent-session-NMGMDXTO.js");
17595
17570
  await api.post("/host/heartbeat", {
17596
17571
  host_id: hostId,
17597
17572
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
@@ -18187,7 +18162,7 @@ async function processClaudePairSessions(agents) {
18187
18162
  killPairSession,
18188
18163
  pairTmuxSession,
18189
18164
  finalizeClaudePairOnboarding
18190
- } = await import("../claude-pair-runtime-CE72HQE7.js");
18165
+ } = await import("../claude-pair-runtime-EZUIIJYB.js");
18191
18166
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
18192
18167
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
18193
18168
  const killed = await killPairSession(pairTmuxSession(pairId));