@agent-beam/beam 0.2.33 → 0.2.35

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/sdk.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import type { MonitorSeverity } from "./monitor-client.js";
2
2
  import { type Stack } from "./monitor-stacks.js";
3
+ import { type Verdict } from "./monitor-pause.js";
4
+ export type { Verdict, PauseScope } from "./monitor-pause.js";
3
5
  export interface AppMonitorOptions {
4
6
  /** The app's token from the dashboard (App monitoring > Settings, apps and alerts). Default: BEAM_APP_TOKEN. */
5
7
  token?: string;
@@ -53,6 +55,13 @@ export interface AppMonitorOptions {
53
55
  watchOutbound?: boolean;
54
56
  /** LLM tokens one user may use in an hour before it's raised (usage()). Default: 500,000 on the standard level. */
55
57
  tokensPerUserHour?: number;
58
+ /**
59
+ * True when the `ip` you pass is always the real client address (Express with `trust proxy` set
60
+ * to your proxy count, a server with no proxy). By default Beam works it out: on Cloudflare,
61
+ * Vercel and Fly.io it reads the platform's own header, and elsewhere it only pauses an address
62
+ * the client couldn't have written (never the first entry of a forwarded X-Forwarded-For list).
63
+ */
64
+ trustIp?: boolean;
56
65
  }
57
66
  /** Who a security event is about. The user is an opaque id, not an email. */
58
67
  export interface SecurityEventInfo {
@@ -66,6 +75,8 @@ export interface RequestInfo {
66
75
  /** Path and query string, e.g. request.nextUrl.pathname + request.nextUrl.search. */
67
76
  url: string;
68
77
  ip?: string | null;
78
+ /** The signed-in user's opaque id (not an email), when known: a paused user is refused from any address. */
79
+ user?: string | null;
69
80
  userAgent?: string | null;
70
81
  /**
71
82
  * The response status, when the hook runs after the response (Express `res.on("finish")`,
@@ -79,11 +90,30 @@ export interface RequestInfo {
79
90
  country?: string | null;
80
91
  asn?: number | null;
81
92
  /**
82
- * The request's headers (a Headers object or a plain record). Read for Host, Referer, User-Agent
83
- * and the country your platform adds (x-vercel-ip-country, cf-ipcountry,
84
- * cloudfront-viewer-country). Nothing else is read and no header is sent as-is.
93
+ * The request's headers (a Headers object or a plain record). Read for Host, User-Agent, the
94
+ * country your platform adds (x-vercel-ip-country, cf-ipcountry, cloudfront-viewer-country),
95
+ * Signature-Agent (the origin only) and MCP-Protocol-Version. Accept-Language, Sec-Fetch-Mode,
96
+ * Sec-CH-UA, Signature, Signature-Input and Mcp-Session-Id are checked for presence only: their
97
+ * values are never read or sent.
85
98
  */
86
99
  headers?: Headers | Record<string, string | string[] | undefined> | null;
100
+ /**
101
+ * Cloudflare's request properties (`request.cf` in a Worker), when the app runs behind
102
+ * Cloudflare. Read for country, ASN and, with Bot Management, the verified-bot and signed-agent
103
+ * verdicts, bot score, verified-bot category and JA4 fingerprint.
104
+ */
105
+ cf?: CloudflareProperties | null;
106
+ }
107
+ export interface CloudflareProperties {
108
+ country?: string | null;
109
+ asn?: number | null;
110
+ verifiedBotCategory?: string | null;
111
+ botManagement?: {
112
+ score?: number | null;
113
+ verifiedBot?: boolean | null;
114
+ signedAgent?: boolean | null;
115
+ ja4?: string | null;
116
+ } | null;
87
117
  }
88
118
  export interface PromptInfo {
89
119
  /** Who sent it, to group repeats and spot floods: the client address or an opaque user id (not an email). */
@@ -95,6 +125,9 @@ export interface PromptInfo {
95
125
  /** What a local check found. Matches count whatever the dashboard's level; reporting follows the level. */
96
126
  export interface TextCheck {
97
127
  flagged: boolean;
128
+ /** The sender is paused from the app's LLM features (or the whole app): refuse, with retryAfter seconds. */
129
+ paused?: boolean;
130
+ retryAfter?: number;
98
131
  /** True when the check didn't run because the CPU budget for this minute was spent. */
99
132
  skipped?: boolean;
100
133
  /** The most severe match, or null when nothing matched. */
@@ -105,9 +138,40 @@ export interface TextCheck {
105
138
  severity: MonitorSeverity;
106
139
  }[];
107
140
  }
141
+ /** What check() needs: who sent the request, and where to. */
142
+ export type CheckInfo = Partial<Pick<RequestInfo, "url" | "ip" | "user" | "headers" | "cf">>;
143
+ /** The Node.js request and response middleware() works with (Express, Connect, node:http). */
144
+ export interface NodeRequestLike {
145
+ method?: string;
146
+ url?: string;
147
+ originalUrl?: string;
148
+ ip?: string;
149
+ headers?: Record<string, string | string[] | undefined>;
150
+ socket?: {
151
+ remoteAddress?: string | null;
152
+ } | null;
153
+ }
154
+ export interface NodeResponseLike {
155
+ statusCode: number;
156
+ setHeader(name: string, value: string): unknown;
157
+ end(body?: string): unknown;
158
+ on?(event: "finish", listener: () => void): unknown;
159
+ }
108
160
  export interface AppMonitor {
109
- /** Check one incoming request. Cheap and synchronous; never throws. */
110
- request(info: RequestInfo): void;
161
+ /**
162
+ * Check one incoming request. Cheap and synchronous; never throws. Returns whether the sender is
163
+ * paused: when `paused` is true, answer with pausedResponse(verdict) instead of handling it.
164
+ */
165
+ request(info: RequestInfo): Verdict;
166
+ /** Whether a sender is paused, without recording a request (an API route, a queue consumer). */
167
+ check(info: CheckInfo): Verdict;
168
+ /** A 429 with Retry-After for a paused sender. The body is generic: it doesn't say why. */
169
+ pausedResponse(verdict: Verdict): Response;
170
+ /**
171
+ * Express, Connect or node:http middleware: refuses paused senders with a 429 and reports every
172
+ * other request after its response, with the status. `app.use(beam.middleware())`.
173
+ */
174
+ middleware(): (req: NodeRequestLike, res: NodeResponseLike, next: (error?: unknown) => void) => void;
111
175
  /** Check one application log line (errors, auth failures, anything the app prints). */
112
176
  log(line: string): void;
113
177
  /**
package/dist/sdk.js CHANGED
@@ -1,8 +1,31 @@
1
1
  import { CpuBudget, MonitorPipeline } from "./monitor-pipeline.js";
2
- import { matchLine } from "./monitor-rules.js";
2
+ import { matchLine, signatureAgentOrigin } from "./monitor-rules.js";
3
3
  import { isStack } from "./monitor-stacks.js";
4
4
  import { containsCanary } from "./prompt-attacks.js";
5
+ import { PauseBook, pausedBody, trustedRequestIp } from "./monitor-pause.js";
5
6
  import { judgeWithOwnLlm, ownLlmConfig } from "./monitor-llm.js";
7
+ /** Header presence and CDN verdicts for one request: lookups only, no parsing of values beyond a cap. */
8
+ function clientSignals(header, cf) {
9
+ const has = (name) => header(name) !== undefined;
10
+ // Presence only means something for a request's full headers, not a hand-built record of one or two.
11
+ const full = has("host") || has("user-agent");
12
+ const bm = cf && typeof cf === "object" ? cf.botManagement : undefined;
13
+ const mcpVersion = header("mcp-protocol-version");
14
+ const score = bm?.score;
15
+ const category = cf?.verifiedBotCategory;
16
+ return {
17
+ signed: has("signature") && has("signature-input") ? true : undefined,
18
+ acceptLanguage: full ? has("accept-language") : undefined,
19
+ secFetch: full ? has("sec-fetch-mode") : undefined,
20
+ clientHints: full ? has("sec-ch-ua") : undefined,
21
+ mcp: mcpVersion ? (/^[\w.-]{1,20}$/.test(mcpVersion) ? mcpVersion : "unknown") : has("mcp-session-id") ? "unknown" : undefined,
22
+ cfVerifiedBot: typeof bm?.verifiedBot === "boolean" ? bm.verifiedBot : undefined,
23
+ cfSignedAgent: typeof bm?.signedAgent === "boolean" ? bm.signedAgent : undefined,
24
+ cfBotScore: typeof score === "number" && score >= 1 && score <= 99 ? Math.round(score) : undefined,
25
+ cfBotCategory: typeof category === "string" && /^[\w .&/-]{1,60}$/.test(category) ? category : undefined,
26
+ ja4: typeof bm?.ja4 === "string" && /^\w{1,40}$/.test(bm.ja4) ? bm.ja4 : undefined,
27
+ };
28
+ }
6
29
  const TOKEN = /^beam_app_[\w-]{40,}$/;
7
30
  const CONFIG_EVERY_MS = 5 * 60 * 1000;
8
31
  const CONFIG_RETRY_MS = 60 * 1000;
@@ -83,9 +106,42 @@ export function checkPrompt(text) {
83
106
  export function checkOutput(text, options = {}) {
84
107
  return check(text, "output", canaryRule(options.canaries ?? []));
85
108
  }
86
- // Without a token the checks still work locally; nothing is reported.
109
+ const ALLOW = Object.freeze({ paused: false });
110
+ function pausedResponse(verdict) {
111
+ return new Response(pausedBody(), {
112
+ status: 429,
113
+ headers: { "Content-Type": "application/json", "Cache-Control": "no-store", "Retry-After": String(Math.max(1, Math.round(verdict?.retryAfter ?? 60))) },
114
+ });
115
+ }
116
+ /** middleware() for a monitor: refuse paused senders, report the rest after the response. */
117
+ function nodeMiddleware(monitor) {
118
+ return (req, res, next) => {
119
+ try {
120
+ const url = String(req.originalUrl ?? req.url ?? "/");
121
+ const ip = req.ip ?? req.socket?.remoteAddress ?? undefined;
122
+ const verdict = monitor.check({ url, ip, headers: req.headers });
123
+ if (verdict.paused) {
124
+ res.statusCode = 429;
125
+ res.setHeader("Retry-After", String(verdict.retryAfter ?? 60));
126
+ res.setHeader("Content-Type", "application/json");
127
+ res.setHeader("Cache-Control", "no-store");
128
+ res.end(pausedBody());
129
+ return;
130
+ }
131
+ res.on?.("finish", () => {
132
+ monitor.request({ method: String(req.method ?? "GET"), url, ip, status: res.statusCode, headers: req.headers });
133
+ });
134
+ }
135
+ catch {
136
+ /* never let monitoring affect the app */
137
+ }
138
+ next();
139
+ };
140
+ }
141
+ // Without a token the checks still work locally; nothing is reported and nobody is paused.
87
142
  const noop = {
88
- request() { }, log() { }, event() { }, usage() { }, outbound() { }, flush: async () => { }, enabled: false,
143
+ request: () => ALLOW, check: () => ALLOW, pausedResponse, middleware: () => (_req, _res, next) => next(),
144
+ log() { }, event() { }, usage() { }, outbound() { }, flush: async () => { }, enabled: false,
89
145
  prompt: text => checkPrompt(text),
90
146
  output: text => checkOutput(text),
91
147
  };
@@ -159,12 +215,30 @@ function start(options) {
159
215
  let flushing = null;
160
216
  let budgetReportedAt = 0;
161
217
  const revoked = () => Date.now() < revokedUntil;
218
+ // Who the finding being raised is about, as far as it can be trusted (set around each ingest).
219
+ let who = null;
220
+ let pausesUnsupported = false;
221
+ let pauseSendFailures = 0;
222
+ let nextPauseSendAt = 0;
223
+ const platform = { vercel: env("VERCEL") === "1", fly: Boolean(env("FLY_APP_NAME")), trustGiven: options.trustIp === true };
224
+ const book = new PauseBook({
225
+ onNotice: (message, kind) => {
226
+ report(`AgentBeam App monitoring: ${message}`);
227
+ if (kind === "breaker")
228
+ pipeline.addFinding({
229
+ id: `pause-breaker-${Math.floor(Date.now() / 1_800_000)}`, ruleId: "beam.pause.breaker", title: "Automatic pausing stopped: too many senders at once",
230
+ severity: "high", category: "activity", source: "http", count: 1, firstSeen: new Date().toISOString(), evidence: message,
231
+ });
232
+ },
233
+ });
162
234
  const pipeline = new MonitorPipeline({
163
235
  level: () => (!revoked() && Date.now() >= pausedUntil ? level : null),
164
236
  budget,
165
237
  // Proxying other stacks' paths: nothing can be ruled out by stack.
166
238
  stack: options.proxiesOtherStacks === true ? undefined : isStack(options.stack) ? options.stack : "node",
167
239
  tokensPerUserHour: typeof options.tokensPerUserHour === "number" && options.tokensPerUserHour > 0 ? options.tokensPerUserHour : undefined,
240
+ onRaise: finding => { if (who)
241
+ book.consider(finding, who); },
168
242
  });
169
243
  const refreshConfig = async () => {
170
244
  configInFlight = true;
@@ -179,6 +253,7 @@ function start(options) {
179
253
  const hosts = body.outbound?.hosts;
180
254
  if (Array.isArray(hosts))
181
255
  pipeline.setKnownOutboundHosts(hosts.filter((h) => typeof h === "string"));
256
+ book.configure(body.pausing, body.pauses, body.lifted);
182
257
  }
183
258
  else if (response.status === 401) {
184
259
  if (!revoked())
@@ -187,6 +262,7 @@ function start(options) {
187
262
  }
188
263
  else if (response.status === 403) {
189
264
  level = null;
265
+ book.configure(null, [], []);
190
266
  report(typeof body.error === "string" ? body.error : "AgentBeam App monitoring is turned off for this workspace.");
191
267
  }
192
268
  else if (response.status === 429)
@@ -248,18 +324,45 @@ function start(options) {
248
324
  sendFailures = 0;
249
325
  return outcome;
250
326
  };
327
+ // Pauses this instance made go to the workspace, so the dashboard shows them and the app's other
328
+ // instances pick them up with their config. A workspace that predates pausing is asked once.
329
+ const sendPauses = async () => {
330
+ if (pausesUnsupported || !book.size.reports || Date.now() < nextPauseSendAt)
331
+ return;
332
+ const batch = book.takeReports().slice(-100);
333
+ const t = withTimeout(REQUEST_TIMEOUT_MS);
334
+ try {
335
+ const response = await fetch(`${base}/v1/monitor/pauses`, { method: "POST", headers, body: JSON.stringify({ pauses: batch }), signal: t.signal });
336
+ if (response.status === 404 || response.status === 405)
337
+ pausesUnsupported = true;
338
+ else if (response.status >= 500) {
339
+ book.returnReports(batch);
340
+ nextPauseSendAt = Date.now() + backoff(flushEvery, ++pauseSendFailures);
341
+ return;
342
+ }
343
+ pauseSendFailures = 0;
344
+ }
345
+ catch {
346
+ book.returnReports(batch);
347
+ nextPauseSendAt = Date.now() + backoff(flushEvery, ++pauseSendFailures);
348
+ }
349
+ finally {
350
+ t.done();
351
+ }
352
+ };
251
353
  const flush = (force = false) => {
252
354
  // A forced flush waits for one in flight, then sends what that one left (roll-ups still collecting),
253
355
  // unless that send failed: the batch stays queued for after the backoff, not resent straight away.
254
356
  if (flushing)
255
357
  return force ? flushing.then(() => (Date.now() < nextSendAt ? undefined : flush(true))) : flushing;
256
- if (!pipeline.pending.length && !(force && pipeline.rollingUp))
358
+ const pauses = book.size.reports > 0 && !pausesUnsupported;
359
+ if (!pipeline.pending.length && !(force && pipeline.rollingUp) && !pauses)
257
360
  return Promise.resolve();
258
361
  const now = Date.now();
259
362
  if (!force && (now - lastFlush < flushEvery || now < nextSendAt))
260
363
  return Promise.resolve();
261
364
  lastFlush = now;
262
- flushing = pipeline.flush(send, { force }).catch(() => { }).finally(() => { flushing = null; });
365
+ flushing = pipeline.flush(send, { force }).then(sendPauses).catch(() => { }).finally(() => { flushing = null; });
263
366
  return flushing;
264
367
  };
265
368
  const noteBudget = () => {
@@ -287,13 +390,33 @@ function start(options) {
287
390
  const llmText = (text, source, info) => {
288
391
  const { result, window } = budgeted(text, source, source === "output" ? canaries : []);
289
392
  try {
393
+ const sender = { ip: typeof info?.ip === "string" ? info.ip : undefined, user: typeof info?.user === "string" ? info.user : undefined };
394
+ if (source === "prompt" && (sender.ip || sender.user)) {
395
+ ensureConfig();
396
+ const verdict = book.check(sender, { llm: true });
397
+ // Paused: refused before the model, so it isn't counted again.
398
+ if (verdict.paused)
399
+ return { ...result, paused: true, retryAfter: verdict.retryAfter };
400
+ }
290
401
  if (!window.trim())
291
402
  return result;
292
403
  const client = String(info?.ip ?? info?.user ?? "").trim().slice(0, 80) || undefined;
293
404
  const label = typeof info?.label === "string" && info.label.trim() ? info.label.trim().slice(0, 60) : source === "prompt" ? "prompts" : "model output";
294
405
  // Clean prompts are still counted per sender, to spot floods.
295
- if (result.flagged || (source === "prompt" && client))
296
- ingest(window, label, { source, client, rules: source === "output" ? canaries : undefined, excerpt: options.excerpts !== false });
406
+ if (result.flagged || (source === "prompt" && client)) {
407
+ who = sender;
408
+ try {
409
+ ingest(window, label, { source, client, rules: source === "output" ? canaries : undefined, excerpt: options.excerpts !== false });
410
+ }
411
+ finally {
412
+ who = null;
413
+ }
414
+ if (source === "prompt") {
415
+ const verdict = book.check(sender, { llm: true });
416
+ if (verdict.paused)
417
+ return { ...result, paused: true, retryAfter: verdict.retryAfter };
418
+ }
419
+ }
297
420
  }
298
421
  catch {
299
422
  /* never let monitoring affect the app */
@@ -338,9 +461,42 @@ function start(options) {
338
461
  g.__beamFetchWrapped = true;
339
462
  }
340
463
  }
464
+ // The sender of a request, as far as it can be trusted to pause.
465
+ const sender = (info, header) => {
466
+ const cf = info.cf && typeof info.cf === "object" ? info.cf : undefined;
467
+ return {
468
+ ip: trustedRequestIp(typeof info.ip === "string" ? info.ip : undefined, header, { ...platform, cloudflare: Boolean(cf) }),
469
+ user: typeof info.user === "string" ? info.user : null,
470
+ };
471
+ };
472
+ // Pauses are made only from a trusted address, but enforced on the address the app passed too:
473
+ // a client that writes a paused address into X-Forwarded-For only refuses itself.
474
+ const verdictFor = (from, given, path) => {
475
+ const verdict = book.check(from, { path });
476
+ if (verdict.paused || typeof given !== "string" || given === from.ip)
477
+ return verdict;
478
+ const other = book.check({ ip: given, user: from.user }, { path });
479
+ return other.paused ? other : verdict;
480
+ };
481
+ const check = (info) => {
482
+ try {
483
+ if (!info || typeof info !== "object")
484
+ return ALLOW;
485
+ ensureConfig();
486
+ const header = headerReader(info.headers);
487
+ // A trusted platform header stands in for an address the app didn't pass.
488
+ return verdictFor(sender(info, header), info.ip, typeof info.url === "string" ? info.url : undefined);
489
+ }
490
+ catch {
491
+ return ALLOW;
492
+ }
493
+ };
341
494
  void refreshConfig();
342
- return {
495
+ const monitor = {
343
496
  enabled: true,
497
+ check,
498
+ pausedResponse,
499
+ middleware: () => nodeMiddleware(monitor),
344
500
  event(type, info) {
345
501
  if (!["login.failed", "login.succeeded", "admin.granted", "apikey.created"].includes(type))
346
502
  return;
@@ -350,39 +506,74 @@ function start(options) {
350
506
  },
351
507
  usage(info) {
352
508
  const tokens = Number(info?.tokens);
353
- const who = short(info?.user, 80) ?? short(info?.ip, 64);
354
- if (!(tokens > 0) || !who)
509
+ const sender = short(info?.user, 80) ?? short(info?.ip, 64);
510
+ if (!(tokens > 0) || !sender)
355
511
  return;
356
- guarded(() => { pipeline.usage(who, Math.min(tokens, 1e9), short(info?.model, 80) ? `model=${short(info?.model, 80)}` : ""); });
512
+ guarded(() => {
513
+ who = { user: short(info?.user, 80), ip: short(info?.ip, 64) };
514
+ try {
515
+ pipeline.usage(sender, Math.min(tokens, 1e9), short(info?.model, 80) ? `model=${short(info?.model, 80)}` : "");
516
+ }
517
+ finally {
518
+ who = null;
519
+ }
520
+ });
357
521
  },
358
522
  outbound,
359
523
  request(info) {
360
524
  try {
361
525
  if (!info || typeof info.url !== "string")
362
- return;
526
+ return ALLOW;
363
527
  const text = (v, max) => (v === null || v === undefined || v === "" ? undefined : String(v).slice(0, max));
364
528
  const count = (v) => (typeof v === "number" && Number.isFinite(v) && v >= 0 ? Math.round(v) : undefined);
365
529
  const header = headerReader(info.headers);
366
- const country = text(info.country ?? header("x-vercel-ip-country") ?? header("cf-ipcountry") ?? header("cloudfront-viewer-country"), 2);
530
+ const cf = info.cf && typeof info.cf === "object" ? info.cf : undefined;
531
+ const country = text(info.country ?? cf?.country ?? header("x-vercel-ip-country") ?? header("cf-ipcountry") ?? header("cloudfront-viewer-country"), 2);
532
+ ensureConfig();
533
+ const from = sender(info, header);
534
+ const before = verdictFor(from, info.ip, info.url);
535
+ const version = book.version;
536
+ // A paused sender is refused, not checked again: that would only count the refusals.
537
+ if (before.paused)
538
+ return before;
367
539
  // Same JSON shape as an access-log line, so the rules see method, path+query, client and agent.
368
540
  // The referrer isn't included: it's the page the visitor came from, usually this app's own.
369
- ingest(JSON.stringify({
370
- method: String(info.method || "GET").toUpperCase().slice(0, 16),
371
- path: info.url.slice(0, 8192),
372
- httpStatus: count(info.status),
373
- srcIp: text(info.ip, 64),
374
- clientUa: text(info.userAgent ?? header("user-agent"), 512),
375
- host: text(header("host"), 200),
376
- responseBytes: count(info.bytes),
377
- durationMs: count(info.durationMs),
378
- country: country && /^[A-Za-z]{2}$/.test(country) ? country.toUpperCase() : undefined,
379
- asn: count(info.asn),
380
- // Sent only by Next.js itself; from a client it's an attempt to skip middleware (CVE-2025-29927).
381
- "x-middleware-subrequest": text(header("x-middleware-subrequest"), 200),
382
- }), "requests");
541
+ who = from;
542
+ try {
543
+ ingest(JSON.stringify({
544
+ method: String(info.method || "GET").toUpperCase().slice(0, 16),
545
+ path: info.url.slice(0, 8192),
546
+ httpStatus: count(info.status),
547
+ srcIp: text(info.ip ?? from.ip, 64),
548
+ clientUa: text(info.userAgent ?? header("user-agent"), 512),
549
+ host: text(header("host"), 200),
550
+ responseBytes: count(info.bytes),
551
+ durationMs: count(info.durationMs),
552
+ country: country && /^[A-Za-z]{2}$/.test(country) ? country.toUpperCase() : undefined,
553
+ asn: count(info.asn ?? cf?.asn),
554
+ // Sent only by Next.js itself; from a client it's an attempt to skip middleware (CVE-2025-29927).
555
+ "x-middleware-subrequest": text(header("x-middleware-subrequest"), 200),
556
+ }), "requests", info.headers || cf ? {
557
+ // Read from the headers only if this request raises a finding.
558
+ identity: () => {
559
+ const signals = clientSignals(header, cf);
560
+ for (const key of Object.keys(signals))
561
+ if (signals[key] === undefined)
562
+ delete signals[key];
563
+ return { signatureAgent: signatureAgentOrigin(header("signature-agent")), signals: Object.keys(signals).length ? signals : undefined };
564
+ },
565
+ } : undefined);
566
+ }
567
+ finally {
568
+ who = null;
569
+ }
570
+ // This request may be the one that tipped it (the 100th path in a minute); checked again
571
+ // only when it made a pause.
572
+ return book.version === version ? before : verdictFor(from, info.ip, info.url);
383
573
  }
384
574
  catch {
385
575
  /* never let monitoring affect the app */
576
+ return ALLOW;
386
577
  }
387
578
  },
388
579
  log(line) {
@@ -393,5 +584,6 @@ function start(options) {
393
584
  output: (text, info) => llmText(text, "output", info),
394
585
  flush: (opts) => flush(Boolean(opts?.force)).catch(() => { }),
395
586
  };
587
+ return monitor;
396
588
  }
397
589
  //# sourceMappingURL=sdk.js.map
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAoB,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAwC,MAAM,oBAAoB,CAAC;AAC3G,OAAO,EAAE,OAAO,EAAc,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAkC,MAAM,oBAAoB,CAAC;AAG7G,OAAO,EAAE,eAAe,EAAE,YAAY,EAAqB,MAAM,kBAAkB,CAAC;AAkHpF,yGAAyG;AACzG,SAAS,aAAa,CAAC,MAA4C,EAAE,EAA2C;IAC9G,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;IACzD,qGAAqG;IACrG,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,MAAM,UAAU,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,EAAE,EAAE,KAAK,CAAC;IACxB,MAAM,QAAQ,GAAG,EAAE,EAAE,mBAAmB,CAAC;IACzC,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QACrE,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS;QACzD,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;QAClD,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QAChD,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC9H,aAAa,EAAE,OAAO,EAAE,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAChF,aAAa,EAAE,OAAO,EAAE,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAChF,UAAU,EAAE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAClG,aAAa,EAAE,OAAO,QAAQ,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACxG,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;KACnF,CAAC;AACJ,CAAC;AAuFD,MAAM,KAAK,GAAG,uBAAuB,CAAC;AACtC,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACtC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AAElC,SAAS,GAAG,CAAC,IAAY;IACvB,MAAM,CAAC,GAAI,UAAyE,CAAC,OAAO,CAAC;IAC7F,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AAC7C,CAAC;AAED,gGAAgG;AAChG,SAAS,YAAY,CAAC,OAA+B;IACnD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;IACpE,IAAI,OAAQ,OAAmB,CAAC,GAAG,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC,EAAE,CAAE,OAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;IAC/G,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/G,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,EAAU;IAC7B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACvD,+GAA+G;IAC9G,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAC;IAC5C,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACjC,MAAM,cAAc,GAAG,CAAC,GAAG,MAAM,CAAC;AAClC,MAAM,kBAAkB,GAAG,EAAE,GAAG,MAAM,CAAC;AACvC,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;AACtC,4FAA4F;AAC5F,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7I,oGAAoG;AACpG,SAAS,UAAU,CAAC,OAAgB;IAClC,MAAM,EAAE,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC;AAC3F,CAAC;AAED,MAAM,aAAa,GAAoC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AACnG,MAAM,KAAK,GAAG,GAAc,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;AAEjF,SAAS,UAAU,CAAC,QAAkB;IACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACvG,OAAO,MAAM,CAAC,MAAM;QAClB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,wBAAwB,EAAE,KAAK,EAAE,sCAAsC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACxI,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QACtD,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,sGAAsG;AACtG,MAAM,MAAM,GAAG,MAAM,CAAC;AACtB,MAAM,OAAO,GAAG,GAAG,CAAC;AACpB,MAAM,QAAQ,GAAG,OAAO,CAAC;AAEzB,mEAAmE;AACnE,SAAS,IAAI,CAAC,IAAa,EAAE,MAA2B,EAAE,QAAuB,EAAE;IACjF,IAAI,CAAC;QACH,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACrF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAClC,IAAI,KAAK,GAAkB,EAAE,CAAC;QAC9B,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;YAC1E,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC;YACpC,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;aACrF,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC;QAC7I,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC;AACH,CAAC;AACD,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,MAA2B,EAAE,KAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC;AAEtH,0FAA0F;AAC1F,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,sHAAsH;AACtH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,UAAmC,EAAE;IAC7E,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,KAAK,GAAY,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAY,CAAC;AAEnE,SAAS,cAAc,CAAC,OAAgB;IACtC,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,EAAE;QAChC,MAAM,EAAE,GAAG;QACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;KACxJ,CAAC,CAAC;AACL,CAAC;AAED,6FAA6F;AAC7F,SAAS,cAAc,CAAC,OAA8C;IACpE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;YACtD,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,IAAI,SAAS,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACjE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC/D,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBAClD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC3C,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;gBACtB,OAAO;YACT,CAAC;YACD,GAAG,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACtB,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,IAAI,GAAe;IACvB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;IACxG,GAAG,KAAI,CAAC,EAAE,KAAK,KAAI,CAAC,EAAE,KAAK,KAAI,CAAC,EAAE,QAAQ,KAAI,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,OAAO,EAAE,KAAK;IACtF,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;IACjC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,UAA6B,EAAE;IAC9D,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,iFAAiF;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,OAA0B;IACvC,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,MAAM,KAAK,GAAG,CAAC,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACvG,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF,+FAA+F;IAC/F,qFAAqF;IACrF,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,IAAI,SAAS,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,CAAC,IAAa,EAAE,MAA2B,EAAE,QAAuB,EAAE,EAAE,EAAE,CACzF,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5G,MAAM,KAAK,GAAe,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;IAClJ,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,yGAAyG,CAAC,CAAC;QAClH,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;QACzE,MAAM,CAAC,6DAA6D,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC,oBAAoB,CAAC,IAAI,2BAA2B,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpH,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QAAC,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,MAAM,CAAC,oCAAoC,IAAI,qBAAqB,CAAC,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;IAC3H,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7F,MAAM,CAAC,kFAAkF,CAAC,CAAC;QAC3F,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,CAAC;IAC3E,IAAI,MAAM,GAAwB,IAAI,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,UAAU,GAAI,UAAwD,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;QAChG,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACtG,8FAA8F;QAC9F,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,wDAAyD,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACzF,IAAI,KAAK,GAAwB,IAAI,CAAC;IACtC,kGAAkG;IAClG,+EAA+E;IAC/E,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,QAAQ,GAAyB,IAAI,CAAC;IAC1C,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;IAChD,+FAA+F;IAC/F,IAAI,GAAG,GAAwD,IAAI,CAAC;IACpE,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;IAC5H,MAAM,IAAI,GAAG,IAAI,SAAS,CAAC;QACzB,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;YAC1B,MAAM,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;YAC/C,IAAI,IAAI,KAAK,SAAS;gBACpB,QAAQ,CAAC,UAAU,CAAC;oBAClB,EAAE,EAAE,iBAAiB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,KAAK,EAAE,qDAAqD;oBACrJ,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,OAAO;iBACzH,CAAC,CAAC;QACP,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;QACnC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,MAAM;QACN,mEAAmE;QACnE,KAAK,EAAE,OAAO,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;QACxG,iBAAiB,EAAE,OAAO,OAAO,CAAC,iBAAiB,KAAK,QAAQ,IAAI,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;QACzI,OAAO,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;KAC9D,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;QAC/B,cAAc,GAAG,IAAI,CAAC;QACtB,MAAM,CAAC,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,oBAAoB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACzF,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAEpD,CAAC;YACF,cAAc,GAAG,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC;gBACjC,YAAY,GAAG,CAAC,CAAC;gBACjB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;gBACnC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC;gBAClH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAgD,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAClG,CAAC;iBACI,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,OAAO,EAAE;oBAAE,MAAM,CAAC,kHAAkH,CAAC,CAAC;gBAC3I,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;YACjD,CAAC;iBACI,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACjC,KAAK,GAAG,IAAI,CAAC;gBACb,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC7B,MAAM,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,4DAA4D,CAAC,CAAC;YACrH,CAAC;iBACI,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,cAAc,EAAE,CAAC,CAAC,8DAA8D;QAClF,CAAC;gBAAS,CAAC;YACT,CAAC,CAAC,IAAI,EAAE,CAAC;YACT,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,cAAc,GAAG,KAAK,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,cAAc,IAAI,OAAO,EAAE;YAAE,OAAO;QACxC,MAAM,KAAK,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;QACpG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,KAAK;YAAE,KAAK,aAAa,EAAE,CAAC;IACxE,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,KAAK,EAAE,KAAuB,EAAwB,EAAE;QACnE,0FAA0F;QAC1F,IAAI,MAAM,IAAI,KAAK;YAAE,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,CAAC,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAA0B,EAAE;YACtD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,sBAAsB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtJ,IAAI,QAAQ,CAAC,EAAE;oBAAE,OAAO,MAAM,CAAC;gBAC/B,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAyC,CAAC;gBAC/F,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAC5B,IAAI,CAAC,OAAO,EAAE;wBAAE,MAAM,CAAC,kHAAkH,CAAC,CAAC;oBAC3I,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;oBAC/C,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAAC,KAAK,GAAG,IAAI,CAAC;oBAAC,OAAO,MAAM,CAAC;gBAAC,CAAC;gBAC7D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAAC,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAAC,OAAO,MAAM,CAAC;gBAAC,CAAC;gBACvF,OAAO,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;YACnD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,OAAO,CAAC;YACjB,CAAC;oBAAS,CAAC;gBACT,CAAC,CAAC,IAAI,EAAE,CAAC;YACX,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,OAAO,KAAK,OAAO;YAAE,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,YAAY,CAAC,CAAC;;YAClF,YAAY,GAAG,CAAC,CAAC;QACtB,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,iGAAiG;IACjG,6FAA6F;IAC7F,MAAM,UAAU,GAAG,KAAK,IAAmB,EAAE;QAC3C,IAAI,iBAAiB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe;YAAE,OAAO;QACpF,MAAM,KAAK,GAAkB,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAClJ,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,iBAAiB,GAAG,IAAI,CAAC;iBAC5E,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAChJ,iBAAiB,GAAG,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAC1E,CAAC;gBAAS,CAAC;YACT,CAAC,CAAC,IAAI,EAAE,CAAC;QACX,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,KAAK,EAAiB,EAAE;QAC7C,qGAAqG;QACrG,mGAAmG;QACnG,IAAI,QAAQ;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC;QAC3D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QACpG,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,UAAU,IAAI,GAAG,GAAG,UAAU,CAAC;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3F,SAAS,GAAG,GAAG,CAAC;QAChB,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAChH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,GAAG,MAAM;YAAE,OAAO;QACnD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QACjE,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,IAAI,OAAO;YAAE,MAAM,CAAC,oCAAoC,OAAO,4CAA4C,OAAO,6BAA6B,CAAC,CAAC;IACnJ,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,aAA4D,EAAE,EAAE;QAC1G,IAAI,CAAC;YACH,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,IAAI,OAAO,EAAE;gBAAE,OAAO;YAChC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,UAAU;gBAAE,KAAK,KAAK,EAAE,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,MAA2B,EAAE,IAA4B,EAAa,EAAE;QACrG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YACxI,IAAI,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtD,YAAY,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,+DAA+D;gBAC/D,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;YACzF,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBAAE,OAAO,MAAM,CAAC;YAClC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC;YACrF,MAAM,KAAK,GAAG,OAAO,IAAI,EAAE,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;YACvJ,8DAA8D;YAC9D,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtD,GAAG,GAAG,MAAM,CAAC;gBACb,IAAI,CAAC;oBACH,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC;gBACpI,CAAC;wBAAS,CAAC;oBACT,GAAG,GAAG,IAAI,CAAC;gBACb,CAAC;gBACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClD,IAAI,OAAO,CAAC,MAAM;wBAAE,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;gBACzF,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,kGAAkG;IAClG,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,YAAY,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,IAAI,OAAO,EAAE;gBAAE,OAAO;YAChC,IAAI,EAAE,CAAC;YACP,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,UAAU;gBAAE,KAAK,KAAK,EAAE,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;IACH,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,CAAU,EAAE,GAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACpH,MAAM,QAAQ,GAAG,CAAC,MAAe,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAE,MAAmC,EAAE,GAAG,CAAC;QACnI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO;QACrC,+CAA+C;QAC/C,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI;YAAE,OAAO;QACvD,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC;IACF,IAAI,OAAO,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,CAAC,GAAG,UAAmE,CAAC;QAC9E,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC;YACzB,CAAC,CAAC,KAAK,GAAG,SAAS,gBAAgB,CAAC,KAAkC,EAAE,IAAkC;gBACxG,IAAI,CAAC;oBAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;gBACzD,OAAO,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAChD,CAAiB,CAAC;YAClB,CAAC,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,MAAM,MAAM,GAAG,CAAC,IAAe,EAAE,MAA4C,EAAE,EAAE;QAC/E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,OAAO;YACL,EAAE,EAAE,gBAAgB,CAAC,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACzH,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;SACvD,CAAC;IACJ,CAAC,CAAC;IACF,+FAA+F;IAC/F,kFAAkF;IAClF,MAAM,UAAU,GAAG,CAAC,IAAgD,EAAE,KAAc,EAAE,IAAwB,EAAW,EAAE;QACzH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO,OAAO,CAAC;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,IAAe,EAAW,EAAE;QACzC,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YACpD,YAAY,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1C,0EAA0E;YAC1E,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACxG,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,aAAa,EAAE,CAAC;IACrB,MAAM,OAAO,GAAe;QAC1B,OAAO,EAAE,IAAI;QACb,KAAK;QACL,cAAc;QACd,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC;QACzC,KAAK,CAAC,IAAI,EAAE,IAAI;YACd,IAAI,CAAC,CAAC,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO;YACnG,OAAO,CAAC,GAAG,EAAE;gBACX,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACjH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,IAAI;YACR,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACrC,OAAO,CAAC,GAAG,EAAE;gBACX,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;gBAC/D,IAAI,CAAC;oBAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAC,CAAC;wBAAS,CAAC;oBAAC,GAAG,GAAG,IAAI,CAAC;gBAAC,CAAC;YACjJ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,QAAQ;QACR,OAAO,CAAC,IAAI;YACV,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBACxD,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC5H,MAAM,KAAK,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAClH,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,IAAI,MAAM,CAAC,qBAAqB,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvJ,YAAY,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAClC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC7B,qFAAqF;gBACrF,IAAI,MAAM,CAAC,MAAM;oBAAE,OAAO,MAAM,CAAC;gBACjC,gGAAgG;gBAChG,4FAA4F;gBAC5F,GAAG,GAAG,IAAI,CAAC;gBACX,IAAI,CAAC;oBACH,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;wBACpB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;wBAC/D,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;wBAC7B,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;wBAC9B,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;wBACnC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC;wBAC3D,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;wBAC/B,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;wBAChC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;wBAClC,OAAO,EAAE,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;wBACrF,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC;wBAC/B,kGAAkG;wBAClG,yBAAyB,EAAE,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,GAAG,CAAC;qBACxE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;wBACnC,+DAA+D;wBAC/D,QAAQ,EAAE,GAAG,EAAE;4BACb,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;4BAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAA4B;gCAAE,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS;oCAAE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;4BACvH,OAAO,EAAE,cAAc,EAAE,oBAAoB,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;wBACzI,CAAC;qBACF,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACjB,CAAC;wBAAS,CAAC;oBACT,GAAG,GAAG,IAAI,CAAC;gBACb,CAAC;gBACD,yFAAyF;gBACzF,6BAA6B;gBAC7B,OAAO,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACjF,CAAC;YAAC,MAAM,CAAC;gBACP,yCAAyC;gBACzC,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,GAAG,CAAC,IAAI;YACN,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;QACrD,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;QACrD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;KAC7D,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-beam/beam",
3
- "version": "0.2.33",
3
+ "version": "0.2.35",
4
4
  "description": "Local-first observation and heuristic risk scanning for AI coding agents (Claude Code, Codex, Cursor, Copilot CLI, Gemini). Redacts secrets, flags risky tool calls, scans skills and MCP configs offline.",
5
5
  "keywords": [
6
6
  "ai agent security",