@sixb/sqlite 0.1.11 → 0.1.12

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 (50) hide show
  1. package/README.md +32 -0
  2. package/dist/agents/rows.d.ts +2 -0
  3. package/dist/agents/rows.d.ts.map +1 -1
  4. package/dist/agents/threads.d.ts +2 -1
  5. package/dist/agents/threads.d.ts.map +1 -1
  6. package/dist/index.js +676 -61
  7. package/dist/index.js.map +18 -14
  8. package/dist/migrations.d.ts.map +1 -1
  9. package/dist/objects/query-compiler.d.ts +9 -2
  10. package/dist/objects/query-compiler.d.ts.map +1 -1
  11. package/dist/objects/read-scope.d.ts +3 -0
  12. package/dist/objects/read-scope.d.ts.map +1 -1
  13. package/dist/objects/reader.d.ts +1 -0
  14. package/dist/objects/reader.d.ts.map +1 -1
  15. package/dist/objects/rows.d.ts +1 -0
  16. package/dist/objects/rows.d.ts.map +1 -1
  17. package/dist/objects/storage.d.ts.map +1 -1
  18. package/dist/objects/vector-extension.d.ts +4 -0
  19. package/dist/objects/vector-extension.d.ts.map +1 -0
  20. package/dist/ontology-storage/index.d.ts +4 -0
  21. package/dist/ontology-storage/index.d.ts.map +1 -1
  22. package/dist/ontology-storage/materializations.d.ts +1 -0
  23. package/dist/ontology-storage/materializations.d.ts.map +1 -1
  24. package/dist/ontology-storage/vector-indexing.d.ts +20 -0
  25. package/dist/ontology-storage/vector-indexing.d.ts.map +1 -0
  26. package/dist/ontology-storage/vectors.d.ts +16 -0
  27. package/dist/ontology-storage/vectors.d.ts.map +1 -0
  28. package/dist/vector-encoding.d.ts +3 -0
  29. package/dist/vector-encoding.d.ts.map +1 -0
  30. package/package.json +8 -4
  31. package/src/agents/rows.ts +12 -0
  32. package/src/agents/threads.ts +41 -2
  33. package/src/ai-cost-storage.ts +4 -0
  34. package/src/migrations/041-agent-thread-workspaces.sql +2 -0
  35. package/src/migrations/042-vector-profiles.sql +21 -0
  36. package/src/migrations/043-vector-indexing.sql +197 -0
  37. package/src/migrations/044-vector-batching.sql +3 -0
  38. package/src/migrations/045-agent-thread-sandbox-state.sql +2 -0
  39. package/src/migrations.ts +14 -0
  40. package/src/objects/query-compiler.ts +105 -7
  41. package/src/objects/read-scope.ts +34 -31
  42. package/src/objects/reader.ts +25 -1
  43. package/src/objects/rows.ts +5 -1
  44. package/src/objects/storage.ts +12 -1
  45. package/src/objects/vector-extension.ts +26 -0
  46. package/src/ontology-storage/index.ts +16 -0
  47. package/src/ontology-storage/materializations.ts +13 -0
  48. package/src/ontology-storage/vector-indexing.ts +196 -0
  49. package/src/ontology-storage/vectors.ts +182 -0
  50. package/src/vector-encoding.ts +9 -0
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAIrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EAGV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAqG3B,eAAO,MAAM,yBAAyB,sBAAsB,CAAA;AAC5D,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,eAAO,MAAM,uBAAuB,wBA+ElC,CAAA;AAEF,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAQ9E;AAED,wBAAgB,UAAU,CACxB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC1C,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAAC,QAAQ,CAAC,CAEzB;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAS3D;AAED,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,eAAe,EAAE,CAOzF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;CAC5C,GAAG,eAAe,CAoBlB;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1E"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAIrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EAGV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AA8G3B,eAAO,MAAM,yBAAyB,sBAAsB,CAAA;AAC5D,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,eAAO,MAAM,uBAAuB,wBAoFlC,CAAA;AAEF,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAQ9E;AAED,wBAAgB,UAAU,CACxB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC1C,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAAC,QAAQ,CAAC,CAEzB;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAS3D;AAED,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,eAAe,EAAE,CAOzF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;CAC5C,GAAG,eAAe,CAoBlB;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1E"}
@@ -1,5 +1,5 @@
1
1
  import { type ObjectQuery } from "@sixb/core";
