@opendatalabs/personal-server-ts-server 1.33.8 → 1.34.1

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 (167) hide show
  1. package/dist/__fixtures__/bound-record-store.d.ts +19 -0
  2. package/dist/__fixtures__/bound-record-store.d.ts.map +1 -0
  3. package/dist/__fixtures__/bound-record-store.js +60 -0
  4. package/dist/__fixtures__/bound-record-store.js.map +1 -0
  5. package/dist/__fixtures__/cg-pdpp-client/pdpp-authorization-strategy.d.ts +41 -0
  6. package/dist/__fixtures__/cg-pdpp-client/pdpp-authorization-strategy.d.ts.map +1 -0
  7. package/dist/__fixtures__/cg-pdpp-client/pdpp-authorization-strategy.js +34 -0
  8. package/dist/__fixtures__/cg-pdpp-client/pdpp-authorization-strategy.js.map +1 -0
  9. package/dist/__fixtures__/cg-pdpp-client/pdpp-context-client.d.ts +112 -0
  10. package/dist/__fixtures__/cg-pdpp-client/pdpp-context-client.d.ts.map +1 -0
  11. package/dist/__fixtures__/cg-pdpp-client/pdpp-context-client.js +226 -0
  12. package/dist/__fixtures__/cg-pdpp-client/pdpp-context-client.js.map +1 -0
  13. package/dist/__fixtures__/cg-pdpp-client/pdpp-types.d.ts +135 -0
  14. package/dist/__fixtures__/cg-pdpp-client/pdpp-types.d.ts.map +1 -0
  15. package/dist/__fixtures__/cg-pdpp-client/pdpp-types.js +21 -0
  16. package/dist/__fixtures__/cg-pdpp-client/pdpp-types.js.map +1 -0
  17. package/dist/api-auth.d.ts +18 -2
  18. package/dist/api-auth.d.ts.map +1 -1
  19. package/dist/api-auth.js +114 -22
  20. package/dist/api-auth.js.map +1 -1
  21. package/dist/app.d.ts +60 -1
  22. package/dist/app.d.ts.map +1 -1
  23. package/dist/app.js +139 -1
  24. package/dist/app.js.map +1 -1
  25. package/dist/bootstrap.d.ts +10 -0
  26. package/dist/bootstrap.d.ts.map +1 -1
  27. package/dist/bootstrap.js +359 -8
  28. package/dist/bootstrap.js.map +1 -1
  29. package/dist/enclave-main.d.ts +4 -0
  30. package/dist/enclave-main.d.ts.map +1 -1
  31. package/dist/enclave-main.js +152 -1
  32. package/dist/enclave-main.js.map +1 -1
  33. package/dist/middleware/body-limit.d.ts +1 -1
  34. package/dist/middleware/body-limit.d.ts.map +1 -1
  35. package/dist/middleware/body-limit.js +8 -3
  36. package/dist/middleware/body-limit.js.map +1 -1
  37. package/dist/middleware/cors.d.ts.map +1 -1
  38. package/dist/middleware/cors.js +1 -0
  39. package/dist/middleware/cors.js.map +1 -1
  40. package/dist/package.json +9 -1
  41. package/dist/pdpp/bootstrap.d.ts +72 -0
  42. package/dist/pdpp/bootstrap.d.ts.map +1 -0
  43. package/dist/pdpp/bootstrap.js +270 -0
  44. package/dist/pdpp/bootstrap.js.map +1 -0
  45. package/dist/pdpp/chain-enforcement.d.ts +95 -0
  46. package/dist/pdpp/chain-enforcement.d.ts.map +1 -0
  47. package/dist/pdpp/chain-enforcement.js +145 -0
  48. package/dist/pdpp/chain-enforcement.js.map +1 -0
  49. package/dist/pdpp/client-document-fetch.d.ts +63 -0
  50. package/dist/pdpp/client-document-fetch.d.ts.map +1 -0
  51. package/dist/pdpp/client-document-fetch.js +254 -0
  52. package/dist/pdpp/client-document-fetch.js.map +1 -0
  53. package/dist/pdpp/declaration-registry.d.ts +83 -0
  54. package/dist/pdpp/declaration-registry.d.ts.map +1 -0
  55. package/dist/pdpp/declaration-registry.js +251 -0
  56. package/dist/pdpp/declaration-registry.js.map +1 -0
  57. package/dist/pdpp/deployment.d.ts +70 -0
  58. package/dist/pdpp/deployment.d.ts.map +1 -0
  59. package/dist/pdpp/deployment.js +104 -0
  60. package/dist/pdpp/deployment.js.map +1 -0
  61. package/dist/pdpp/record-schema.d.ts +2 -0
  62. package/dist/pdpp/record-schema.d.ts.map +1 -0
  63. package/dist/pdpp/record-schema.js +2 -0
  64. package/dist/pdpp/record-schema.js.map +1 -0
  65. package/dist/pdpp/records-bootstrap.d.ts +111 -0
  66. package/dist/pdpp/records-bootstrap.d.ts.map +1 -0
  67. package/dist/pdpp/records-bootstrap.js +353 -0
  68. package/dist/pdpp/records-bootstrap.js.map +1 -0
  69. package/dist/pdpp/source-id-compat.d.ts +5 -0
  70. package/dist/pdpp/source-id-compat.d.ts.map +1 -0
  71. package/dist/pdpp/source-id-compat.js +16 -0
  72. package/dist/pdpp/source-id-compat.js.map +1 -0
  73. package/dist/pdpp/test-connections.d.ts +6 -0
  74. package/dist/pdpp/test-connections.d.ts.map +1 -0
  75. package/dist/pdpp/test-connections.js +37 -0
  76. package/dist/pdpp/test-connections.js.map +1 -0
  77. package/dist/routes/auth-device.d.ts.map +1 -1
  78. package/dist/routes/auth-device.js +3 -0
  79. package/dist/routes/auth-device.js.map +1 -1
  80. package/dist/routes/chunked-scope-import.d.ts +41 -0
  81. package/dist/routes/chunked-scope-import.d.ts.map +1 -0
  82. package/dist/routes/chunked-scope-import.js +901 -0
  83. package/dist/routes/chunked-scope-import.js.map +1 -0
  84. package/dist/routes/data.d.ts +23 -1
  85. package/dist/routes/data.d.ts.map +1 -1
  86. package/dist/routes/data.js +112 -1
  87. package/dist/routes/data.js.map +1 -1
  88. package/dist/routes/grants.d.ts.map +1 -1
  89. package/dist/routes/grants.js +2 -0
  90. package/dist/routes/grants.js.map +1 -1
  91. package/dist/routes/mcp.d.ts.map +1 -1
  92. package/dist/routes/mcp.js +3 -0
  93. package/dist/routes/mcp.js.map +1 -1
  94. package/dist/routes/pdpp-auth.d.ts +157 -0
  95. package/dist/routes/pdpp-auth.d.ts.map +1 -0
  96. package/dist/routes/pdpp-auth.js +953 -0
  97. package/dist/routes/pdpp-auth.js.map +1 -0
  98. package/dist/routes/pdpp-blobs.d.ts +26 -0
  99. package/dist/routes/pdpp-blobs.d.ts.map +1 -0
  100. package/dist/routes/pdpp-blobs.js +179 -0
  101. package/dist/routes/pdpp-blobs.js.map +1 -0
  102. package/dist/routes/pdpp-connections.d.ts +28 -0
  103. package/dist/routes/pdpp-connections.d.ts.map +1 -0
  104. package/dist/routes/pdpp-connections.js +144 -0
  105. package/dist/routes/pdpp-connections.js.map +1 -0
  106. package/dist/routes/pdpp-declarations.d.ts +58 -0
  107. package/dist/routes/pdpp-declarations.d.ts.map +1 -0
  108. package/dist/routes/pdpp-declarations.js +94 -0
  109. package/dist/routes/pdpp-declarations.js.map +1 -0
  110. package/dist/routes/pdpp-instance-bindings.d.ts +26 -0
  111. package/dist/routes/pdpp-instance-bindings.d.ts.map +1 -0
  112. package/dist/routes/pdpp-instance-bindings.js +124 -0
  113. package/dist/routes/pdpp-instance-bindings.js.map +1 -0
  114. package/dist/routes/pdpp-records.d.ts +158 -0
  115. package/dist/routes/pdpp-records.d.ts.map +1 -0
  116. package/dist/routes/pdpp-records.js +1537 -0
  117. package/dist/routes/pdpp-records.js.map +1 -0
  118. package/dist/routes/pdpp-well-known.d.ts +13 -0
  119. package/dist/routes/pdpp-well-known.d.ts.map +1 -0
  120. package/dist/routes/pdpp-well-known.js +20 -0
  121. package/dist/routes/pdpp-well-known.js.map +1 -0
  122. package/dist/storage/declaration-witness.d.ts +56 -0
  123. package/dist/storage/declaration-witness.d.ts.map +1 -0
  124. package/dist/storage/declaration-witness.js +273 -0
  125. package/dist/storage/declaration-witness.js.map +1 -0
  126. package/dist/storage/hierarchy.d.ts +25 -1
  127. package/dist/storage/hierarchy.d.ts.map +1 -1
  128. package/dist/storage/hierarchy.js +210 -16
  129. package/dist/storage/hierarchy.js.map +1 -1
  130. package/dist/storage/import-operations.d.ts +11 -0
  131. package/dist/storage/import-operations.d.ts.map +1 -0
  132. package/dist/storage/import-operations.js +261 -0
  133. package/dist/storage/import-operations.js.map +1 -0
  134. package/dist/storage/index-manager.d.ts +24 -2
  135. package/dist/storage/index-manager.d.ts.map +1 -1
  136. package/dist/storage/index-manager.js +279 -30
  137. package/dist/storage/index-manager.js.map +1 -1
  138. package/dist/storage/index-schema.d.ts +1 -1
  139. package/dist/storage/index-schema.d.ts.map +1 -1
  140. package/dist/storage/index-schema.js +189 -8
  141. package/dist/storage/index-schema.js.map +1 -1
  142. package/dist/storage/legacy-scope-authority.d.ts +14 -0
  143. package/dist/storage/legacy-scope-authority.d.ts.map +1 -0
  144. package/dist/storage/legacy-scope-authority.js +298 -0
  145. package/dist/storage/legacy-scope-authority.js.map +1 -0
  146. package/dist/storage/node-data-storage.d.ts +6 -0
  147. package/dist/storage/node-data-storage.d.ts.map +1 -1
  148. package/dist/storage/node-data-storage.js +161 -2
  149. package/dist/storage/node-data-storage.js.map +1 -1
  150. package/dist/storage/pdpp-grant-binding-sqlite-store.d.ts +17 -0
  151. package/dist/storage/pdpp-grant-binding-sqlite-store.d.ts.map +1 -0
  152. package/dist/storage/pdpp-grant-binding-sqlite-store.js +159 -0
  153. package/dist/storage/pdpp-grant-binding-sqlite-store.js.map +1 -0
  154. package/dist/storage/pdpp-records-sqlite-store.d.ts +112 -0
  155. package/dist/storage/pdpp-records-sqlite-store.d.ts.map +1 -0
  156. package/dist/storage/pdpp-records-sqlite-store.js +1440 -0
  157. package/dist/storage/pdpp-records-sqlite-store.js.map +1 -0
  158. package/dist/storage/pdpp-stream-completion.d.ts +5 -0
  159. package/dist/storage/pdpp-stream-completion.d.ts.map +1 -0
  160. package/dist/storage/pdpp-stream-completion.js +10 -0
  161. package/dist/storage/pdpp-stream-completion.js.map +1 -0
  162. package/dist/storage/scope-deletion-history.d.ts +8 -0
  163. package/dist/storage/scope-deletion-history.d.ts.map +1 -0
  164. package/dist/storage/scope-deletion-history.js +40 -0
  165. package/dist/storage/scope-deletion-history.js.map +1 -0
  166. package/dist/ui/ps-lite-debug.js +3981 -1109
  167. package/package.json +12 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdpp-records.js","sourceRoot":"","sources":["../../src/routes/pdpp-records.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { Hono } from "hono";
