@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.
- package/README.md +1 -0
- package/dist/agents/agent-storage.d.ts +8 -2
- package/dist/agents/agent-storage.d.ts.map +1 -1
- package/dist/agents/approvals.d.ts +48 -0
- package/dist/agents/approvals.d.ts.map +1 -0
- package/dist/agents/checkpoints.d.ts +1 -0
- package/dist/agents/checkpoints.d.ts.map +1 -1
- package/dist/agents/index.d.ts +1 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/memory.d.ts +19 -0
- package/dist/agents/memory.d.ts.map +1 -0
- package/dist/agents/messages.d.ts.map +1 -1
- package/dist/agents/rows.d.ts +15 -1
- package/dist/agents/rows.d.ts.map +1 -1
- package/dist/agents/runs.d.ts +3 -1
- package/dist/agents/runs.d.ts.map +1 -1
- package/dist/agents/settings.d.ts +29 -0
- package/dist/agents/settings.d.ts.map +1 -0
- package/dist/agents/threads.d.ts +10 -1
- package/dist/agents/threads.d.ts.map +1 -1
- package/dist/ai-cost-groups.d.ts.map +1 -1
- package/dist/auth-storage/auth-storage.d.ts +3 -2
- package/dist/auth-storage/auth-storage.d.ts.map +1 -1
- package/dist/auth-storage/sessions.d.ts +2 -1
- package/dist/auth-storage/sessions.d.ts.map +1 -1
- package/dist/auth-storage/users.d.ts +8 -4
- package/dist/auth-storage/users.d.ts.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6001 -2923
- package/dist/index.js.map +45 -37
- package/dist/migrations.d.ts.map +1 -1
- package/dist/objects/conditional-reader.d.ts +17 -0
- package/dist/objects/conditional-reader.d.ts.map +1 -0
- package/dist/objects/query-compiler.d.ts +27 -1
- package/dist/objects/query-compiler.d.ts.map +1 -1
- package/dist/objects/query-indexes.d.ts.map +1 -1
- package/dist/objects/read-scope.d.ts +10 -1
- package/dist/objects/read-scope.d.ts.map +1 -1
- package/dist/objects/reader.d.ts +2 -0
- package/dist/objects/reader.d.ts.map +1 -1
- package/dist/objects/scoped-reader.d.ts +12 -0
- package/dist/objects/scoped-reader.d.ts.map +1 -0
- package/dist/objects/selected-reader.d.ts +1 -0
- package/dist/objects/selected-reader.d.ts.map +1 -1
- package/dist/objects/storage.d.ts +7 -1
- package/dist/objects/storage.d.ts.map +1 -1
- package/dist/ontology-storage/index.d.ts +2 -0
- package/dist/ontology-storage/index.d.ts.map +1 -1
- package/dist/ontology-storage/materialization-session.d.ts +6 -0
- package/dist/ontology-storage/materialization-session.d.ts.map +1 -1
- package/dist/ontology-storage/materialization-writer.d.ts +15 -0
- package/dist/ontology-storage/materialization-writer.d.ts.map +1 -1
- package/dist/ontology-storage/materializations.d.ts.map +1 -1
- package/dist/ontology-storage/replacement-plans.d.ts.map +1 -1
- package/dist/ontology-storage/sources.d.ts +2 -1
- package/dist/ontology-storage/sources.d.ts.map +1 -1
- package/dist/ontology-storage/unique-values.d.ts +60 -0
- package/dist/ontology-storage/unique-values.d.ts.map +1 -0
- package/dist/pg-action-run-storage.d.ts +4 -0
- package/dist/pg-action-run-storage.d.ts.map +1 -1
- package/dist/pg-activity-storage.d.ts +22 -0
- package/dist/pg-activity-storage.d.ts.map +1 -0
- package/dist/pg-ai-cost-storage.d.ts.map +1 -1
- package/dist/pg-ai-usage-storage.d.ts +8 -1
- package/dist/pg-ai-usage-storage.d.ts.map +1 -1
- package/dist/pg-artifact-storage.d.ts +26 -0
- package/dist/pg-artifact-storage.d.ts.map +1 -0
- package/dist/pg-execution-storage.d.ts +3 -1
- package/dist/pg-execution-storage.d.ts.map +1 -1
- package/dist/pg-workflow-run-storage.d.ts +4 -0
- package/dist/pg-workflow-run-storage.d.ts.map +1 -1
- package/dist/share-grant-storage.d.ts +2 -1
- package/dist/share-grant-storage.d.ts.map +1 -1
- package/dist/storage-errors.d.ts +2 -0
- package/dist/storage-errors.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/agents/agent-storage.ts +11 -2
- package/src/agents/approvals.ts +400 -0
- package/src/agents/checkpoints.ts +8 -4
- package/src/agents/index.ts +1 -0
- package/src/agents/memory.ts +175 -0
- package/src/agents/messages.ts +14 -7
- package/src/agents/rows.ts +46 -1
- package/src/agents/runs.ts +154 -22
- package/src/agents/settings.ts +105 -0
- package/src/agents/threads.ts +379 -3
- package/src/ai-cost-groups.ts +11 -1
- package/src/auth-storage/auth-storage.ts +45 -13
- package/src/auth-storage/sessions.ts +20 -0
- package/src/auth-storage/users.ts +105 -43
- package/src/index.ts +10 -0
- package/src/migrations/063-artifacts.sql +67 -0
- package/src/migrations/064-drop-output-diagnostics.sql +14 -0
- package/src/migrations/065-plan-work-payload-statistics.sql +5 -0
- package/src/migrations/066-activity.sql +61 -0
- package/src/migrations/067-activity-timeline.sql +15 -0
- package/src/migrations/068-activity-interactions.sql +20 -0
- package/src/migrations/069-artifact-kinds.sql +4 -0
- package/src/migrations/070-artifact-state.sql +16 -0
- package/src/migrations/071-agent-thread-participants.sql +16 -0
- package/src/migrations/072-forked-context-checkpoints.sql +23 -0
- package/src/migrations/073-unique-values.sql +25 -0
- package/src/migrations/074-generated-media-usage.sql +21 -0
- package/src/migrations/075-model-call-files.sql +11 -0
- package/src/migrations/076-agent-memory.sql +33 -0
- package/src/migrations/077-artifact-threads.sql +21 -0
- package/src/migrations/078-agent-approvals.sql +58 -0
- package/src/migrations/079-agent-approval-resume.sql +20 -0
- package/src/migrations/080-subagent-threads.sql +145 -0
- package/src/migrations/081-subagent-questions.sql +6 -0
- package/src/migrations.ts +52 -0
- package/src/objects/conditional-reader.ts +44 -0
- package/src/objects/prepare-queries.ts +1 -1
- package/src/objects/query-compiler.ts +96 -33
- package/src/objects/query-indexes.ts +29 -10
- package/src/objects/read-scope.ts +140 -25
- package/src/objects/reader.ts +50 -6
- package/src/objects/scoped-reader.ts +101 -0
- package/src/objects/selected-reader.ts +16 -76
- package/src/objects/storage.ts +24 -5
- package/src/objects/text-count-index.ts +1 -0
- package/src/ontology-storage/index.ts +3 -0
- package/src/ontology-storage/materialization-session.ts +8 -0
- package/src/ontology-storage/materialization-writer.ts +76 -1
- package/src/ontology-storage/materializations.ts +20 -1
- package/src/ontology-storage/replacement-plans.ts +25 -7
- package/src/ontology-storage/sources.ts +37 -0
- package/src/ontology-storage/unique-values.ts +274 -0
- package/src/pg-action-run-storage.ts +23 -0
- package/src/pg-activity-storage.ts +486 -0
- package/src/pg-ai-cost-storage.ts +62 -12
- package/src/pg-ai-usage-storage.ts +90 -1
- package/src/pg-artifact-storage.ts +521 -0
- package/src/pg-execution-storage.ts +83 -0
- package/src/pg-workflow-run-storage.ts +23 -0
- package/src/share-grant-storage.ts +21 -0
- package/src/storage-errors.ts +7 -0
- package/src/transactions.ts +1 -1
package/dist/migrations.d.ts.map
CHANGED
|
@@ -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,
|
|
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":"AAAA,OAAO,EAEL,KAAK,WAAW,
|
|
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;
|
|
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,
|
|
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"}
|
package/dist/objects/reader.d.ts
CHANGED
|
@@ -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":"AAEA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,cAAc,CAAA;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAQL,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/objects/reader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,cAAc,CAAA;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAQL,KAAK,mBAAmB,EAEzB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAgB9D,iGAAiG;AACjG,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBAFnB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,mBAAmB,GAAG,0BAA0B,EACxD,kBAAkB,CAAC,EAAE,oBAAoB,YAAA;YAG9C,kBAAkB;IA2B1B,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0B1E,uFAAuF;YACzE,gBAAgB;YA2BhB,cAAc;IAyBtB,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0BpE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAavE,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkDpE,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;IAqB7B,uFAAuF;IACjF,gBAAgB,CACpB,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3D,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAmCtB,uBAAuB,CAC3B,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GAClE,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC;IAqCxB,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;IAiC/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;IA+BrC,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;IAuFzC,UAAU,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAuG1E,IAAI,CACR,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAC/C,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,SAAS,EAAE,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAmF/E;AAwDD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIxD"}
|
|
@@ -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;
|
|
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;
|
|
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;
|
|
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;
|
|
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;
|
|
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;
|
|
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;
|
|
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":"
|
|
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":"
|
|
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
|