@memberjunction/ai-agents 5.51.0 → 6.1.0-edge.1

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 (52) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +13 -1
  3. package/dist/AgentRunner.d.ts +24 -0
  4. package/dist/AgentRunner.d.ts.map +1 -1
  5. package/dist/AgentRunner.js +52 -2
  6. package/dist/AgentRunner.js.map +1 -1
  7. package/dist/MemoryWriteManager.d.ts +25 -2
  8. package/dist/MemoryWriteManager.d.ts.map +1 -1
  9. package/dist/MemoryWriteManager.js +51 -11
  10. package/dist/MemoryWriteManager.js.map +1 -1
  11. package/dist/agent-types/base-agent-type.d.ts +23 -0
  12. package/dist/agent-types/base-agent-type.d.ts.map +1 -1
  13. package/dist/agent-types/base-agent-type.js +47 -1
  14. package/dist/agent-types/base-agent-type.js.map +1 -1
  15. package/dist/agent-types/flow-agent-prompt-params.d.ts +57 -0
  16. package/dist/agent-types/flow-agent-prompt-params.d.ts.map +1 -0
  17. package/dist/agent-types/flow-agent-prompt-params.js +8 -0
  18. package/dist/agent-types/flow-agent-prompt-params.js.map +1 -0
  19. package/dist/agent-types/flow-agent-type.d.ts +25 -0
  20. package/dist/agent-types/flow-agent-type.d.ts.map +1 -1
  21. package/dist/agent-types/flow-agent-type.js +56 -47
  22. package/dist/agent-types/flow-agent-type.js.map +1 -1
  23. package/dist/agent-types/flow-graph-adapters.d.ts +42 -0
  24. package/dist/agent-types/flow-graph-adapters.d.ts.map +1 -0
  25. package/dist/agent-types/flow-graph-adapters.js +99 -0
  26. package/dist/agent-types/flow-graph-adapters.js.map +1 -0
  27. package/dist/agent-types/index.d.ts +2 -0
  28. package/dist/agent-types/index.d.ts.map +1 -1
  29. package/dist/agent-types/index.js +2 -0
  30. package/dist/agent-types/index.js.map +1 -1
  31. package/dist/agent-types/loop-agent-prompt-params.d.ts +27 -0
  32. package/dist/agent-types/loop-agent-prompt-params.d.ts.map +1 -1
  33. package/dist/agent-types/loop-agent-prompt-params.js +5 -1
  34. package/dist/agent-types/loop-agent-prompt-params.js.map +1 -1
  35. package/dist/agent-types/loop-agent-response-type.d.ts +14 -3
  36. package/dist/agent-types/loop-agent-response-type.d.ts.map +1 -1
  37. package/dist/agent-types/loop-agent-response-type.js.map +1 -1
  38. package/dist/agent-types/loop-agent-type.d.ts +25 -0
  39. package/dist/agent-types/loop-agent-type.d.ts.map +1 -1
  40. package/dist/agent-types/loop-agent-type.js +104 -1
  41. package/dist/agent-types/loop-agent-type.js.map +1 -1
  42. package/dist/base-agent.d.ts +41 -0
  43. package/dist/base-agent.d.ts.map +1 -1
  44. package/dist/base-agent.js +243 -19
  45. package/dist/base-agent.js.map +1 -1
  46. package/dist/realtime/realtime-client-session-service.d.ts +7 -1
  47. package/dist/realtime/realtime-client-session-service.d.ts.map +1 -1
  48. package/dist/realtime/realtime-client-session-service.js +15 -6
  49. package/dist/realtime/realtime-client-session-service.js.map +1 -1
  50. package/dist/realtime/realtime-coagent-config.d.ts +1 -1
  51. package/dist/realtime/realtime-coagent-config.js +1 -1
  52. package/package.json +25 -25
package/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ ISC License
2
+
3
+ Copyright (c) 2023 MemberJunction
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @memberjunction/ai-agents
2
2
 
3
- Complete framework for building and executing AI agents in MemberJunction. Provides the `BaseAgent` execution engine, pluggable agent type system (Loop and Flow agents), hierarchical sub-agent orchestration, action execution, memory management with notes and examples, payload management, conversation context with message lifecycle management, and reranker integration.
3
+ Complete framework for building and executing AI agents in MemberJunction. Provides the `BaseAgent` execution engine, pluggable agent type system (Loop, Flow, Realtime and Harness agents), hierarchical sub-agent orchestration, action execution, memory management with notes and examples, payload management, conversation context with message lifecycle management, and reranker integration.
4
4
 