2
+ export interface PdppWellKnownRouteDeps {
3
+ /** This resource server's own identifier (RFC 9728 §2 `resource`). */
4
+ resource: string;
5
+ /** Base path §8 record endpoints extend from, e.g. "/v1". */
6
+ coreQueryBase: string;
7
+ /** Omit when the authorization-server set is not enumerable (RFC 9728 §2). */
8
+ authorizationServers?: string[];
9
+ resourceName?: string;
10
+ selfExportSupported?: boolean;
11
+ }
12
+ export declare function pdppWellKnownRoutes(deps: PdppWellKnownRouteDeps): Hono;
13
+ //# sourceMappingURL=pdpp-well-known.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdpp-well-known.d.ts","sourceRoot":"","sources":["../../src/routes/pdpp-well-known.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,MAAM,WAAW,sBAAsB;IACrC,sEAAsE;IACtE,QAAQ,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;IACtB,8EAA8E;IAC9E,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,sBAAsB,GAAG,IAAI,CAkBtE"}
@@ -0,0 +1,20 @@
1
+ import { Hono } from "hono";
2
+ import { PDPP_VERSION } from "@opendatalabs/personal-server-ts-core/pdpp-version";
3
+ export function pdppWellKnownRoutes(deps) {
4
+ const app = new Hono();
5
+ app.get("/oauth-protected-resource", (c) => {
6
+ return c.json({
7
+ resource: deps.resource,
8
+ ...(deps.authorizationServers && {
9
+ authorization_servers: deps.authorizationServers,
10
+ }),
11
+ ...(deps.resourceName && { resource_name: deps.resourceName }),
12
+ pdpp_core_query_base: deps.coreQueryBase,
13
+ pdpp_token_kinds_supported: ["owner", "client"],
14
+ pdpp_self_export_supported: deps.selfExportSupported ?? true,
15
+ pdpp_provider_connect_version: PDPP_VERSION,
16
+ });
17
+ });
18
+ return app;
19
+ }
20
+ //# sourceMappingURL=pdpp-well-known.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdpp-well-known.js","sourceRoot":"","sources":["../../src/routes/pdpp-well-known.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAalF,MAAM,UAAU,mBAAmB,CAAC,IAA4B;IAC9D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,GAAG,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC,CAAC,EAAE,EAAE;QACzC,OAAO,CAAC,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI;gBAC/B,qBAAqB,EAAE,IAAI,CAAC,oBAAoB;aACjD,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;YAC9D,oBAAoB,EAAE,IAAI,CAAC,aAAa;YACxC,0BAA0B,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC/C,0BAA0B,EAAE,IAAI,CAAC,mBAAmB,IAAI,IAAI;YAC5D,6BAA6B,EAAE,YAAY;SAC5C,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { type DeclarationWitnessResult } from "@opendatalabs/personal-server-ts-core/storage/pdpp-records";
2
+ export interface OfflineDeclarationWitnessOptions {
3
+ /** Exact existing PDPP records database path used by the caller's server. */
4
+ dbPath: string;
5
+ /** Existing registry file; defaults to pdpp-declarations.db beside dbPath. */
6
+ declarationsDbPath?: string;
7
+ /** A live connection instance ID; its binding selects the entire source. */
8
+ sourceKey?: string;
9
+ /** Exact declaration source ID, as an alternative to sourceKey. Supply exactly one. */
10
+ sourceId?: string;
11
+ stream: string;
12
+ nextSchema: Record<string, unknown>;
13
+ /** Positive safe integer. Each internal page is capped at 1,000 rows. */
14
+ pageSize?: number;
15
+ /** @deprecated Use pageSize. Used only when pageSize is omitted. */
16
+ limit?: number;
17
+ /** Finite nonnegative, cooperative wall-clock budget in milliseconds. */
18
+ budgetMs: number;
19
+ }
20
+ export type OfflineDeclarationWitnessResult = Omit<DeclarationWitnessResult, "nextCursor"> & {
21
+ /** SHA-256 of the failing connection instance ID, only on fail. */
22
+ connectionHash?: string;
23
+ };
24
+ export type OfflineDeclarationWitnessErrorCode = "invalid_argument" | "missing_database" | "open_failed" | "unsupported_store" | "store_unreadable" | "missing_source" | "missing_stream" | "unverifiable_source" | "invalid_schema" | "read_failed" | "close_failed";
25
+ /** Fixed, value-free errors. Native errors and their causes are never exposed. */
26
+ export declare class OfflineDeclarationWitnessError extends Error {
27
+ readonly code: OfflineDeclarationWitnessErrorCode;
28
+ constructor(code: OfflineDeclarationWitnessErrorCode);
29
+ }
30
+ /**
31
+ * Validate a declaration offline, before starting the server.
32
+ *
33
+ * The caller supplies the exact bootstrap database path and MUST guarantee
34
+ * exclusive use of BOTH databases from the start of this call through the upgrade decision.
35
+ * No shared bootstrap lock is available here: readonly is NOT a writer fence
36
+ * or a snapshot, and this API does not detect other running server processes.
37
+ *
38
+ * Two read-only databases and one read-port own every continuation in this call.
39
+ * Every live connection bound to the selected source is checked, under one
40
+ * shared deadline; a pass requires all of them to pass.
41
+ * No main database is created, migrated or pruned. SQLite may create WAL/SHM
42
+ * sidecars or update SHM reader marks, including during crash recovery; main
43
+ * database bytes and existing WAL frame contents remain unchanged. Missing/incompatible databases
44
+ * throw typed errors. Only a registered source and a declared stream may pass
45
+ * with checked: 0. Stream authority comes from the current declaration in the
46
+ * separate registry; absent or malformed authority fails closed.
47
+ *
48
+ * The deadline is checked before and after every bounded page, including the
49
+ * terminal page. Synchronous SQLite/JSON parsing/schema compilation cannot be
50
+ * interrupted, so budgetMs is not a hard process timeout. A caller requiring
51
+ * hard cancellation must use a supervised process and reap it before boot.
52
+ * A partial result cannot be resumed across calls; rerun the entire walk.
53
+ * Both databases are closed before this promise resolves or rejects.
54
+ */
55
+ export declare function runDeclarationWitness(options: OfflineDeclarationWitnessOptions): Promise<OfflineDeclarationWitnessResult>;
56
+ //# sourceMappingURL=declaration-witness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declaration-witness.d.ts","sourceRoot":"","sources":["../../src/storage/declaration-witness.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,4DAA4D,CAAC;AAGpE,MAAM,WAAW,gCAAgC;IAC/C,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,+BAA+B,GAAG,IAAI,CAChD,wBAAwB,EACxB,YAAY,CACb,GAAG;IACF,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAC1C,kBAAkB,GAClB,kBAAkB,GAClB,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,gBAAgB,GAChB,gBAAgB,GAChB,qBAAqB,GACrB,gBAAgB,GAChB,aAAa,GACb,cAAc,CAAC;AAEnB,kFAAkF;AAClF,qBAAa,8BAA+B,SAAQ,KAAK;aAC3B,IAAI,EAAE,kCAAkC;gBAAxC,IAAI,EAAE,kCAAkC;CAIrE;AAwFD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,+BAA+B,CAAC,CAqK1C"}
@@ -0,0 +1,273 @@
1
+ import { createHash } from "node:crypto";
2
+ import { statSync } from "node:fs";
3
+ import { dirname, join } from "node:path";
4
+ import { performance } from "node:perf_hooks";
5
+ import Database from "better-sqlite3";
6
+ import { DeclarationWitnessSchemaError, fromSyncRecordStore, witnessDeclarationUpgrade, } from "@opendatalabs/personal-server-ts-core/storage/pdpp-records";
7
+ import { createSqliteRecordStore } from "./pdpp-records-sqlite-store.js";
8
+ /** Fixed, value-free errors. Native errors and their causes are never exposed. */
9
+ export class OfflineDeclarationWitnessError extends Error {
10
+ code;
11
+ constructor(code) {
12
+ super(`Offline declaration witness: ${code}`);
13
+ this.code = code;
14
+ this.name = "OfflineDeclarationWitnessError";
15
+ }
16
+ }
17
+ function isUnreadable(error) {
18
+ const code = error?.code;
19
+ return (typeof code === "string" &&
20
+ ([
21
+ "EACCES",
22
+ "EPERM",
23
+ "EISDIR",
24
+ "EROFS",
25
+ "SQLITE_CANTOPEN",
26
+ "SQLITE_PERM",
27
+ "SQLITE_AUTH",
28
+ ].includes(code) ||
29
+ code.startsWith("SQLITE_READONLY")));
30
+ }
31
+ /** Binding source_id is the exact key used by declaration-registry.resolve. */
32
+ function assertRegisteredSource(db, sourceKey) {
33
+ let binding;
34
+ try {
35
+ binding = db
36
+ .prepare("SELECT source_id, deleted_at FROM pdpp_instance_binding WHERE instance = ?")
37
+ .get(sourceKey);
38
+ }
39
+ catch (error) {
40
+ if (isUnreadable(error))
41
+ throw new OfflineDeclarationWitnessError("store_unreadable");
42
+ throw new OfflineDeclarationWitnessError("unverifiable_source");
43
+ }
44
+ if (!binding || !binding.source_id || binding.deleted_at !== null) {
45
+ throw new OfflineDeclarationWitnessError("missing_source");
46
+ }
47
+ return binding.source_id;
48
+ }
49
+ function assertRetainedStreamDeclaration(db, sourceId, stream) {
50
+ try {
51
+ // Same key and current predicate as declaration-registry.resolve; never
52
+ // derive a source from the instance name or from a connector URI suffix.
53
+ const rows = db
54
+ .prepare("SELECT snapshot_json FROM pdpp_current_declarations WHERE source_id = ? AND is_current = 1 LIMIT 2")
55
+ .all(sourceId);
56
+ if (rows.length !== 1)
57
+ throw new OfflineDeclarationWitnessError("unverifiable_source");
58
+ const snapshot = JSON.parse(rows[0].snapshot_json);
59
+ if (!snapshot ||
60
+ typeof snapshot !== "object" ||
61
+ !("source_id" in snapshot) ||
62
+ snapshot.source_id !== sourceId ||
63
+ !("streams" in snapshot) ||
64
+ !Array.isArray(snapshot.streams) ||
65
+ !snapshot.streams.every((entry) => entry !== null &&
66
+ typeof entry === "object" &&
67
+ "name" in entry &&
68
+ typeof entry.name === "string" &&
69
+ entry.name.length > 0)) {
70
+ throw new OfflineDeclarationWitnessError("unverifiable_source");
71
+ }
72
+ if (!snapshot.streams.some((entry) => entry.name === stream)) {
73
+ throw new OfflineDeclarationWitnessError("missing_stream");
74
+ }
75
+ }
76
+ catch (error) {
77
+ if (error instanceof OfflineDeclarationWitnessError)
78
+ throw error;
79
+ throw new OfflineDeclarationWitnessError("unverifiable_source");
80
+ }
81
+ }
82
+ /**
83
+ * Validate a declaration offline, before starting the server.
84
+ *
85
+ * The caller supplies the exact bootstrap database path and MUST guarantee
86
+ * exclusive use of BOTH databases from the start of this call through the upgrade decision.
87
+ * No shared bootstrap lock is available here: readonly is NOT a writer fence
88
+ * or a snapshot, and this API does not detect other running server processes.
89
+ *
90
+ * Two read-only databases and one read-port own every continuation in this call.
91
+ * Every live connection bound to the selected source is checked, under one
92
+ * shared deadline; a pass requires all of them to pass.
93
+ * No main database is created, migrated or pruned. SQLite may create WAL/SHM
94
+ * sidecars or update SHM reader marks, including during crash recovery; main
95
+ * database bytes and existing WAL frame contents remain unchanged. Missing/incompatible databases
96
+ * throw typed errors. Only a registered source and a declared stream may pass
97
+ * with checked: 0. Stream authority comes from the current declaration in the
98
+ * separate registry; absent or malformed authority fails closed.
99
+ *
100
+ * The deadline is checked before and after every bounded page, including the
101
+ * terminal page. Synchronous SQLite/JSON parsing/schema compilation cannot be
102
+ * interrupted, so budgetMs is not a hard process timeout. A caller requiring
103
+ * hard cancellation must use a supervised process and reap it before boot.
104
+ * A partial result cannot be resumed across calls; rerun the entire walk.
105
+ * Both databases are closed before this promise resolves or rejects.
106
+ */
107
+ export async function runDeclarationWitness(options) {
108
+ const pageSize = options?.pageSize !== undefined ? options.pageSize : options?.limit;
109
+ if (!options ||
110
+ typeof options.dbPath !== "string" ||
111
+ !options.dbPath ||
112
+ (options.declarationsDbPath !== undefined &&
113
+ (typeof options.declarationsDbPath !== "string" ||
114
+ !options.declarationsDbPath)) ||
115
+ (options.sourceKey === undefined) === (options.sourceId === undefined) ||
116
+ (options.sourceKey !== undefined &&
117
+ (typeof options.sourceKey !== "string" || !options.sourceKey)) ||
118
+ (options.sourceId !== undefined &&
119
+ (typeof options.sourceId !== "string" || !options.sourceId)) ||
120
+ typeof options.stream !== "string" ||
121
+ !options.stream ||
122
+ typeof pageSize !== "number" ||
123
+ !Number.isSafeInteger(pageSize) ||
124
+ pageSize <= 0 ||
125
+ !Number.isFinite(options.budgetMs) ||
126
+ options.budgetMs < 0) {
127
+ throw new OfflineDeclarationWitnessError("invalid_argument");
128
+ }
129
+ const started = performance.now();
130
+ const { dbPath, sourceKey, stream, budgetMs } = options;
131
+ const limit = Math.min(pageSize, 1_000);
132
+ let schema;
133
+ try {
134
+ // Freeze the walk's schema against caller mutations between async pages.
135
+ schema = structuredClone(options.nextSchema);
136
+ }
137
+ catch {
138
+ throw new OfflineDeclarationWitnessError("invalid_schema");
139
+ }
140
+ let db;
141
+ let declarationsDb;
142
+ let stage = "open_failed";
143
+ try {
144
+ try {
145
+ if (!statSync(dbPath).isFile()) {
146
+ throw new OfflineDeclarationWitnessError("store_unreadable");
147
+ }
148
+ }
149
+ catch (error) {
150
+ if (error.code === "ENOENT") {
151
+ throw new OfflineDeclarationWitnessError("missing_database");
152
+ }
153
+ if (error instanceof OfflineDeclarationWitnessError)
154
+ throw error;
155
+ throw new OfflineDeclarationWitnessError(isUnreadable(error) ? "store_unreadable" : "open_failed");
156
+ }
157
+ db = new Database(dbPath, {
158
+ readonly: true,
159
+ fileMustExist: true,
160
+ timeout: 0,
161
+ });
162
+ stage = "unverifiable_source";
163
+ const sourceId = options.sourceId ?? assertRegisteredSource(db, sourceKey);
164
+ const connections = db
165
+ .prepare("SELECT instance FROM pdpp_instance_binding WHERE source_id = ? AND deleted_at IS NULL ORDER BY instance")
166
+ .all(sourceId);
167
+ stage = "unsupported_store";
168
+ const store = createSqliteRecordStore(db);
169
+ stage = "unverifiable_source";
170
+ try {
171
+ const path = options.declarationsDbPath ??
172
+ join(dirname(dbPath), "pdpp-declarations.db");
173
+ if (!statSync(path).isFile())
174
+ throw new Error("unavailable");
175
+ declarationsDb = new Database(path, {
176
+ readonly: true,
177
+ fileMustExist: true,
178
+ timeout: 0,
179
+ });
180
+ }
181
+ catch {
182
+ throw new OfflineDeclarationWitnessError("unverifiable_source");
183
+ }
184
+ assertRetainedStreamDeclaration(declarationsDb, sourceId, stream);
185
+ // Witness validation uses nextSchema, never declaration registry lookups.
186
+ const readPort = fromSyncRecordStore({
187
+ ...store,
188
+ forInstance: () => undefined,
189
+ });
190
+ stage = "read_failed";
191
+ let checked = 0;
192
+ if (connections.length === 0) {
193
+ if (performance.now() - started >= budgetMs)
194
+ return { verdict: "partial", checked };
195
+ // Still compile/validate nextSchema, but never read orphaned or unrelated
196
+ // rows merely because an instance happens to share the source ID.
197
+ const emptyPort = fromSyncRecordStore({
198
+ ...store,
199
+ forInstance: () => undefined,
200
+ listRecords: () => ({ data: [], hasMore: false }),
201
+ });
202
+ await witnessDeclarationUpgrade({
203
+ readPort: emptyPort,
204
+ sourceKey: sourceId,
205
+ stream,
206
+ nextSchema: schema,
207
+ limit,
208
+ });
209
+ }
210
+ for (const { instance } of connections) {
211
+ let cursor;
212
+ for (;;) {
213
+ if (performance.now() - started >= budgetMs) {
214
+ return { verdict: "partial", checked };
215
+ }
216
+ const page = await witnessDeclarationUpgrade({
217
+ readPort,
218
+ sourceKey: instance,
219
+ stream,
220
+ nextSchema: schema,
221
+ limit,
222
+ ...(cursor === undefined ? {} : { cursor }),
223
+ });
224
+ checked += page.checked;
225
+ if (page.verdict === "fail") {
226
+ return {
227
+ verdict: "fail",
228
+ checked,
229
+ failure: page.failure,
230
+ connectionHash: createHash("sha256").update(instance).digest("hex"),
231
+ };
232
+ }
233
+ if (performance.now() - started >= budgetMs) {
234
+ return { verdict: "partial", checked };
235
+ }
236
+ if (page.verdict === "pass")
237
+ break;
238
+ if (!page.nextCursor)
239
+ throw new OfflineDeclarationWitnessError("read_failed");
240
+ cursor = page.nextCursor;
241
+ }
242
+ }
243
+ // Also enforce the deadline for a declared source with no live bindings.
244
+ return performance.now() - started >= budgetMs
245
+ ? { verdict: "partial", checked }
246
+ : { verdict: "pass", checked };
247
+ }
248
+ catch (error) {
249
+ if (error instanceof OfflineDeclarationWitnessError)
250
+ throw error;
251
+ throw new OfflineDeclarationWitnessError(isUnreadable(error)
252
+ ? "store_unreadable"
253
+ : error instanceof DeclarationWitnessSchemaError
254
+ ? "invalid_schema"
255
+ : stage);
256
+ }
257
+ finally {
258
+ let closeFailed = false;
259
+ for (const handle of [declarationsDb, db]) {
260
+ if (!handle?.open)
261
+ continue;
262
+ try {
263
+ handle.close();
264
+ }
265
+ catch {
266
+ closeFailed = true;
267
+ }
268
+ }
269
+ if (closeFailed)
270
+ throw new OfflineDeclarationWitnessError("close_failed");
271
+ }
272
+ }
273
+ //# sourceMappingURL=declaration-witness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declaration-witness.js","sourceRoot":"","sources":["../../src/storage/declaration-witness.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,32 @@
1
+ import { open } from "node:fs/promises";
1
2
  import { type DataFileEnvelope } from "@opendatalabs/vana-sdk/browser";
