@integrity-labs/agt-cli 0.28.928 → 0.28.930

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.
Files changed (24) hide show
  1. package/dist/bin/agt.js +51 -6
  2. package/dist/bin/agt.js.map +1 -1
  3. package/dist/{chunk-Y7ERASS6.js → chunk-7F32775G.js} +63 -1
  4. package/dist/{chunk-Y7ERASS6.js.map → chunk-7F32775G.js.map} +1 -1
  5. package/dist/{chunk-NIUBYSLW.js → chunk-HC3EDWKC.js} +2 -2
  6. package/dist/{chunk-OXWLTPU2.js → chunk-NCNQFUNQ.js} +23 -8
  7. package/dist/{chunk-OXWLTPU2.js.map → chunk-NCNQFUNQ.js.map} +1 -1
  8. package/dist/{claude-pair-runtime-RFY57WC3.js → claude-pair-runtime-TDP2NJTT.js} +2 -2
  9. package/dist/lib/manager-worker.js +26 -17
  10. package/dist/lib/manager-worker.js.map +1 -1
  11. package/dist/mcp/direct-chat-channel.js +21 -0
  12. package/dist/mcp/index.js +21 -0
  13. package/dist/mcp/origami.js +21 -0
  14. package/dist/mcp/slack-channel.js +21 -0
  15. package/dist/mcp/telegram-channel.js +21 -0
  16. package/dist/{persistent-session-O3AKW6IW.js → persistent-session-Z7S2MMRH.js} +3 -3
  17. package/dist/{responsiveness-probe-MIPUX3BG.js → responsiveness-probe-SR62Y32C.js} +3 -3
  18. package/dist/{session-auth-dead-ZGZZLE4X.js → session-auth-dead-25KP23AU.js} +2 -2
  19. package/package.json +1 -1
  20. /package/dist/{chunk-NIUBYSLW.js.map → chunk-HC3EDWKC.js.map} +0 -0
  21. /package/dist/{claude-pair-runtime-RFY57WC3.js.map → claude-pair-runtime-TDP2NJTT.js.map} +0 -0
  22. /package/dist/{persistent-session-O3AKW6IW.js.map → persistent-session-Z7S2MMRH.js.map} +0 -0
  23. /package/dist/{responsiveness-probe-MIPUX3BG.js.map → responsiveness-probe-SR62Y32C.js.map} +0 -0
  24. /package/dist/{session-auth-dead-ZGZZLE4X.js.map → session-auth-dead-25KP23AU.js.map} +0 -0
@@ -6581,6 +6581,23 @@ var FLAG_REGISTRY = [
6581
6581
  // env var is retired.
6582
6582
  envVar: "AUGMENTED_CONNECTIVITY_ESCALATION_ENABLED"
6583
6583
  },
