@superblocksteam/vite-plugin-file-sync 2.0.43-next.9 → 2.0.48-next.0

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 (204) hide show
  1. package/dist/ai-service/agent/subagents/apis/api-executor.d.ts +57 -0
  2. package/dist/ai-service/agent/subagents/apis/api-executor.d.ts.map +1 -0
  3. package/dist/ai-service/agent/subagents/apis/api-executor.js +284 -0
  4. package/dist/ai-service/agent/subagents/apis/api-executor.js.map +1 -0
  5. package/dist/ai-service/agent/subagents/apis/context.d.ts +12 -0
  6. package/dist/ai-service/agent/subagents/apis/context.d.ts.map +1 -0
  7. package/dist/ai-service/agent/subagents/apis/context.js +18 -0
  8. package/dist/ai-service/agent/subagents/apis/context.js.map +1 -0
  9. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts +37 -31
  10. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts.map +1 -1
  11. package/dist/ai-service/agent/subagents/apis/generate-api-source.js +355 -479
  12. package/dist/ai-service/agent/subagents/apis/generate-api-source.js.map +1 -1
  13. package/dist/ai-service/agent/subagents/apis/state.d.ts +40 -0
  14. package/dist/ai-service/agent/subagents/apis/state.d.ts.map +1 -0
  15. package/dist/ai-service/agent/subagents/apis/state.js +25 -0
  16. package/dist/ai-service/agent/subagents/apis/state.js.map +1 -0
  17. package/dist/ai-service/agent/subagents/apis/types.d.ts +5 -0
  18. package/dist/ai-service/agent/subagents/apis/types.d.ts.map +1 -0
  19. package/dist/ai-service/agent/subagents/apis/types.js +2 -0
  20. package/dist/ai-service/agent/subagents/apis/types.js.map +1 -0
  21. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  22. package/dist/ai-service/agent/tool-message-utils.js +8 -24
  23. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  24. package/dist/ai-service/agent/tools/apis/build-api.d.ts +20 -0
  25. package/dist/ai-service/agent/tools/apis/build-api.d.ts.map +1 -0
  26. package/dist/ai-service/agent/tools/apis/build-api.js +170 -0
  27. package/dist/ai-service/agent/tools/apis/build-api.js.map +1 -0
  28. package/dist/ai-service/agent/tools/apis/finalize-api.d.ts +15 -0
  29. package/dist/ai-service/agent/tools/apis/finalize-api.d.ts.map +1 -0
  30. package/dist/ai-service/agent/tools/apis/finalize-api.js +103 -0
  31. package/dist/ai-service/agent/tools/apis/finalize-api.js.map +1 -0
  32. package/dist/ai-service/agent/tools/build-finalize.d.ts +1 -22
  33. package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
  34. package/dist/ai-service/agent/tools/build-finalize.js +27 -18
  35. package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
  36. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +1 -1
  37. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
  38. package/dist/ai-service/agent/tools/integrations/index.d.ts +1 -1
  39. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -1
  40. package/dist/ai-service/agent/tools/integrations/index.js +1 -1
  41. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -1
  42. package/dist/ai-service/agent/tools/integrations/internal.d.ts +1 -1
  43. package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -1
  44. package/dist/ai-service/agent/tools/integrations/internal.js +12 -1
  45. package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -1
  46. package/dist/ai-service/agent/tools/integrations/metadata.d.ts +1 -1
  47. package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -1
  48. package/dist/ai-service/agent/tools/integrations/metadata.js +1 -1
  49. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -1
  50. package/dist/ai-service/agent/tools/integrations/run-code.d.ts +1 -1
  51. package/dist/ai-service/agent/tools/integrations/run-code.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools/study-current-app-state.d.ts +1 -0
  53. package/dist/ai-service/agent/tools/study-current-app-state.d.ts.map +1 -1
  54. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools2/access-control.js +5 -2
  56. package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
  57. package/dist/ai-service/agent/tools2/registry.d.ts +2 -1
  58. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  59. package/dist/ai-service/agent/tools2/registry.js +4 -4
  60. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  61. package/dist/ai-service/agent/tools2/types.d.ts +17 -3
  62. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  63. package/dist/ai-service/agent/tools2/types.js +21 -0
  64. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  65. package/dist/ai-service/agent/utils.d.ts +1 -0
  66. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  67. package/dist/ai-service/agent/utils.js +1 -0
  68. package/dist/ai-service/agent/utils.js.map +1 -1
  69. package/dist/ai-service/integrations/metadata/database.d.ts.map +1 -1
  70. package/dist/ai-service/integrations/metadata/database.js +61 -20
  71. package/dist/ai-service/integrations/metadata/database.js.map +1 -1
  72. package/dist/ai-service/integrations/metadata/databricks.d.ts.map +1 -1
  73. package/dist/ai-service/integrations/metadata/databricks.js +5 -5
  74. package/dist/ai-service/integrations/metadata/databricks.js.map +1 -1
  75. package/dist/ai-service/integrations/metadata/graphql-based.d.ts +2 -0
  76. package/dist/ai-service/integrations/metadata/graphql-based.d.ts.map +1 -1
  77. package/dist/ai-service/integrations/metadata/graphql-based.js +95 -14
  78. package/dist/ai-service/integrations/metadata/graphql-based.js.map +1 -1
  79. package/dist/ai-service/integrations/metadata/llm-utils.d.ts +24 -0
  80. package/dist/ai-service/integrations/metadata/llm-utils.d.ts.map +1 -0
  81. package/dist/ai-service/integrations/metadata/llm-utils.js +45 -0
  82. package/dist/ai-service/integrations/metadata/llm-utils.js.map +1 -0
  83. package/dist/ai-service/integrations/store.d.ts +5 -5
  84. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  85. package/dist/ai-service/integrations/store.js +52 -53
  86. package/dist/ai-service/integrations/store.js.map +1 -1
  87. package/dist/ai-service/llm/context/constants.d.ts +7 -6
  88. package/dist/ai-service/llm/context/constants.d.ts.map +1 -1
  89. package/dist/ai-service/llm/context/constants.js +7 -6
  90. package/dist/ai-service/llm/context/constants.js.map +1 -1
  91. package/dist/ai-service/llm/context/context-handle.d.ts +106 -0
  92. package/dist/ai-service/llm/context/context-handle.d.ts.map +1 -0
  93. package/dist/ai-service/llm/context/context-handle.js +134 -0
  94. package/dist/ai-service/llm/context/context-handle.js.map +1 -0
  95. package/dist/ai-service/llm/context/context-lock.d.ts +144 -0
  96. package/dist/ai-service/llm/context/context-lock.d.ts.map +1 -0
  97. package/dist/ai-service/llm/context/context-lock.js +221 -0
  98. package/dist/ai-service/llm/context/context-lock.js.map +1 -0
  99. package/dist/ai-service/llm/context/context.d.ts +18 -19
  100. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  101. package/dist/ai-service/llm/context/context.js +78 -129
  102. package/dist/ai-service/llm/context/context.js.map +1 -1
  103. package/dist/ai-service/llm/context/index.d.ts +4 -0
  104. package/dist/ai-service/llm/context/index.d.ts.map +1 -1
  105. package/dist/ai-service/llm/context/index.js +5 -0
  106. package/dist/ai-service/llm/context/index.js.map +1 -1
  107. package/dist/ai-service/llm/context/internal-types.d.ts +0 -2
  108. package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -1
  109. package/dist/ai-service/llm/context/internal-types.js.map +1 -1
  110. package/dist/ai-service/llm/context/levels/l1.d.ts.map +1 -1
  111. package/dist/ai-service/llm/context/levels/l1.js +3 -5
  112. package/dist/ai-service/llm/context/levels/l1.js.map +1 -1
  113. package/dist/ai-service/llm/context/manager.d.ts +60 -11
  114. package/dist/ai-service/llm/context/manager.d.ts.map +1 -1
  115. package/dist/ai-service/llm/context/manager.js +113 -37
  116. package/dist/ai-service/llm/context/manager.js.map +1 -1
  117. package/dist/ai-service/llm/context/utils/content-compaction.d.ts +2 -2
  118. package/dist/ai-service/llm/context/utils/content-compaction.d.ts.map +1 -1
  119. package/dist/ai-service/llm/context/utils/content-compaction.js +6 -3
  120. package/dist/ai-service/llm/context/utils/content-compaction.js.map +1 -1
  121. package/dist/ai-service/llm/context/utils/index.d.ts +1 -1
  122. package/dist/ai-service/llm/context/utils/index.d.ts.map +1 -1
  123. package/dist/ai-service/llm/context/utils/index.js +1 -1
  124. package/dist/ai-service/llm/context/utils/index.js.map +1 -1
  125. package/dist/ai-service/llm/context/utils/message-utils.d.ts +17 -7
  126. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -1
  127. package/dist/ai-service/llm/context/utils/message-utils.js +31 -18
  128. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -1
  129. package/dist/ai-service/llmobs/helpers.d.ts +9 -2
  130. package/dist/ai-service/llmobs/helpers.d.ts.map +1 -1
  131. package/dist/ai-service/llmobs/helpers.js +17 -4
  132. package/dist/ai-service/llmobs/helpers.js.map +1 -1
  133. package/dist/ai-service/llmobs/middleware/retry.d.ts +51 -0
  134. package/dist/ai-service/llmobs/middleware/retry.d.ts.map +1 -0
  135. package/dist/ai-service/llmobs/middleware/retry.js +147 -0
  136. package/dist/ai-service/llmobs/middleware/retry.js.map +1 -0
  137. package/dist/ai-service/llmobs/middleware/stream-text.d.ts.map +1 -1
  138. package/dist/ai-service/llmobs/middleware/stream-text.js +1 -0
  139. package/dist/ai-service/llmobs/middleware/stream-text.js.map +1 -1
  140. package/dist/ai-service/llmobs/tracer.d.ts +4 -0
  141. package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
  142. package/dist/ai-service/llmobs/tracer.js +11 -0
  143. package/dist/ai-service/llmobs/tracer.js.map +1 -1
  144. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ButtonPropsDocs.js +1 -1
  145. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/CheckboxPropsDocs.js +1 -1
  146. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ColumnPropsDocs.js +1 -1
  147. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ContainerPropsDocs.js +1 -1
  148. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DatePickerPropsDocs.js +1 -1
  149. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DropdownPropsDocs.js +1 -1
  150. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/IconPropsDocs.js +1 -1
  151. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ImagePropsDocs.js +1 -1
  152. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/InputPropsDocs.js +1 -1
  153. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ModalPropsDocs.js +1 -1
  154. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/PagePropsDocs.js +1 -1
  155. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SectionPropsDocs.js +1 -1
  156. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SlideoutPropsDocs.js +1 -1
  157. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SwitchPropsDocs.js +1 -1
  158. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TablePropsDocs.js +1 -1
  159. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TextPropsDocs.js +1 -1
  160. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/Dim.js +1 -1
  161. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/EventFlow.js +1 -1
  162. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/TextStyleWithVariant.js +1 -1
  163. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/full-examples.js +1 -1
  164. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-api.js +1 -1
  165. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-components-rules.js +1 -1
  166. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-custom-components.js +1 -1
  167. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-data-filtering.js +1 -1
  168. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-event-flow.js +1 -1
  169. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-forms.js +1 -1
  170. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-layouts.js +1 -1
  171. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-page.js +1 -1
  172. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-rbac.js +1 -1
  173. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-routes.js +1 -1
  174. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-state.js +1 -1
  175. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-theming-chakra-new.js +1 -1
  176. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-base.js +1 -1
  177. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-incremental.js +1 -1
  178. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-specific-edit.js +1 -1
  179. package/dist/ai-service/state-machine/clark-fsm.d.ts +2 -0
  180. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  181. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  182. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  183. package/dist/ai-service/state-machine/handlers/llm-generating.js +363 -336
  184. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  185. package/dist/ai-service/util/retry-on-timeout.d.ts +93 -0
  186. package/dist/ai-service/util/retry-on-timeout.d.ts.map +1 -0
  187. package/dist/ai-service/util/retry-on-timeout.js +153 -0
  188. package/dist/ai-service/util/retry-on-timeout.js.map +1 -0
  189. package/dist/ai-service/util/stop-condition.d.ts +4 -1
  190. package/dist/ai-service/util/stop-condition.d.ts.map +1 -1
  191. package/dist/ai-service/util/stop-condition.js +14 -2
  192. package/dist/ai-service/util/stop-condition.js.map +1 -1
  193. package/dist/sync-service/download.d.ts.map +1 -1
  194. package/dist/sync-service/download.js +28 -7
  195. package/dist/sync-service/download.js.map +1 -1
  196. package/dist/util/logger.d.ts +13 -0
  197. package/dist/util/logger.d.ts.map +1 -1
  198. package/dist/util/logger.js +21 -0
  199. package/dist/util/logger.js.map +1 -1
  200. package/package.json +11 -9
  201. package/dist/ai-service/llm/context/logger.d.ts +0 -17
  202. package/dist/ai-service/llm/context/logger.d.ts.map +0 -1
  203. package/dist/ai-service/llm/context/logger.js +0 -26
  204. package/dist/ai-service/llm/context/logger.js.map +0 -1
