@deepagents/text2sql 0.36.0 → 0.37.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 (44) hide show
  1. package/README.md +37 -5
  2. package/dist/index.d.ts +4 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +404 -727
  5. package/dist/index.js.map +4 -4
  6. package/dist/lib/adapter-name.d.ts +4 -0
  7. package/dist/lib/adapter-name.d.ts.map +1 -0
  8. package/dist/lib/adapters/adapter.d.ts.map +1 -1
  9. package/dist/lib/adapters/bigquery/index.js +35 -6
  10. package/dist/lib/adapters/bigquery/index.js.map +2 -2
  11. package/dist/lib/adapters/mysql/index.js +35 -6
  12. package/dist/lib/adapters/mysql/index.js.map +2 -2
  13. package/dist/lib/adapters/postgres/index.js +35 -6
  14. package/dist/lib/adapters/postgres/index.js.map +2 -2
  15. package/dist/lib/adapters/spreadsheet/index.js +35 -6
  16. package/dist/lib/adapters/spreadsheet/index.js.map +2 -2
  17. package/dist/lib/adapters/sqlite/index.js +35 -6
  18. package/dist/lib/adapters/sqlite/index.js.map +2 -2
  19. package/dist/lib/adapters/sqlserver/index.js +35 -6
  20. package/dist/lib/adapters/sqlserver/index.js.map +2 -2
  21. package/dist/lib/agents/exceptions.d.ts +9 -0
  22. package/dist/lib/agents/exceptions.d.ts.map +1 -1
  23. package/dist/lib/agents/sql-command.d.ts +11 -0
  24. package/dist/lib/agents/sql-command.d.ts.map +1 -0
  25. package/dist/lib/agents/sql-transform-plugins.d.ts +4 -1
  26. package/dist/lib/agents/sql-transform-plugins.d.ts.map +1 -1
  27. package/dist/lib/demo.d.ts +2 -0
  28. package/dist/lib/demo.d.ts.map +1 -0
  29. package/dist/lib/fs/index.d.ts +0 -1
  30. package/dist/lib/fs/index.d.ts.map +1 -1
  31. package/dist/lib/instructions.d.ts.map +1 -1
  32. package/dist/lib/sandbox.d.ts +21 -0
  33. package/dist/lib/sandbox.d.ts.map +1 -0
  34. package/dist/lib/sql.d.ts +23 -37
  35. package/dist/lib/sql.d.ts.map +1 -1
  36. package/dist/lib/synthesis/index.js +12 -0
  37. package/dist/lib/synthesis/index.js.map +2 -2
  38. package/package.json +7 -7
  39. package/dist/lib/agents/explainer.agent.d.ts +0 -7
  40. package/dist/lib/agents/explainer.agent.d.ts.map +0 -1
  41. package/dist/lib/agents/result-tools.d.ts +0 -69
  42. package/dist/lib/agents/result-tools.d.ts.map +0 -1
  43. package/dist/lib/fs/tracked-fs.d.ts +0 -42
  44. package/dist/lib/fs/tracked-fs.d.ts.map +0 -1
@@ -0,0 +1,4 @@
1
+ export declare const ADAPTER_NAME_PATTERN: RegExp;
2
+ export declare function isValidAdapterName(name: string | null | undefined): name is string;
3
+ export declare function validateAdapterNames(names: Iterable<string>): void;
4
+ //# sourceMappingURL=adapter-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-name.d.ts","sourceRoot":"","sources":["../../src/lib/adapter-name.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,QAA6B,CAAC;AAE/D,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,IAAI,IAAI,MAAM,CAEhB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAQlE"}
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAuB,MAAM,eAAe,CAAC;AAEtE,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAe3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,yBAAyB,CAAC;AASjC;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;AAEzE,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;QACjC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACrB,EAAE,CAAC;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC1D,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EACA,OAAO,GACP,QAAQ,GACR,UAAU,GACV,SAAS,GACT,aAAa,GACb,aAAa,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,EAAE,EAAE,MAAM,EAAE,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,MAAM,mBAAmB,GAC3B,WAAW,GACX,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAC1B,QAAQ,GACR,YAAY,GACZ,cAAc,GACd,SAAS,GACT,cAAc,GACd,iBAAiB,GACjB,eAAe,CAAC;AAEpB,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,iBAAiB,CAAC;AAElE,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAC7B,GAAG,EAAE,MAAM,KACR,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;AAE5C,8BAAsB,OAAO;;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;IAElC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,EAAE,WAAW,CAAC;IAEjD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpD;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAE1C;;;;;;;;OAQG;IACG,UAAU,CAAC,GAAG,mBAA2B,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAW5E;;;;OAIG;IACG,sBAAsB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IA0OjD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAkFrB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO7C,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAO1C,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE;IACzD,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI;IAC1E,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE;IAE3D;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAE9C;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAEtC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,EAC7B,KAAK,EAAE,MAAM,GACZ,MAAM;IAET;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAc5C;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAQ/D;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAInC;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;CAezE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC3D,MAAM,EAAE,CAAC,EAAE,EACX,MAAM,EAAE,YAAY,GAAG,SAAS,GAC/B,CAAC,EAAE,CAGL;AAED,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,YAAY,EAAE,EAC7B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,GAClC,YAAY,EAAE,CAUhB;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,KAAK,EAAE,EACf,aAAa,EAAE,YAAY,EAAE,EAC7B,MAAM,EAAE,YAAY,GAAG,SAAS,GAC/B;IAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAapD;AAED,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,GACnB,OAAO,CAKT;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,KAAK,EAAE,EAClB,aAAa,EAAE,YAAY,EAAE,EAC7B,MAAM,EAAE,YAAY,GACnB,MAAM,EAAE,CA0CV"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/adapter.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { format as formatSql } from "sql-formatter";
5
5
  var sqlValidationMarker = Symbol("SQLValidationError");