2
- export type SqliteValue = string | number | bigint | boolean | null;
2
+ export type SqliteValue = string | number | bigint | boolean | null | Uint8Array;
3
3
  export interface SqliteObjectQueryPageRow {
4
4
  object_type_id: string;
5
5
  primary_id: string;
@@ -7,6 +7,11 @@ export interface SqliteObjectQueryPageRow {
7
7
  _cursor_properties?: string;
8
8
  }
9
9
  export interface CompiledObjectQuery {
10
+ vectorProbe?: {
11
+ sql: string;
12
+ args: SqliteValue[];
13
+ limit: number;
14
+ };
10
15
  sql: string;
11
16
  args: SqliteValue[];
12
17
  totalSql: string;
@@ -34,7 +39,8 @@ type CompiledOrderField = {
34
39
  direction: "asc" | "desc";
35
40
  } | {
36
41
  kind: "column";
37
- column: "object_type_id" | "primary_id";
42
+ column: "object_type_id" | "primary_id" | "_vector_score";
43
+ binary?: boolean;
38
44
  direction: "asc" | "desc";
39
45
  };
40
46
  export declare function compileObjectQuery(projectId: string, query: ObjectQuery, options?: {
@@ -45,6 +51,7 @@ export declare function compileObjectQuery(projectId: string, query: ObjectQuery
45
51
  export interface SqliteObjectQuerySource {
46
52
  readonly objectsTable: string;
47
53
  readonly linksTable: string;
54
+ readonly objectPropertyPermissionsTable?: string;
48
55
  /** Wrap a terminal SELECT without its own WITH clause; the selected source owns the only WITH. */
49
56
  wrapStatement(sql: string, args?: readonly SqliteValue[]): {
50
57
  readonly sql: string;
@@ -1 +1 @@
1
- {"version":3,"file":"query-compiler.d.ts","sourceRoot":"","sources":["../../src/objects/query-compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAKjB,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAA;AAEnE,MAAM,WAAW,wBAAwB;IACvC,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,WAAW,EAAE,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,KAAK,EAAE,aAAa,CAAA;IACpB,YAAY,CAAC,EAAE,oBAAoB,CAAA;IACnC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAClD,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC,EAAE,CAAA;IAC7C,aAAa,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAC/F;AAED,UAAU,oBAAoB;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,WAAW,EAAE,CAAA;IACnB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;CACnC;AAYD,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,WAAW,EAAE,CAAA;IACnB,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAA;IACrC,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,KAAK,kBAAkB,GACnB;IACE,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;CAC1B,GACD;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,gBAAgB,GAAG,YAAY,CAAA;IACvC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;CAC1B,CAAA;AAoBL,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,uBAAuB,CAAA;CAAO,GACzE,mBAAmB,CAIrB;AAED,4DAA4D;AAC5D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,kGAAkG;IAClG,aAAa,CACX,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,SAAS,WAAW,EAAE,GAC5B;QACD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,CAAA;KACtC,CAAA;IACD,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAAA;CAC3D;AAED,eAAO,MAAM,2BAA2B,EAAE,uBAKzC,CAAA;AA+sBD,gGAAgG;AAChG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMzD"}
1
+ {"version":3,"file":"query-compiler.d.ts","sourceRoot":"","sources":["../../src/objects/query-compiler.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@ export interface SqliteSelectedObjectReadSource extends SqliteObjectQuerySource
12
12
  *
13
13
  * The complete compiled scope is serialized once. Every statement receives that one JSON document
14
14
  * and the bound project id, keeping the host-parameter count constant as selections grow.
15
+ * CROSS JOIN keeps authorized parents/grants before indexed edge/object lookups, even when
16
+ * statistics would otherwise make SQLite rescan all grants for every stored object.
17
+ * Property grants are grouped only after path-sensitive reachability has been resolved.
15
18
  */
16
19
  export declare function compileSqliteSelectedObjectReadSource(projectId: string, scope: CompiledSelectedObjectReadScope, maxTraversalFacts: number): SqliteSelectedObjectReadSource;
17
20
  //# sourceMappingURL=read-scope.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read-scope.d.ts","sourceRoot":"","sources":["../../src/objects/read-scope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAA;AACzE,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,WAAW,8BAA+B,SAAQ,uBAAuB;IAC7E,QAAQ,CAAC,8BAA8B,EAAE,MAAM,CAAA;IAC/C,QAAQ,CAAC,cAAc,EAAE;QACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,CAAA;KACtC,CAAA;CACF;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,+BAA+B,EACtC,iBAAiB,EAAE,MAAM,GACxB,8BAA8B,CAiDhC"}
1
+ {"version":3,"file":"read-scope.d.ts","sourceRoot":"","sources":["../../src/objects/read-scope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAA;AACzE,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,WAAW,8BAA+B,SAAQ,uBAAuB;IAC7E,QAAQ,CAAC,8BAA8B,EAAE,MAAM,CAAA;IAC/C,QAAQ,CAAC,cAAc,EAAE;QACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,CAAA;KACtC,CAAA;CACF;AAED;;;;;;;;GAQG;AACH,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,+BAA+B,EACtC,iBAAiB,EAAE,MAAM,GACxB,8BAA8B,CAoDhC"}
@@ -7,6 +7,7 @@ export declare class SqliteObjectReader {
7
7
  private readonly db;
8
8
  private readonly source;
9
9
  constructor(db: Database, source: SqliteObjectQuerySource | SqliteSelectedObjectReadSource);
10
+ private assertVectorSearch;
10
11
  queryObjects(params: QueryObjectsInput): QueryObjectsResult;
11
12
  countObjects(params: CountObjectsInput): CountObjectsResult;
12
13
  existsObjects(params: ExistsObjectsInput): ExistsObjectsResult;
@@ -1 +1 @@
1
- {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/objects/reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EAEd,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAUlE,qGAAqG;AACrG,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,uBAAuB,GAAG,8BAA8B;IAGnF,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAwB3D,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAY3D,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,mBAAmB;IAQ9D,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAa3D,cAAc,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;KAClB,GAAG,SAAS,GAAG,IAAI;IAYpB,uBAAuB,CACrB,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GAClE,SAAS,OAAO,EAAE;IA8BrB,SAAS,CAAC,MAAM,EAAE;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,QAAQ,EAAE,MAAM,CAAA;QAChB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,SAAS,CAAC,EAAE,aAAa,CAAA;KAC1B,GAAG,SAAS,aAAa,EAAE;IAgC5B,mBAAmB,CAAC,MAAM,EAAE;QAC1B,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC9D,GAAG,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC;IA4BlC,cAAc,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,CAAC,EAAE,aAAa,CAAA;QACzB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC7E,GAAG,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC;IA+CtC,UAAU,CAAC,MAAM,EAAE,qBAAqB,GAAG,sBAAsB;IAiFjE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACtD,OAAO,EAAE,SAAS,SAAS,EAAE,CAAA;QAC7B,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;KACd;CA6EF;AAYD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIxD"}
1
+ {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/objects/reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAG1C,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EAEd,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAGL,KAAK,uBAAuB,EAE7B,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAWlE,qGAAqG;AACrG,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,uBAAuB,GAAG,8BAA8B;IAGnF,OAAO,CAAC,kBAAkB;IAiB1B,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAyB3D,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAa3D,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,mBAAmB;IAS9D,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB;IAc3D,cAAc,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;KAClB,GAAG,SAAS,GAAG,IAAI;IAYpB,uBAAuB,CACrB,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GAClE,SAAS,OAAO,EAAE;IA8BrB,SAAS,CAAC,MAAM,EAAE;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,QAAQ,EAAE,MAAM,CAAA;QAChB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,SAAS,CAAC,EAAE,aAAa,CAAA;KAC1B,GAAG,SAAS,aAAa,EAAE;IAgC5B,mBAAmB,CAAC,MAAM,EAAE;QAC1B,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC9D,GAAG,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC;IA4BlC,cAAc,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,CAAC,EAAE,aAAa,CAAA;QACzB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC7E,GAAG,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC;IA+CtC,UAAU,CAAC,MAAM,EAAE,qBAAqB,GAAG,sBAAsB;IAiFjE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACtD,OAAO,EAAE,SAAS,SAAS,EAAE,CAAA;QAC7B,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;KACd;CA6EF;AAYD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIxD"}
@@ -14,6 +14,7 @@ export interface DatabaseRow {
14
14
  last_commit_id: string;
15
15
  }
16
16
  export interface ObjectQueryDatabaseRow extends DatabaseRow {
17
+ _vector_score?: number;
17
18
  _cursor_properties?: string;
18
19
  /** `json_object(linkId, value, ...)` serialized text from an `expand` pushdown; absent otherwise. */
19
20
  _expand?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"rows.d.ts","sourceRoot":"","sources":["../../src/objects/rows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,aAAa,EACb,SAAS,EAEV,MAAM,oBAAoB,CAAA;AAE3B,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,CAWvD;AAED,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,GAAG,SAAS,CAIvE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,aAAa,CAa7D;AAqDD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;CACvB"}
1
+ {"version":3,"file":"rows.d.ts","sourceRoot":"","sources":["../../src/objects/rows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,aAAa,EACb,SAAS,EAEV,MAAM,oBAAoB,CAAA;AAE3B,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,CAWvD;AAED,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,GAAG,SAAS,CAOvE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,aAAa,CAa7D;AAqDD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;CACvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/objects/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/objects/storage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Database } from "bun:sqlite";
2
+ /** Load only for vector reads, leaving ordinary SQLite use independent of extension support. */
3
+ export declare function ensureSqliteVectorSearch(db: Database): void;
4
+ //# sourceMappingURL=vector-extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-extension.d.ts","sourceRoot":"","sources":["../../src/objects/vector-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAM1C,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAkB3D"}
@@ -6,10 +6,14 @@ import { SqliteOntologyMaterializationStorage } from "./materializations";
6
6
  import { SqliteOntologyOutboxStorage } from "./outbox";
7
7
  import type { SqliteRootOperation } from "./shared";
8
8
  import { SqliteOntologySourceStorage } from "./sources";
9
+ import { SqliteVectorIndexingStorage } from "./vector-indexing";
10
+ import { SqliteOntologyVectorStorage } from "./vectors";
9
11
  export declare class SqliteOntologyStorage implements OntologyStorage {
10
12
  readonly commits: SqliteOntologyCommitStorage;
11
13
  readonly sources: SqliteOntologySourceStorage;
12
14
  readonly materializations: SqliteOntologyMaterializationStorage;
15
+ readonly vectorIndexing: SqliteVectorIndexingStorage;
16
+ readonly vectors: SqliteOntologyVectorStorage;
13
17
  readonly outbox: SqliteOntologyOutboxStorage;
14
18
  constructor(input: {
15
19
  readonly db: Database;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AACvD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA;AACjF,OAAO,EAAE,oCAAoC,EAAE,MAAM,oBAAoB,CAAA;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AAEvD,qBAAa,qBAAsB,YAAW,eAAe;IAC3D,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,oCAAoC,CAAA;IAC/D,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;gBAEhC,KAAK,EAAE;QACjB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAA;QACrB,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,CAAA;QAC9C,QAAQ,CAAC,kBAAkB,EAAE,gCAAgC,GAAG,IAAI,CAAA;KACrE;IAUD,kBAAkB,IAAI,IAAI;CAG3B;AAED,YAAY,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AACvD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA;AACjF,OAAO,EAAE,oCAAoC,EAAE,MAAM,oBAAoB,CAAA;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AAEvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AAEvD,qBAAa,qBAAsB,YAAW,eAAe;IAC3D,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,oCAAoC,CAAA;IAC/D,QAAQ,CAAC,cAAc,EAAE,2BAA2B,CAAA;IACpD,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;IAC7C,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAA;gBAEhC,KAAK,EAAE;QACjB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAA;QACrB,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,CAAA;QAC9C,QAAQ,CAAC,kBAAkB,EAAE,gCAAgC,GAAG,IAAI,CAAA;KACrE;IAqBD,kBAAkB,IAAI,IAAI;CAG3B;AAED,YAAY,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAA"}
@@ -6,6 +6,7 @@ export declare class SqliteOntologyMaterializationStorage implements OntologyMat
6
6
  private readonly sessions;
7
7
  private readonly writer;
8
8
  constructor(db: Database, context: SqliteOntologyTransactionContext | null);
9
+ assertVectorSession(session: MaterializationSession, projectId: string, commitId?: string): void;
9
10
  begin(input: MaterializationPlanHeader): Promise<MaterializationSession>;
10
11
  streamState(input: StreamMaterializationStateInput): AsyncIterable<MaterializationStatePage>;
11
12
  streamSourceReplacementState(input: StreamSourceReplacementStateInput): AsyncIterable<SourceReplacementStatePage>;
@@ -1 +1 @@
1
- {"version":3,"file":"materializations.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materializations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AA2B1C,OAAO,KAAK,EACV,8BAA8B,EAC9B,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EAEvB,8BAA8B,EAC9B,uCAAuC,EAEvC,0BAA0B,EAC1B,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAGL,KAAK,gCAAgC,EACtC,MAAM,2BAA2B,CAAA;AAkBlC,qBAAa,oCAAqC,YAAW,8BAA8B;IAKvF,OAAO,CAAC,QAAQ,CAAC,EAAE;IAJrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;gBAGjC,EAAE,EAAE,QAAQ,EAC7B,OAAO,EAAE,gCAAgC,GAAG,IAAI;IAM5C,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmCvE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAmDnC,4BAA4B,CACjC,KAAK,EAAE,iCAAiC,GACvC,aAAa,CAAC,0BAA0B,CAAC;IA6FtC,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,UAAU,CAAC,KAAK,EAAE,8BAA8B,GAAG,aAAa,CAAC,uBAAuB,CAAC;IAKnF,mBAAmB,CACvB,KAAK,EAAE,uCAAuC,GAC7C,OAAO,CAAC,SAAS,8BAA8B,EAAE,CAAC;IAK/C,UAAU,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBhE,QAAQ,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAYxF,kBAAkB,IAAI,IAAI;IAI1B,OAAO,CAAC,kBAAkB;IA4D1B,OAAO,CAAC,kBAAkB;IA+C1B,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,UAAU;YAsBJ,kBAAkB;IAwDhC,OAAO,CAAC,sBAAsB;IAwD9B,OAAO,CAAC,cAAc;IAsGtB,OAAO,CAAC,YAAY;IAmDpB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,SAAS;CAYlB"}
1
+ {"version":3,"file":"materializations.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materializations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AA4B1C,OAAO,KAAK,EACV,8BAA8B,EAC9B,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EAEvB,8BAA8B,EAC9B,uCAAuC,EAEvC,0BAA0B,EAC1B,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAGL,KAAK,gCAAgC,EACtC,MAAM,2BAA2B,CAAA;AAkBlC,qBAAa,oCAAqC,YAAW,8BAA8B;IAKvF,OAAO,CAAC,QAAQ,CAAC,EAAE;IAJrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;gBAGjC,EAAE,EAAE,QAAQ,EAC7B,OAAO,EAAE,gCAAgC,GAAG,IAAI;IAMlD,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAY1F,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmCvE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAmDnC,4BAA4B,CACjC,KAAK,EAAE,iCAAiC,GACvC,aAAa,CAAC,0BAA0B,CAAC;IA6FtC,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,UAAU,CAAC,KAAK,EAAE,8BAA8B,GAAG,aAAa,CAAC,uBAAuB,CAAC;IAKnF,mBAAmB,CACvB,KAAK,EAAE,uCAAuC,GAC7C,OAAO,CAAC,SAAS,8BAA8B,EAAE,CAAC;IAK/C,UAAU,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBhE,QAAQ,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAYxF,kBAAkB,IAAI,IAAI;IAI1B,OAAO,CAAC,kBAAkB;IA4D1B,OAAO,CAAC,kBAAkB;IA+C1B,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,UAAU;YAsBJ,kBAAkB;IAwDhC,OAAO,CAAC,sBAAsB;IAwD9B,OAAO,CAAC,cAAc;IAsGtB,OAAO,CAAC,YAAY;IAmDpB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,SAAS;CAYlB"}
@@ -0,0 +1,20 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import { type MaterializationSession, type OntologyVectorIndexingStorage, type VectorIndexingWork } from "@sixb/core/storage";
3
+ import type { SqliteRootOperation } from "./shared";
4
+ export declare class SqliteVectorIndexingStorage implements OntologyVectorIndexingStorage {
5
+ private readonly db;
6
+ private readonly run;
7
+ private readonly assertSession;
8
+ constructor(db: Database, run: SqliteRootOperation, assertSession: (session: MaterializationSession, projectId: string) => void);
9
+ schedule(input: Parameters<OntologyVectorIndexingStorage["schedule"]>[0]): Promise<void>;
10
+ complete(input: Parameters<OntologyVectorIndexingStorage["complete"]>[0]): Promise<void>;
11
+ dispatched(input: Parameters<OntologyVectorIndexingStorage["dispatched"]>[0]): Promise<void>;
12
+ get(input: Parameters<OntologyVectorIndexingStorage["get"]>[0]): Promise<VectorIndexingWork | null>;
13
+ getBatch(input: Parameters<OntologyVectorIndexingStorage["getBatch"]>[0]): Promise<VectorIndexingWork[]>;
14
+ getBatchMember(input: Parameters<OntologyVectorIndexingStorage["getBatchMember"]>[0]): Promise<VectorIndexingWork | null>;
15
+ updateBatch(input: Parameters<OntologyVectorIndexingStorage["updateBatch"]>[0]): Promise<boolean>;
16
+ listDue(input: Parameters<OntologyVectorIndexingStorage["listDue"]>[0]): Promise<VectorIndexingWork[]>;
17
+ update(input: Parameters<OntologyVectorIndexingStorage["update"]>[0]): Promise<boolean>;
18
+ remove(input: Parameters<OntologyVectorIndexingStorage["remove"]>[0]): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=vector-indexing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-indexing.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/vector-indexing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAGlC,KAAK,kBAAkB,EACxB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAUnD,qBAAa,2BAA4B,YAAW,6BAA6B;IAE7E,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,EAAE,EAAE,QAAQ,EACZ,GAAG,EAAE,mBAAmB,EACxB,aAAa,EAAE,CAAC,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI;IAExF,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAyBxE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAiBxE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAQ5E,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAU9D,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAWxE,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAkBpF,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IA+B9E,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAUtE,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAkBpE,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAO3E"}
@@ -0,0 +1,16 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import type { MaterializationSession, ObjectVectorState, OntologyVectorStorage } from "@sixb/core/storage";
3
+ import type { SqliteRootOperation } from "./shared";
4
+ export declare class SqliteOntologyVectorStorage implements OntologyVectorStorage {
5
+ private readonly db;
6
+ private readonly runRootOperation;
7
+ private readonly assertSession;
8
+ constructor(db: Database, runRootOperation: SqliteRootOperation, assertSession: (session: MaterializationSession, projectId: string, commitId?: string) => void);
9
+ list(input: Parameters<OntologyVectorStorage["list"]>[0]): Promise<readonly ObjectVectorState[]>;
10
+ listBatch(input: Parameters<OntologyVectorStorage["listBatch"]>[0]): Promise<readonly ObjectVectorState[]>;
11
+ removeBatch(input: Parameters<OntologyVectorStorage["removeBatch"]>[0]): Promise<void>;
12
+ write(input: Parameters<OntologyVectorStorage["write"]>[0]): Promise<void>;
13
+ writeBatch(input: Parameters<OntologyVectorStorage["writeBatch"]>[0]): Promise<void>;
14
+ remove(input: Parameters<OntologyVectorStorage["remove"]>[0]): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectors.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/vectors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAUnD,qBAAa,2BAA4B,YAAW,qBAAqB;IAErE,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,EAAE,EAAE,QAAQ,EACZ,gBAAgB,EAAE,mBAAmB,EACrC,aAAa,EAAE,CAC9B,OAAO,EAAE,sBAAsB,EAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,KACd,IAAI;IAGL,IAAI,CACR,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAAC;IAqBlC,SAAS,CACb,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GACvD,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAAC;IAgClC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBtF,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgD1E,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpF,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAiBnF"}
@@ -0,0 +1,3 @@
1
+ /** Shared little-endian float32 encoding for stored vectors and sqlite-vec query bindings. */
2
+ export declare function encodeSqliteVector(values: readonly number[]): Uint8Array;
3
+ //# sourceMappingURL=vector-encoding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector-encoding.d.ts","sourceRoot":"","sources":["../src/vector-encoding.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAOxE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sixb/sqlite",
3
- "version": "0.1.11",
3
+ "version": "0.1.12",
4
4
  "description": "SQLite storage provider for Sixb",
5
5
  "keywords": [
6
6
  "sixb",
@@ -33,13 +33,14 @@
33
33
  "build": "bun ../../scripts/build-package.ts",
34
34
  "typecheck": "tsc --noEmit",
35
35
  "test": "bun test",
36
+ "test:e2e": "bun test ./tests/*.e2e.ts",
36
37
  "prepack": "bun run build"
37
38
  },
38
39
  "peerDependencies": {
39
- "@sixb/core": "0.1.11"
40
+ "@sixb/core": "0.1.12"
40
41
  },
41
42
  "devDependencies": {
42
- "@sixb/core": "0.1.11",
43
+ "@sixb/core": "0.1.12",
43
44
  "@types/bun": "latest",
44
45
  "typescript": "^5.7.0"
45
46
  },
@@ -55,5 +56,8 @@
55
56
  "src",
56
57
  "README.md",
57
58
  "LICENSE"
58
- ]
59
+ ],
60
+ "dependencies": {
61
+ "sqlite-vec": "0.1.9"
62
+ }
59
63
  }
@@ -1,5 +1,6 @@
1
1
  import type { Database } from "bun:sqlite"
2
2
  import type { AgentMessagePart, Principal } from "@sixb/core"
3
+ import { snapshotAgentThreadSandboxParams } from "@sixb/core/internal/agent-run-storage-provider"
3
4
  import { parseSixbFailure } from "@sixb/core/internal/errors"
4
5
  import {
5
6
  AGENT_RUN_FAILURE_CODES,
@@ -8,6 +9,7 @@ import {
8
9
  type AgentRunDiagnostic,
9
10
  type AgentRunRecord,
10
11
  type AgentThreadRecord,
12
+ type AgentThreadSandboxState,
11
13
  type ConversationAgentRunSpec,
12
14
  coerceAgentRunFinishReason,
13
15
  type SubagentRunResult,
@@ -23,6 +25,8 @@ export interface AgentThreadRow {
23
25
  owner_principal_type: Principal["type"]
24
26
  owner_principal_id: string
25
27
  title: string | null
28
+ sandbox_params: string | null
29
+ sandbox_state: string | null
26
30
  status: AgentThreadRecord["status"]
27
31
  active_run_id: string | null
28
32
  last_message_at: string | null
@@ -96,6 +100,14 @@ export function rowToThreadRecord(row: AgentThreadRow): AgentThreadRecord {
96
100
  projectId: row.project_id,
97
101
  ownerPrincipal: { type: row.owner_principal_type, id: row.owner_principal_id },
98
102
  title: row.title ?? undefined,
103
+ ...(row.sandbox_state == null
104
+ ? {}
105
+ : {
106
+ sandboxState: JSON.parse(row.sandbox_state) as AgentThreadSandboxState,
107
+ }),
108
+ ...(row.sandbox_params == null
109
+ ? {}
110
+ : { sandboxParams: snapshotAgentThreadSandboxParams(JSON.parse(row.sandbox_params)) }),
99
111
  status: row.status,
100
112
  activeRunId: row.active_run_id,
101
113
  lastMessageAt: row.last_message_at ? new Date(row.last_message_at) : undefined,
@@ -1,20 +1,57 @@
1
1
  import type { Database } from "bun:sqlite"
2
+ import {
3
+ snapshotAgentThreadSandboxParams,
4
+ transitionAgentThreadSandbox,
5
+ } from "@sixb/core/internal/agent-run-storage-provider"
2
6
  import {
3
7
  AgentStorageError,
4
8
  type AgentThreadRecord,
9
+ type AgentThreadSandboxState,
5
10
  type AgentThreadStore,
6
11
  type CreateAgentThreadInput,
7
12
  type ListAgentThreadsInput,
8
13
  type ListAgentThreadsResult,
14
+ type TransitionAgentThreadSandboxInput,
9
15
  } from "@sixb/core/storage"
10
16
  import type { SqliteValue } from "../run-list-query"
11
17
  import { isUniqueConstraintError } from "../storage-errors"
12
- import { type AgentThreadRow, queryAgentList, rowToThreadRecord } from "./rows"
18
+ import {
19
+ type AgentRunRow,
20
+ type AgentThreadRow,
21
+ queryAgentList,
22
+ rowToRunRecord,
23
+ rowToThreadRecord,
24
+ } from "./rows"
13
25
 
14
26
  export class SqliteAgentThreadStore implements AgentThreadStore {
15
27
  constructor(private readonly db: Database) {}
16
28
 
29
+ async transitionSandbox(
30
+ input: TransitionAgentThreadSandboxInput
31
+ ): Promise<AgentThreadSandboxState> {
32
+ return this.db
33
+ .transaction(() => {
34
+ const run =
35
+ input.action === "recreate"
36
+ ? null
37
+ : (this.db
38
+ .query("SELECT * FROM agent_runs WHERE project_id = ? AND id = ?")
39
+ .get(input.projectId, input.runId) as AgentRunRow | null)
40
+ const thread = this.requireThread(input.projectId, input.id)
41
+ const state = transitionAgentThreadSandbox(thread, run ? rowToRunRecord(run) : null, input)
42
+ this.db
43
+ .query("UPDATE agent_threads SET sandbox_state = ? WHERE project_id = ? AND id = ?")
44
+ .run(JSON.stringify(state), input.projectId, input.id)
45
+ return state
46
+ })
47
+ .immediate()
48
+ }
49
+
17
50
  async create(input: CreateAgentThreadInput): Promise<AgentThreadRecord> {
51
+ const sandboxParams =
52
+ input.sandboxParams === undefined
53
+ ? null
54
+ : JSON.stringify(snapshotAgentThreadSandboxParams(input.sandboxParams))
18
55
  const createdAt = input.createdAt ?? new Date()
19
56
  const updatedAt = input.updatedAt ?? createdAt
20
57
 
@@ -28,13 +65,14 @@ export class SqliteAgentThreadStore implements AgentThreadStore {
28
65
  owner_principal_type,
29
66
  owner_principal_id,
30
67
  title,
68
+ sandbox_params,
31
69
  status,
32
70
  active_run_id,
33
71
  last_message_at,
34
72
  message_count,
35
73
  created_at,
36
74
  updated_at
37
- ) VALUES (?, ?, ?, ?, ?, ?, NULL, NULL, 0, ?, ?)
75
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, NULL, NULL, 0, ?, ?)
38
76
  `
39
77
  )
40
78
  .run(
@@ -43,6 +81,7 @@ export class SqliteAgentThreadStore implements AgentThreadStore {
43
81
  input.ownerPrincipal.type,
44
82
  input.ownerPrincipal.id,
45
83
  input.title ?? null,
84
+ sandboxParams,
46
85
  input.status ?? "active",
47
86
  createdAt.toISOString(),
48
87
  updatedAt.toISOString()
@@ -314,6 +314,8 @@ const SQLITE_ACCOUNTING_OVERVIEW_SQL = `
314
314
  CAST(COUNT(*) AS TEXT) AS model_call_count,
315
315
  CAST(SUM(CASE WHEN reporting_status <> 'unavailable' THEN 1 ELSE 0 END) AS TEXT)
316
316
  AS reported_usage_call_count,
317
+ CAST(SUM(CASE WHEN input_tokens IS NOT NULL AND output_tokens IS NOT NULL THEN 1 ELSE 0 END) AS TEXT)
318
+ AS complete_usage_call_count,
317
319
  CAST(COUNT(input_tokens) AS TEXT) AS input_tokens_count,
318
320
  CAST(SUM(input_tokens) AS TEXT) AS input_tokens_sum,
319
321
  CAST(COUNT(output_tokens) AS TEXT) AS output_tokens_count,
@@ -430,6 +432,7 @@ interface AggregateRow {
430
432
  readonly amount_currency: string | null
431
433
  readonly model_call_count: string
432
434
  readonly reported_usage_call_count: string
435
+ readonly complete_usage_call_count: string
433
436
  readonly input_tokens_count: string
434
437
  readonly input_tokens_sum: string | null
435
438
  readonly output_tokens_count: string
@@ -485,6 +488,7 @@ function aggregateFragmentFromRow(row: AggregateRow): AiAccountingAggregateFragm
485
488
  modelCallCount: row.model_call_count,
486
489
  usage: {
487
490
  reportedCallCount: row.reported_usage_call_count,
491
+ completeCallCount: row.complete_usage_call_count,
488
492
  inputTokens: meterFragment(row.input_tokens_count, row.input_tokens_sum),
489
493
  outputTokens: meterFragment(row.output_tokens_count, row.output_tokens_sum),
490
494
  uncachedInputTokens: meterFragment(
@@ -0,0 +1,2 @@
1
+ ALTER TABLE agent_threads ADD COLUMN sandbox_params TEXT
2
+ CHECK (sandbox_params IS NULL OR (json_valid(sandbox_params) AND json_type(sandbox_params) = 'object'));
@@ -0,0 +1,21 @@
1
+ CREATE TABLE object_vectors (
2
+ project_id TEXT NOT NULL,
3
+ object_type_id TEXT NOT NULL,
4
+ primary_id TEXT NOT NULL,
5
+ profile TEXT NOT NULL CHECK (length(trim(profile)) > 0),
6
+ configuration TEXT NOT NULL,
7
+ source TEXT NOT NULL CHECK (
8
+ json_valid(source) AND json_type(source) = 'array' AND json_array_length(source) > 0
9
+ ),
10
+ source_fingerprint TEXT NOT NULL,
11
+ embedding BLOB NOT NULL CHECK (
12
+ typeof(embedding) = 'blob' AND length(embedding) BETWEEN 4 AND 64000
13
+ AND length(embedding) % 4 = 0
14
+ ),
15
+ last_commit_id TEXT NOT NULL,
16
+ PRIMARY KEY (project_id, object_type_id, primary_id, profile),
17
+ FOREIGN KEY (project_id, object_type_id, primary_id)
18
+ REFERENCES objects (project_id, object_type_id, primary_id) ON DELETE CASCADE,
19
+ FOREIGN KEY (project_id, last_commit_id)
20
+ REFERENCES ontology_commits (project_id, id) DEFERRABLE INITIALLY DEFERRED
21
+ );