@@ -32,7 +32,7 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
32
32
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
33
33
  done = true;
34
34
  };
35
- import { getBasePluginId, PluginType, RegisteredPlugins, } from "@superblocksteam/shared";
35
+ import { DatabricksPlugin, GraphQLIntegrationPlugin, PluginType, RegisteredPlugins, SalesforcePlugin, } from "@superblocksteam/shared";
36
36
  import { isEmpty } from "lodash-es";
37
37
  import { getLogger } from "../../util/logger.js";
38
38
  import { datasourceSdkClassByType } from "../const.js";
@@ -44,14 +44,6 @@ import { GraphQLIntegrationMetadata } from "./metadata/graphql-based.js";
44
44
  import { IntegrationMetadata } from "./metadata/index.js";
45
45
  import { OpenApiIntegrationMetadata } from "./metadata/open-api.js";
46
46
  import { TableBasedIntegrationMetadata } from "./metadata/table-based.js";
47
- function toPromptContextIntegration(integration) {
48
- return {
49
- id: integration.id,
50
- name: integration.name,
51
- type: integration.plugin.id,
52
- metadata: integration.metadata,
53
- };
54
- }
55
47
  let IntegrationStore = (() => {
56
48
  let _instanceExtraInitializers = [];
57
49
  let _getMetadata_decorators;
@@ -99,8 +91,6 @@ let IntegrationStore = (() => {
99
91
  insertFromPromptContext(integration, editorClient) {
100
92
  const pluginId = integration.type;
101
93
  const plugin = this.pluginRegistry.get(pluginId);
102
- const basePluginId = getBasePluginId(pluginId) ?? pluginId;
103
- const basePlugin = this.pluginRegistry.get(basePluginId);
104
94
  if (!plugin) {
105
95
  // this should never happen
106
96
  getLogger().error(`No plugin found for integration type ${integration.type}`);
@@ -109,11 +99,11 @@ let IntegrationStore = (() => {
109
99
  const pluginHeader = {
110
100
  id: plugin?.id,
111
101
  type: plugin.type,
102
+ openApiSpecRef: plugin.openApiSpecRef,
112
103
  isBuiltIn: this.pluginRegistry
113
104
  .defaultPlugins()
114
105
  .map((p) => p.id)
115
106
  .includes(pluginId),
116
- basePluginId: basePlugin?.id !== pluginId ? basePlugin?.id : undefined,
117
107
  };
118
108
  const header = {
119
109
  id: integration.id,
@@ -138,25 +128,37 @@ let IntegrationStore = (() => {
138
128
  return this.integrations.find((i) => i.id === id);
139
129
  }
140
130
  async getMetadata(id, editorClient) {
131
+ const header = this.getHeader(id);
132
+ if (!header) {
133
+ getLogger().warn(`[integration-store] No integration found for id ${id}. Returning cached metadata if available.`);
134
+ return this.metadataCache.get(id);
135
+ }
141
136
  if (!editorClient) {
142
137
  getLogger().warn(`[integration-store] No editor client provided, cannot fetch metadata for integration ${id}. Returning cached metadata if available.`);
143
138
  return this.metadataCache.get(id);
144
139
  }
145
- // stale-while-revalidate strategy
146
- const promise = editorClient?.call
147
- .aiGetIntegration({ integrationId: id })
148
- .then((integration) => {
149
- const existing = this.metadataCache.get(id) || {};
150
- this.metadataCache.set(id, {
151
- ...existing,
152
- ...integration.metadata,
153
- });
140
+ if (this.metadataCache.has(id)) {
141
+ return this.metadataCache.get(id);
142
+ }
143
+ if (header.plugin.openApiSpecRef) {
144
+ // if it's an openapi integration, just get the spec
145
+ const spec = await this.getOpenApiSpec(header.id, editorClient);
146
+ this.metadataCache.set(id, { openApiSpec: spec });
154
147
  return this.metadataCache.get(id);
148
+ }
149
+ const integration = await editorClient?.call.aiGetIntegration({
150
+ integrationId: id,
155
151
  });
156
- if (this.metadataCache.has(id)) {
152
+ if (Object.keys(integration.metadata).length === 0) {
153
+ getLogger().warn(`[integration-store] No metadata found for integration ${id}. Will try again next time`);
157
154
  return this.metadataCache.get(id);
158
155
  }
159
- return await promise;
156
+ const existing = this.metadataCache.get(id) || {};
157
+ this.metadataCache.set(id, {
158
+ ...existing,
159
+ ...integration.metadata,
160
+ });
161
+ return this.metadataCache.get(id);
160
162
  }
161
163
  async getIntegration(id, editorClient) {
162
164
  const header = this.getHeader(id);
@@ -201,20 +203,12 @@ let IntegrationStore = (() => {
201
203
  if (!integration) {
202
204
  throw new Error(`No integration found for id ${integrationId}`);
203
205
  }
204
- let metadata = integration.metadata;
205
- const promptContextIntegration = toPromptContextIntegration(integration);
206
- if (isOpenApiIntegration(promptContextIntegration)) {
207
- const openApiSpec = await this.getOpenApiSpec(integration, clark);
208
- metadata = {
209
- ...(metadata ?? (integration.metadata || {})),
210
- openApiSpec,
211
- };
212
- }
213
- if (!metadata) {
206
+ const metadata = integration.metadata;
207
+ if (Object.keys(metadata).length === 0) {
214
208
  // we couldn't fetch metadata for some reason, throw error
215
209
  throw new Error(`No metadata found for integration ${integration.id}`);
216
210
  }
217
- const klass = this.getMetadataClassForIntegration(promptContextIntegration);
211
+ const klass = this.getMetadataClassForIntegration(integration);
218
212
  getLogger().info(`[integration-store] Using metadata class ${klass.name} for integration ${integration.id} of type ${integration.plugin.id}`);
219
213
  return await klass.refineMetadataForPrompt({
220
214
  metadata,
@@ -240,43 +234,48 @@ let IntegrationStore = (() => {
240
234
  }
241
235
  return IntegrationMetadata;
242
236
  }
243
- async getOpenApiSpec(integration, clark) {
244
- if (this.openApiSpecs[integration.id]) {
245
- return this.openApiSpecs[integration.id];
237
+ async getOpenApiSpec(integrationId, editorClient) {
238
+ if (this.openApiSpecs[integrationId]) {
239
+ return this.openApiSpecs[integrationId];
246
240
  }
247
- if (!clark.context.peer) {
241
+ if (!editorClient) {
248
242
  throw new Error("No peer found");
249
243
  }
250
- if (!integration.metadata.openApiSpecRef) {
251
- return undefined;
244
+ const header = this.getHeader(integrationId);
245
+ if (!header) {
246
+ throw new Error(`No integration found for id ${integrationId}`);
247
+ }
248
+ const specRef = header.plugin.openApiSpecRef;
249
+ if (!specRef) {
250
+ throw new Error(`Integration ${integrationId} is not an OpenAPI integration`);
252
251
  }
253
252
  // the ideal case is actually requesting this ourselves, not calling back to the UI to make the http request on our behalf (why two network hops when we can do one)
254
253
  // but bucketeer requires bearer tokens to access, and we don't have that here (yet), so we will do this for now.
255
- const result = await clark.context.peer.call.aiGetOpenApiSpec({
256
- integrationId: integration.id,
257
- ref: integration.metadata.openApiSpecRef,
254
+ const result = await editorClient.call.aiGetOpenApiSpec({
255
+ integrationId: header.id,
256
+ ref: specRef,
258
257
  });
259
258
  if (isEmpty(result)) {
260
259
  return undefined;
261
260
  }
262
- this.openApiSpecs[integration.id] = result;
263
- return this.openApiSpecs[integration.id];
261
+ this.openApiSpecs[header.id] = result;
262
+ return result;
264
263
  }
265
264
  };
266
265
  })();
267
266
  export { IntegrationStore };
268
- function isOpenApiIntegration(integration) {
269
- return integration.metadata?.openApiSpecRef !== undefined;
267
+ function isOpenApiIntegration(header) {
268
+ return header.plugin.openApiSpecRef !== undefined;
270
269
  }
271
270
  function isSdkIntegration(integration) {
272
271
  return (typeof integration.type === "string" &&
273
272
  integration.type in datasourceSdkClassByType);
274
273
  }
275
- function isDatabricksIntegration(integration) {
276
- return integration.type === "databricks";
274
+ function isDatabricksIntegration(header) {
275
+ return header.plugin.id === DatabricksPlugin.id;
277
276
  }
278
- function isDatabaseIntegration(integration) {
279
- return (databaseIntegrationTypes.includes(integration.type) || integration.type === "salesforce");
277
+ function isDatabaseIntegration(header) {
278
+ return (databaseIntegrationTypes.includes(header.plugin.id) || header.plugin.id === SalesforcePlugin.id);
280
279
  }
281
280
  function isTableBasedIntegration(integration) {
282
281
  const schema = integration.metadata?.schema || integration.metadata?.dbSchema;
@@ -285,7 +284,7 @@ function isTableBasedIntegration(integration) {
285
284
  }
286
285
  return false;
287
286
  }
288
- function isGraphQlIntegration(integration) {
289
- return integration.type === "graphqlintegration";
287
+ function isGraphQlIntegration(header) {
288
+ return header.plugin.id === GraphQLIntegrationPlugin.id;
290
289
  }
291
290
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ai-service/integrations/store.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,eAAe,EACf,UAAU,EACV,iBAAiB,GAGlB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAsB1E,SAAS,0BAA0B,CACjC,WAAwB;IAExB,OAAO;QACL,EAAE,EAAE,WAAW,CAAC,EAAE;QAClB,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EAAwB;QACjD,QAAQ,EAAE,WAAW,CAAC,QAAQ;KAC/B,CAAC;AACJ,CAAC;IAmBY,gBAAgB;;;;;;iBAAhB,gBAAgB;;;uCAyE1B,MAAM,CAAC,QAAQ,CAAC;oBACf,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,8BAA8B;iBACrC,CAAC;0DA2CD,MAAM,CAAC,QAAQ,CAAC;oBACf,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,iDAAiD;iBACxD,CAAC;+CAmCD,MAAM,CAAC,QAAQ,CAAC;oBACf,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,sCAAsC;iBAC7C,CAAC;0CAuED,MAAM,CAAC,QAAQ,CAAC;oBACf,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,iCAAiC;iBACxC,CAAC;YA7JF,oLAAM,WAAW,6DAyBhB;YAqBD,6OAAM,8BAA8B,6DAgCnC;YAMD,4MAAM,mBAAmB,6DA+CxB;YA2BD,6LAAM,cAAc,6DA2BnB;;;QArQO,YAAY,IADT,mDAAgB,EACyB,EAAE,EAAC;QAC/C,cAAc,CAAiB;QAC/B,YAAY,GAAwB,EAAE,CAAC;QACvC,aAAa,GACnB,IAAI,GAAG,EAAE,CAAC;QAEZ,YAAY,iBAAiC,iBAAiB,CAAC,KAAK,CAAC;YACnE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACvC,CAAC;QAED,qBAAqB;YACnB,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAChE,CAAC;QACJ,CAAC;QAED,SAAS,CAAC,QAAkB;YAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QAED,uBAAuB,CACrB,WAAqC,EACrC,YAA2B;YAE3B,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAgB,CAAC;YAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;YAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,2BAA2B;gBAC3B,SAAS,EAAE,CAAC,KAAK,CACf,wCAAwC,WAAW,CAAC,IAAI,EAAE,CAC3D,CAAC;gBACF,OAAO;YACT,CAAC;YACD,MAAM,YAAY,GAAG;gBACnB,EAAE,EAAE,MAAM,EAAE,EAAE;gBACd,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,SAAS,EAAE,IAAI,CAAC,cAAc;qBAC3B,cAAc,EAAE;qBAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChB,QAAQ,CAAC,QAAQ,CAAC;gBACrB,YAAY,EAAE,UAAU,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS;aACvE,CAAC;YACF,MAAM,MAAM,GAAG;gBACb,EAAE,EAAE,WAAW,CAAC,EAAE;gBAClB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,MAAM,EAAE,YAAY;aACrB,CAAC;YAEF,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAC1B,CAAC;YACF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,YAAY,EAAE,CAAC;gBACjB,oBAAoB;gBACpB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACzD,SAAS,EAAE,CAAC,KAAK,CACf,8CAA8C,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,CACrE,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,SAAS,CAAC,EAAiB;YACzB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,CAAC;QAMD,KAAK,CAAC,WAAW,CACf,EAAiB,EACjB,YAA2B;YAE3B,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,SAAS,EAAE,CAAC,IAAI,CACd,wFAAwF,EAAE,2CAA2C,CACtI,CAAC;gBACF,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC;YACD,kCAAkC;YAClC,MAAM,OAAO,GAAG,YAAY,EAAE,IAAI;iBAC/B,gBAAgB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;iBACvC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;gBACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE;oBACzB,GAAG,QAAQ;oBACX,GAAG,WAAW,CAAC,QAAQ;iBACxB,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YACL,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC;YACD,OAAO,MAAM,OAAO,CAAC;QACvB,CAAC;QAEO,KAAK,CAAC,cAAc,CAC1B,EAAiB,EACjB,YAA2B;YAE3B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;YAC1D,OAAO;gBACL,GAAG,MAAM;gBACT,QAAQ,EAAE,QAAQ,IAAI,EAAE;aACzB,CAAC;QACJ,CAAC;QAMD,KAAK,CAAC,8BAA8B,CAClC,WAAqC,EACrC,MAAc,EACd,KAAY,EACZ,MAA+B;YAE/B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC;YACjC,MAAM,IAAI,GAAG,WAAW,CAAC,IAA0B,CAAC;YAEpD,IACE,CAAC,IAAI;gBACL,CAAC,EAAE;gBACH,CAAC,gBAAgB,CAAC;oBAChB,IAAI;iBACL,CAAC,EACF,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC;gBAC9C,KAAK;gBACL,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,MAAM;gBACN,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI;gBACJ,EAAE;gBACF,IAAI;gBACJ,QAAQ;aACT,CAAC;QACJ,CAAC;QAMD,KAAK,CAAC,mBAAmB,CAAC,EACxB,KAAK,EACL,aAAa,EACb,MAAM,EACN,WAAW,GAMZ;YACC,SAAS,EAAE,CAAC,KAAK,CACf,yDAAyD,aAAa;KACvE,CACA,CAAC;YACF,gFAAgF;YAChF,gGAAgG;YAChG,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAC3C,aAAa,EACb,KAAK,CAAC,OAAO,CAAC,IAAI,CACnB,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,aAAa,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;YACpC,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAAC;YACzE,IAAI,oBAAoB,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAElE,QAAQ,GAAG;oBACT,GAAG,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;oBAC7C,WAAW;iBACZ,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,0DAA0D;gBAC1D,MAAM,IAAI,KAAK,CAAC,qCAAqC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,8BAA8B,CAAC,wBAAwB,CAAC,CAAC;YAC5E,SAAS,EAAE,CAAC,IAAI,CACd,4CAA4C,KAAK,CAAC,IAAI,oBAAoB,WAAW,CAAC,EAAE,YAAY,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,CAC5H,CAAC;YACF,OAAO,MAAM,KAAK,CAAC,uBAAuB,CAAC;gBACzC,QAAQ;gBACR,MAAM;gBACN,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAED,8BAA8B,CAC5B,WAAqC;YAErC,IAAI,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtC,OAAO,0BAA0B,CAAC;YACpC,CAAC;YACD,IAAI,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,OAAO,6BAA6B,CAAC;YACvC,CAAC;YACD,IAAI,qBAAqB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,OAAO,2BAA2B,CAAC;YACrC,CAAC;YACD,IAAI,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,OAAO,6BAA6B,CAAC;YACvC,CAAC;YACD,IAAI,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtC,OAAO,0BAA0B,CAAC;YACpC,CAAC;YACD,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QAMD,KAAK,CAAC,cAAc,CAClB,WAAwB,EACxB,KAAY;YAEZ,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBACzC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,oKAAoK;YACpK,iHAAiH;YACjH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;gBAC5D,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC,cAAc;aACzC,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpB,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,MAAqB,CAAC;YAC1D,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC;;;SAtQU,gBAAgB;AAyQ7B,SAAS,oBAAoB,CAAC,WAAqC;IACjE,OAAO,WAAW,CAAC,QAAQ,EAAE,cAAc,KAAK,SAAS,CAAC;AAC5D,CAAC;AAED,SAAS,gBAAgB,CACvB,WAAoC;IAEpC,OAAO,CACL,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ;QACpC,WAAW,CAAC,IAAI,IAAI,wBAAwB,CAC7C,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,WAAqC;IACpE,OAAO,WAAW,CAAC,IAAI,KAAK,YAAY,CAAC;AAC3C,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAqC;IAClE,OAAO,CACL,wBAAwB,CAAC,QAAQ,CAC/B,WAAW,CAAC,IAAkC,CAC/C,IAAI,WAAW,CAAC,IAAI,KAAK,YAAY,CACvC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,WAAqC;IACpE,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC9E,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAqC;IACjE,OAAO,WAAW,CAAC,IAAI,KAAK,oBAAoB,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ai-service/integrations/store.ts"],"names":[],"mappings":"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"}
@@ -82,15 +82,16 @@ export declare const DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE = 1000;
82
82
  export declare const DEFAULT_CHARACTERS_PER_TOKEN_MIN = 2;
83
83
  export declare const DEFAULT_CHARACTERS_PER_TOKEN_MAX = 5;
84
84
  /**
85
- * Number of steps to keep in active turn when compacting.
85
+ * Number of steps to preserve at full fidelity when trimming the active turn.
86
86
  *
87
- * At compaction time older steps are split into a separate turn to allows
88
- * them to be compacted to L2. This helps avoid context overflow for long turns.
87
+ * During compaction, when the active turn exceeds the target token budget,
88
+ * older steps are trimmed (content is compacted) while the most recent
89
+ * steps are preserved at full fidelity.
89
90
  *
90
- * Value of 3 ensures recent tool-use loops stay in high-fidelity L1 while
91
- * older interactions move to compressed L2.
91
+ * Value of 3 ensures recent tool-use loops stay detailed while older
92
+ * interactions are compressed to save tokens.
92
93
  *
93
- * When aggressive compaction is needed, only the last step is kept in L1.
94
+ * When aggressive compaction is needed, only the last step is preserved.
94
95
  */
95
96
  export declare const DEFAULT_PRIORITIZED_STEPS = 3;
96
97
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAElD;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,wCAAwC,IAAI,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC,OAAO,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C;;GAEG;AAEH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,0BAA0B,YAAY,CAAC;AACpD,eAAO,MAAM,+BAA+B,OAAO,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAElD;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,wCAAwC,IAAI,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC,OAAO,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C;;GAEG;AAEH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,0BAA0B,YAAY,CAAC;AACpD,eAAO,MAAM,+BAA+B,OAAO,CAAC"}
@@ -82,15 +82,16 @@ export const DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE = 1000;
82
82
  export const DEFAULT_CHARACTERS_PER_TOKEN_MIN = 2;
83
83
  export const DEFAULT_CHARACTERS_PER_TOKEN_MAX = 5;
84
84
  /**
85
- * Number of steps to keep in active turn when compacting.
85
+ * Number of steps to preserve at full fidelity when trimming the active turn.
86
86
  *
87
- * At compaction time older steps are split into a separate turn to allows
88
- * them to be compacted to L2. This helps avoid context overflow for long turns.
87
+ * During compaction, when the active turn exceeds the target token budget,
88
+ * older steps are trimmed (content is compacted) while the most recent
89
+ * steps are preserved at full fidelity.
89
90
  *
90
- * Value of 3 ensures recent tool-use loops stay in high-fidelity L1 while
91
- * older interactions move to compressed L2.
91
+ * Value of 3 ensures recent tool-use loops stay detailed while older
92
+ * interactions are compressed to save tokens.
92
93
  *
93
- * When aggressive compaction is needed, only the last step is kept in L1.
94
+ * When aggressive compaction is needed, only the last step is preserved.
94
95
  */
95
96
  export const DEFAULT_PRIORITIZED_STEPS = 3;
96
97
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,IAAI,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAElD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAE3C;;GAEG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,IAAI,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAElD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAE3C;;GAEG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Safe context handle with automatic resource management.
3
+ *
4
+ * This module provides a handle-based API for safely acquiring and
5
+ * releasing contexts with guaranteed cleanup semantics.
6
+ */
7
+ import type { ContextLockManager } from "./context-lock.js";
8
+ import type { Context } from "./context.js";
9
+ import type { ContextId } from "./types.js";
10
+ /**
11
+ * Handle for safely accessing a context with exclusive ownership.
12
+ *
13
+ * This class implements the RAII (Resource Acquisition Is Initialization) pattern
14
+ * to ensure contexts are properly released when no longer needed.
15
+ *
16
+ * Usage:
17
+ * ```typescript
18
+ * const handle = await manager.acquireContext(contextId, ownerId);
19
+ * try {
20
+ * // Use the context safely
21
+ * handle.context.startTurn(userMessage);
22
+ * handle.context.endTurn();
23
+ * } finally {
24
+ * // Always release when done
25
+ * handle.release();
26
+ * }
27
+ * ```
28
+ *
29
+ * Or with async using (when available):
30
+ * ```typescript
31
+ * await using handle = await manager.acquireContext(contextId, ownerId);
32
+ * // Context automatically released when scope ends
33
+ * handle.context.startTurn(userMessage);
34
+ * ```
35
+ */
36
+ export declare class ContextHandle {
37
+ /** The context instance */
38
+ readonly context: Context;
39
+ /** The ID of the context */
40
+ readonly contextId: ContextId;
41
+ /** The owner ID holding this handle */
42
+ readonly ownerId: string;
43
+ /** The lock manager to release the lock */
44
+ private readonly lockManager;
45
+ private _released;
46
+ constructor(
47
+ /** The context instance */
48
+ context: Context,
49
+ /** The ID of the context */
50
+ contextId: ContextId,
51
+ /** The owner ID holding this handle */
52
+ ownerId: string,
53
+ /** The lock manager to release the lock */
54
+ lockManager: ContextLockManager);
55
+ /**
56
+ * Whether this handle has been released.
57
+ */
58
+ get isReleased(): boolean;
59
+ /**
60
+ * Releases the context lock.
61
+ *
62
+ * This method is idempotent - calling it multiple times is safe.
63
+ * After calling release(), the context should not be used.
64
+ */
65
+ release(): void;
66
+ /**
67
+ * Ensures the handle is still valid for use.
68
+ *
69
+ * @throws Error if the handle has been released
70
+ */
71
+ ensureValid(): void;
72
+ /**
73
+ * Implements the async disposable protocol for automatic cleanup.
74
+ * This allows using the handle with 'await using' syntax when available.
75
+ */
76
+ [Symbol.asyncDispose](): Promise<void>;
77
+ /**
78
+ * Implements the disposable protocol for automatic cleanup.
79
+ * This allows using the handle with 'using' syntax when available.
80
+ */
81
+ [Symbol.dispose](): void;
82
+ }
83
+ /**
84
+ * Options for acquiring a context handle.
85
+ */
86
+ export interface AcquireContextOptions {
87
+ /** Maximum time to wait for the lock in milliseconds */
88
+ waitTimeoutMs?: number;
89
+ /** Lock timeout in milliseconds (how long the lock is held) */
90
+ lockTimeoutMs?: number;
91
+ /** Retry interval when waiting for the lock */
92
+ retryIntervalMs?: number;
93
+ /** Force acquisition even if locked by another owner */
94
+ force?: boolean;
95
+ }
96
+ /**
97
+ * Helper function to acquire a context with retries.
98
+ *
99
+ * @param lockManager - The lock manager
100
+ * @param contextId - The context to acquire
101
+ * @param ownerId - The owner acquiring the context
102
+ * @param options - Acquisition options
103
+ * @returns true if acquired, false if timeout
104
+ */
105
+ export declare function tryAcquireWithRetries(lockManager: ContextLockManager, contextId: ContextId, ownerId: string, options?: AcquireContextOptions): Promise<boolean>;
106
+ //# sourceMappingURL=context-handle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-handle.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/context-handle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,aAAa;IAItB,2BAA2B;aACX,OAAO,EAAE,OAAO;IAChC,4BAA4B;aACZ,SAAS,EAAE,SAAS;IACpC,uCAAuC;aACvB,OAAO,EAAE,MAAM;IAC/B,2CAA2C;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW;IAV9B,OAAO,CAAC,SAAS,CAAS;;IAGxB,2BAA2B;IACX,OAAO,EAAE,OAAO;IAChC,4BAA4B;IACZ,SAAS,EAAE,SAAS;IACpC,uCAAuC;IACvB,OAAO,EAAE,MAAM;IAC/B,2CAA2C;IAC1B,WAAW,EAAE,kBAAkB;IAGlD;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;;;;OAKG;IACH,OAAO,IAAI,IAAI;IASf;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAQnB;;;OAGG;IACG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5C;;;OAGG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAGzB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,kBAAkB,EAC/B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,OAAO,CAAC,CAsClB"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Safe context handle with automatic resource management.
3
+ *
4
+ * This module provides a handle-based API for safely acquiring and
5
+ * releasing contexts with guaranteed cleanup semantics.
6
+ */
7
+ /**
8
+ * Handle for safely accessing a context with exclusive ownership.
9
+ *
10
+ * This class implements the RAII (Resource Acquisition Is Initialization) pattern
11
+ * to ensure contexts are properly released when no longer needed.
12
+ *
13
+ * Usage:
14
+ * ```typescript
15
+ * const handle = await manager.acquireContext(contextId, ownerId);
16
+ * try {
17
+ * // Use the context safely
18
+ * handle.context.startTurn(userMessage);
19
+ * handle.context.endTurn();
20
+ * } finally {
21
+ * // Always release when done
22
+ * handle.release();
23
+ * }
24
+ * ```
25
+ *
26
+ * Or with async using (when available):
27
+ * ```typescript
28
+ * await using handle = await manager.acquireContext(contextId, ownerId);
29
+ * // Context automatically released when scope ends
30
+ * handle.context.startTurn(userMessage);
31
+ * ```
32
+ */
33
+ export class ContextHandle {
34
+ context;
35
+ contextId;
36
+ ownerId;
37
+ lockManager;
38
+ _released = false;
39
+ constructor(
40
+ /** The context instance */
41
+ context,
42
+ /** The ID of the context */
43
+ contextId,
44
+ /** The owner ID holding this handle */
45
+ ownerId,
46
+ /** The lock manager to release the lock */
47
+ lockManager) {
48
+ this.context = context;
49
+ this.contextId = contextId;
50
+ this.ownerId = ownerId;
51
+ this.lockManager = lockManager;
52
+ }
53
+ /**
54
+ * Whether this handle has been released.
55
+ */
56
+ get isReleased() {
57
+ return this._released;
58
+ }
59
+ /**
60
+ * Releases the context lock.
61
+ *
62
+ * This method is idempotent - calling it multiple times is safe.
63
+ * After calling release(), the context should not be used.
64
+ */
65
+ release() {
66
+ if (this._released) {
67
+ return;
68
+ }
69
+ this._released = true;
70
+ this.lockManager.release(this.contextId, this.ownerId);
71
+ }
72
+ /**
73
+ * Ensures the handle is still valid for use.
74
+ *
75
+ * @throws Error if the handle has been released
76
+ */
77
+ ensureValid() {
78
+ if (this._released) {
79
+ throw new Error(`Context handle for '${this.contextId.name}' has been released and cannot be used`);
80
+ }
81
+ }
82
+ /**
83
+ * Implements the async disposable protocol for automatic cleanup.
84
+ * This allows using the handle with 'await using' syntax when available.
85
+ */
86
+ async [Symbol.asyncDispose]() {
87
+ this.release();
88
+ }
89
+ /**
90
+ * Implements the disposable protocol for automatic cleanup.
91
+ * This allows using the handle with 'using' syntax when available.
92
+ */
93
+ [Symbol.dispose]() {
94
+ this.release();
95
+ }
96
+ }
97
+ /**
98
+ * Helper function to acquire a context with retries.
99
+ *
100
+ * @param lockManager - The lock manager
101
+ * @param contextId - The context to acquire
102
+ * @param ownerId - The owner acquiring the context
103
+ * @param options - Acquisition options
104
+ * @returns true if acquired, false if timeout
105
+ */
106
+ export async function tryAcquireWithRetries(lockManager, contextId, ownerId, options = {}) {
107
+ const { waitTimeoutMs = 0, lockTimeoutMs, retryIntervalMs = 100, force = false, } = options;
108
+ const deadline = waitTimeoutMs > 0 ? Date.now() + waitTimeoutMs : 0;
109
+ while (true) {
110
+ // Try to acquire the lock
111
+ const acquired = force
112
+ ? lockManager.acquire(contextId, ownerId, {
113
+ force: true,
114
+ timeoutMs: lockTimeoutMs,
115
+ })
116
+ : lockManager.tryAcquire(contextId, ownerId, {
117
+ timeoutMs: lockTimeoutMs,
118
+ });
119
+ if (acquired) {
120
+ return true;
121
+ }
122
+ // Check if we've exceeded the wait timeout
123
+ if (deadline > 0 && Date.now() >= deadline) {
124
+ return false;
125
+ }
126
+ // If no timeout specified and couldn't acquire, return immediately
127
+ if (waitTimeoutMs === 0) {
128
+ return false;
129
+ }
130
+ // Wait before retrying
131
+ await new Promise((resolve) => setTimeout(resolve, retryIntervalMs));
132
+ }
133
+ }
134
+ //# sourceMappingURL=context-handle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-handle.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/context-handle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,OAAO,aAAa;IAKN;IAEA;IAEA;IAEC;IAVX,SAAS,GAAG,KAAK,CAAC;IAE1B;IACE,2BAA2B;IACX,OAAgB;IAChC,4BAA4B;IACZ,SAAoB;IACpC,uCAAuC;IACvB,OAAe;IAC/B,2CAA2C;IAC1B,WAA+B;QANhC,YAAO,GAAP,OAAO,CAAS;QAEhB,cAAS,GAAT,SAAS,CAAW;QAEpB,YAAO,GAAP,OAAO,CAAQ;QAEd,gBAAW,GAAX,WAAW,CAAoB;IAC/C,CAAC;IAEJ;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,wCAAwC,CACnF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;CACF;AAgBD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,WAA+B,EAC/B,SAAoB,EACpB,OAAe,EACf,UAAiC,EAAE;IAEnC,MAAM,EACJ,aAAa,GAAG,CAAC,EACjB,aAAa,EACb,eAAe,GAAG,GAAG,EACrB,KAAK,GAAG,KAAK,GACd,GAAG,OAAO,CAAC;IAEZ,MAAM,QAAQ,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpE,OAAO,IAAI,EAAE,CAAC;QACZ,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,KAAK;YACpB,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE;gBACtC,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,aAAa;aACzB,CAAC;YACJ,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE;gBACzC,SAAS,EAAE,aAAa;aACzB,CAAC,CAAC;QAEP,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2CAA2C;QAC3C,IAAI,QAAQ,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,mEAAmE;QACnE,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,uBAAuB;QACvB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC"}