5
5
  It also provides two capability layers any agent can opt into:
6
6
 
@@ -142,6 +142,18 @@ Conversational agent that runs in a loop: prompt -> decide -> act -> repeat. Bes
142
142
 
143
143
  Step-based agent that follows a predefined flow graph. Each step has explicit paths to the next step based on conditions. Best for deterministic workflows where the execution path is known in advance.
144
144
 
145
+ #### HarnessAgentType
146
+
147
+ Runs an **external agent harness** — Claude Code, Codex CLI, OpenCode, Gemini CLI, Pi — as the reasoning substrate for an MJ agent, while MJ keeps identity, permissions, governed data access, payload contracts, HITL, cost control and run-level audit. Lives in [`@memberjunction/ai-agent-harness`](../AgentHarness/README.md).
148
+
149
+ It is the **opposite** design choice from `RealtimeAgentType`: where Realtime is session-driven and bypasses the loop entirely (`IsSessionDriven`), Harness stays *inside* the loop. `HarnessAgentType extends LoopAgentType` and inherits `DetermineNextStep` wholesale, because **a harness turn is protocol-identical to a Loop prompt iteration** — the harness ends each turn by emitting the same next-step JSON envelope a Loop model emits. `HarnessAgentBase extends BaseAgent` overrides exactly one method, `executePrompt`, substituting a harness turn for the prompt call.
150
+
151
+ That is why every existing guarantee still applies with no new enforcement code: next-step validation, per-action `MaxExecutionsPerRun`, skill gates, plan-mode blocking, `PayloadManager` ACLs, `checkExecutionGuardrails`, run-step recording. One authority channel, not two — which is also why the MCP loopback is read-only.
152
+
153
+ The `'HarnessAgentType'` string is registered under **both** ClassFactory roots (`BaseAgentType` for the protocol, `BaseAgent` for the driver), so a single `AIAgentType.DriverClass` value selects both halves.
154
+
155
+ See the [External Agent Harness Guide](../../../guides/AGENT_HARNESS_GUIDE.md).
156
+
145
157
  #### RealtimeAgentType
146
158
 
