@sixb/pg 0.1.20 → 0.1.22

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 (139) hide show
  1. package/README.md +1 -0
  2. package/dist/agents/agent-storage.d.ts +8 -2
  3. package/dist/agents/agent-storage.d.ts.map +1 -1
  4. package/dist/agents/approvals.d.ts +48 -0
  5. package/dist/agents/approvals.d.ts.map +1 -0
  6. package/dist/agents/checkpoints.d.ts +1 -0
  7. package/dist/agents/checkpoints.d.ts.map +1 -1
  8. package/dist/agents/index.d.ts +1 -0
  9. package/dist/agents/index.d.ts.map +1 -1
  10. package/dist/agents/memory.d.ts +19 -0
  11. package/dist/agents/memory.d.ts.map +1 -0
  12. package/dist/agents/messages.d.ts.map +1 -1
  13. package/dist/agents/rows.d.ts +15 -1
  14. package/dist/agents/rows.d.ts.map +1 -1
  15. package/dist/agents/runs.d.ts +3 -1
  16. package/dist/agents/runs.d.ts.map +1 -1
  17. package/dist/agents/settings.d.ts +29 -0
  18. package/dist/agents/settings.d.ts.map +1 -0
  19. package/dist/agents/threads.d.ts +10 -1
  20. package/dist/agents/threads.d.ts.map +1 -1
  21. package/dist/ai-cost-groups.d.ts.map +1 -1
  22. package/dist/auth-storage/auth-storage.d.ts +3 -2
  23. package/dist/auth-storage/auth-storage.d.ts.map +1 -1
  24. package/dist/auth-storage/sessions.d.ts +2 -1
  25. package/dist/auth-storage/sessions.d.ts.map +1 -1
  26. package/dist/auth-storage/users.d.ts +8 -4
  27. package/dist/auth-storage/users.d.ts.map +1 -1
  28. package/dist/index.d.ts +4 -0
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +6001 -2923
  31. package/dist/index.js.map +45 -37
  32. package/dist/migrations.d.ts.map +1 -1
  33. package/dist/objects/conditional-reader.d.ts +17 -0
  34. package/dist/objects/conditional-reader.d.ts.map +1 -0
  35. package/dist/objects/query-compiler.d.ts +27 -1
  36. package/dist/objects/query-compiler.d.ts.map +1 -1
  37. package/dist/objects/query-indexes.d.ts.map +1 -1
  38. package/dist/objects/read-scope.d.ts +10 -1
  39. package/dist/objects/read-scope.d.ts.map +1 -1
  40. package/dist/objects/reader.d.ts +2 -0
  41. package/dist/objects/reader.d.ts.map +1 -1
  42. package/dist/objects/scoped-reader.d.ts +12 -0
  43. package/dist/objects/scoped-reader.d.ts.map +1 -0
  44. package/dist/objects/selected-reader.d.ts +1 -0
  45. package/dist/objects/selected-reader.d.ts.map +1 -1
  46. package/dist/objects/storage.d.ts +7 -1
  47. package/dist/objects/storage.d.ts.map +1 -1
  48. package/dist/ontology-storage/index.d.ts +2 -0
  49. package/dist/ontology-storage/index.d.ts.map +1 -1
  50. package/dist/ontology-storage/materialization-session.d.ts +6 -0
  51. package/dist/ontology-storage/materialization-session.d.ts.map +1 -1
  52. package/dist/ontology-storage/materialization-writer.d.ts +15 -0
  53. package/dist/ontology-storage/materialization-writer.d.ts.map +1 -1
  54. package/dist/ontology-storage/materializations.d.ts.map +1 -1
  55. package/dist/ontology-storage/replacement-plans.d.ts.map +1 -1
  56. package/dist/ontology-storage/sources.d.ts +2 -1
  57. package/dist/ontology-storage/sources.d.ts.map +1 -1
  58. package/dist/ontology-storage/unique-values.d.ts +60 -0
  59. package/dist/ontology-storage/unique-values.d.ts.map +1 -0
  60. package/dist/pg-action-run-storage.d.ts +4 -0
  61. package/dist/pg-action-run-storage.d.ts.map +1 -1
  62. package/dist/pg-activity-storage.d.ts +22 -0
  63. package/dist/pg-activity-storage.d.ts.map +1 -0
  64. package/dist/pg-ai-cost-storage.d.ts.map +1 -1
  65. package/dist/pg-ai-usage-storage.d.ts +8 -1
  66. package/dist/pg-ai-usage-storage.d.ts.map +1 -1
  67. package/dist/pg-artifact-storage.d.ts +26 -0
  68. package/dist/pg-artifact-storage.d.ts.map +1 -0
  69. package/dist/pg-execution-storage.d.ts +3 -1
  70. package/dist/pg-execution-storage.d.ts.map +1 -1
  71. package/dist/pg-workflow-run-storage.d.ts +4 -0
  72. package/dist/pg-workflow-run-storage.d.ts.map +1 -1
  73. package/dist/share-grant-storage.d.ts +2 -1
  74. package/dist/share-grant-storage.d.ts.map +1 -1
  75. package/dist/storage-errors.d.ts +2 -0
  76. package/dist/storage-errors.d.ts.map +1 -1
  77. package/package.json +3 -3
  78. package/src/agents/agent-storage.ts +11 -2
  79. package/src/agents/approvals.ts +400 -0
  80. package/src/agents/checkpoints.ts +8 -4
  81. package/src/agents/index.ts +1 -0
  82. package/src/agents/memory.ts +175 -0
  83. package/src/agents/messages.ts +14 -7
  84. package/src/agents/rows.ts +46 -1
  85. package/src/agents/runs.ts +154 -22
  86. package/src/agents/settings.ts +105 -0
  87. package/src/agents/threads.ts +379 -3
  88. package/src/ai-cost-groups.ts +11 -1
  89. package/src/auth-storage/auth-storage.ts +45 -13
  90. package/src/auth-storage/sessions.ts +20 -0
  91. package/src/auth-storage/users.ts +105 -43
  92. package/src/index.ts +10 -0
  93. package/src/migrations/063-artifacts.sql +67 -0
  94. package/src/migrations/064-drop-output-diagnostics.sql +14 -0
  95. package/src/migrations/065-plan-work-payload-statistics.sql +5 -0
  96. package/src/migrations/066-activity.sql +61 -0
  97. package/src/migrations/067-activity-timeline.sql +15 -0
  98. package/src/migrations/068-activity-interactions.sql +20 -0
  99. package/src/migrations/069-artifact-kinds.sql +4 -0
  100. package/src/migrations/070-artifact-state.sql +16 -0
  101. package/src/migrations/071-agent-thread-participants.sql +16 -0
  102. package/src/migrations/072-forked-context-checkpoints.sql +23 -0
  103. package/src/migrations/073-unique-values.sql +25 -0
  104. package/src/migrations/074-generated-media-usage.sql +21 -0
  105. package/src/migrations/075-model-call-files.sql +11 -0
  106. package/src/migrations/076-agent-memory.sql +33 -0
  107. package/src/migrations/077-artifact-threads.sql +21 -0
  108. package/src/migrations/078-agent-approvals.sql +58 -0
  109. package/src/migrations/079-agent-approval-resume.sql +20 -0
  110. package/src/migrations/080-subagent-threads.sql +145 -0
  111. package/src/migrations/081-subagent-questions.sql +6 -0
  112. package/src/migrations.ts +52 -0
  113. package/src/objects/conditional-reader.ts +44 -0
  114. package/src/objects/prepare-queries.ts +1 -1
  115. package/src/objects/query-compiler.ts +96 -33
  116. package/src/objects/query-indexes.ts +29 -10
  117. package/src/objects/read-scope.ts +140 -25
  118. package/src/objects/reader.ts +50 -6
  119. package/src/objects/scoped-reader.ts +101 -0
  120. package/src/objects/selected-reader.ts +16 -76
  121. package/src/objects/storage.ts +24 -5
  122. package/src/objects/text-count-index.ts +1 -0
  123. package/src/ontology-storage/index.ts +3 -0
  124. package/src/ontology-storage/materialization-session.ts +8 -0
  125. package/src/ontology-storage/materialization-writer.ts +76 -1
  126. package/src/ontology-storage/materializations.ts +20 -1
  127. package/src/ontology-storage/replacement-plans.ts +25 -7
  128. package/src/ontology-storage/sources.ts +37 -0
  129. package/src/ontology-storage/unique-values.ts +274 -0
  130. package/src/pg-action-run-storage.ts +23 -0
  131. package/src/pg-activity-storage.ts +486 -0
  132. package/src/pg-ai-cost-storage.ts +62 -12
  133. package/src/pg-ai-usage-storage.ts +90 -1
  134. package/src/pg-artifact-storage.ts +521 -0
  135. package/src/pg-execution-storage.ts +83 -0
  136. package/src/pg-workflow-run-storage.ts +23 -0
  137. package/src/share-grant-storage.ts +21 -0
  138. package/src/storage-errors.ts +7 -0
  139. package/src/transactions.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EAGV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAqH3B,OAAO,KAAK,EAAe,GAAG,EAAa,MAAM,aAAa,CAAA;AAG9D,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC;AAED,eAAO,MAAM,2BAA2B,wBAAwB,CAAA;AAEhE,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,wBAAwB,CAAC,CAE1F;AAED,wBAAgB,MAAM,CACpB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC/D,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAAC,wBAAwB,CAAC,CAEzC;AAED,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,MAAM,GACjB,SAAS,eAAe,EAAE,CAQ5B;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,wBAAwB,CAAC,CAAA;CAC5D,GAAG,eAAe,CAqBlB;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMxF;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAKrD;AAuKD,eAAO,MAAM,yBAAyB,wCAkEpC,CAAA"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EAGV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAqH3B,OAAO,KAAK,EAAe,GAAG,EAAa,MAAM,aAAa,CAAA;AAG9D,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC;AAED,eAAO,MAAM,2BAA2B,wBAAwB,CAAA;AAEhE,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,wBAAwB,CAAC,CAE1F;AAED,wBAAgB,MAAM,CACpB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC/D,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAAC,wBAAwB,CAAC,CAEzC;AAED,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,MAAM,GACjB,SAAS,eAAe,EAAE,CAQ5B;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,wBAAwB,CAAC,CAAA;CAC5D,GAAG,eAAe,CAqBlB;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMxF;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAKrD;AAuKD,eAAO,MAAM,yBAAyB,wCAqFpC,CAAA"}
