@deepagents/text2sql 0.24.0 → 0.26.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 (35) hide show
  1. package/dist/index.d.ts +0 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +149 -241
  4. package/dist/index.js.map +4 -4
  5. package/dist/lib/adapters/adapter.d.ts +6 -0
  6. package/dist/lib/adapters/adapter.d.ts.map +1 -1
  7. package/dist/lib/adapters/bigquery/index.js +30 -8
  8. package/dist/lib/adapters/bigquery/index.js.map +2 -2
  9. package/dist/lib/adapters/bigquery/view.bigquery.grounding.d.ts.map +1 -1
  10. package/dist/lib/adapters/groundings/index.js +2 -0
  11. package/dist/lib/adapters/groundings/index.js.map +2 -2
  12. package/dist/lib/adapters/groundings/view.grounding.d.ts +3 -0
  13. package/dist/lib/adapters/groundings/view.grounding.d.ts.map +1 -1
  14. package/dist/lib/adapters/mysql/index.js +29 -7
  15. package/dist/lib/adapters/mysql/index.js.map +2 -2
  16. package/dist/lib/adapters/mysql/view.mysql.grounding.d.ts.map +1 -1
  17. package/dist/lib/adapters/postgres/index.js +29 -7
  18. package/dist/lib/adapters/postgres/index.js.map +2 -2
  19. package/dist/lib/adapters/postgres/view.postgres.grounding.d.ts.map +1 -1
  20. package/dist/lib/adapters/spreadsheet/index.js +16 -0
  21. package/dist/lib/adapters/spreadsheet/index.js.map +2 -2
  22. package/dist/lib/adapters/sqlite/index.js +26 -4
  23. package/dist/lib/adapters/sqlite/index.js.map +2 -2
  24. package/dist/lib/adapters/sqlite/view.sqlite.grounding.d.ts.map +1 -1
  25. package/dist/lib/adapters/sqlserver/column-stats.sqlserver.grounding.d.ts +2 -4
  26. package/dist/lib/adapters/sqlserver/column-stats.sqlserver.grounding.d.ts.map +1 -1
  27. package/dist/lib/adapters/sqlserver/column-values.sqlserver.grounding.d.ts +0 -9
  28. package/dist/lib/adapters/sqlserver/column-values.sqlserver.grounding.d.ts.map +1 -1
  29. package/dist/lib/adapters/sqlserver/index.js +107 -11
  30. package/dist/lib/adapters/sqlserver/index.js.map +3 -3
  31. package/dist/lib/adapters/sqlserver/view.sqlserver.grounding.d.ts.map +1 -1
  32. package/dist/lib/agents/result-tools.d.ts.map +1 -1
  33. package/package.json +4 -4
  34. package/dist/lib/agents/developer.agent.d.ts +0 -41
  35. package/dist/lib/agents/developer.agent.d.ts.map +0 -1
@@ -121,6 +121,22 @@ var Adapter = class {
121
121
  }
122
122
  return this.#toSchemaFragments(ctx);
123
123
  }
124
+ /**
125
+ * Resolve the allowed entity names (tables + views) from grounding config.
126
+ * Runs all configured groundings and returns the resolved set of names.
127
+ * Results are NOT cached — call once and store the result.
128
+ */
129
+ async resolveAllowedEntities() {
130
+ const ctx = createGroundingContext();
131
+ for (const fn of this.grounding) {
132
+ const grounding = fn(this);
133
+ await grounding.execute(ctx);
134
+ }
135
+ return [
136
+ ...ctx.tables.map((t) => t.name),
137
+ ...ctx.views.map((v) => v.name)
138
+ ];
139
+ }
124
140
  /**
125
141
  * Convert complete grounding context to schema fragments.
126
142
  * Called after all groundings have populated ctx with data.
@@ -1305,9 +1321,11 @@ var SqliteTableGrounding = class extends TableGrounding {
1305
1321
  // packages/text2sql/src/lib/adapters/groundings/view.grounding.ts
1306
1322
  var ViewGrounding = class extends AbstractGrounding {
1307
1323
  #filter;
1324
+ includeDefinition;
1308
1325
  constructor(config = {}) {
1309
1326
  super("view");
1310
1327
  this.#filter = config.filter;
1328
+ this.includeDefinition = config.includeDefinition ?? true;
1311
1329
  }
1312
1330
  /**
1313
1331
  * Execute the grounding process.
@@ -1352,15 +1370,19 @@ var SqliteViewGrounding = class extends ViewGrounding {
1352
1370
  return rows.map((row) => row.name).filter((name) => typeof name === "string");
1353
1371
  }
1354
1372
  async getView(viewName) {
1355
- const defRows = await this.#adapter.runQuery(
1356
- `SELECT sql FROM sqlite_master WHERE type='view' AND name=${this.#quoteIdentifier(viewName)}`
1357
- );
1373
+ let definition;
1374
+ if (this.includeDefinition) {
1375
+ const defRows = await this.#adapter.runQuery(
1376
+ `SELECT sql FROM sqlite_master WHERE type='view' AND name=${this.#quoteIdentifier(viewName)}`
1377
+ );
1378
+ definition = defRows[0]?.sql ?? void 0;
1379
+ }
1358
1380
  const columns = await this.#adapter.runQuery(
1359
1381
  `PRAGMA table_info(${this.#quoteIdentifier(viewName)})`
1360
1382
  );
1361
1383
  return {
1362
1384
  name: viewName,
1363
- definition: defRows[0]?.sql ?? void 0,
1385
+ definition,
1364
1386
  columns: columns.map((col) => ({
1365
1387
  name: col.name ?? "unknown",
1366
1388
  type: col.type ?? "unknown"