147
159
  Session-driven agent type for **live, low-latency, full-duplex** interaction (voice today; the contract is modality-agnostic). Unlike Loop and Flow, a Realtime agent does **not** run an iterative reasoning loop — modern realtime stacks (GPT Realtime, Gemini Live, ElevenLabs Agents, AssemblyAI Voice Agent) own the listen-reason-speak loop themselves, so `RealtimeAgentType` wraps a long-lived `BaseRealtimeModel` session instead. The marker is its `IsSessionDriven` getter (always `true`): `BaseAgent` duck-types it and routes execution to a `RealtimeSessionRunner` rather than entering the loop. See [Real-Time Co-Agents](#real-time-co-agents) below.
@@ -362,6 +362,30 @@ export declare class AgentRunner {
362
362
  * conversation is the source of truth for an identity that may have been resolved mid-session.
363
363
  */
364
364
  private applyReturningVisitorMemoryScope;
365
+ /**
366
+ * Hydrates `inputArtifacts` for a conversation-linked run that is not already carrying them.
367
+ *
368
+ * `RunAgentInConversation` gathers a conversation's artifacts before delegating to `RunAgent`,
369
+ * but every OTHER caller of `RunAgent` — anything that holds a `conversationDetailId` /
370
+ * `conversationId` and calls the runner directly — got an artifact-BLIND agent. BaseAgent gates
371
+ * both the `## Available Artifacts` manifest and the artifact tools on `params.inputArtifacts`,
372
+ * so with nothing set the model is never told the attachment exists and cannot call a tool
373
+ * against it. Nothing errors; the agent just silently answers without the artifact.
374
+ *
375
+ * Found during the 6.1 release: IT57's nine artifact-tool checks all failed this way, eight of
376
+ * them reporting `model-noncompliance:` for a manifest the model was never shown. The guarantee
377
+ * must not depend on which entry point the caller picked.
378
+ *
379
+ * Free on the `RunAgentInConversation` path: that flow always sets `inputArtifacts` (to `[]`
380
+ * when the conversation has none), so `undefined` here means "nobody has looked yet" and no
381
+ * conversation is ever scanned twice.
382
+ */
383
+ private hydrateConversationArtifacts;
384
+ /**
385
+ * The conversation a run belongs to, preferring the caller-supplied ID and falling back to a
386
+ * single load of the conversation detail. Returns undefined when the run is not conversation-linked.
387
+ */
388
+ private resolveConversationId;
365
389
  /**
366
390
  * Gathers all artifacts from a conversation (both artifact-system records and
367
391
  * uploaded file attachments) so the ArtifactToolManager can make them available
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
@@ -79,9 +79,12 @@ export class AgentRunner {
79
79
  if (!agentInstance) {
80
80
  throw new Error(`Failed to create agent instance for driver class: ${driverClass}`);
81
81
  }
82
+ // A conversation-linked run must see the conversation's artifacts no matter which
83
+ // entry point the caller used. See hydrateConversationArtifacts for why.
84
+ const runParams = await this.hydrateConversationArtifacts(params);
82
85
  // Execute the agent and return the result directly, threading the isolated provider.
83
86
  // Favor provider already in params (caller-supplied) over the instance-level provider.
84
- return await agentInstance.Execute({ ...params, provider: params.provider || this._provider });
87
+ return await agentInstance.Execute({ ...runParams, provider: runParams.provider || this._provider });
85
88
  }
86
89
  catch (error) {
87
90
  const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
@@ -294,7 +297,10 @@ export class AgentRunner {
294
297
  ...params.data,
295
298
  conversationId,
296
299
  },
297
- inputArtifacts: inputArtifacts.length > 0 ? inputArtifacts : undefined,
300
+ // Always set — an EMPTY array records "this conversation was scanned and has none",
301
+ // which is what stops RunAgent's hydrateConversationArtifacts from scanning again.
302
+ // (BaseAgent tests `inputArtifacts?.length`, so [] and undefined behave identically there.)
303
+ inputArtifacts,
298
304
  conversationDetailId: agentResponseDetailId,
299
305
  onProgress: wrappedOnProgress
300
306
  };
@@ -1241,6 +1247,50 @@ export class AgentRunner {
1241
1247
  LogError(`[ReturningVisitor] failed to derive memory scope for conversation ${conversationId}: ${e instanceof Error ? e.message : String(e)}`);
1242
1248
  }
1243
1249
  }
1250
+ /**
1251
+ * Hydrates `inputArtifacts` for a conversation-linked run that is not already carrying them.
1252
+ *
1253
+ * `RunAgentInConversation` gathers a conversation's artifacts before delegating to `RunAgent`,
1254
+ * but every OTHER caller of `RunAgent` — anything that holds a `conversationDetailId` /
1255
+ * `conversationId` and calls the runner directly — got an artifact-BLIND agent. BaseAgent gates
1256
+ * both the `## Available Artifacts` manifest and the artifact tools on `params.inputArtifacts`,
1257
+ * so with nothing set the model is never told the attachment exists and cannot call a tool
1258
+ * against it. Nothing errors; the agent just silently answers without the artifact.
1259
+ *
1260
+ * Found during the 6.1 release: IT57's nine artifact-tool checks all failed this way, eight of
1261
+ * them reporting `model-noncompliance:` for a manifest the model was never shown. The guarantee
1262
+ * must not depend on which entry point the caller picked.
1263
+ *
1264
+ * Free on the `RunAgentInConversation` path: that flow always sets `inputArtifacts` (to `[]`
1265
+ * when the conversation has none), so `undefined` here means "nobody has looked yet" and no
1266
+ * conversation is ever scanned twice.
1267
+ */
1268
+ async hydrateConversationArtifacts(params) {
1269
+ if (params.inputArtifacts !== undefined || !params.contextUser) {
1270
+ return params;
1271
+ }
1272
+ const conversationId = await this.resolveConversationId(params);
1273
+ if (!conversationId) {
1274
+ return params;
1275
+ }
1276
+ const inputArtifacts = await this.gatherConversationArtifacts(conversationId, params.contextUser);
1277
+ return inputArtifacts.length > 0 ? { ...params, inputArtifacts } : params;
1278
+ }
1279
+ /**
1280
+ * The conversation a run belongs to, preferring the caller-supplied ID and falling back to a
1281
+ * single load of the conversation detail. Returns undefined when the run is not conversation-linked.
1282
+ */
1283
+ async resolveConversationId(params) {
1284
+ if (params.conversationId) {
1285
+ return params.conversationId;
1286
+ }
1287
+ if (!params.conversationDetailId) {
1288
+ return undefined;
1289
+ }
1290
+ const md = params.provider || this._provider;
1291
+ const detail = await md.GetEntityObject('MJ: Conversation Details', params.contextUser);
1292
+ return (await detail.Load(params.conversationDetailId)) ? detail.ConversationID : undefined;
1293
+ }
1244
1294
  /**
1245
1295
  * Gathers all artifacts from a conversation (both artifact-system records and
1246
1296
  * uploaded file attachments) so the ArtifactToolManager can make them available
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
@@ -100,8 +100,20 @@ export interface MemoryWriteManagerConfig {
100
100
  export declare class MemoryWriteManager {
101
101
  /** Normalized-note-hash → noteId persisted this run (within-run idempotency + supersede-own lookup) */
102
102
  private writtenNotesByHash;
103
- /** IDs of notes persisted this run (distinguishes supersede-own from cross-run dedupe) */
104
- private writtenNoteIds;
103
+ /**
104
+ * noteId → scope key, for notes persisted this run. Distinguishes supersede-own from cross-run
105
+ * dedupe, and — because the value is the SCOPE — keeps supersede-own from crossing scopes.
106
+ *
107
+ * 🚨 The scope must be part of this bookkeeping, not just the ID. `FindSimilarAgentNotes`
108
+ * deliberately does not filter out agent-wide (`UserID IS NULL`) notes when a userId is supplied
109
+ * (see memory-manager-agent.ts, "those notes have UserID=null — FindSimilarAgentNotes won't
110
+ * filter them out"), so a user-scoped write sees an agent-scoped note written moments earlier in
111
+ * the same run. Superseding across that boundary loses one memory outright AND leaves the
112
+ * survivor holding user-specific content at agent-wide scope — `supersedeOwnNote` rewrites
113
+ * `Note`/`Type` but never `UserID` — where every other user of the agent can read it. Caught by
114
+ * IT61/MG3 during the 6.1 release.
115
+ */
116
+ private writtenNoteScopes;
105
117
  private writeCount;
106
118
  private readonly maxWritesPerRun;
107
119
  private readonly nearDupSimilarity;
@@ -124,6 +136,17 @@ export declare class MemoryWriteManager {
124
136
  * idempotency hash map, the own-note ID set, or the write cap counter.
125
137
  */
126
138
  private recordOutcome;
139
+ /**
140
+ * True when `noteId` was written earlier in THIS run **at the same scope** — the only case where
141
+ * last-write-wins supersede is correct. A same-run note at a DIFFERENT scope is a different
142
+ * memory that merely reads alike; it must be left alone so the current request persists as its
143
+ * own note. See {@link writtenNoteScopes} for why the scope check is load-bearing.
144
+ */
145
+ private isOwnNoteInScope;
146
+ /** Within-run idempotency key: the normalized note text, qualified by the scope it lands at. */
147
+ private scopedHash;
148
+ /** Stable identity for a write scope — agent, user (null = agent-wide), and company. */
149
+ private scopeKey;
127
150
  /** Returns an error message when the request fails validation, null when valid. */
128
151
  private validateRequest;
129
152
  /** Case/whitespace-insensitive hash for within-run idempotency. */
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryWriteManager.d.ts","sourceRoot":"","sources":["../src/MemoryWriteManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryWriteManager.d.ts","sourceRoot":"","sources":["../src/MemoryWriteManager.ts"],"names":[],"mappings":"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"}
@@ -23,8 +23,20 @@ export class MemoryWriteManager {
23
23
  constructor(config) {
24
24
  /** Normalized-note-hash → noteId persisted this run (within-run idempotency + supersede-own lookup) */
25
25
  this.writtenNotesByHash = new Map();
26
- /** IDs of notes persisted this run (distinguishes supersede-own from cross-run dedupe) */
27
- this.writtenNoteIds = new Set();
26
+ /**
27
+ * noteId → scope key, for notes persisted this run. Distinguishes supersede-own from cross-run
28
+ * dedupe, and — because the value is the SCOPE — keeps supersede-own from crossing scopes.
29
+ *
30
+ * 🚨 The scope must be part of this bookkeeping, not just the ID. `FindSimilarAgentNotes`
31
+ * deliberately does not filter out agent-wide (`UserID IS NULL`) notes when a userId is supplied
32
+ * (see memory-manager-agent.ts, "those notes have UserID=null — FindSimilarAgentNotes won't
33
+ * filter them out"), so a user-scoped write sees an agent-scoped note written moments earlier in
34
+ * the same run. Superseding across that boundary loses one memory outright AND leaves the
35
+ * survivor holding user-specific content at agent-wide scope — `supersedeOwnNote` rewrites
36
+ * `Note`/`Type` but never `UserID` — where every other user of the agent can read it. Caught by
37
+ * IT61/MG3 during the 6.1 release.
38
+ */
39
+ this.writtenNoteScopes = new Map();
28
40
  this.writeCount = 0;
29
41
  this.maxWritesPerRun = config?.maxWritesPerRun || 5;
30
42
  this.nearDupSimilarity = config?.nearDupSimilarity || 0.85;
@@ -34,7 +46,7 @@ export class MemoryWriteManager {
34
46
  /** Reset all per-run state. Called at run start, mirroring ArtifactToolManager.Clear(). */
35
47
  Clear() {
36
48
  this.writtenNotesByHash.clear();
37
- this.writtenNoteIds.clear();
49
+ this.writtenNoteScopes.clear();
38
50
  this.writeCount = 0;
39
51
  }
40
52
  /** Number of notes persisted this run (written + superseded) */
@@ -57,7 +69,13 @@ export class MemoryWriteManager {
57
69
  if (validationError) {
58
70
  return finish({ disposition: 'rejected-type', reason: validationError });
59
71
  }
60
- const hash = this.normalizeAndHash(request.note);
72
+ // Scope FIRST: the idempotency key must include it. Two writes of the same text at different
73
+ // scopes (agent-wide vs. this user) are two different memories, and a scope-blind hash collapses
74
+ // them to `skipped-duplicate`, silently dropping the second — the same loss the supersede-own
75
+ // scope check prevents, arriving through the idempotency door. Same text at the SAME scope still
76
+ // hashes identically, so within-run idempotency (IT61/MG4) is unchanged.
77
+ const scope = this.clampScope(request, context);
78
+ const hash = this.scopedHash(request.note, scope);
61
79
  if (this.writtenNotesByHash.has(hash)) {
62
80
  return finish({
63
81
  disposition: 'skipped-duplicate',
@@ -71,10 +89,9 @@ export class MemoryWriteManager {
71
89
  reason: `Per-run memory write cap (${this.maxWritesPerRun}) reached. Remaining facts will be captured by the scheduled Memory Manager.`,
72
90
  });
73
91
  }
74
- const scope = this.clampScope(request, context);
75
92
  const nearDup = await this.findNearDuplicate(request.note, scope, context);
76
93
  let outcome;
77
- if (nearDup && this.writtenNoteIds.has(nearDup.noteId)) {
94
+ if (nearDup && this.isOwnNoteInScope(nearDup.noteId, scope)) {
78
95
  outcome = await this.supersedeOwnNote(nearDup.noteId, request, scope, context);
79
96
  }
80
97
  else if (nearDup) {
@@ -83,7 +100,7 @@ export class MemoryWriteManager {
83
100
  else {
84
101
  outcome = await this.persistNewNote(request, scope, context);
85
102
  }
86
- this.recordOutcome(outcome, hash);
103
+ this.recordOutcome(outcome, hash, scope);
87
104
  return finish(outcome);
88
105
  }
89
106
  /**
@@ -91,16 +108,34 @@ export class MemoryWriteManager {
91
108
  * seams) so subclass/test overrides of the I/O methods can't desync the
92
109
  * idempotency hash map, the own-note ID set, or the write cap counter.
93
110
  */
94
- recordOutcome(outcome, hash) {
111
+ recordOutcome(outcome, hash, scope) {
95
112
  if (outcome.disposition === 'written' && outcome.noteId) {
96
113
  this.writeCount++;
97
114
  this.writtenNotesByHash.set(hash, outcome.noteId);
98
- this.writtenNoteIds.add(outcome.noteId);
115
+ this.writtenNoteScopes.set(outcome.noteId, this.scopeKey(outcome.finalScope ?? scope));
99
116
  }
100
117
  else if (outcome.disposition === 'superseded-own' && outcome.noteId) {
101
118
  this.writtenNotesByHash.set(hash, outcome.noteId);
102
119
  }
103
120
  }
121
+ /**
122
+ * True when `noteId` was written earlier in THIS run **at the same scope** — the only case where
123
+ * last-write-wins supersede is correct. A same-run note at a DIFFERENT scope is a different
124
+ * memory that merely reads alike; it must be left alone so the current request persists as its
125
+ * own note. See {@link writtenNoteScopes} for why the scope check is load-bearing.
126
+ */
127
+ isOwnNoteInScope(noteId, scope) {
128
+ const written = this.writtenNoteScopes.get(noteId);
129
+ return written !== undefined && written === this.scopeKey(scope);
130
+ }
131
+ /** Within-run idempotency key: the normalized note text, qualified by the scope it lands at. */
132
+ scopedHash(noteText, scope) {
133
+ return `${this.scopeKey(scope)}|${this.normalizeAndHash(noteText)}`;
134
+ }
135
+ /** Stable identity for a write scope — agent, user (null = agent-wide), and company. */
136
+ scopeKey(scope) {
137
+ return `${scope?.agentId ?? ''}|${scope?.userId ?? ''}|${scope?.companyId ?? ''}`;
138
+ }
104
139
  // ─── GUARDS ───
105
140
  /** Returns an error message when the request fails validation, null when valid. */
106
141
  validateRequest(request) {
@@ -161,12 +196,17 @@ export class MemoryWriteManager {
161
196
  async findNearDuplicate(noteText, scope, context) {
162
197
  try {
163
198
  const matches = await this.queryVectorService(noteText, scope);
164
- const ownHit = matches.find((m) => this.writtenNoteIds.has(m.noteId));
199
+ const ownHit = matches.find((m) => this.isOwnNoteInScope(m.noteId, scope));
165
200
  if (ownHit) {
166
201
  return { noteId: ownHit.noteId, similarity: ownHit.similarity };
167
202
  }
203
+ // A note this run wrote at a DIFFERENT scope must not be returned at all. Falling through to
204
+ // the exact-restatement branch would route it to `touchExistingNote`, which bumps the other
205
+ // scope's note and drops this write — the same memory loss the scope check exists to prevent,
206
+ // just via a different door.
207
+ const crossScopeOwn = new Set(matches.filter((m) => this.writtenNoteScopes.has(m.noteId)).map((m) => m.noteId));
168
208
  const requestHash = this.normalizeAndHash(noteText);
169
- const exactHit = matches.find((m) => this.normalizeAndHash(m.noteText) === requestHash);
209
+ const exactHit = matches.find((m) => !crossScopeOwn.has(m.noteId) && this.normalizeAndHash(m.noteText) === requestHash);
170
210
  if (exactHit) {
171
211
  return { noteId: exactHit.noteId, similarity: exactHit.similarity };
172
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryWriteManager.js","sourceRoot":"","sources":["../src/MemoryWriteManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAY,MAAM,sBAAsB,CAAC;AAEtG,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AA8FpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,kBAAkB;IAY7B,YAAY,MAAiC;QAX7C,uGAAuG;QAC/F,uBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAC5D,0FAA0F;QAClF,mBAAc,GAAgB,IAAI,GAAG,EAAE,CAAC;QACxC,eAAU,GAAG,CAAC,CAAC;QAQrB,IAAI,CAAC,eAAe,GAAG,MAAM,EAAE,eAAe,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,GAAG,MAAM,EAAE,iBAAiB,IAAI,IAAI,CAAC;QAC3D,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,cAAc,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,IAAI,CAAC;IACrD,CAAC;IAED,2FAA2F;IAC3F,KAAK;QACH,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,gEAAgE;IAChE,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,OAA2B,EAAE,OAA2B;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,OAA0D,EAAqB,EAAE,CAAC,CAAC;YACjG,GAAG,OAAO;YACV,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,MAAM,CAAC;gBACZ,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;gBACzC,MAAM,EAAE,uEAAuE;aAChF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC;gBACZ,WAAW,EAAE,aAAa;gBAC1B,MAAM,EAAE,6BAA6B,IAAI,CAAC,eAAe,8EAA8E;aACxI,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAE3E,IAAI,OAA0D,CAAC;QAC/D,IAAI,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACvD,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,OAA0D,EAAE,IAAY;QAC5F,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,KAAK,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACtE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,iBAAiB;IAEjB,mFAAmF;IAC3E,eAAe,CAAC,OAA2B;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,gBAAgB,OAAO,CAAC,IAAI,yIAAyI,CAAC;QAC/K,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,4BAA4B,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,OAAO,2BAA2B,IAAI,CAAC,aAAa,qBAAqB,IAAI,CAAC,MAAM,sCAAsC,CAAC;QAC7H,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mEAAmE;IAC3D,gBAAgB,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAAC,OAA2B,EAAE,OAA2B;QACzE,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI;YACrE,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;SACrC,CAAC;IACJ,CAAC;IAED,sDAAsD;IAEtD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACO,KAAK,CAAC,iBAAiB,CAC/B,QAAgB,EAChB,KAAuB,EACvB,OAA2B;QAE3B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACtE,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;YAClE,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,WAAW,CAAC,CAAC;YACxF,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtE,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC;gBACT,OAAO,EAAE,iFAAiF;gBAC1F,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAClD,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,6DAA6D;IACnD,KAAK,CAAC,kBAAkB,CAChC,QAAgB,EAChB,KAAuB;QAEvB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAC3D,QAAQ,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,MAAM,IAAI,SAAS,EACzB,KAAK,CAAC,SAAS,IAAI,SAAS,EAC5B,CAAC,EACD,IAAI,CAAC,iBAAiB,CACvB,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED,oDAAoD;IAEpD;;;;;;OAMG;IACO,KAAK,CAAC,gBAAgB,CAC9B,MAAc,EACd,OAA2B,EAC3B,KAAuB,EACvB,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,2BAA2B,MAAM,gBAAgB,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM;gBACN,MAAM,EAAE,iCAAiC,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aACjG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,uBAAuB,MAAM,oBAAoB,CAAC,CAAC;QAC5E,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,MAAM;YACN,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,qEAAqE;SAC9E,CAAC;IACJ,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,iBAAiB,CAC/B,MAAc,EACd,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,MAAM,qBAAqB,EAAE,CAAC;QAC/G,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM;gBACN,MAAM,EAAE,mCAAmC,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aACnG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,iCAAiC,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO;YACL,WAAW,EAAE,SAAS;YACtB,MAAM;YACN,MAAM,EAAE,+FAA+F;SACxG,CAAC;IACJ,CAAC;IAED,oEAAoE;IAC1D,KAAK,CAAC,cAAc,CAC5B,OAA2B,EAC3B,KAAuB,EACvB,OAA2B;QAE3B,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;QACzF,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAsB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACtG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QAC3D,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC;QACvE,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAElF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,0BAA0B,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aAC1F,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,0BAA0B,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,iBAAiB,KAAK,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,CAAC;QAC7I,OAAO;YACL,WAAW,EAAE,SAAS;YACtB,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,uFAAuF;SAChG,CAAC;IACJ,CAAC;IAED,sEAAsE;IAC5D,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,OAA2B;QAClE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAsB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACtG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9B,CAAC;IAEO,UAAU,CAAC,OAA2B,EAAE,OAAe;QAC7D,WAAW,CAAC;YACV,OAAO,EAAE,uBAAuB,OAAO,EAAE;YACzC,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;SACjD,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"MemoryWriteManager.js","sourceRoot":"","sources":["../src/MemoryWriteManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAY,MAAM,sBAAsB,CAAC;AAEtG,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AA8FpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,kBAAkB;IAwB7B,YAAY,MAAiC;QAvB7C,uGAAuG;QAC/F,uBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAC5D;;;;;;;;;;;;WAYG;QACK,sBAAiB,GAAwB,IAAI,GAAG,EAAE,CAAC;QACnD,eAAU,GAAG,CAAC,CAAC;QAQrB,IAAI,CAAC,eAAe,GAAG,MAAM,EAAE,eAAe,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,GAAG,MAAM,EAAE,iBAAiB,IAAI,IAAI,CAAC;QAC3D,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,cAAc,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,IAAI,CAAC;IACrD,CAAC;IAED,2FAA2F;IAC3F,KAAK;QACH,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,gEAAgE;IAChE,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,OAA2B,EAAE,OAA2B;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,OAA0D,EAAqB,EAAE,CAAC,CAAC;YACjG,GAAG,OAAO;YACV,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,6FAA6F;QAC7F,iGAAiG;QACjG,8FAA8F;QAC9F,iGAAiG;QACjG,yEAAyE;QACzE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,MAAM,CAAC;gBACZ,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;gBACzC,MAAM,EAAE,uEAAuE;aAChF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC;gBACZ,WAAW,EAAE,aAAa;gBAC1B,MAAM,EAAE,6BAA6B,IAAI,CAAC,eAAe,8EAA8E;aACxI,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAE3E,IAAI,OAA0D,CAAC;QAC/D,IAAI,OAAO,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACK,aAAa,CACnB,OAA0D,EAC1D,IAAY,EACZ,KAAuB;QAEvB,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC;QACzF,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,KAAK,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACtE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,gBAAgB,CAAC,MAAc,EAAE,KAAuB;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnD,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,gGAAgG;IACxF,UAAU,CAAC,QAAgB,EAAE,KAAuB;QAC1D,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,wFAAwF;IAChF,QAAQ,CAAC,KAAmC;QAClD,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,EAAE,IAAI,KAAK,EAAE,MAAM,IAAI,EAAE,IAAI,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC;IACpF,CAAC;IAED,iBAAiB;IAEjB,mFAAmF;IAC3E,eAAe,CAAC,OAA2B;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,gBAAgB,OAAO,CAAC,IAAI,yIAAyI,CAAC;QAC/K,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,4BAA4B,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,OAAO,2BAA2B,IAAI,CAAC,aAAa,qBAAqB,IAAI,CAAC,MAAM,sCAAsC,CAAC;QAC7H,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mEAAmE;IAC3D,gBAAgB,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAAC,OAA2B,EAAE,OAA2B;QACzE,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI;YACrE,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;SACrC,CAAC;IACJ,CAAC;IAED,sDAAsD;IAEtD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACO,KAAK,CAAC,iBAAiB,CAC/B,QAAgB,EAChB,KAAuB,EACvB,OAA2B;QAE3B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;YAC3E,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;YAClE,CAAC;YACD,6FAA6F;YAC7F,4FAA4F;YAC5F,8FAA8F;YAC9F,6BAA6B;YAC7B,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CACjF,CAAC;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,WAAW,CAAC,CAAC;YACxH,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtE,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC;gBACT,OAAO,EAAE,iFAAiF;gBAC1F,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAClD,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,6DAA6D;IACnD,KAAK,CAAC,kBAAkB,CAChC,QAAgB,EAChB,KAAuB;QAEvB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAC3D,QAAQ,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,MAAM,IAAI,SAAS,EACzB,KAAK,CAAC,SAAS,IAAI,SAAS,EAC5B,CAAC,EACD,IAAI,CAAC,iBAAiB,CACvB,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED,oDAAoD;IAEpD;;;;;;OAMG;IACO,KAAK,CAAC,gBAAgB,CAC9B,MAAc,EACd,OAA2B,EAC3B,KAAuB,EACvB,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,2BAA2B,MAAM,gBAAgB,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM;gBACN,MAAM,EAAE,iCAAiC,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aACjG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,uBAAuB,MAAM,oBAAoB,CAAC,CAAC;QAC5E,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,MAAM;YACN,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,qEAAqE;SAC9E,CAAC;IACJ,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,iBAAiB,CAC/B,MAAc,EACd,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,MAAM,qBAAqB,EAAE,CAAC;QAC/G,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM;gBACN,MAAM,EAAE,mCAAmC,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aACnG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,iCAAiC,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO;YACL,WAAW,EAAE,SAAS;YACtB,MAAM;YACN,MAAM,EAAE,+FAA+F;SACxG,CAAC;IACJ,CAAC;IAED,oEAAoE;IAC1D,KAAK,CAAC,cAAc,CAC5B,OAA2B,EAC3B,KAAuB,EACvB,OAA2B;QAE3B,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;QACzF,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAsB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACtG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QAC3D,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC;QACvE,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAElF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,0BAA0B,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE;aAC1F,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,0BAA0B,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,iBAAiB,KAAK,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,CAAC;QAC7I,OAAO;YACL,WAAW,EAAE,SAAS;YACtB,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,uFAAuF;SAChG,CAAC;IACJ,CAAC;IAED,sEAAsE;IAC5D,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,OAA2B;QAClE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAsB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACtG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9B,CAAC;IAEO,UAAU,CAAC,OAA2B,EAAE,OAAe;QAC7D,WAAW,CAAC;YACV,OAAO,EAAE,uBAAuB,OAAO,EAAE;YACzC,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;SACjD,CAAC,CAAC;IACL,CAAC;CACF"}