@@ -0,0 +1,17 @@
1
+ import type { CompiledConditionalObjectReadScope, ObjectQueryCapabilities, ObjectReadStorage } from "@sixb/core/storage";
2
+ import { type PgStoreClient } from "../transactions";
3
+ import type { PgAggregateAdmission } from "./aggregate-admission";
4
+ /**
5
+ * Read objects and links through relations that apply the scope's conditions as they are read.
6
+ *
7
+ * Reads run as unscoped ones do, under the same aggregate admission: on the pool, and a vector
8
+ * query on one repeatable-read snapshot for its candidate probe and its rows.
9
+ */
10
+ export declare function createPgConditionalReader(sql: PgStoreClient, params: {
11
+ projectId: string;
12
+ scope: CompiledConditionalObjectReadScope;
13
+ }, options: {
14
+ aggregateAdmission?: PgAggregateAdmission;
15
+ queryCapabilities: () => ObjectQueryCapabilities;
16
+ }): ObjectReadStorage;
17
+ //# sourceMappingURL=conditional-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional-reader.d.ts","sourceRoot":"","sources":["../../src/objects/conditional-reader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kCAAkC,EAClC,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,KAAK,aAAa,EAAkC,MAAM,iBAAiB,CAAA;AACpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAKjE;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE;IACN,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,kCAAkC,CAAA;CAC1C,EACD,OAAO,EAAE;IACP,kBAAkB,CAAC,EAAE,oBAAoB,CAAA;IACzC,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;CACjD,GACA,iBAAiB,CAcnB"}
@@ -1,4 +1,4 @@
1
- import { type ObjectQuery, type QueryScalarKind } from "@sixb/core";
1
+ import { type ObjectQuery, type ObjectQueryPredicate, type QueryScalarKind } from "@sixb/core";
2
2
  export interface PgObjectQueryPageRow {
3
3
  object_type_id: string;
4
4
  primary_id: string;
@@ -39,6 +39,10 @@ interface CompiledHasMoreProbe {
39
39
  args: unknown[];
40
40
  hasMore(rowCount: number): boolean;
41
41
  }
42
+ interface CompiledPredicate {
43
+ sql: string;
44
+ args: unknown[];
45
+ }
42
46
  interface CompiledOrder {
43
47
  sql: string;
44
48
  args: unknown[];
@@ -67,6 +71,12 @@ export interface PgObjectQuerySource {
67
71
  readonly objectsTable: string;
68
72
  readonly linksTable: string;
69
73
  readonly objectPropertyPermissionsTable?: string;
74
+ /**
75
+ * Where to read one concrete type's objects, when the source can say it more precisely than
76
+ * `objectsTable`: a table and that type's own filter over its `properties`. A statement that
77
+ * reads a single type then holds the filter as a top-level condition, which an index can serve.
78
+ */
79
+ objectsOfType?(objectTypeId: string): PgTypedObjects;
70
80
  /** Wrap a terminal SELECT without its own WITH clause; the selected source owns the only WITH. */
71
81
  wrapStatement(sql: string, args?: readonly unknown[]): {
72
82
  readonly sql: string;
@@ -74,6 +84,19 @@ export interface PgObjectQuerySource {
74
84
  };
75
85
  wrapQuery(query: CompiledPgObjectQuery): CompiledPgObjectQuery;
76
86
  }
87
+ export interface PgTypedObjects {
88
+ readonly table: string;
89
+ readonly filter?: {
90
+ readonly sql: string;
91
+ readonly args: readonly unknown[];
92
+ };
93
+ }
94
+ /** The table and `AND ...` filter a statement reads one type's objects with. */
95
+ export declare function pgObjectsOfType(source: PgObjectQuerySource, objectTypeId: string): {
96
+ table: string;
97
+ filter: string;
98
+ args: readonly unknown[];
99
+ };
77
100
  /** Prefix an optional query source, then assign PostgreSQL positional placeholders. */
78
101
  export declare function compilePgObjectStatement(sql: string, args?: readonly unknown[], source?: PgObjectQuerySource): CompiledPgScalarQuery;
79
102
  export declare const DEFAULT_OBJECT_QUERY_SOURCE: PgObjectQuerySource;
@@ -98,5 +121,8 @@ export declare function compilePgFacetSummary(source: CompiledPgFacetQuery, face
98
121
  propertyId: string;
99
122
  limit: number;
100
123
  }[], nativeValues?: boolean): CompiledPgFacetQuery;
124
+ /** Compile a predicate over the unqualified `properties` column of the relation it filters. */
125
+ export declare function compilePredicate(predicate: ObjectQueryPredicate): CompiledPredicate;
126
+ export declare function isTextScalarKind(scalarKind: QueryScalarKind | undefined): boolean;
101
127
  export {};
102
128
  //# sourceMappingURL=query-compiler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-compiler.d.ts","sourceRoot":"","sources":["../../src/objects/query-compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-compiler.d.ts","sourceRoot":"","sources":["../../src/objects/query-compiler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"query-indexes.d.ts","sourceRoot":"","sources":["../../src/objects/query-indexes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAK/D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAA;CAC5E;AAED,MAAM,MAAM,kBAAkB,GAAG,uBAAuB,GACtD,CACI;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;QACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAA;KACtC,EAAE,CAAA;CACJ,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CACtE,CAAA;AAEH,kGAAkG;AAClG,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,GAAG,GAAG,WAAW,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,SAAS,kBAAkB,EAAE,GACrC,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAuC5B;AAmKD;4EAC4E;AAC5E,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,CAW3F;AAED;6EAC6E;AAC7E,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsF7B"}
1
+ {"version":3,"file":"query-indexes.d.ts","sourceRoot":"","sources":["../../src/objects/query-indexes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAM/D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAA;CAC5E;AAED,MAAM,MAAM,kBAAkB,GAAG,uBAAuB,GACtD,CACI;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;QACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAA;KACtC,EAAE,CAAA;CACJ,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CACtE,CAAA;AAEH,kGAAkG;AAClG,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,GAAG,GAAG,WAAW,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,SAAS,kBAAkB,EAAE,GACrC,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAuC5B;AAoLD;4EAC4E;AAC5E,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,CAW3F;AAED;6EAC6E;AAC7E,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuF7B"}
@@ -1,4 +1,4 @@
1
- import type { CompiledSelectedObjectReadScope } from "@sixb/core/storage";
1
+ import type { CompiledConditionalObjectReadScope, CompiledSelectedObjectReadScope } from "@sixb/core/storage";
2
2
  import { type PgObjectQuerySource } from "./query-compiler";
3
3
  export interface PgSelectedObjectReadSource extends PgObjectQuerySource {
4
4
  readonly objectPropertyPermissionsTable: string;
@@ -15,4 +15,13 @@ export interface PgSelectedObjectReadSource extends PgObjectQuerySource {
15
15
  * Group property grants after resolving paths so redaction reads only each object's own grants.
16
16
  */
17
17
  export declare function compilePgSelectedObjectReadSource(projectId: string, scope: CompiledSelectedObjectReadScope, maxTraversalFacts: number): PgSelectedObjectReadSource;
18
+ /**
19
+ * Prepare a conditional scope as PostgreSQL relations that filter stored rows as they are read.
20
+ *
21
+ * Both relations are NOT MATERIALIZED, so PostgreSQL inlines them into each statement: its
22
+ * filters, index scans and LIMIT reach the stored tables, and the conditions become one more
23
+ * filter. An object of a conditioned type is visible while its condition matches; a link while
24
+ * each of its conditioned endpoints is a visible object.
25
+ */
26
+ export declare function compilePgConditionalObjectReadSource(projectId: string, scope: CompiledConditionalObjectReadScope): PgObjectQuerySource;
18
27
  //# 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,EAGL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB;IACrE,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,OAAO,EAAE,CAAA;KAClC,CAAA;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,+BAA+B,EACtC,iBAAiB,EAAE,MAAM,GACxB,0BAA0B,CAyD5B"}
1
+ {"version":3,"file":"read-scope.d.ts","sourceRoot":"","sources":["../../src/objects/read-scope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kCAAkC,EAClC,+BAA+B,EAChC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB;IACrE,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,OAAO,EAAE,CAAA;KAClC,CAAA;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,+BAA+B,EACtC,iBAAiB,EAAE,MAAM,GACxB,0BAA0B,CAgC5B;AAED;;;;;;;GAOG;AACH,wBAAgB,oCAAoC,CAClD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,kCAAkC,GACxC,mBAAmB,CAgBrB"}
@@ -22,6 +22,8 @@ export declare class PgObjectReader {
22
22
  objectTypeId: string;
23
23
  primaryId: string;
24
24
  }): Promise<ObjectRow | null>;
25
+ /** On a selected source, the holder must be in scope and selected for the property. */
26
+ getByUniqueValue(params: Parameters<ObjectReadStorage["getByUniqueValue"]>[0]): Promise<ObjectRow | null>;
25
27
  selectsObjectProperties(params: Parameters<ObjectReadStorage["selectsObjectProperties"]>[0]): Promise<readonly boolean[]>;
26
28
  listLinks(params: {
27
29
  projectId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/objects/reader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/objects/reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { ObjectQuery } from "@sixb/core";
2
+ import type { ObjectQueryCapabilities, ObjectReadExecutionLimits, ObjectReadStorage } from "@sixb/core/storage";
3
+ import { type PgObjectReader } from "./reader";
4
+ /** Run one terminal on a reader over the scope's source; a query terminal passes its query. */
5
+ export type PgScopedRead = <T>(run: (reader: PgObjectReader) => Promise<T>, query?: ObjectQuery) => Promise<T>;
6
+ /** Answer every terminal through one scoped source; the scope decides how each read runs. */
7
+ export declare function createPgScopedReader(params: {
8
+ projectId: string;
9
+ read: PgScopedRead;
10
+ limits?: ObjectReadExecutionLimits;
11
+ }, queryCapabilities: () => ObjectQueryCapabilities): ObjectReadStorage;
12
+ //# sourceMappingURL=scoped-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped-reader.d.ts","sourceRoot":"","sources":["../../src/objects/scoped-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,oBAAoB,CAAA;AAM3B,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAEpE,+FAA+F;AAC/F,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,EAC3B,GAAG,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3C,KAAK,CAAC,EAAE,WAAW,KAChB,OAAO,CAAC,CAAC,CAAC,CAAA;AAEf,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAClC,MAAM,EAAE;IACN,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,YAAY,CAAA;IAClB,MAAM,CAAC,EAAE,yBAAyB,CAAA;CACnC,EACD,iBAAiB,EAAE,MAAM,uBAAuB,GAC/C,iBAAiB,CAyEnB"}
@@ -1,5 +1,6 @@
1
1
  import type { CompiledSelectedObjectReadScope, ObjectQueryCapabilities, ObjectReadExecutionLimits, ObjectReadStorage } from "@sixb/core/storage";
2
2
  import { type PgStoreClient } from "../transactions";
3
+ /** Keep the traversal probe and every terminal statement on one repeatable-read snapshot. */
3
4
  export declare function createPgSelectedReader(sql: PgStoreClient, params: {
4
5
  projectId: string;
5
6
  scope: CompiledSelectedObjectReadScope;
@@ -1 +1 @@
1
- {"version":3,"file":"selected-reader.d.ts","sourceRoot":"","sources":["../../src/objects/selected-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,oBAAoB,CAAA;AAS3B,OAAO,EAAE,KAAK,aAAa,EAAkC,MAAM,iBAAiB,CAAA;AAKpF,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE;IACN,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,+BAA+B,CAAA;IACtC,MAAM,EAAE,yBAAyB,CAAA;CAClC,EACD,iBAAiB,EAAE,MAAM,uBAAuB,GAC/C,iBAAiB,CA4EnB"}
1
+ {"version":3,"file":"selected-reader.d.ts","sourceRoot":"","sources":["../../src/objects/selected-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,KAAK,aAAa,EAAkC,MAAM,iBAAiB,CAAA;AAKpF,6FAA6F;AAC7F,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE;IACN,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,+BAA+B,CAAA;IACtC,MAAM,EAAE,yBAAyB,CAAA;CAClC,EACD,iBAAiB,EAAE,MAAM,uBAAuB,GAC/C,iBAAiB,CAqBnB"}
@@ -1,8 +1,9 @@
1
- import type { CompiledSelectedObjectReadScope, CountObjectsInput, CountObjectsResult, ExistsObjectsInput, ExistsObjectsResult, FacetObjectsInput, FacetObjectsResult, LinkBatchKey, LinkDirection, ObjectBatchKey, ObjectLinkRow, ObjectQueryCapabilities, ObjectReadExecutionLimits, ObjectReadStorage, ObjectRow, ObjectStorage, QueryObjectLinksInput, QueryObjectLinksResult, QueryObjectsInput, QueryObjectsResult } from "@sixb/core/storage";
1
+ import type { CompiledConditionalObjectReadScope, CompiledSelectedObjectReadScope, CountObjectsInput, CountObjectsResult, ExistsObjectsInput, ExistsObjectsResult, FacetObjectsInput, FacetObjectsResult, LinkBatchKey, LinkDirection, ObjectBatchKey, ObjectLinkRow, ObjectQueryCapabilities, ObjectReadExecutionLimits, ObjectReadStorage, ObjectRow, ObjectStorage, QueryObjectLinksInput, QueryObjectLinksResult, QueryObjectsInput, QueryObjectsResult } from "@sixb/core/storage";
2
2
  import { type PgStoreClient } from "../transactions";
3
3
  /** PostgreSQL object provider; interactive reads share one source-aware reader. */
4
4
  export declare class PgObjectStorage implements ObjectStorage {
5
5
  private readonly sql;
6
+ private readonly aggregateAdmission?;
6
7
  private readonly reader;
7
8
  constructor(sql: PgStoreClient, maxConcurrentAggregates?: number);
8
9
  queryCapabilities(): ObjectQueryCapabilities;
@@ -11,6 +12,10 @@ export declare class PgObjectStorage implements ObjectStorage {
11
12
  scope: CompiledSelectedObjectReadScope;
12
13
  limits: ObjectReadExecutionLimits;
13
14
  }): ObjectReadStorage;
15
+ createConditionalReadScope(params: {
16
+ projectId: string;
17
+ scope: CompiledConditionalObjectReadScope;
18
+ }): ObjectReadStorage;
14
19
  queryObjects(params: QueryObjectsInput): Promise<QueryObjectsResult>;
15
20
  countObjects(params: CountObjectsInput): Promise<CountObjectsResult>;
16
21
  existsObjects(params: ExistsObjectsInput): Promise<ExistsObjectsResult>;
@@ -20,6 +25,7 @@ export declare class PgObjectStorage implements ObjectStorage {
20
25
  objectTypeId: string;
21
26
  primaryId: string;
22
27
  }): Promise<ObjectRow | null>;
28
+ getByUniqueValue(params: Parameters<ObjectReadStorage["getByUniqueValue"]>[0]): Promise<ObjectRow | null>;
23
29
  selectsObjectProperties(params: Parameters<ObjectReadStorage["selectsObjectProperties"]>[0]): Promise<readonly boolean[]>;
24
30
  listLinks(params: {
25
31
  projectId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/objects/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,+BAA+B,EAC/B,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAEL,KAAK,aAAa,EAEnB,MAAM,iBAAiB,CAAA;AAkFxB,mFAAmF;AACnF,qBAAa,eAAgB,YAAW,aAAa;IAIjD,OAAO,CAAC,QAAQ,CAAC,GAAG;IAHtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAGpB,GAAG,EAAE,aAAa,EACnC,uBAAuB,SAAI;IAS7B,iBAAiB,IAAI,uBAAuB;IAI5C,uBAAuB,CAAC,MAAM,EAAE;QAC9B,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,+BAA+B,CAAA;QACtC,MAAM,EAAE,yBAAyB,CAAA;KAClC,GAAG,iBAAiB;IAIf,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQpE,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQpE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAQvE,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQpE,cAAc,CAAC,MAAM,EAAE;QAC3B,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;KAClB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAIvB,uBAAuB,CAC3B,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GAClE,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC;IAIxB,SAAS,CAAC,MAAM,EAAE;QACtB,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,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAI/B,mBAAmB,CAAC,MAAM,EAAE;QAChC,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC9D,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAIrC,cAAc,CAAC,MAAM,EAAE;QAC3B,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,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;IAIzC,UAAU,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAK1E,sBAAsB,CAAC,MAAM,EAAE;QACnC,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,SAAS;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC7D,GAAG,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAkC/B,mBAAmB,CAAC,MAAM,EAAE;QAChC,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,KAAK,EAAE,MAAM,CAAA;KACd,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,SAAS,EAAE,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBhE,IAAI,CAAC,MAAM,EAAE;QACjB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;QACzC,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,YAAY,CAAC,EAAE,IAAI,CAAA;QACnB,aAAa,CAAC,EAAE,IAAI,CAAA;QACpB,YAAY,CAAC,EAAE,IAAI,CAAA;QACnB,aAAa,CAAC,EAAE,IAAI,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,WAAW,CAAA;QACjD,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;KACvB,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,SAAS,EAAE,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAGhF"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/objects/storage.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { PgOntologyOutboxStorage } from "./outbox";
7
7
  import { PgOntologyReplacementPlanStorage } from "./replacement-plans";
8
8
  import type { PgRootOperation } from "./shared";
9
9
  import { PgOntologySourceStorage } from "./sources";
10
+ import { PgOntologyUniqueValueStorage } from "./unique-values";
10
11
  import { PgVectorIndexingStorage } from "./vector-indexing";
11
12
  import { PgOntologyVectorStorage } from "./vectors";
12
13
  export declare class PgOntologyStorage implements OntologyStorage {
@@ -17,6 +18,7 @@ export declare class PgOntologyStorage implements OntologyStorage {
17
18
  readonly outbox: PgOntologyOutboxStorage;
18
19
  readonly vectorIndexing: PgVectorIndexingStorage;
19
20
  readonly vectors: PgOntologyVectorStorage;
21
+ readonly uniqueValues: PgOntologyUniqueValueStorage;
20
22
  constructor(input: {
21
23
  readonly sql: SQLClient;
22
24
  readonly runRootOperation: PgRootOperation;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AAEnD,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;IACzC,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;IACzC,QAAQ,CAAC,gBAAgB,EAAE,gCAAgC,CAAA;IAC3D,QAAQ,CAAC,gBAAgB,EAAE,gCAAgC,CAAA;IAC3D,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAA;IACxC,QAAQ,CAAC,cAAc,EAAE,uBAAuB,CAAA;IAChD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;gBAE7B,KAAK,EAAE;QACjB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAA;QACvB,QAAQ,CAAC,gBAAgB,EAAE,eAAe,CAAA;QAC1C,QAAQ,CAAC,kBAAkB,EAAE,4BAA4B,GAAG,IAAI,CAAA;KACjE;IAsBD,kBAAkB,IAAI,IAAI;CAG3B;AAED,YAAY,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AAEnD,qBAAa,iBAAkB,YAAW,eAAe;IACvD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;IACzC,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;IACzC,QAAQ,CAAC,gBAAgB,EAAE,gCAAgC,CAAA;IAC3D,QAAQ,CAAC,gBAAgB,EAAE,gCAAgC,CAAA;IAC3D,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAA;IACxC,QAAQ,CAAC,cAAc,EAAE,uBAAuB,CAAA;IAChD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,4BAA4B,CAAA;gBAEvC,KAAK,EAAE;QACjB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAA;QACvB,QAAQ,CAAC,gBAAgB,EAAE,eAAe,CAAA;QAC1C,QAAQ,CAAC,kBAAkB,EAAE,4BAA4B,GAAG,IAAI,CAAA;KACjE;IAuBD,kBAAkB,IAAI,IAAI;CAG3B;AAED,YAAY,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
@@ -12,6 +12,12 @@ export declare class PgMaterializationSessionState extends ProviderMaterializati
12
12
  stagedWorkCount: number;
13
13
  changedObjects: number;
14
14
  changedLinks: number;
15
+ changedUniqueValues: number;
16
+ /** What unique value items this session staged, known without reading its work back. */
17
+ readonly uniqueWork: {
18
+ releases: boolean;
19
+ claims: boolean;
20
+ };
15
21
  workAnalyzed: boolean;
16
22
  /** Work staged on the session lives in a temp table; a plan-bound session reads its plan's. */
17
23
  readonly workTable: string;
@@ -1 +1 @@
1
- {"version":3,"file":"materialization-session.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materialization-session.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,mCAAmC,EACnC,KAAK,2CAA2C,EAEjD,MAAM,+CAA+C,CAAA;AACtD,OAAO,KAAK,EACV,yBAAyB,EAEzB,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAGL,KAAK,iBAAiB,EAEvB,MAAM,qBAAqB,CAAA;AAG5B,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,gBAAgB,EAAE,2CAA2C,CAAA;IACtE,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,6BAA8B,SAAQ,mCAAmC;IAYlF,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAXzC,eAAe,SAAI;IACnB,cAAc,SAAI;IAClB,YAAY,SAAI;IAChB,YAAY,UAAQ;IACpB,+FAA+F;IAC/F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;gBAGrB,MAAM,EAAE,yBAAyB,EACjC,aAAa,EAAE,MAAM,EACZ,IAAI,EAAE,iBAAiB,GAAG,IAAI;CAM1C;AAED,qBAAa,yBAAyB;IAMlC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuD;IAChF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2C;IAChE,OAAO,CAAC,WAAW,CAAQ;gBAGR,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAGzD,MAAM,CACV,MAAM,EAAE,yBAAyB,EACjC,IAAI,EAAE,iBAAiB,GAAG,IAAI,GAC7B,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,6BAA6B;IAgBjE,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IASpE,aAAa,IAAI,IAAI;IAKf,KAAK,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IA6ChE;;;OAGG;IACG,iBAAiB,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9E,+FAA+F;IACxF,iBAAiB,CACtB,OAAO,EAAE,6BAA6B,EACtC,aAAa,EAAE,SAAS,MAAM,EAAE,EAChC,QAAQ,EAAE,MAAM,GACf,aAAa,CAAC,SAAS,2BAA2B,EAAE,CAAC;IAmDlD,kBAAkB,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAS5E,4BAA4B,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF,gBAAgB,CAAC,OAAO,EAAE,6BAA6B;YAI/C,YAAY;YA4BZ,UAAU;CAMzB"}
1
+ {"version":3,"file":"materialization-session.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materialization-session.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,mCAAmC,EACnC,KAAK,2CAA2C,EAEjD,MAAM,+CAA+C,CAAA;AACtD,OAAO,KAAK,EACV,yBAAyB,EAEzB,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAGL,KAAK,iBAAiB,EAEvB,MAAM,qBAAqB,CAAA;AAG5B,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,gBAAgB,EAAE,2CAA2C,CAAA;IACtE,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,6BAA8B,SAAQ,mCAAmC;IAelF,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAdzC,eAAe,SAAI;IACnB,cAAc,SAAI;IAClB,YAAY,SAAI;IAChB,mBAAmB,SAAI;IACvB,wFAAwF;IACxF,QAAQ,CAAC,UAAU;;;MAAqC;IACxD,YAAY,UAAQ;IACpB,+FAA+F;IAC/F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;gBAGrB,MAAM,EAAE,yBAAyB,EACjC,aAAa,EAAE,MAAM,EACZ,IAAI,EAAE,iBAAiB,GAAG,IAAI;CAM1C;AAED,qBAAa,yBAAyB;IAMlC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuD;IAChF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2C;IAChE,OAAO,CAAC,WAAW,CAAQ;gBAGR,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAGzD,MAAM,CACV,MAAM,EAAE,yBAAyB,EACjC,IAAI,EAAE,iBAAiB,GAAG,IAAI,GAC7B,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,6BAA6B;IAgBjE,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IASpE,aAAa,IAAI,IAAI;IAKf,KAAK,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDhE;;;OAGG;IACG,iBAAiB,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9E,+FAA+F;IACxF,iBAAiB,CACtB,OAAO,EAAE,6BAA6B,EACtC,aAAa,EAAE,SAAS,MAAM,EAAE,EAChC,QAAQ,EAAE,MAAM,GACf,aAAa,CAAC,SAAS,2BAA2B,EAAE,CAAC;IAmDlD,kBAAkB,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAS5E,4BAA4B,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF,gBAAgB,CAAC,OAAO,EAAE,6BAA6B;YAI/C,YAAY;YA4BZ,UAAU;CAMzB"}
@@ -6,10 +6,17 @@ export interface PgStagedPlanTarget {
6
6
  readonly projectId: string;
7
7
  readonly commitId: string;
8
8
  readonly committedAt: string;
9
+ /** Whether unique value items were staged; probed in the work table when unknown. */
10
+ readonly uniqueWork?: PgUniqueWork;
11
+ }
12
+ export interface PgUniqueWork {
13
+ readonly releases: boolean;
14
+ readonly claims: boolean;
9
15
  }
10
16
  export interface PgAppliedPlan {
11
17
  readonly objectWrites: number;
12
18
  readonly linkWrites: number;
19
+ readonly uniqueValueWrites: number;
13
20
  readonly eventCount: number;
14
21
  }
15
22
  /**
@@ -24,11 +31,19 @@ export declare class PgMaterializationWriter {
24
31
  private readonly sql;
25
32
  constructor(sql: SQLClient);
26
33
  applyStaged(target: PgStagedPlanTarget): Promise<PgAppliedPlan>;
34
+ /** Two probes of the work table's lane index: a commit with no unique values runs nothing else. */
35
+ private stagedUniqueWork;
27
36
  /** The staged values of one plan item kind, as `value`. */
28
37
  private staged;
29
38
  private applyObjectOverrides;
30
39
  private applyLinkOverrides;
31
40
  private applyPoints;
41
+ /** The staged unique values of one item kind, as the columns their table keys them by. */
42
+ private stagedUniqueValues;
43
+ /** A value whose row already names another object, or none, is simply no longer this one's. */
44
+ private releaseUniqueValues;
45
+ /** Runs once every release of the commit has applied, so values can move between objects. */
46
+ private claimUniqueValues;
32
47
  private deleteLinks;
33
48
  private deleteObjects;
34
49
  private upsertObjects;
@@ -1 +1 @@
1
- {"version":3,"file":"materialization-writer.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materialization-writer.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAO,SAAS,EAAE,MAAM,cAAc,CAAA;AAElD,MAAM,WAAW,kBAAkB;IACjC,2FAA2F;IAC3F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAUD;;;;;;;GAOG;AACH,qBAAa,uBAAuB;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAErC,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IAarE,2DAA2D;IAC3D,OAAO,CAAC,MAAM;YAUA,oBAAoB;YA+DpB,kBAAkB;YAyGlB,WAAW;YAuFX,WAAW;YAmBX,aAAa;YAoBb,aAAa;YAoEb,WAAW;IAoEzB;;;;OAIG;YACW,WAAW;IAoCzB;;;OAGG;YACW,YAAY;YAuCZ,KAAK;IAUnB,sFAAsF;IACtF,OAAO,CAAC,OAAO;IAcf;;;;OAIG;YACW,aAAa;CA2B5B"}
1
+ {"version":3,"file":"materialization-writer.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materialization-writer.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAO,SAAS,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,WAAW,kBAAkB;IACjC,2FAA2F;IAC3F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAY,CAAA;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAUD;;;;;;;GAOG;AACH,qBAAa,uBAAuB;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAErC,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IAgBrE,mGAAmG;YACrF,gBAAgB;IAe9B,2DAA2D;IAC3D,OAAO,CAAC,MAAM;YAUA,oBAAoB;YA+DpB,kBAAkB;YAyGlB,WAAW;IAuFzB,0FAA0F;IAC1F,OAAO,CAAC,kBAAkB;IAY1B,+FAA+F;YACjF,mBAAmB;IAqBjC,6FAA6F;YAC/E,iBAAiB;YASjB,WAAW;YAmBX,aAAa;YAoBb,aAAa;YAoEb,WAAW;IAoEzB;;;;OAIG;YACW,WAAW;IAoCzB;;;OAGG;YACW,YAAY;YAyCZ,KAAK;IAUnB,sFAAsF;IACtF,OAAO,CAAC,OAAO;IAcf;;;;OAIG;YACW,aAAa;CA2B5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"materializations.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materializations.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EACV,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,EAE/B,8BAA8B,EAE9B,6BAA6B,EAC7B,+BAA+B,EAC/B,uCAAuC,EACxC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,2BAA2B,CAAA;AAuBlC,qBAAa,gCAAiC,YAAW,8BAA8B;IAKnF,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAG7B,GAAG,EAAE,SAAS,EAC/B,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAM9C,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;IAwDvE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAqDpC,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,mBAAmB,CACxB,KAAK,EAAE,uCAAuC,GAC7C,aAAa,CAAC,+BAA+B,CAAC;IAc3C,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmBxE,QAAQ,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAgBxF,kBAAkB,IAAI,IAAI;YAIZ,kBAAkB;YAmDlB,aAAa;IAoB3B,OAAO,CAAC,eAAe;YAeT,kBAAkB;IAoDhC,6FAA6F;YAC/E,uBAAuB;YA+BvB,sBAAsB;YAiDtB,gBAAgB;YAiChB,cAAc;YA6Gd,YAAY;YAkCZ,eAAe;YAcf,SAAS;CAgBxB"}
1
+ {"version":3,"file":"materializations.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/materializations.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EACV,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,EAE/B,8BAA8B,EAE9B,6BAA6B,EAC7B,+BAA+B,EAC/B,uCAAuC,EACxC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,2BAA2B,CAAA;AAwBlC,qBAAa,gCAAiC,YAAW,8BAA8B;IAKnF,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAG7B,GAAG,EAAE,SAAS,EAC/B,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAM9C,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;IAwDvE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAgEpC,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,mBAAmB,CACxB,KAAK,EAAE,uCAAuC,GAC7C,aAAa,CAAC,+BAA+B,CAAC;IAc3C,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAqBxE,QAAQ,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAqBxF,kBAAkB,IAAI,IAAI;YAIZ,kBAAkB;YAmDlB,aAAa;IAoB3B,OAAO,CAAC,eAAe;YAeT,kBAAkB;IAoDhC,6FAA6F;YAC/E,uBAAuB;YA+BvB,sBAAsB;YAiDtB,gBAAgB;YAiChB,cAAc;YA6Gd,YAAY;YAkCZ,eAAe;YAcf,SAAS;CAgBxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"replacement-plans.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/replacement-plans.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAM3B,MAAM,qCAAqC,CAAA;AAY5C,OAAO,KAAK,EAEV,mBAAmB,EACnB,8BAA8B,EAC9B,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,+BAA+B,EAChC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAc7C,eAAO,MAAM,kBAAkB,mCAAmC,CAAA;AAYlE,mGAAmG;AACnG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC3C;AAgGD,qBAAa,gCAAiC,YAAW,8BAA8B;IACzE,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAErC,IAAI,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA6EpE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAmEpC,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwFtD,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA0ClE,KAAK,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;CAkChE;AAED,gFAAgF;AAChF,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE;IACN,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACd,QAAQ,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;SAAE,CAAA;QAClD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;KACnC,CAAA;CACF,GACA,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,qEAAqE;AACrE,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC,CAyBhC"}
1
+ {"version":3,"file":"replacement-plans.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/replacement-plans.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAM3B,MAAM,qCAAqC,CAAA;AAY5C,OAAO,KAAK,EAEV,mBAAmB,EACnB,8BAA8B,EAC9B,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,+BAA+B,EAChC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAc7C,eAAO,MAAM,kBAAkB,mCAAmC,CAAA;AAclE,mGAAmG;AACnG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC3C;AAgGD,qBAAa,gCAAiC,YAAW,8BAA8B;IACzE,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAErC,IAAI,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA6EpE,WAAW,CAChB,KAAK,EAAE,+BAA+B,GACrC,aAAa,CAAC,wBAAwB,CAAC;IAoEpC,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwFtD,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA0ClE,KAAK,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;CAkChE;AAED,gFAAgF;AAChF,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE;IACN,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACd,QAAQ,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;SAAE,CAAA;QAClD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;KACnC,CAAA;CACF,GACA,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,qEAAqE;AACrE,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC,CAyBhC"}
@@ -1,4 +1,4 @@
1
- import type { AbandonRunSourceMaterializationInput, AbandonSourceMaterializationCandidateInput, AdoptedSourceMaterialization, AdoptSourceMaterializationInput, BeginSourceMaterializationInput, CleanupTerminalSourceMaterializationsInput, CleanupTerminalSourceMaterializationsResult, GetActiveOntologySourceInput, MarkSourceMaterializationReadyInput, OntologySourceRecord, OntologySourceStorage, PurgeAbandonedSourceMaterializationsInput, StageSourceRowsInput, StageSourceRowsResult } from "@sixb/core/storage";
1
+ import type { AbandonRunSourceMaterializationInput, AbandonSourceMaterializationCandidateInput, ActiveOntologySource, AdoptedSourceMaterialization, AdoptSourceMaterializationInput, BeginSourceMaterializationInput, CleanupTerminalSourceMaterializationsInput, CleanupTerminalSourceMaterializationsResult, GetActiveOntologySourceInput, ListActiveOntologySourcesInput, MarkSourceMaterializationReadyInput, OntologySourceRecord, OntologySourceStorage, PurgeAbandonedSourceMaterializationsInput, StageSourceRowsInput, StageSourceRowsResult } from "@sixb/core/storage";
2
2
  import { type PgRootOperation } from "./shared";
3
3
  export declare class PgOntologySourceStorage implements OntologySourceStorage {
4
4
  private readonly runRootOperation;
@@ -7,6 +7,7 @@ export declare class PgOntologySourceStorage implements OntologySourceStorage {
7
7
  stageRows(input: StageSourceRowsInput): Promise<StageSourceRowsResult>;
8
8
  markReady(input: MarkSourceMaterializationReadyInput): Promise<OntologySourceRecord>;
9
9
  getActive(input: GetActiveOntologySourceInput): Promise<OntologySourceRecord | null>;
10
+ listActive(input: ListActiveOntologySourcesInput): Promise<readonly ActiveOntologySource[]>;
10
11
  adopt(input: AdoptSourceMaterializationInput): Promise<AdoptedSourceMaterialization | null>;
11
12
  abandon(input: AbandonSourceMaterializationCandidateInput): Promise<OntologySourceRecord>;
12
13
  abandon(input: AbandonRunSourceMaterializationInput): Promise<OntologySourceRecord | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"sources.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/sources.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,oCAAoC,EACpC,0CAA0C,EAE1C,4BAA4B,EAC5B,+BAA+B,EAE/B,+BAA+B,EAC/B,0CAA0C,EAC1C,2CAA2C,EAC3C,4BAA4B,EAC5B,mCAAmC,EACnC,oBAAoB,EACpB,qBAAqB,EACrB,yCAAyC,EACzC,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAUL,KAAK,eAAe,EAIrB,MAAM,UAAU,CAAA;AAIjB,qBAAa,uBAAwB,YAAW,qBAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,eAAe;IAExD,oBAAoB,CACxB,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,oBAAoB,CAAC;IA8E1B,SAAS,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA2BtE,SAAS,CAAC,KAAK,EAAE,mCAAmC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA6DpF,SAAS,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAapF,KAAK,CACT,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC;IA+BzC,OAAO,CAAC,KAAK,EAAE,0CAA0C,GAAG,OAAO,CAAC,oBAAoB,CAAC;IACzF,OAAO,CAAC,KAAK,EAAE,oCAAoC,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAa1F,eAAe,CACnB,KAAK,EAAE,0CAA0C,GAChD,OAAO,CAAC,2CAA2C,CAAC;IASjD,cAAc,CAClB,KAAK,EAAE,yCAAyC,GAC/C,OAAO,CAAC,2CAA2C,CAAC;YAQzC,gBAAgB;IA2B9B,uFAAuF;YACzE,gBAAgB;YAwBhB,iBAAiB;YAQjB,qBAAqB;YAgCrB,gBAAgB;IA2F9B,0EAA0E;YAC5D,aAAa;YAsBb,eAAe;IA0C7B,OAAO,CAAC,eAAe;YAkBT,eAAe;YAef,WAAW;YAkBX,eAAe;CAW9B"}
1
+ {"version":3,"file":"sources.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/sources.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,oCAAoC,EACpC,0CAA0C,EAE1C,oBAAoB,EACpB,4BAA4B,EAC5B,+BAA+B,EAE/B,+BAA+B,EAC/B,0CAA0C,EAC1C,2CAA2C,EAC3C,4BAA4B,EAC5B,8BAA8B,EAC9B,mCAAmC,EACnC,oBAAoB,EACpB,qBAAqB,EACrB,yCAAyC,EACzC,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAUL,KAAK,eAAe,EAIrB,MAAM,UAAU,CAAA;AAIjB,qBAAa,uBAAwB,YAAW,qBAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,eAAe;IAExD,oBAAoB,CACxB,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,oBAAoB,CAAC;IA8E1B,SAAS,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA2BtE,SAAS,CAAC,KAAK,EAAE,mCAAmC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA6DpF,SAAS,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAapF,UAAU,CACd,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,SAAS,oBAAoB,EAAE,CAAC;IAwBrC,KAAK,CACT,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC;IA+BzC,OAAO,CAAC,KAAK,EAAE,0CAA0C,GAAG,OAAO,CAAC,oBAAoB,CAAC;IACzF,OAAO,CAAC,KAAK,EAAE,oCAAoC,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAa1F,eAAe,CACnB,KAAK,EAAE,0CAA0C,GAChD,OAAO,CAAC,2CAA2C,CAAC;IASjD,cAAc,CAClB,KAAK,EAAE,yCAAyC,GAC/C,OAAO,CAAC,2CAA2C,CAAC;YAQzC,gBAAgB;IA2B9B,uFAAuF;YACzE,gBAAgB;YAwBhB,iBAAiB;YAQjB,qBAAqB;YAgCrB,gBAAgB;IA2F9B,0EAA0E;YAC5D,aAAa;YAsBb,eAAe;IA0C7B,OAAO,CAAC,eAAe;YAkBT,eAAe;YAef,WAAW;YAkBX,eAAe;CAW9B"}
@@ -0,0 +1,60 @@
1
+ import type { ExactUniqueValueWrite, OntologyUniqueValueStorage, PreparedUniqueProperty, UniqueValueEntry, UniqueValueRef } from "@sixb/core/storage";
2
+ import type postgres from "postgres";
3
+ import type { SQLClient } from "../pg-client";
4
+ import { type PgRootOperation } from "./shared";
5
+ type Query = postgres.PendingQuery<postgres.Row[]>;
6
+ /**
7
+ * Gives each candidate value to its object, set-based. `candidates` selects `object_type_id`,
8
+ * `property_id`, `value_key` and `primary_id`, and with `requirePrepared` also the claim's
9
+ * `key_kind` and `key_version`, which must match how the property was prepared.
10
+ *
11
+ * The insert goes first and conflicts do nothing, as the plan writer's statements do: only when
12
+ * it writes fewer rows than it was given does a second query look for the holder to name. A value
13
+ * another object holds, or that two candidates give to different objects, throws
14
+ * `UniqueValueViolationError`; a value already held by its own object is no conflict. A value a
15
+ * concurrent transaction claimed after this one's snapshot fails serialization instead, so the
16
+ * commit retries and then finds it held.
17
+ */
18
+ export declare function claimPgUniqueValues(sql: SQLClient, projectId: string, candidates: Query, options: {
19
+ readonly requirePrepared: boolean;
20
+ }): Promise<number>;
21
+ /**
22
+ * The stored row of `candidates`' value, by its whole primary key: a lateral lookup per candidate
23
+ * keeps the planner on the index whatever it guesses of the table.
24
+ */
25
+ export declare function heldValue(sql: SQLClient, projectId: string): postgres.PendingQuery<postgres.Row[]>;
26
+ /** The objects holding these unique values; a value no object holds is left out. */
27
+ export declare function pgUniqueHolders(sql: SQLClient, projectId: string, values: readonly UniqueValueRef[]): Promise<ExactUniqueValueWrite[]>;
28
+ export declare class PgOntologyUniqueValueStorage implements OntologyUniqueValueStorage {
29
+ private readonly runRootOperation;
30
+ constructor(runRootOperation: PgRootOperation);
31
+ /**
32
+ * `LOCK TABLE` takes no snapshot, so as the transaction's first statement it waits before the
33
+ * serializable snapshot is taken, and a preparer that waited sees the values the previous one
34
+ * built instead of building them again. An advisory lock would be taken by a `SELECT`, after
35
+ * the snapshot. Only preparation writes this table, so claims, which read it, never wait.
36
+ */
37
+ lockPreparation(_input: {
38
+ readonly projectId: string;
39
+ }): Promise<void>;
40
+ listPrepared(input: {
41
+ readonly projectId: string;
42
+ }): Promise<readonly PreparedUniqueProperty[]>;
43
+ clear(input: {
44
+ readonly projectId: string;
45
+ readonly objectTypeId: string;
46
+ readonly propertyId: string;
47
+ }): Promise<void>;
48
+ insert(input: {
49
+ readonly projectId: string;
50
+ readonly objectTypeId: string;
51
+ readonly propertyId: string;
52
+ readonly entries: readonly UniqueValueEntry[];
53
+ }): Promise<void>;
54
+ markPrepared(input: PreparedUniqueProperty & {
55
+ readonly projectId: string;
56
+ readonly preparedAt: string;
57
+ }): Promise<void>;
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=unique-values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unique-values.d.ts","sourceRoot":"","sources":["../../src/ontology-storage/unique-values.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,UAAU,CAAA;AAE9D,KAAK,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAA;AASlD;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE;IAAE,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAA;CAAE,GAC7C,OAAO,CAAC,MAAM,CAAC,CAgDjB;AAiCD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,yCAU1D;AAED,oFAAoF;AACpF,wBAAsB,eAAe,CACnC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,cAAc,EAAE,GAChC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CA8BlC;AAED,qBAAa,4BAA6B,YAAW,0BAA0B;IACjE,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,eAAe;IAE9D;;;;;OAKG;IACG,eAAe,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtE,YAAY,CAAC,KAAK,EAAE;QACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAC3B,GAAG,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC;IAuBxC,KAAK,CAAC,KAAK,EAAE;QACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;QAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAeX,MAAM,CAAC,KAAK,EAAE;QAClB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;QAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAA;KAC9C,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBX,YAAY,CAChB,KAAK,EAAE,sBAAsB,GAAG;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAC1F,OAAO,CAAC,IAAI,CAAC;CAejB"}
@@ -10,6 +10,10 @@ export declare class PgActionRunStorage implements ActionRunStorage {
10
10
  projectId: string;
11
11
  id: string;
12
12
  }): Promise<ActionRunRecord | null>;
13
+ getByExecutionIds(params: {
14
+ readonly projectId: string;
15
+ readonly executionIds: readonly string[];
16
+ }): Promise<readonly ActionRunRecord[]>;
13
17
  list(input: ListActionRunsInput): Promise<ListActionRunsResult>;
14
18
  }
15
19
  //# sourceMappingURL=pg-action-run-storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pg-action-run-storage.d.ts","sourceRoot":"","sources":["../src/pg-action-run-storage.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAIV,eAAe,EAEf,gBAAgB,EAEhB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,gBAAgB,CAAA;AAErE,qBAAa,kBAAmB,YAAW,gBAAgB;IAEvD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,GAAG,EAAE,aAAa,EAClB,UAAU,EAAE,gBAAgB;IAGzC,MAAM,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAuE7D,aAAa,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2BxE,OAAO,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IASnF,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAiHtE"}
1
+ {"version":3,"file":"pg-action-run-storage.d.ts","sourceRoot":"","sources":["../src/pg-action-run-storage.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAIV,eAAe,EAEf,gBAAgB,EAEhB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,gBAAgB,CAAA;AAErE,qBAAa,kBAAmB,YAAW,gBAAgB;IAEvD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,GAAG,EAAE,aAAa,EAClB,UAAU,EAAE,gBAAgB;IAGzC,MAAM,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAuE7D,aAAa,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2BxE,OAAO,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IASnF,iBAAiB,CAAC,MAAM,EAAE;QAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;KACzC,GAAG,OAAO,CAAC,SAAS,eAAe,EAAE,CAAC;IAoBjC,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAiHtE"}
@@ -0,0 +1,22 @@
1
+ import type { ActivityCalendarInput, ActivityDay, ActivityPeriodInput, ActivitySessionVisits, ActivityStorage, ActivitySummary, ActivityUsersPage, ActivityVisitsPage, AppendActivityInput, AppendActivityResult, ListActivitySessionVisitsInput, ListActivityUsersInput, ListActivityVisitsInput, ReadActivityVisitInput, StoredActivityVisitPage } from "@sixb/core/storage";
2
+ import { type PgStoreClient } from "./transactions";
3
+ /** PostgreSQL activity. An advisory lock per session serializes its batches across replicas. */
4
+ export declare class PgActivityStorage implements ActivityStorage {
5
+ private readonly sql;
6
+ constructor(sql: PgStoreClient);
7
+ append(input: AppendActivityInput): Promise<AppendActivityResult>;
8
+ list(input: ListActivityVisitsInput): Promise<ActivityVisitsPage>;
9
+ users(input: ListActivityUsersInput): Promise<ActivityUsersPage>;
10
+ summarize(input: ActivityPeriodInput): Promise<ActivitySummary>;
11
+ calendar(input: ActivityCalendarInput): Promise<readonly ActivityDay[]>;
12
+ read(input: ReadActivityVisitInput): Promise<StoredActivityVisitPage | null>;
13
+ sessionVisits(input: ListActivitySessionVisitsInput): Promise<readonly ActivitySessionVisits[]>;
14
+ /**
15
+ * The visits `v` active in the period, and only the account's when one is asked for. A visit
16
+ * lasts less than a day, so it started at most a day before the period: that bounds the index
17
+ * range.
18
+ */
19
+ private overlapping;
20
+ private visitColumns;
21
+ }
22
+ //# sourceMappingURL=pg-activity-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pg-activity-storage.d.ts","sourceRoot":"","sources":["../src/pg-activity-storage.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,qBAAqB,EAErB,WAAW,EAGX,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,iBAAiB,EAEjB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,8BAA8B,EAC9B,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAoB,KAAK,aAAa,EAAoB,MAAM,gBAAgB,CAAA;AAKvF,gGAAgG;AAChG,qBAAa,iBAAkB,YAAW,eAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,aAAa;IAEzC,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA4FjE,IAAI,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoBjE,KAAK,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAiChE,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IAwB/D,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC;IA4BvE,IAAI,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IA4C5E,aAAa,CACjB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,SAAS,qBAAqB,EAAE,CAAC;IAoC5C;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,YAAY;CAMrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"pg-ai-cost-storage.d.ts","sourceRoot":"","sources":["../src/pg-ai-cost-storage.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAElB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAE1B,KAAK,8BAA8B,EACnC,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACpC,MAAM,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,8EAA8E;AAC9E,qBAAa,eAAgB,YAAW,aAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,aAAa;IAEzC,mBAAmB,CACvB,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,2BAA2B,CAAC;IAIjC,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BhE,mBAAmB,CACvB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAsB9B,oBAAoB,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA4H1F,cAAc,CAClB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,+BAA+B,CAAC;CA0F5C"}
1
+ {"version":3,"file":"pg-ai-cost-storage.d.ts","sourceRoot":"","sources":["../src/pg-ai-cost-storage.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAElB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAE1B,KAAK,8BAA8B,EACnC,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACpC,MAAM,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,8EAA8E;AAC9E,qBAAa,eAAgB,YAAW,aAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,aAAa;IAEzC,mBAAmB,CACvB,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,2BAA2B,CAAC;IAIjC,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BhE,mBAAmB,CACvB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAsB9B,oBAAoB,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA2I1F,cAAc,CAClB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,+BAA+B,CAAC;CA0F5C"}
@@ -1,5 +1,5 @@
1
1
  import type { ReadonlyJsonObject } from "@sixb/core/storage";
2
- import { type AiModelCallUsageRecord, type AiUsageExecutionSummary, type AiUsageStorage, type GetLatestAiModelCallForExecutionInput, type RecordAiModelCallInput, type RecordAiModelCallResult, type SummarizeAiUsageExecutionInput, type SummarizeAiUsageExecutionsInput } from "@sixb/core/storage";
2
+ import { type AiModelCallFilesRecord, type AiModelCallUsageRecord, type AiUsageExecutionSummary, type AiUsageStorage, type GetAiModelCallFilesInput, type GetLatestAiModelCallForExecutionInput, type RecordAiModelCallFilesInput, type RecordAiModelCallInput, type RecordAiModelCallResult, type SummarizeAiUsageExecutionInput, type SummarizeAiUsageExecutionsInput } from "@sixb/core/storage";
3
3
  import { type PgStoreClient } from "./transactions";
4
4
  /** PostgreSQL-backed append-only model-call usage ledger. */
5
5
  export declare class PgAiUsageStorage implements AiUsageStorage {
@@ -13,6 +13,9 @@ export declare class PgAiUsageStorage implements AiUsageStorage {
13
13
  private requireById;
14
14
  private rowToRecord;
15
15
  private executionRows;
16
+ recordModelCallFiles(input: RecordAiModelCallFilesInput): Promise<AiModelCallFilesRecord>;
17
+ getModelCallFiles(input: GetAiModelCallFilesInput): Promise<AiModelCallFilesRecord | null>;
18
+ private findCallFiles;
16
19
  private assertExecutionExists;
17
20
  }
18
21
  interface AiUsageRow {
@@ -37,6 +40,10 @@ interface AiUsageRow {
37
40
  readonly text_output_tokens: number | string | null;
38
41
  readonly reasoning_output_tokens: number | string | null;
39
42
  readonly audio_duration_ms: number | string | null;
43
+ readonly image_output_tokens: number | string | null;
44
+ readonly audio_output_tokens: number | string | null;
45
+ readonly output_images: number | string | null;
46
+ readonly input_characters: number | string | null;
40
47
  readonly reporting_status: AiModelCallUsageRecord["usage"]["reportingStatus"];
41
48
  readonly raw_usage: ReadonlyJsonObject | string | null;
42
49
  readonly occurred_at: Date | string;
@@ -1 +1 @@
1
- {"version":3,"file":"pg-ai-usage-storage.d.ts","sourceRoot":"","sources":["../src/pg-ai-usage-storage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EAGnB,KAAK,qCAAqC,EAC1C,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,+BAA+B,EACrC,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,gBAAgB,CAAA;AAErE,6DAA6D;AAC7D,qBAAa,gBAAiB,YAAW,cAAc;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,aAAa;IAEzC,eAAe,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA4FhF,kBAAkB,CACtB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,uBAAuB,CAAC;IAQ7B,qBAAqB,CACzB,KAAK,EAAE,qCAAqC,GAC3C,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAYnC,mBAAmB,CACvB,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC;YAShC,oBAAoB;YAkBpB,WAAW;YAYX,WAAW;IAwCzB,OAAO,CAAC,aAAa;YAiBP,qBAAqB;CAgBpC;AAED,UAAU,UAAU;IAClB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;IAC9D,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAA;IAC/D,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACrE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC9C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC7C,QAAQ,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACtD,QAAQ,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACxD,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACzD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACnD,QAAQ,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACxD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAClD,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAA;IAC7E,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAAA;IACtD,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,CAAA;CACpC;AA+CD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC,GACtD,sBAAsB,CAAC,oBAAoB,CAAC,CAS9C"}
1
+ {"version":3,"file":"pg-ai-usage-storage.d.ts","sourceRoot":"","sources":["../src/pg-ai-usage-storage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { ArtifactFrameGrantRecord, ArtifactRecord, ArtifactStateEntry, ArtifactStateKeyInput, ArtifactStateScope, ArtifactStorage, ArtifactVersionRecord, CopyArtifactInput, CreateArtifactInput, DeleteArtifactInput, DeleteArtifactVersionsByOriginInput, DeleteExpiredArtifactFrameGrantsInput, FindArtifactFrameGrantInput, GetArtifactInput, GetArtifactVersionInput, ListArtifactsInput, ListArtifactsResult, ListArtifactVersionsInput, ListArtifactVersionsResult, ListReferencingVersionsInput, PublishArtifactVersionInput, PublishedArtifactVersion, SetArtifactStateInput } from "@sixb/core/storage";
2
+ import { type PgStoreClient } from "./transactions";
3
+ export declare class PgArtifactStorage implements ArtifactStorage {
4
+ private readonly sql;
5
+ constructor(sql: PgStoreClient);
6
+ create(input: CreateArtifactInput): Promise<PublishedArtifactVersion>;
7
+ publish(input: PublishArtifactVersionInput): Promise<PublishedArtifactVersion>;
8
+ get(input: GetArtifactInput): Promise<ArtifactRecord | null>;
9
+ list(input: ListArtifactsInput): Promise<ListArtifactsResult>;
10
+ getVersion(input: GetArtifactVersionInput): Promise<ArtifactVersionRecord | null>;
11
+ listThreadIds(input: GetArtifactInput): Promise<string[]>;
12
+ copy(input: CopyArtifactInput): Promise<ArtifactRecord>;
13
+ listVersions(input: ListArtifactVersionsInput): Promise<ListArtifactVersionsResult>;
14
+ listReferencingVersions(input: ListReferencingVersionsInput): Promise<ArtifactVersionRecord[]>;
15
+ createFrameGrant(record: ArtifactFrameGrantRecord): Promise<void>;
16
+ findFrameGrant(input: FindArtifactFrameGrantInput): Promise<ArtifactFrameGrantRecord | null>;
17
+ deleteExpiredFrameGrants(input: DeleteExpiredArtifactFrameGrantsInput): Promise<number>;
18
+ getState(input: ArtifactStateKeyInput): Promise<ArtifactStateEntry | null>;
19
+ setState(input: SetArtifactStateInput): Promise<void>;
20
+ deleteState(input: ArtifactStateKeyInput): Promise<boolean>;
21
+ listState(input: ArtifactStateScope): Promise<ArtifactStateEntry[]>;
22
+ clearState(input: ArtifactStateScope): Promise<number>;
23
+ delete(input: DeleteArtifactInput): Promise<boolean>;
24
+ deleteVersionsByOrigin(input: DeleteArtifactVersionsByOriginInput): Promise<number>;
25
+ }
26
+ //# sourceMappingURL=pg-artifact-storage.d.ts.map