6584
+ {
6585
+ key: "integration-connectivity-reconcile",
6586
+ description: "Arm integration-connectivity STATUS reconciliation (ENG-6139, armable per-org by ENG-10473). When on, a hard-down connectivity observation (a `down` reading with consecutive_connectivity_failures at/over the hysteresis threshold) on an otherwise-healthy row downgrades it to status=error, status_message=connectivity_down, so the record stops asserting a live connection the probe has disproved; recovery restores status=active, but ONLY for rows this path downgraded. When off it stays shadow - logs what it WOULD downgrade and touches only the connectivity columns. \u26A0\uFE0F A downgraded row drops out of host-runtime's `.in('status',['active','configured'])` provisioning filter, so the agent LOSES that MCP server: correct for a dead credential, and a provisioning change either way, which is why arming is a deliberate operator act. Sibling of integration-connectivity-escalation: that flag arms the alert, this one arms the record.",
6587
+ flagType: "boolean",
6588
+ // Declared safe value is `false` (shadow / record untouched). It matches the
6589
+ // route's compiled default since ENG-6139, so migrating the reader onto this
6590
+ // flag (ADR-0022) preserves fleet behaviour exactly. `false` is also the
6591
+ // fail-safe direction: a flag-DB read error must never de-provision an
6592
+ // integration on its own.
6593
+ defaultValue: false,
6594
+ // Migration override (ADR-0022): the pre-flags env gate stays the
6595
+ // highest-precedence operator override. ENG-10473 deliberately does NOT wire
6596
+ // this var in sst.config.ts - ENG-8303 records what happens when a declared
6597
+ // envVar is pinned there: it outranks the DB value and makes the flag inert
6598
+ // everywhere it matters.
6599
+ envVar: "AUGMENTED_CONNECTIVITY_RECONCILE_STATUS"
6600
+ },
6584
6601
  {
6585
6602
  key: "slack-manifest-remediate",
6586
6603
  description: "Let the Slack manifest drift monitor PUSH, not just alert (ENG-9963). updateSlackManifest had exactly one caller \u2014 a console button \u2014 so nothing but a human click ever pushed a manifest; ENG-7762 changed the generator with no rollout mechanism and 26 agents went 53 days with no working per-agent slash commands. When on, the daily drift cron pushes the generated manifest for a drifted agent. When off it alerts exactly as before. NOTE what arming this authorises: a push REPLACES a customer-owned Slack app's entire manifest, so the cron only ever pushes drift whose diffs are purely additive (isSafelyRemediable) \u2014 an app with live-only entries a push would destroy is declined and left for a human. Boolean gate; ships dark.",
@@ -13112,6 +13129,50 @@ function parseUsageBanner(text, now = /* @__PURE__ */ new Date()) {
13112
13129
  return best;
13113
13130
  }
13114
13131
 
13132
+ // ../../packages/core/dist/claude-code-usage/banner-remedy.js
13133
+ var BANNER_REMEDY_MAX_LENGTH = 200;
13134
+ var REMEDY_PATTERN = new RegExp("hit\\s+your\\s+(?:(?<qualifier>[a-z0-9'\u2019]+(?:[\\s-]+[a-z0-9'\u2019]+){0,3})\\s+)?limit\\s*\xB7\\s*(?<remedy>[^\xB7]{1," + String(BANNER_REMEDY_MAX_LENGTH * 2) + "}?)\\s*\xB7(?=[^\xB7]{0,80}?\\bresets\\b)", "giu");
13135
+ var STRIP = /[<>`"​-‏‪-‮⁦-⁩]/g;
13136
+ var CONTROL = /[\u0000-\u001f\u007f-\u009f]/g;
13137
+ function sanitizeBannerRemedy(raw) {
13138
+ if (typeof raw !== "string")
13139
+ return null;
13140
+ const cleaned = raw.replace(CONTROL, " ").replace(STRIP, "").replace(/\s+/g, " ").trim();
13141
+ if (!cleaned)
13142
+ return null;
13143
+ return cleaned.length > BANNER_REMEDY_MAX_LENGTH ? cleaned.slice(0, BANNER_REMEDY_MAX_LENGTH).trimEnd() : cleaned;
13144
+ }
13145
+ function remedyMatches(text) {
13146
+ const found = [];
13147
+ if (!text)
13148
+ return found;
13149
+ const pattern = new RegExp(REMEDY_PATTERN.source, REMEDY_PATTERN.flags);
13150
+ let match;
13151
+ while ((match = pattern.exec(text)) !== null) {
13152
+ if (match.index === pattern.lastIndex)
13153
+ pattern.lastIndex++;
13154
+ const remedy = sanitizeBannerRemedy(match.groups?.["remedy"]);
13155
+ if (!remedy)
13156
+ continue;
13157
+ const qualifier = match.groups?.["qualifier"]?.replace(/\s+/g, " ").trim() || null;
13158
+ found.push({ remedy, qualifier, start: match.index, end: match.index + match[0].length });
13159
+ }
13160
+ return found;
13161
+ }
13162
+ function bannerRemedyFor(text, observedQualifier, now = /* @__PURE__ */ new Date()) {
13163
+ const norm = (q) => (q ?? "").replace(/\s+/g, " ").trim().toLowerCase();
13164
+ const candidates = remedyMatches(text);
13165
+ for (let i = candidates.length - 1; i >= 0; i--) {
13166
+ const found = candidates[i];
13167
+ if (parseUsageBanner(text.slice(found.start), now) === null)
13168
+ continue;
13169
+ if (parseUsageBanner(text.slice(found.end), now) !== null)
13170
+ return null;
13171
+ return norm(found.qualifier) === norm(observedQualifier) ? found.remedy : null;
13172
+ }
13173
+ return null;
13174
+ }
13175
+
13115
13176
  // ../../packages/core/dist/claude-code-usage/transcript-parser.js
13116
13177
  function nonNegInt(value) {
13117
13178
  if (typeof value !== "number" || !Number.isFinite(value))
@@ -14553,6 +14614,7 @@ export {
14553
14614
  deriveConsoleUrl,
14554
14615
  SCHEDULED_TURN_MARKER_FILENAME,
14555
14616
  parseUsageBanner,
14617
+ bannerRemedyFor,
14556
14618
  formatRunMarker,
14557
14619
  findRunMarker,
14558
14620
  parseTranscriptUsage,
@@ -14618,4 +14680,4 @@ export {
14618
14680
  peekCurrentSession,
14619
14681
  readDailySessionPin
14620
14682
  };
14621
- //# sourceMappingURL=chunk-Y7ERASS6.js.map
14683
+ //# sourceMappingURL=chunk-7F32775G.js.map