@dbx-tools/search 0.9.131 → 0.9.132

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,16 +1,15 @@
1
1
  # @dbx-tools/search
2
2
 
3
- Extensions for AppKit's beta AI Search plugin: agent tools, federated search,
4
- index lifecycle helpers, and an AppKit-compatible Lakebase full-text provider.
5
-
6
- Use native AppKit `aiSearch` for
3
+ Add agent tools, federated search, index lifecycle helpers, or a
4
+ Lakebase-backed full-text provider to AppKit AI Search. Use native AppKit
5
+ `aiSearch` for
7
6
  [Databricks AI Search](https://docs.databricks.com/aws/en/ai-search/ai-search)
8
7
  queries. Add this package when an agent needs `search` /
9
8
  `universal_search`, an app needs to create, sync, or seed indexes, or a
10
9
  deployment needs the same AppKit query contract backed by PostgreSQL full-text
11
10
  search instead of Vector Search.
12
11
 
13
- ## Quick Start
12
+ ## Quick start
14
13
 
15
14
  Add the extension around an existing AppKit AI Search index:
16
15
 
@@ -28,44 +27,44 @@ await createApp({
28
27
  });
29
28
  ```
30
29
 
31
- **Key features:**
30
+ The extension adds:
32
31
 
33
- - Vector Search reads delegate to AppKit `aiSearch`, which handles OBO execution,
34
- caching, reranking, pagination, route validation, and response decoding.
32
+ - Vector Search reads delegate to AppKit `aiSearch`, which handles identity
33
+ selection, caching, reranking, pagination, route validation, and response
34
+ decoding.
35
35
  - `lakebaseAiSearch()` implements the same `aiSearch` alias, route,
36
36
  client-config, and `SearchResponse` contract with PostgreSQL `tsvector`.
37
- - Agent tools for both Mastra (`searchTool()` etc.) and AppKit agents (through
37
+ - Agent tools for Mastra (`searchTool()` and related factories) and AppKit agents (through
38
38
  the extension plugin's `ToolProvider`): `search` and `universal_search`
39
- reads, plus provider-aware write tools. Lakebase exposes `add_documents`;
40
- native Vector Search can also expose `create_index` and `sync_index`.
41
- - AppKit-compatible query routes under `/api/ai-search/:alias`; extension
39
+ reads, plus provider-aware write tools. Lakebase exposes `add_documents`.
40
+ Native Vector Search can also expose `create_index` and `sync_index`.
41
+ - AppKit-compatible query routes under `/api/ai-search/:alias`. Extension
42
42
  routes under `/api/search` cover universal search and optional lifecycle
43
43
  operations.
44
- - Sensible-default config that infers almost everything: name a default index
45
- (or set `DATABRICKS_VECTOR_SEARCH_INDEX`) and the columns, page size, mode,
46
- aliases, and route path all have defaults you can override when you need to go
47
- deeper.
48
- - OBO for Vector Search comes from native AppKit `aiSearch`. Each Lakebase
49
- full-text index selects `service-principal` or `on-behalf-of-user` through the
50
- sibling native `lakebase` routing pool.
44
+ - Configuration can infer columns, page size, mode, aliases, and route path
45
+ after you name a default index or set `DATABRICKS_VECTOR_SEARCH_INDEX`.
46
+ - Native AppKit `aiSearch` uses the service principal by default. Set an
47
+ index's `auth` to `on-behalf-of-user` when queries must use the signed-in
48
+ user's permissions. Each Lakebase full-text index selects the same two modes
49
+ through the sibling native `lakebase` routing pool.
51
50
  - Filters use AppKit's scalar/array shape: `{ column: valueOrValues }`.
52
51
  - Embedding-model resolution for index creation reuses
53
- [`@dbx-tools/model`](../model): a loose name fuzzy-matches the live catalogue,
52
+ [@dbx-tools/model](../model): a loose name fuzzy-matches the live catalogue,
54
53
  or the best embedding endpoint is chosen automatically.
55
- - Index lifecycle without the ceremony: `createIndex` / `ensureIndex` (Delta
54
+ - Index lifecycle helpers: `createIndex` / `ensureIndex` (Delta
56
55
  Sync from a source table, self-managed direct-access with a dimension, or a
57
56
  managed direct-access index that embeds a text column - no Delta table or
58
57
  warehouse), `provision` (ensure + seed in one idempotent call), `syncIndex`,
59
58
  `deleteIndex`, `listIndexes`, and `ensureEndpoint` - each inferring the
60
- endpoint, embedding model, primary key, and columns from sensible defaults.
61
- - Wire up a real index on boot with `ensureOnSetup`: the plugin provisions the
59
+ endpoint, embedding model, primary key, and columns from package defaults.
60
+ - Provision an index on boot with `ensureOnSetup`: the plugin provisions the
62
61
  endpoint + index and seeds documents in the background using the native AppKit
63
62
  workspace client, so a fresh deployment is searchable with no manual setup.
64
63
  - An explicit **Lakebase full-text provider**: register `lakebaseAiSearch`
65
64
  instead of native `aiSearch` to serve the same aliases, query routes, filters,
66
65
  and result shape from a Postgres `tsvector` index.
67
66
 
68
- ## Use With Native AppKit
67
+ ## Choose a search provider
69
68
 
70
69
  Do not use this package instead of native AppKit for ordinary Vector Search
71
70
  queries. Register `aiSearch` from `@databricks/appkit/beta`.
@@ -74,7 +73,13 @@ Use this package for capabilities AppKit does not ship: agent tool providers,
74
73
  federated fan-out, index lifecycle and seeding, reusable result components, or
75
74
  the Lakebase full-text implementation of the AppKit AI Search contract.
76
75
 
77
- ## Add Search To A Mastra Agent
76
+ Register native `aiSearch` for Databricks Vector Search. Register
77
+ `lakebaseAiSearch` for PostgreSQL full-text search with the same AppKit query
78
+ contract. They both use the `aiSearch` plugin name, so an application must
79
+ choose one. Add `search()` beside the selected provider when agents need tools,
80
+ federated reads, or lifecycle routes.
81
+
82
+ ## Add search to a Mastra agent
78
83
 
79
84
  ```ts
80
85
  import { createApp, server } from "@databricks/appkit";
@@ -147,12 +152,11 @@ createApp({
147
152
  });
148
153
  ```
149
154
 
150
- ## Manage Indexes
155
+ ## Manage indexes
151
156
 
152
- `SearchClient` is the lifecycle client; query execution requires the registered
153
- AppKit-compatible provider. Create and maintain indexes with the same
154
- infer-everything ergonomics. A Delta
155
- Sync index computes embeddings from a source Delta table and stays synced; the
157
+ `SearchClient` is the lifecycle client. Query execution requires the registered
158
+ AppKit-compatible provider. A Delta
159
+ Sync index computes embeddings from a source Delta table and stays synced. The
156
160
  embedding model, endpoint, primary key (`id`), and text column
157
161
  (`text`/`content`/`body`) are all inferred when omitted.
158
162
 
@@ -197,20 +201,24 @@ await client.provision("main.support.docs", {
197
201
  The `SearchIndex` handle mirrors these: `index.ensure(opts)`, `index.sync()`,
198
202
  `index.delete()`, `index.info()`.
199
203
 
200
- When the plugin's write surface is on (`search({ allowWrite: true })` or
204
+ When the plugin's write surface is enabled (`search({ allowWrite: true })` or
201
205
  `SEARCH_WRITE=true`), agents get the same lifecycle as tools: `create_index`
202
206
  provisions an index with everything inferred (pass a `sourceTable` for the
203
207
  common Delta Sync case, or an `embeddingDimension` for a direct-access index),
204
- and `sync_index` refreshes a Delta Sync index from its source table. They are
205
- gated because they change infrastructure, so grant them only where a caller
206
- should be able to set up or refresh indexes.
208
+ and `sync_index` refreshes a Delta Sync index from its source table.
209
+
210
+ `allowWrite` exposes these tools but doesn't approve them. AppKit marks them
211
+ with `effect: "write"` and runs them as the requesting user. The Mastra adapter
212
+ doesn't suspend routine write effects. If a write requires human approval,
213
+ register a Mastra tool with `requireApproval: true` that calls `SearchClient`
214
+ after the run resumes instead of exposing the write toolkit directly.
207
215
 
208
- ### Provision a real index on boot
216
+ ### Provision an index on boot
209
217
 
210
- `ensureOnSetup` makes the plugin wire up a real index when the app starts, using
211
- the native AppKit workspace client. It ensures
212
- the endpoint + index exist and seeds documents only when the index is empty, all
213
- in the background so a slow first-time endpoint build never blocks the server.
218
+ `ensureOnSetup` provisions an index when the app starts, using the native
219
+ AppKit workspace client. It creates the endpoint and index when absent and
220
+ seeds documents only when the index is empty. This work runs in the background,
221
+ so a slow first-time endpoint build does not block the server.
214
222
  The default is a managed direct-access index, so the seed rows are plain
215
223
  objects and search-by-text works immediately - no Delta table, no warehouse.
216
224
 
@@ -240,7 +248,7 @@ full-text index. It provisions one table per alias (a generated `tsvector`
240
248
  column with a GIN index), seeds configured documents, and answers queries with
241
249
  a prefix `to_tsquery` + `ts_rank`. The pool comes from the native `lakebase`
242
250
  plugin's routing pool, so database authentication is not re-implemented. HTTP
243
- callers cannot widen configured projection columns; `columns` overrides remain
251
+ callers cannot widen configured projection columns. `columns` overrides remain
244
252
  available only to trusted programmatic `query()` calls. Set an index's `auth`
245
253
  to `on-behalf-of-user` for OBO query/write routes or leave it at
246
254
  `service-principal`.
@@ -297,16 +305,16 @@ default.
297
305
 
298
306
  | Config | Environment | Default | Purpose |
299
307
  | ---------------- | ------------------------------------------------ | ----------------------- | -------------------------------------------------------- |
300
- | `index` | `SEARCH_INDEX`, `DATABRICKS_VECTOR_SEARCH_INDEX` | – | Default index (name or alias). |
301
- | `indexes` | – | `[index]` | Indexes known for aliases, universal search, and the UI. |
302
- | `endpoint` | `SEARCH_ENDPOINT` | – | Vector Search endpoint (only needed to create an index). |
308
+ | `index` | `SEARCH_INDEX`, `DATABRICKS_VECTOR_SEARCH_INDEX` | none | Default index (name or alias). |
309
+ | `indexes` | none | `[index]` | Indexes known for aliases, universal search, and the UI. |
310
+ | `endpoint` | `SEARCH_ENDPOINT` | none | Vector Search endpoint (only needed to create an index). |
303
311
  | `columns` | `SEARCH_COLUMNS` | index's columns | Default columns per hit. |
304
312
  | `pageSize` | `SEARCH_PAGE_SIZE` | `10` | Default hits per search. |
305
313
  | `mode` | `SEARCH_MODE` | `hybrid` | `hybrid` / `vector` / `keyword`. |
306
314
  | `embeddingModel` | `SEARCH_EMBEDDING_MODEL` | best embedding endpoint | Embedding endpoint for index creation. |
307
315
  | `timeoutMs` | `SEARCH_TIMEOUT_MS` | `30000` | Per-call timeout. |
308
316
  | `allowWrite` | `SEARCH_WRITE` | `false` | Enable provider-supported write tools and routes. |
309
- | `ensureOnSetup` | – | – | Provision and seed a native Vector Search index at boot. |
317
+ | `ensureOnSetup` | none | none | Provision and seed a native Vector Search index at boot. |
310
318
 
311
319
  ## Modules
312
320
 
@@ -333,6 +341,6 @@ default.
333
341
  - `schema` - the tool descriptions and re-exported request schemas.
334
342
 
335
343
  Browser-safe schemas live in
336
- [`@dbx-tools/shared-search`](../../shared/search); the React search box
337
- lives in [`@dbx-tools/ui/search`](../../ui/appkit). Model resolution reuses
338
- [`@dbx-tools/model`](../model).
344
+ [@dbx-tools/shared-search](../../shared/search). The React search box
345
+ lives in [@dbx-tools/ui/search](../../ui/appkit). Model resolution reuses
346
+ [@dbx-tools/model](../model).
package/index.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  // Hand edits are overwritten on the next watch; this file is read-only.
4
4
 
5
5
  export const PACKAGE_IDENTIFIER = "@dbx-tools/search";
6
- export const PACKAGE_VERSION = "0.9.131";
6
+ export const PACKAGE_VERSION = "0.9.132";
7
7
  export * as client from "./src/client.ts";
8
8
  export * as config from "./src/config.ts";
9
9
  export * as indexOptions from "./src/index-options.ts";
package/lib/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export declare const PACKAGE_IDENTIFIER = "@dbx-tools/search";
2
- export declare const PACKAGE_VERSION = "0.9.131";
2
+ export declare const PACKAGE_VERSION = "0.9.132";
3
3
  export * as client from "./src/client.ts";
4
4
  export * as config from "./src/config.ts";
5
5
  export * as indexOptions from "./src/index-options.ts";
package/lib/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  // Regenerated from the exporting modules in ./src.
3
3
  // Hand edits are overwritten on the next watch; this file is read-only.
4
4
  export const PACKAGE_IDENTIFIER = "@dbx-tools/search";
5
- export const PACKAGE_VERSION = "0.9.131";
5
+ export const PACKAGE_VERSION = "0.9.132";
6
6
  export * as client from "./src/client.js";
7
7
  export * as config from "./src/config.js";
8
8
  export * as indexOptions from "./src/index-options.js";
@@ -20,4 +20,4 @@ export { LakebaseSearchBackend } from "./src/lakebase.js";
20
20
  export { LakebaseAiSearchPlugin, lakebaseAiSearch } from "./src/lakebase-plugin.js";
21
21
  export { SearchPlugin, search } from "./src/plugin.js";
22
22
  export { SEARCH_TOOL_DESCRIPTION, UNIVERSAL_SEARCH_TOOL_DESCRIPTION, ADD_DOCUMENTS_TOOL_DESCRIPTION, CREATE_INDEX_TOOL_DESCRIPTION, SYNC_INDEX_TOOL_DESCRIPTION, searchToolSchema, universalSearchToolSchema, searchResultSchema, createIndexToolSchema, indexInfoSchema, syncIndexToolSchema } from "./src/schema.js";
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEtBQUssWUFBWSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxRQUFRLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxLQUFLLGNBQWMsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEtBQUssTUFBTSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLEtBQUssTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5SyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQ0FBaUMsRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSwyQkFBMkIsRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdFTkVSQVRFRCBieSBwcm9qZW4gd2F0Y2ggLSBETyBOT1QgRURJVC5cbi8vIFJlZ2VuZXJhdGVkIGZyb20gdGhlIGV4cG9ydGluZyBtb2R1bGVzIGluIC4vc3JjLlxuLy8gSGFuZCBlZGl0cyBhcmUgb3ZlcndyaXR0ZW4gb24gdGhlIG5leHQgd2F0Y2g7IHRoaXMgZmlsZSBpcyByZWFkLW9ubHkuXG5cbmV4cG9ydCBjb25zdCBQQUNLQUdFX0lERU5USUZJRVIgPSBcIkBkYngtdG9vbHMvc2VhcmNoXCI7XG5leHBvcnQgY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gXCIwLjkuMTMxXCI7XG5leHBvcnQgKiBhcyBjbGllbnQgZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0ICogYXMgY29uZmlnIGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCAqIGFzIGluZGV4T3B0aW9ucyBmcm9tIFwiLi9zcmMvaW5kZXgtb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2UgZnJvbSBcIi4vc3JjL2xha2ViYXNlLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVBsdWdpbiBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcGx1Z2luLnRzXCI7XG5leHBvcnQgKiBhcyBuYXRpdmUgZnJvbSBcIi4vc3JjL25hdGl2ZS50c1wiO1xuZXhwb3J0ICogYXMgcGx1Z2luIGZyb20gXCIuL3NyYy9wbHVnaW4udHNcIjtcbmV4cG9ydCAqIGFzIHF1ZXJ5IGZyb20gXCIuL3NyYy9xdWVyeS50c1wiO1xuZXhwb3J0ICogYXMgcnVudGltZSBmcm9tIFwiLi9zcmMvcnVudGltZS50c1wiO1xuZXhwb3J0ICogYXMgc2NoZW1hIGZyb20gXCIuL3NyYy9zY2hlbWEudHNcIjtcbmV4cG9ydCAqIGFzIHRvb2wgZnJvbSBcIi4vc3JjL3Rvb2wudHNcIjtcbmV4cG9ydCB7IFNlYXJjaEluZGV4LCBTZWFyY2hDbGllbnQgfSBmcm9tIFwiLi9zcmMvY2xpZW50LnRzXCI7XG5leHBvcnQgdHlwZSB7IFNlYXJjaFJlYWRCYWNrZW5kLCBTZWFyY2hPcHRpb25zLCBVbml2ZXJzYWxTZWFyY2hPcHRpb25zLCBJbmRleEluZm8sIENyZWF0ZUluZGV4T3B0aW9ucywgRW5zdXJlRW5kcG9pbnRPcHRpb25zLCBQcm92aXNpb25PcHRpb25zIH0gZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0IHsgSU5ERVhfRU5WLCBEQVRBQlJJQ0tTX0lOREVYX0VOViwgRU5EUE9JTlRfRU5WLCBERUZBVUxUX01PREUsIERFRkFVTFRfUEFHRV9TSVpFLCBERUZBVUxUX1RJTUVPVVRfTVMsIERFRkFVTFRfQkFTRV9QQVRILCBTRUFSQ0hfQ09ORklHX1NDSEVNQSB9IGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCB0eXBlIHsgU2VhcmNoSW5kZXhDb25maWcsIFNlYXJjaFBsdWdpbkNvbmZpZywgRW5zdXJlT25TZXR1cENvbmZpZywgUmVzb2x2ZWRJbmRleENvbmZpZywgUmVzb2x2ZWRTZWFyY2hDb25maWcgfSBmcm9tIFwiLi9zcmMvY29uZmlnLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVNlYXJjaEJhY2tlbmQgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UudHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VTZWFyY2hPcHRpb25zLCBMYWtlYmFzZVNlYXJjaFBvb2wsIExha2ViYXNlUHJvdmlzaW9uT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS50c1wiO1xuZXhwb3J0IHsgTGFrZWJhc2VBaVNlYXJjaFBsdWdpbiwgbGFrZWJhc2VBaVNlYXJjaCB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wbHVnaW4udHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VBaVNlYXJjaEluZGV4Q29uZmlnLCBMYWtlYmFzZUFpU2VhcmNoQ29uZmlnIH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXBsdWdpbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBBaVNlYXJjaFByb3ZpZGVyIH0gZnJvbSBcIi4vc3JjL25hdGl2ZS50c1wiO1xuZXhwb3J0IHsgU2VhcmNoUGx1Z2luLCBzZWFyY2ggfSBmcm9tIFwiLi9zcmMvcGx1Z2luLnRzXCI7XG5leHBvcnQgdHlwZSB7IFNlYXJjaFJ1bnRpbWVPcHRpb25zLCBTZWFyY2hSdW50aW1lIH0gZnJvbSBcIi4vc3JjL3J1bnRpbWUudHNcIjtcbmV4cG9ydCB7IFNFQVJDSF9UT09MX0RFU0NSSVBUSU9OLCBVTklWRVJTQUxfU0VBUkNIX1RPT0xfREVTQ1JJUFRJT04sIEFERF9ET0NVTUVOVFNfVE9PTF9ERVNDUklQVElPTiwgQ1JFQVRFX0lOREVYX1RPT0xfREVTQ1JJUFRJT04sIFNZTkNfSU5ERVhfVE9PTF9ERVNDUklQVElPTiwgc2VhcmNoVG9vbFNjaGVtYSwgdW5pdmVyc2FsU2VhcmNoVG9vbFNjaGVtYSwgc2VhcmNoUmVzdWx0U2NoZW1hLCBjcmVhdGVJbmRleFRvb2xTY2hlbWEsIGluZGV4SW5mb1NjaGVtYSwgc3luY0luZGV4VG9vbFNjaGVtYSB9IGZyb20gXCIuL3NyYy9zY2hlbWEudHNcIjtcbmV4cG9ydCB0eXBlIHsgU2VhcmNoVG9vbE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvdG9vbC50c1wiO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEtBQUssWUFBWSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxRQUFRLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxLQUFLLGNBQWMsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEtBQUssTUFBTSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLEtBQUssTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5SyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQ0FBaUMsRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSwyQkFBMkIsRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdFTkVSQVRFRCBieSBwcm9qZW4gd2F0Y2ggLSBETyBOT1QgRURJVC5cbi8vIFJlZ2VuZXJhdGVkIGZyb20gdGhlIGV4cG9ydGluZyBtb2R1bGVzIGluIC4vc3JjLlxuLy8gSGFuZCBlZGl0cyBhcmUgb3ZlcndyaXR0ZW4gb24gdGhlIG5leHQgd2F0Y2g7IHRoaXMgZmlsZSBpcyByZWFkLW9ubHkuXG5cbmV4cG9ydCBjb25zdCBQQUNLQUdFX0lERU5USUZJRVIgPSBcIkBkYngtdG9vbHMvc2VhcmNoXCI7XG5leHBvcnQgY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gXCIwLjkuMTMyXCI7XG5leHBvcnQgKiBhcyBjbGllbnQgZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0ICogYXMgY29uZmlnIGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCAqIGFzIGluZGV4T3B0aW9ucyBmcm9tIFwiLi9zcmMvaW5kZXgtb3B0aW9ucy50c1wiO1xuZXhwb3J0ICogYXMgbGFrZWJhc2UgZnJvbSBcIi4vc3JjL2xha2ViYXNlLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZVBsdWdpbiBmcm9tIFwiLi9zcmMvbGFrZWJhc2UtcGx1Z2luLnRzXCI7XG5leHBvcnQgKiBhcyBuYXRpdmUgZnJvbSBcIi4vc3JjL25hdGl2ZS50c1wiO1xuZXhwb3J0ICogYXMgcGx1Z2luIGZyb20gXCIuL3NyYy9wbHVnaW4udHNcIjtcbmV4cG9ydCAqIGFzIHF1ZXJ5IGZyb20gXCIuL3NyYy9xdWVyeS50c1wiO1xuZXhwb3J0ICogYXMgcnVudGltZSBmcm9tIFwiLi9zcmMvcnVudGltZS50c1wiO1xuZXhwb3J0ICogYXMgc2NoZW1hIGZyb20gXCIuL3NyYy9zY2hlbWEudHNcIjtcbmV4cG9ydCAqIGFzIHRvb2wgZnJvbSBcIi4vc3JjL3Rvb2wudHNcIjtcbmV4cG9ydCB7IFNlYXJjaEluZGV4LCBTZWFyY2hDbGllbnQgfSBmcm9tIFwiLi9zcmMvY2xpZW50LnRzXCI7XG5leHBvcnQgdHlwZSB7IFNlYXJjaFJlYWRCYWNrZW5kLCBTZWFyY2hPcHRpb25zLCBVbml2ZXJzYWxTZWFyY2hPcHRpb25zLCBJbmRleEluZm8sIENyZWF0ZUluZGV4T3B0aW9ucywgRW5zdXJlRW5kcG9pbnRPcHRpb25zLCBQcm92aXNpb25PcHRpb25zIH0gZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0IHsgSU5ERVhfRU5WLCBEQVRBQlJJQ0tTX0lOREVYX0VOViwgRU5EUE9JTlRfRU5WLCBERUZBVUxUX01PREUsIERFRkFVTFRfUEFHRV9TSVpFLCBERUZBVUxUX1RJTUVPVVRfTVMsIERFRkFVTFRfQkFTRV9QQVRILCBTRUFSQ0hfQ09ORklHX1NDSEVNQSB9IGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCB0eXBlIHsgU2VhcmNoSW5kZXhDb25maWcsIFNlYXJjaFBsdWdpbkNvbmZpZywgRW5zdXJlT25TZXR1cENvbmZpZywgUmVzb2x2ZWRJbmRleENvbmZpZywgUmVzb2x2ZWRTZWFyY2hDb25maWcgfSBmcm9tIFwiLi9zcmMvY29uZmlnLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVNlYXJjaEJhY2tlbmQgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UudHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VTZWFyY2hPcHRpb25zLCBMYWtlYmFzZVNlYXJjaFBvb2wsIExha2ViYXNlUHJvdmlzaW9uT3B0aW9ucyB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS50c1wiO1xuZXhwb3J0IHsgTGFrZWJhc2VBaVNlYXJjaFBsdWdpbiwgbGFrZWJhc2VBaVNlYXJjaCB9IGZyb20gXCIuL3NyYy9sYWtlYmFzZS1wbHVnaW4udHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VBaVNlYXJjaEluZGV4Q29uZmlnLCBMYWtlYmFzZUFpU2VhcmNoQ29uZmlnIH0gZnJvbSBcIi4vc3JjL2xha2ViYXNlLXBsdWdpbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBBaVNlYXJjaFByb3ZpZGVyIH0gZnJvbSBcIi4vc3JjL25hdGl2ZS50c1wiO1xuZXhwb3J0IHsgU2VhcmNoUGx1Z2luLCBzZWFyY2ggfSBmcm9tIFwiLi9zcmMvcGx1Z2luLnRzXCI7XG5leHBvcnQgdHlwZSB7IFNlYXJjaFJ1bnRpbWVPcHRpb25zLCBTZWFyY2hSdW50aW1lIH0gZnJvbSBcIi4vc3JjL3J1bnRpbWUudHNcIjtcbmV4cG9ydCB7IFNFQVJDSF9UT09MX0RFU0NSSVBUSU9OLCBVTklWRVJTQUxfU0VBUkNIX1RPT0xfREVTQ1JJUFRJT04sIEFERF9ET0NVTUVOVFNfVE9PTF9ERVNDUklQVElPTiwgQ1JFQVRFX0lOREVYX1RPT0xfREVTQ1JJUFRJT04sIFNZTkNfSU5ERVhfVE9PTF9ERVNDUklQVElPTiwgc2VhcmNoVG9vbFNjaGVtYSwgdW5pdmVyc2FsU2VhcmNoVG9vbFNjaGVtYSwgc2VhcmNoUmVzdWx0U2NoZW1hLCBjcmVhdGVJbmRleFRvb2xTY2hlbWEsIGluZGV4SW5mb1NjaGVtYSwgc3luY0luZGV4VG9vbFNjaGVtYSB9IGZyb20gXCIuL3NyYy9zY2hlbWEudHNcIjtcbmV4cG9ydCB0eXBlIHsgU2VhcmNoVG9vbE9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvdG9vbC50c1wiO1xuIl19
package/package.json CHANGED
@@ -28,13 +28,13 @@
28
28
  "dependencies": {
29
29
  "@databricks/appkit": "0.81.0",
30
30
  "@databricks/sdk-experimental": "^0.17.0",
31
- "@dbx-tools/appkit": "^0.9.131",
32
- "@dbx-tools/core": "^0.9.131",
33
- "@dbx-tools/model": "^0.9.131",
34
- "@dbx-tools/postgres": "^0.9.131",
35
- "@dbx-tools/shared-core": "^0.9.131",
36
- "@dbx-tools/shared-model": "^0.9.131",
37
- "@dbx-tools/shared-search": "^0.9.131",
31
+ "@dbx-tools/appkit": "^0.9.132",
32
+ "@dbx-tools/core": "^0.9.132",
33
+ "@dbx-tools/model": "^0.9.132",
34
+ "@dbx-tools/postgres": "^0.9.132",
35
+ "@dbx-tools/shared-core": "^0.9.132",
36
+ "@dbx-tools/shared-model": "^0.9.132",
37
+ "@dbx-tools/shared-search": "^0.9.132",
38
38
  "@mastra/core": "1.71.0",
39
39
  "pg": "^8.22.0",
40
40
  "zod": "4.3.6"
@@ -101,7 +101,7 @@
101
101
  "./package.json": "./package.json"
102
102
  }
103
103
  },
104
- "version": "0.9.131",
104
+ "version": "0.9.132",
105
105
  "types": "./lib/index.d.ts",
106
106
  "dbxToolsConfig": {
107
107
  "tags": [