6
6
  var unanswerableSqlMarker = Symbol("UnanswerableSQLError");
7
7
  var sqlScopeMarker = Symbol("SQLScopeError");
8
+ var sqlReadOnlyMarker = Symbol("SQLReadOnlyError");
8
9
  var SQLValidationError = class _SQLValidationError extends Error {
9
10
  [sqlValidationMarker];
10
11
  constructor(message) {
@@ -42,6 +43,17 @@ var SQLScopeError = class _SQLScopeError extends Error {
42
43
  return error instanceof _SQLScopeError && error[sqlScopeMarker] === true;
43
44
  }
44
45
  };
46
+ var SQLReadOnlyError = class _SQLReadOnlyError extends Error {
47
+ [sqlReadOnlyMarker];
48
+ constructor(message) {
49
+ super(message);
50
+ this.name = "SQLReadOnlyError";
51
+ this[sqlReadOnlyMarker] = true;
52
+ }
53
+ static isInstance(error) {
54
+ return error instanceof _SQLReadOnlyError && error[sqlReadOnlyMarker] === true;
55
+ }
56
+ };
45
57
 
46
58
  // packages/text2sql/src/lib/fragments/schema.ts
47
59
  function dialectInfo(input) {
@@ -468,11 +480,22 @@ var Adapter = class {
468
480
  });
469
481
  }
470
482
  format(sql) {
483
+ const decoded = this.#decodeShellEscapes(sql);
471
484
  try {
472
- return formatSql(sql, { language: this.formatterLanguage });
485
+ return formatSql(decoded, { language: this.formatterLanguage });
473
486
  } catch {
474
- return sql;
487
+ return decoded;
488
+ }
489
+ }
490
+ #decodeShellEscapes(sql) {
491
+ return sql.replace(/\\n/g, "\n").replace(/\\t/g, " ").replace(/\\([().*])/g, "$1").replace(/\\(?=$)/gm, "");
492
+ }
493
+ #checkReadOnly(sql) {
494
+ const upper = sql.trimStart().toUpperCase();
495
+ if (!upper.startsWith("SELECT") && !upper.startsWith("WITH")) {
496
+ return "only SELECT or WITH queries allowed";
475
497
  }
498
+ return null;
476
499
  }
477
500
  #cachedAllowedEntities = null;
478
501
  async #resolveScope() {
@@ -535,16 +558,22 @@ var Adapter = class {
535
558
  return buildOutOfScopePayload(sql, outOfScope, allowedEntities);
536
559
  }
537
560
  async validate(sql) {
561
+ const decoded = this.#decodeShellEscapes(sql);
562
+ const readOnlyError = this.#checkReadOnly(decoded);
563
+ if (readOnlyError) return readOnlyError;
538
564
  const allowed = await this.#resolveScope();
539
- const scopeError = await this.#checkScope(sql, allowed);
565
+ const scopeError = await this.#checkScope(decoded, allowed);
540
566
  if (scopeError) return JSON.stringify(scopeError);
541
- return this.validateImpl(sql);
567
+ return this.validateImpl(decoded);
542
568
  }
543
569
  async execute(sql) {
570
+ const decoded = this.#decodeShellEscapes(sql);
571
+ const readOnlyError = this.#checkReadOnly(decoded);
572
+ if (readOnlyError) throw new SQLReadOnlyError(readOnlyError);
544
573
  const allowed = await this.#resolveScope();
545
- const scopeError = await this.#checkScope(sql, allowed);
574
+ const scopeError = await this.#checkScope(decoded, allowed);
546
575
  if (scopeError) throw new SQLScopeError(scopeError);
547
- return this.executeImpl(sql);
576
+ return this.executeImpl(decoded);
548
577
  }
549
578
  /**
550
579
  * Convert unknown database value to number.