2
3
  import { type HierarchyManagerOptions, type WriteResult } from "@opendatalabs/personal-server-ts-core/storage/hierarchy";
3
4
  import { type DataBlockManifest, type DataScopeBlock, type ReadScopeBlocksResponse } from "@opendatalabs/personal-server-ts-core/storage/blocks";
4
- /** Atomic write: mkdir -p, write temp file, rename */
5
+ export declare class PublishedDataFileError extends Error {
6
+ readonly relativePath: string;
7
+ constructor(relativePath: string, cause: unknown);
8
+ }
9
+ /** Synchronous, no-replace publication inside the SQLite writer gate. */
10
+ export declare function publishDataFile(options: HierarchyManagerOptions, envelope: DataFileEnvelope, bytes: Uint8Array, operation?: string): WriteResult;
11
+ export declare function deleteDataFileSync(options: HierarchyManagerOptions, scope: string, collectedAt: string, operation?: string): void;
12
+ export declare function deleteFirstSeenLedgerSync(options: HierarchyManagerOptions, scope: string): void;
13
+ export declare function snapshotScopeFiles(options: HierarchyManagerOptions, scope: string): {
14
+ files: string[];
15
+ directories: string[];
16
+ };
17
+ export declare function deleteScopeFilesSync(snapshot: ReturnType<typeof snapshotScopeFiles>): void;
18
+ /** Publish a durable envelope before callers make it visible in the index. */
5
19
  export declare function writeDataFile(options: HierarchyManagerOptions, envelope: DataFileEnvelope): Promise<WriteResult>;
20
+ /** Stage and fsync an envelope before an index transaction makes it visible. */
21
+ export declare function stageDataFile(options: HierarchyManagerOptions, envelope: DataFileEnvelope, deps?: {
22
+ openFile?: typeof open;
23
+ }): Promise<{
24
+ finalPath: string;
25
+ stagePath: string;
26
+ relativePath: string;
27
+ sizeBytes: number;
28
+ }>;
29
+ export declare function publishStagedDataFile(stagePath: string, finalPath: string): Promise<void>;
6
30
  /** Read and parse a data file */
7
31
  export declare function readDataFile(options: HierarchyManagerOptions, scope: string, collectedAt: string): Promise<DataFileEnvelope>;
8
32
  /** Read a data file without decoding or parsing its potentially large body. */
@@ -1 +1 @@
1
- {"version":3,"file":"hierarchy.d.ts","sourceRoot":"","sources":["../../src/storage/hierarchy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hierarchy.d.ts","sourceRoot":"","sources":["../../src/storage/hierarchy.ts"],"names":[],"mappings":"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"}