@opendatalabs/personal-server-ts-core 0.0.1-canary.00328bf

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 (573) hide show
  1. package/dist/api/index.d.ts +408 -0
  2. package/dist/api/index.d.ts.map +1 -0
  3. package/dist/api/index.js +1257 -0
  4. package/dist/api/index.js.map +1 -0
  5. package/dist/api/raw-envelope.d.ts +3 -0
  6. package/dist/api/raw-envelope.d.ts.map +1 -0
  7. package/dist/api/raw-envelope.js +215 -0
  8. package/dist/api/raw-envelope.js.map +1 -0
  9. package/dist/auth/index.d.ts +2 -0
  10. package/dist/auth/index.d.ts.map +1 -0
  11. package/dist/auth/index.js +2 -0
  12. package/dist/auth/index.js.map +1 -0
  13. package/dist/auth/request.d.ts +28 -0
  14. package/dist/auth/request.d.ts.map +1 -0
  15. package/dist/auth/request.js +106 -0
  16. package/dist/auth/request.js.map +1 -0
  17. package/dist/client.d.ts +233 -0
  18. package/dist/client.d.ts.map +1 -0
  19. package/dist/client.js +243 -0
  20. package/dist/client.js.map +1 -0
  21. package/dist/config/defaults.d.ts +12 -0
  22. package/dist/config/defaults.d.ts.map +1 -0
  23. package/dist/config/defaults.js +12 -0
  24. package/dist/config/defaults.js.map +1 -0
  25. package/dist/config/index.d.ts +3 -0
  26. package/dist/config/index.d.ts.map +1 -0
  27. package/dist/config/index.js +3 -0
  28. package/dist/config/index.js.map +1 -0
  29. package/dist/config/paths.d.ts +9 -0
  30. package/dist/config/paths.d.ts.map +1 -0
  31. package/dist/config/paths.js +14 -0
  32. package/dist/config/paths.js.map +1 -0
  33. package/dist/contracts/access-logs.d.ts +8 -0
  34. package/dist/contracts/access-logs.d.ts.map +1 -0
  35. package/dist/contracts/access-logs.js +7 -0
  36. package/dist/contracts/access-logs.js.map +1 -0
  37. package/dist/contracts/auth-device.d.ts +70 -0
  38. package/dist/contracts/auth-device.d.ts.map +1 -0
  39. package/dist/contracts/auth-device.js +163 -0
  40. package/dist/contracts/auth-device.js.map +1 -0
  41. package/dist/contracts/binary.d.ts +66 -0
  42. package/dist/contracts/binary.d.ts.map +1 -0
  43. package/dist/contracts/binary.js +123 -0
  44. package/dist/contracts/binary.js.map +1 -0
  45. package/dist/contracts/config.d.ts +5 -0
  46. package/dist/contracts/config.d.ts.map +1 -0
  47. package/dist/contracts/config.js +30 -0
  48. package/dist/contracts/config.js.map +1 -0
  49. package/dist/contracts/data.d.ts +165 -0
  50. package/dist/contracts/data.d.ts.map +1 -0
  51. package/dist/contracts/data.js +371 -0
  52. package/dist/contracts/data.js.map +1 -0
  53. package/dist/contracts/grants.d.ts +45 -0
  54. package/dist/contracts/grants.d.ts.map +1 -0
  55. package/dist/contracts/grants.js +177 -0
  56. package/dist/contracts/grants.js.map +1 -0
  57. package/dist/contracts/http.d.ts +21 -0
  58. package/dist/contracts/http.d.ts.map +1 -0
  59. package/dist/contracts/http.js +49 -0
  60. package/dist/contracts/http.js.map +1 -0
  61. package/dist/contracts/index.d.ts +16 -0
  62. package/dist/contracts/index.d.ts.map +1 -0
  63. package/dist/contracts/index.js +10 -0
  64. package/dist/contracts/index.js.map +1 -0
  65. package/dist/contracts/oauth.d.ts +38 -0
  66. package/dist/contracts/oauth.d.ts.map +1 -0
  67. package/dist/contracts/oauth.js +130 -0
  68. package/dist/contracts/oauth.js.map +1 -0
  69. package/dist/contracts/sync.d.ts +10 -0
  70. package/dist/contracts/sync.d.ts.map +1 -0
  71. package/dist/contracts/sync.js +35 -0
  72. package/dist/contracts/sync.js.map +1 -0
  73. package/dist/derivatives/answer-shape.d.ts +83 -0
  74. package/dist/derivatives/answer-shape.d.ts.map +1 -0
  75. package/dist/derivatives/answer-shape.js +320 -0
  76. package/dist/derivatives/answer-shape.js.map +1 -0
  77. package/dist/derivatives/api.d.ts +48 -0
  78. package/dist/derivatives/api.d.ts.map +1 -0
  79. package/dist/derivatives/api.js +374 -0
  80. package/dist/derivatives/api.js.map +1 -0
  81. package/dist/derivatives/compute.d.ts +112 -0
  82. package/dist/derivatives/compute.d.ts.map +1 -0
  83. package/dist/derivatives/compute.js +476 -0
  84. package/dist/derivatives/compute.js.map +1 -0
  85. package/dist/derivatives/e2ee/aad.d.ts +22 -0
  86. package/dist/derivatives/e2ee/aad.d.ts.map +1 -0
  87. package/dist/derivatives/e2ee/aad.js +32 -0
  88. package/dist/derivatives/e2ee/aad.js.map +1 -0
  89. package/dist/derivatives/e2ee/attestation.d.ts +134 -0
  90. package/dist/derivatives/e2ee/attestation.d.ts.map +1 -0
  91. package/dist/derivatives/e2ee/attestation.js +248 -0
  92. package/dist/derivatives/e2ee/attestation.js.map +1 -0
  93. package/dist/derivatives/e2ee/index.d.ts +6 -0
  94. package/dist/derivatives/e2ee/index.d.ts.map +1 -0
  95. package/dist/derivatives/e2ee/index.js +6 -0
  96. package/dist/derivatives/e2ee/index.js.map +1 -0
  97. package/dist/derivatives/e2ee/jcs.d.ts +17 -0
  98. package/dist/derivatives/e2ee/jcs.d.ts.map +1 -0
  99. package/dist/derivatives/e2ee/jcs.js +55 -0
  100. package/dist/derivatives/e2ee/jcs.js.map +1 -0
  101. package/dist/derivatives/e2ee/phala.d.ts +62 -0
  102. package/dist/derivatives/e2ee/phala.d.ts.map +1 -0
  103. package/dist/derivatives/e2ee/phala.js +168 -0
  104. package/dist/derivatives/e2ee/phala.js.map +1 -0
  105. package/dist/derivatives/e2ee/suite.d.ts +56 -0
  106. package/dist/derivatives/e2ee/suite.d.ts.map +1 -0
  107. package/dist/derivatives/e2ee/suite.js +164 -0
  108. package/dist/derivatives/e2ee/suite.js.map +1 -0
  109. package/dist/derivatives/index.d.ts +11 -0
  110. package/dist/derivatives/index.d.ts.map +1 -0
  111. package/dist/derivatives/index.js +11 -0
  112. package/dist/derivatives/index.js.map +1 -0
  113. package/dist/derivatives/inference.d.ts +151 -0
  114. package/dist/derivatives/inference.d.ts.map +1 -0
  115. package/dist/derivatives/inference.js +262 -0
  116. package/dist/derivatives/inference.js.map +1 -0
  117. package/dist/derivatives/prompt.d.ts +99 -0
  118. package/dist/derivatives/prompt.d.ts.map +1 -0
  119. package/dist/derivatives/prompt.js +281 -0
  120. package/dist/derivatives/prompt.js.map +1 -0
  121. package/dist/derivatives/registration.d.ts +56 -0
  122. package/dist/derivatives/registration.d.ts.map +1 -0
  123. package/dist/derivatives/registration.js +187 -0
  124. package/dist/derivatives/registration.js.map +1 -0
  125. package/dist/derivatives/scheduler.d.ts +114 -0
  126. package/dist/derivatives/scheduler.d.ts.map +1 -0
  127. package/dist/derivatives/scheduler.js +331 -0
  128. package/dist/derivatives/scheduler.js.map +1 -0
  129. package/dist/derivatives/store.d.ts +14 -0
  130. package/dist/derivatives/store.d.ts.map +1 -0
  131. package/dist/derivatives/store.js +79 -0
  132. package/dist/derivatives/store.js.map +1 -0
  133. package/dist/derivatives/types.d.ts +102 -0
  134. package/dist/derivatives/types.d.ts.map +1 -0
  135. package/dist/derivatives/types.js +29 -0
  136. package/dist/derivatives/types.js.map +1 -0
  137. package/dist/errors/catalog.d.ts +125 -0
  138. package/dist/errors/catalog.d.ts.map +1 -0
  139. package/dist/errors/catalog.js +198 -0
  140. package/dist/errors/catalog.js.map +1 -0
  141. package/dist/errors/pdpp-catalog.d.ts +36 -0
  142. package/dist/errors/pdpp-catalog.d.ts.map +1 -0
  143. package/dist/errors/pdpp-catalog.js +82 -0
  144. package/dist/errors/pdpp-catalog.js.map +1 -0
  145. package/dist/grants/index.d.ts +5 -0
  146. package/dist/grants/index.d.ts.map +1 -0
  147. package/dist/grants/index.js +6 -0
  148. package/dist/grants/index.js.map +1 -0
  149. package/dist/grants/pdpp-binding-store.d.ts +58 -0
  150. package/dist/grants/pdpp-binding-store.d.ts.map +1 -0
  151. package/dist/grants/pdpp-binding-store.js +97 -0
  152. package/dist/grants/pdpp-binding-store.js.map +1 -0
  153. package/dist/grants/pdpp-binding.d.ts +179 -0
  154. package/dist/grants/pdpp-binding.d.ts.map +1 -0
  155. package/dist/grants/pdpp-binding.js +214 -0
  156. package/dist/grants/pdpp-binding.js.map +1 -0
  157. package/dist/keys/index.d.ts +3 -0
  158. package/dist/keys/index.d.ts.map +1 -0
  159. package/dist/keys/index.js +2 -0
  160. package/dist/keys/index.js.map +1 -0
  161. package/dist/keys/public-only-account.d.ts +8 -0
  162. package/dist/keys/public-only-account.d.ts.map +1 -0
  163. package/dist/keys/public-only-account.js +21 -0
  164. package/dist/keys/public-only-account.js.map +1 -0
  165. package/dist/keys/server-account.d.ts +24 -0
  166. package/dist/keys/server-account.d.ts.map +1 -0
  167. package/dist/keys/server-account.js +2 -0
  168. package/dist/keys/server-account.js.map +1 -0
  169. package/dist/lineage/attestation.d.ts +42 -0
  170. package/dist/lineage/attestation.d.ts.map +1 -0
  171. package/dist/lineage/attestation.js +25 -0
  172. package/dist/lineage/attestation.js.map +1 -0
  173. package/dist/lineage/gateway.d.ts +105 -0
  174. package/dist/lineage/gateway.d.ts.map +1 -0
  175. package/dist/lineage/gateway.js +242 -0
  176. package/dist/lineage/gateway.js.map +1 -0
  177. package/dist/lineage/index.d.ts +5 -0
  178. package/dist/lineage/index.d.ts.map +1 -0
  179. package/dist/lineage/index.js +5 -0
  180. package/dist/lineage/index.js.map +1 -0
  181. package/dist/lineage/lineage.d.ts +141 -0
  182. package/dist/lineage/lineage.d.ts.map +1 -0
  183. package/dist/lineage/lineage.js +255 -0
  184. package/dist/lineage/lineage.js.map +1 -0
  185. package/dist/logger/index.d.ts +9 -0
  186. package/dist/logger/index.d.ts.map +1 -0
  187. package/dist/logger/index.js +5 -0
  188. package/dist/logger/index.js.map +1 -0
  189. package/dist/logging/access-log.d.ts +23 -0
  190. package/dist/logging/access-log.d.ts.map +1 -0
  191. package/dist/logging/access-log.js +2 -0
  192. package/dist/logging/access-log.js.map +1 -0
  193. package/dist/logging/access-reader.d.ts +14 -0
  194. package/dist/logging/access-reader.d.ts.map +1 -0
  195. package/dist/logging/access-reader.js +2 -0
  196. package/dist/logging/access-reader.js.map +1 -0
  197. package/dist/mcp/activity.d.ts +68 -0
  198. package/dist/mcp/activity.d.ts.map +1 -0
  199. package/dist/mcp/activity.js +111 -0
  200. package/dist/mcp/activity.js.map +1 -0
  201. package/dist/mcp/builder-registration.d.ts +24 -0
  202. package/dist/mcp/builder-registration.d.ts.map +1 -0
  203. package/dist/mcp/builder-registration.js +89 -0
  204. package/dist/mcp/builder-registration.js.map +1 -0
  205. package/dist/mcp/connection-api.d.ts +201 -0
  206. package/dist/mcp/connection-api.d.ts.map +1 -0
  207. package/dist/mcp/connection-api.js +506 -0
  208. package/dist/mcp/connection-api.js.map +1 -0
  209. package/dist/mcp/grantee.d.ts +52 -0
  210. package/dist/mcp/grantee.d.ts.map +1 -0
  211. package/dist/mcp/grantee.js +91 -0
  212. package/dist/mcp/grantee.js.map +1 -0
  213. package/dist/mcp/index.d.ts +12 -0
  214. package/dist/mcp/index.d.ts.map +1 -0
  215. package/dist/mcp/index.js +12 -0
  216. package/dist/mcp/index.js.map +1 -0
  217. package/dist/mcp/read-client.d.ts +176 -0
  218. package/dist/mcp/read-client.d.ts.map +1 -0
  219. package/dist/mcp/read-client.js +579 -0
  220. package/dist/mcp/read-client.js.map +1 -0
  221. package/dist/mcp/resources.d.ts +37 -0
  222. package/dist/mcp/resources.d.ts.map +1 -0
  223. package/dist/mcp/resources.js +114 -0
  224. package/dist/mcp/resources.js.map +1 -0
  225. package/dist/mcp/search/index.d.ts +34 -0
  226. package/dist/mcp/search/index.d.ts.map +1 -0
  227. package/dist/mcp/search/index.js +156 -0
  228. package/dist/mcp/search/index.js.map +1 -0
  229. package/dist/mcp/server.d.ts +72 -0
  230. package/dist/mcp/server.d.ts.map +1 -0
  231. package/dist/mcp/server.js +447 -0
  232. package/dist/mcp/server.js.map +1 -0
  233. package/dist/mcp/session.d.ts +160 -0
  234. package/dist/mcp/session.d.ts.map +1 -0
  235. package/dist/mcp/session.js +243 -0
  236. package/dist/mcp/session.js.map +1 -0
  237. package/dist/mcp/store.d.ts +13 -0
  238. package/dist/mcp/store.d.ts.map +1 -0
  239. package/dist/mcp/store.js +119 -0
  240. package/dist/mcp/store.js.map +1 -0
  241. package/dist/mcp/token-expiry.d.ts +38 -0
  242. package/dist/mcp/token-expiry.d.ts.map +1 -0
  243. package/dist/mcp/token-expiry.js +55 -0
  244. package/dist/mcp/token-expiry.js.map +1 -0
  245. package/dist/mcp/tools.d.ts +95 -0
  246. package/dist/mcp/tools.d.ts.map +1 -0
  247. package/dist/mcp/tools.js +1381 -0
  248. package/dist/mcp/tools.js.map +1 -0
  249. package/dist/mcp/types.d.ts +135 -0
  250. package/dist/mcp/types.d.ts.map +1 -0
  251. package/dist/mcp/types.js +24 -0
  252. package/dist/mcp/types.js.map +1 -0
  253. package/dist/payment/index.d.ts +2 -0
  254. package/dist/payment/index.d.ts.map +1 -0
  255. package/dist/payment/index.js +2 -0
  256. package/dist/payment/index.js.map +1 -0
  257. package/dist/payment/x402.d.ts +155 -0
  258. package/dist/payment/x402.d.ts.map +1 -0
  259. package/dist/payment/x402.js +402 -0
  260. package/dist/payment/x402.js.map +1 -0
  261. package/dist/pdpp/approval.d.ts +182 -0
  262. package/dist/pdpp/approval.d.ts.map +1 -0
  263. package/dist/pdpp/approval.js +337 -0
  264. package/dist/pdpp/approval.js.map +1 -0
  265. package/dist/pdpp/client-identity.d.ts +88 -0
  266. package/dist/pdpp/client-identity.d.ts.map +1 -0
  267. package/dist/pdpp/client-identity.js +183 -0
  268. package/dist/pdpp/client-identity.js.map +1 -0
  269. package/dist/pdpp/client-metadata.d.ts +95 -0
  270. package/dist/pdpp/client-metadata.d.ts.map +1 -0
  271. package/dist/pdpp/client-metadata.js +96 -0
  272. package/dist/pdpp/client-metadata.js.map +1 -0
  273. package/dist/pdpp/declaration.d.ts +118 -0
  274. package/dist/pdpp/declaration.d.ts.map +1 -0
  275. package/dist/pdpp/declaration.js +549 -0
  276. package/dist/pdpp/declaration.js.map +1 -0
  277. package/dist/pdpp/index.d.ts +35 -0
  278. package/dist/pdpp/index.d.ts.map +1 -0
  279. package/dist/pdpp/index.js +22 -0
  280. package/dist/pdpp/index.js.map +1 -0
  281. package/dist/pdpp/issuance.d.ts +91 -0
  282. package/dist/pdpp/issuance.d.ts.map +1 -0
  283. package/dist/pdpp/issuance.js +124 -0
  284. package/dist/pdpp/issuance.js.map +1 -0
  285. package/dist/pdpp/pkce.d.ts +53 -0
  286. package/dist/pdpp/pkce.d.ts.map +1 -0
  287. package/dist/pdpp/pkce.js +109 -0
  288. package/dist/pdpp/pkce.js.map +1 -0
  289. package/dist/pdpp/redirect.d.ts +60 -0
  290. package/dist/pdpp/redirect.d.ts.map +1 -0
  291. package/dist/pdpp/redirect.js +125 -0
  292. package/dist/pdpp/redirect.js.map +1 -0
  293. package/dist/pdpp/resolve.d.ts +53 -0
  294. package/dist/pdpp/resolve.d.ts.map +1 -0
  295. package/dist/pdpp/resolve.js +218 -0
  296. package/dist/pdpp/resolve.js.map +1 -0
  297. package/dist/pdpp/review.d.ts +155 -0
  298. package/dist/pdpp/review.d.ts.map +1 -0
  299. package/dist/pdpp/review.js +142 -0
  300. package/dist/pdpp/review.js.map +1 -0
  301. package/dist/pdpp/selection.d.ts +43 -0
  302. package/dist/pdpp/selection.d.ts.map +1 -0
  303. package/dist/pdpp/selection.js +211 -0
  304. package/dist/pdpp/selection.js.map +1 -0
  305. package/dist/pdpp/store.d.ts +204 -0
  306. package/dist/pdpp/store.d.ts.map +1 -0
  307. package/dist/pdpp/store.js +501 -0
  308. package/dist/pdpp/store.js.map +1 -0
  309. package/dist/pdpp/tokens.d.ts +149 -0
  310. package/dist/pdpp/tokens.d.ts.map +1 -0
  311. package/dist/pdpp/tokens.js +387 -0
  312. package/dist/pdpp/tokens.js.map +1 -0
  313. package/dist/pdpp/types.d.ts +258 -0
  314. package/dist/pdpp/types.d.ts.map +1 -0
  315. package/dist/pdpp/types.js +40 -0
  316. package/dist/pdpp/types.js.map +1 -0
  317. package/dist/pdpp-version.d.ts +28 -0
  318. package/dist/pdpp-version.d.ts.map +1 -0
  319. package/dist/pdpp-version.js +28 -0
  320. package/dist/pdpp-version.js.map +1 -0
  321. package/dist/policy/data-read.d.ts +56 -0
  322. package/dist/policy/data-read.d.ts.map +1 -0
  323. package/dist/policy/data-read.js +176 -0
  324. package/dist/policy/data-read.js.map +1 -0
  325. package/dist/policy/data-write.d.ts +69 -0
  326. package/dist/policy/data-write.d.ts.map +1 -0
  327. package/dist/policy/data-write.js +131 -0
  328. package/dist/policy/data-write.js.map +1 -0
  329. package/dist/policy/index.d.ts +4 -0
  330. package/dist/policy/index.d.ts.map +1 -0
  331. package/dist/policy/index.js +4 -0
  332. package/dist/policy/index.js.map +1 -0
  333. package/dist/policy/signed-artifacts.d.ts +17 -0
  334. package/dist/policy/signed-artifacts.d.ts.map +1 -0
  335. package/dist/policy/signed-artifacts.js +110 -0
  336. package/dist/policy/signed-artifacts.js.map +1 -0
  337. package/dist/ports/index.d.ts +243 -0
  338. package/dist/ports/index.d.ts.map +1 -0
  339. package/dist/ports/index.js +7 -0
  340. package/dist/ports/index.js.map +1 -0
  341. package/dist/ports/pdpp-auth.d.ts +103 -0
  342. package/dist/ports/pdpp-auth.d.ts.map +1 -0
  343. package/dist/ports/pdpp-auth.js +37 -0
  344. package/dist/ports/pdpp-auth.js.map +1 -0
  345. package/dist/ports/pdpp-auth.test-utils.d.ts +9 -0
  346. package/dist/ports/pdpp-auth.test-utils.d.ts.map +1 -0
  347. package/dist/ports/pdpp-auth.test-utils.js +18 -0
  348. package/dist/ports/pdpp-auth.test-utils.js.map +1 -0
  349. package/dist/schemas/server-config.d.ts +190 -0
  350. package/dist/schemas/server-config.d.ts.map +1 -0
  351. package/dist/schemas/server-config.js +282 -0
  352. package/dist/schemas/server-config.js.map +1 -0
  353. package/dist/signing/index.d.ts +3 -0
  354. package/dist/signing/index.d.ts.map +1 -0
  355. package/dist/signing/index.js +3 -0
  356. package/dist/signing/index.js.map +1 -0
  357. package/dist/signing/request-signer.d.ts +20 -0
  358. package/dist/signing/request-signer.d.ts.map +1 -0
  359. package/dist/signing/request-signer.js +23 -0
  360. package/dist/signing/request-signer.js.map +1 -0
  361. package/dist/signing/signer.d.ts +40 -0
  362. package/dist/signing/signer.d.ts.map +1 -0
  363. package/dist/signing/signer.js +56 -0
  364. package/dist/signing/signer.js.map +1 -0
  365. package/dist/storage/adapters/index.d.ts +4 -0
  366. package/dist/storage/adapters/index.d.ts.map +1 -0
  367. package/dist/storage/adapters/index.js +3 -0
  368. package/dist/storage/adapters/index.js.map +1 -0
  369. package/dist/storage/adapters/interface.d.ts +57 -0
  370. package/dist/storage/adapters/interface.d.ts.map +1 -0
  371. package/dist/storage/adapters/interface.js +2 -0
  372. package/dist/storage/adapters/interface.js.map +1 -0
  373. package/dist/storage/adapters/sdk.d.ts +23 -0
  374. package/dist/storage/adapters/sdk.d.ts.map +1 -0
  375. package/dist/storage/adapters/sdk.js +73 -0
  376. package/dist/storage/adapters/sdk.js.map +1 -0
  377. package/dist/storage/adapters/vana.d.ts +12 -0
  378. package/dist/storage/adapters/vana.d.ts.map +1 -0
  379. package/dist/storage/adapters/vana.js +111 -0
  380. package/dist/storage/adapters/vana.js.map +1 -0
  381. package/dist/storage/blocks/build.d.ts +20 -0
  382. package/dist/storage/blocks/build.d.ts.map +1 -0
  383. package/dist/storage/blocks/build.js +378 -0
  384. package/dist/storage/blocks/build.js.map +1 -0
  385. package/dist/storage/blocks/cursor.d.ts +33 -0
  386. package/dist/storage/blocks/cursor.d.ts.map +1 -0
  387. package/dist/storage/blocks/cursor.js +142 -0
  388. package/dist/storage/blocks/cursor.js.map +1 -0
  389. package/dist/storage/blocks/errors.d.ts +6 -0
  390. package/dist/storage/blocks/errors.d.ts.map +1 -0
  391. package/dist/storage/blocks/errors.js +9 -0
  392. package/dist/storage/blocks/errors.js.map +1 -0
  393. package/dist/storage/blocks/index.d.ts +6 -0
  394. package/dist/storage/blocks/index.d.ts.map +1 -0
  395. package/dist/storage/blocks/index.js +5 -0
  396. package/dist/storage/blocks/index.js.map +1 -0
  397. package/dist/storage/blocks/select.d.ts +29 -0
  398. package/dist/storage/blocks/select.d.ts.map +1 -0
  399. package/dist/storage/blocks/select.js +120 -0
  400. package/dist/storage/blocks/select.js.map +1 -0
  401. package/dist/storage/blocks/types.d.ts +56 -0
  402. package/dist/storage/blocks/types.d.ts.map +1 -0
  403. package/dist/storage/blocks/types.js +2 -0
  404. package/dist/storage/blocks/types.js.map +1 -0
  405. package/dist/storage/hierarchy/index.d.ts +3 -0
  406. package/dist/storage/hierarchy/index.d.ts.map +1 -0
  407. package/dist/storage/hierarchy/index.js +2 -0
  408. package/dist/storage/hierarchy/index.js.map +1 -0
  409. package/dist/storage/hierarchy/manager.d.ts +9 -0
  410. package/dist/storage/hierarchy/manager.d.ts.map +1 -0
  411. package/dist/storage/hierarchy/manager.js +2 -0
  412. package/dist/storage/hierarchy/manager.js.map +1 -0
  413. package/dist/storage/hierarchy/paths.d.ts +11 -0
  414. package/dist/storage/hierarchy/paths.d.ts.map +1 -0
  415. package/dist/storage/hierarchy/paths.js +43 -0
  416. package/dist/storage/hierarchy/paths.js.map +1 -0
  417. package/dist/storage/index/index.d.ts +3 -0
  418. package/dist/storage/index/index.d.ts.map +1 -0
  419. package/dist/storage/index/index.js +2 -0
  420. package/dist/storage/index/index.js.map +1 -0
  421. package/dist/storage/index/manager.d.ts +63 -0
  422. package/dist/storage/index/manager.d.ts.map +1 -0
  423. package/dist/storage/index/manager.js +2 -0
  424. package/dist/storage/index/manager.js.map +1 -0
  425. package/dist/storage/index/schema.d.ts +2 -0
  426. package/dist/storage/index/schema.d.ts.map +1 -0
  427. package/dist/storage/index/schema.js +2 -0
  428. package/dist/storage/index/schema.js.map +1 -0
  429. package/dist/storage/index/types.d.ts +37 -0
  430. package/dist/storage/index/types.d.ts.map +1 -0
  431. package/dist/storage/index/types.js +2 -0
  432. package/dist/storage/index/types.js.map +1 -0
  433. package/dist/storage/pdpp-records/cursor.d.ts +27 -0
  434. package/dist/storage/pdpp-records/cursor.d.ts.map +1 -0
  435. package/dist/storage/pdpp-records/cursor.js +49 -0
  436. package/dist/storage/pdpp-records/cursor.js.map +1 -0
  437. package/dist/storage/pdpp-records/enforcement.d.ts +37 -0
  438. package/dist/storage/pdpp-records/enforcement.d.ts.map +1 -0
  439. package/dist/storage/pdpp-records/enforcement.js +79 -0
  440. package/dist/storage/pdpp-records/enforcement.js.map +1 -0
  441. package/dist/storage/pdpp-records/index.d.ts +8 -0
  442. package/dist/storage/pdpp-records/index.d.ts.map +1 -0
  443. package/dist/storage/pdpp-records/index.js +8 -0
  444. package/dist/storage/pdpp-records/index.js.map +1 -0
  445. package/dist/storage/pdpp-records/interface.d.ts +49 -0
  446. package/dist/storage/pdpp-records/interface.d.ts.map +1 -0
  447. package/dist/storage/pdpp-records/interface.js +2 -0
  448. package/dist/storage/pdpp-records/interface.js.map +1 -0
  449. package/dist/storage/pdpp-records/memory-store.d.ts +9 -0
  450. package/dist/storage/pdpp-records/memory-store.d.ts.map +1 -0
  451. package/dist/storage/pdpp-records/memory-store.js +0 -0
  452. package/dist/storage/pdpp-records/memory-store.js.map +1 -0
  453. package/dist/storage/pdpp-records/record-key.d.ts +52 -0
  454. package/dist/storage/pdpp-records/record-key.d.ts.map +1 -0
  455. package/dist/storage/pdpp-records/record-key.js +97 -0
  456. package/dist/storage/pdpp-records/record-key.js.map +1 -0
  457. package/dist/storage/pdpp-records/stream-declaration.d.ts +43 -0
  458. package/dist/storage/pdpp-records/stream-declaration.d.ts.map +1 -0
  459. package/dist/storage/pdpp-records/stream-declaration.js +17 -0
  460. package/dist/storage/pdpp-records/stream-declaration.js.map +1 -0
  461. package/dist/storage/pdpp-records/types.d.ts +93 -0
  462. package/dist/storage/pdpp-records/types.d.ts.map +1 -0
  463. package/dist/storage/pdpp-records/types.js +17 -0
  464. package/dist/storage/pdpp-records/types.js.map +1 -0
  465. package/dist/storage/preview.d.ts +12 -0
  466. package/dist/storage/preview.d.ts.map +1 -0
  467. package/dist/storage/preview.js +239 -0
  468. package/dist/storage/preview.js.map +1 -0
  469. package/dist/sync/cursor.d.ts +10 -0
  470. package/dist/sync/cursor.d.ts.map +1 -0
  471. package/dist/sync/cursor.js +2 -0
  472. package/dist/sync/cursor.js.map +1 -0
  473. package/dist/sync/data-point-feed.d.ts +35 -0
  474. package/dist/sync/data-point-feed.d.ts.map +1 -0
  475. package/dist/sync/data-point-feed.js +122 -0
  476. package/dist/sync/data-point-feed.js.map +1 -0
  477. package/dist/sync/data-point-id.d.ts +7 -0
  478. package/dist/sync/data-point-id.d.ts.map +1 -0
  479. package/dist/sync/data-point-id.js +16 -0
  480. package/dist/sync/data-point-id.js.map +1 -0
  481. package/dist/sync/delete-data-port.d.ts +50 -0
  482. package/dist/sync/delete-data-port.d.ts.map +1 -0
  483. package/dist/sync/delete-data-port.js +244 -0
  484. package/dist/sync/delete-data-port.js.map +1 -0
  485. package/dist/sync/engine/sync-manager.d.ts +58 -0
  486. package/dist/sync/engine/sync-manager.d.ts.map +1 -0
  487. package/dist/sync/engine/sync-manager.js +285 -0
  488. package/dist/sync/engine/sync-manager.js.map +1 -0
  489. package/dist/sync/index.d.ts +15 -0
  490. package/dist/sync/index.d.ts.map +1 -0
  491. package/dist/sync/index.js +14 -0
  492. package/dist/sync/index.js.map +1 -0
  493. package/dist/sync/issues.d.ts +55 -0
  494. package/dist/sync/issues.d.ts.map +1 -0
  495. package/dist/sync/issues.js +168 -0
  496. package/dist/sync/issues.js.map +1 -0
  497. package/dist/sync/pdpp-import.d.ts +192 -0
  498. package/dist/sync/pdpp-import.d.ts.map +1 -0
  499. package/dist/sync/pdpp-import.js +422 -0
  500. package/dist/sync/pdpp-import.js.map +1 -0
  501. package/dist/sync/pending-blob-deletions.d.ts +29 -0
  502. package/dist/sync/pending-blob-deletions.d.ts.map +1 -0
  503. package/dist/sync/pending-blob-deletions.js +116 -0
  504. package/dist/sync/pending-blob-deletions.js.map +1 -0
  505. package/dist/sync/retry-memory.d.ts +33 -0
  506. package/dist/sync/retry-memory.d.ts.map +1 -0
  507. package/dist/sync/retry-memory.js +68 -0
  508. package/dist/sync/retry-memory.js.map +1 -0
  509. package/dist/sync/scope-deletions.d.ts +155 -0
  510. package/dist/sync/scope-deletions.d.ts.map +1 -0
  511. package/dist/sync/scope-deletions.js +225 -0
  512. package/dist/sync/scope-deletions.js.map +1 -0
  513. package/dist/sync/tombstone.d.ts +27 -0
  514. package/dist/sync/tombstone.d.ts.map +1 -0
  515. package/dist/sync/tombstone.js +28 -0
  516. package/dist/sync/tombstone.js.map +1 -0
  517. package/dist/sync/types.d.ts +27 -0
  518. package/dist/sync/types.d.ts.map +1 -0
  519. package/dist/sync/types.js +2 -0
  520. package/dist/sync/types.js.map +1 -0
  521. package/dist/sync/workers/delete.d.ts +163 -0
  522. package/dist/sync/workers/delete.d.ts.map +1 -0
  523. package/dist/sync/workers/delete.js +474 -0
  524. package/dist/sync/workers/delete.js.map +1 -0
  525. package/dist/sync/workers/download.d.ts +159 -0
  526. package/dist/sync/workers/download.d.ts.map +1 -0
  527. package/dist/sync/workers/download.js +731 -0
  528. package/dist/sync/workers/download.js.map +1 -0
  529. package/dist/sync/workers/upload.d.ts +98 -0
  530. package/dist/sync/workers/upload.d.ts.map +1 -0
  531. package/dist/sync/workers/upload.js +412 -0
  532. package/dist/sync/workers/upload.js.map +1 -0
  533. package/dist/test-utils/e2ee-fixtures.d.ts +94 -0
  534. package/dist/test-utils/e2ee-fixtures.d.ts.map +1 -0
  535. package/dist/test-utils/e2ee-fixtures.js +116 -0
  536. package/dist/test-utils/e2ee-fixtures.js.map +1 -0
  537. package/dist/test-utils/e2ee-gateway.d.ts +61 -0
  538. package/dist/test-utils/e2ee-gateway.d.ts.map +1 -0
  539. package/dist/test-utils/e2ee-gateway.js +248 -0
  540. package/dist/test-utils/e2ee-gateway.js.map +1 -0
  541. package/dist/test-utils/index.d.ts +5 -0
  542. package/dist/test-utils/index.d.ts.map +1 -0
  543. package/dist/test-utils/index.js +5 -0
  544. package/dist/test-utils/index.js.map +1 -0
  545. package/dist/test-utils/memory-storage.d.ts +12 -0
  546. package/dist/test-utils/memory-storage.d.ts.map +1 -0
  547. package/dist/test-utils/memory-storage.js +146 -0
  548. package/dist/test-utils/memory-storage.js.map +1 -0
  549. package/dist/test-utils/wallet.d.ts +47 -0
  550. package/dist/test-utils/wallet.d.ts.map +1 -0
  551. package/dist/test-utils/wallet.js +98 -0
  552. package/dist/test-utils/wallet.js.map +1 -0
  553. package/dist/write/attribution.d.ts +185 -0
  554. package/dist/write/attribution.d.ts.map +1 -0
  555. package/dist/write/attribution.js +450 -0
  556. package/dist/write/attribution.js.map +1 -0
  557. package/dist/write/authorize.d.ts +77 -0
  558. package/dist/write/authorize.d.ts.map +1 -0
  559. package/dist/write/authorize.js +109 -0
  560. package/dist/write/authorize.js.map +1 -0
  561. package/dist/write/index.d.ts +5 -0
  562. package/dist/write/index.d.ts.map +1 -0
  563. package/dist/write/index.js +5 -0
  564. package/dist/write/index.js.map +1 -0
  565. package/dist/write/route.d.ts +61 -0
  566. package/dist/write/route.d.ts.map +1 -0
  567. package/dist/write/route.js +132 -0
  568. package/dist/write/route.js.map +1 -0
  569. package/dist/write/session.d.ts +96 -0
  570. package/dist/write/session.d.ts.map +1 -0
  571. package/dist/write/session.js +136 -0
  572. package/dist/write/session.js.map +1 -0
  573. package/package.json +175 -0
@@ -0,0 +1,549 @@
1
+ /**
2
+ * Bounded SourceDeclaration retrieval (§5 declaration acceptance, §10
3
+ * declaration retrieval hygiene).
4
+ *
5
+ * An AS that fetches a client-supplied URL is an SSRF engine unless it is
6
+ * fenced. The rules here are the fence: HTTPS only, no private or loopback or
7
+ * link-local address literals, a bounded redirect chain that is re-checked at
8
+ * every hop, a response size cap, and a timeout. Each redirect is validated
9
+ * again because a public hostname resolving to a public IP can redirect to
10
+ * `http://169.254.169.254/` and a one-shot check at the start would miss it.
11
+ *
12
+ * What this module deliberately does NOT do is decide whether a declaration is
13
+ * *trusted*. That is deployment policy (`DeclarationTrustPolicy`), applied
14
+ * explicitly by the caller, because "we fetched it safely" and "we accept its
15
+ * authority over this source" are different questions.
16
+ */
17
+ import { createHash } from "node:crypto";
18
+ import { isIP } from "node:net";
19
+ export const MAX_DECLARATION_BYTES = 256 * 1024;
20
+ export const MAX_REDIRECTS = 3;
21
+ export const DECLARATION_FETCH_TIMEOUT_MS = 5_000;
22
+ /**
23
+ * Private, loopback, link-local, and unique-local ranges. Checked against
24
+ * address *literals* in the URL. A hostname that resolves into these ranges is
25
+ * a DNS-rebinding concern the fetch layer must also handle; we reject the
26
+ * literal form here and keep the redirect chain bounded so a rebind has a much
27
+ * smaller window to work in.
28
+ */
29
+ function isPrivateAddressLiteral(host) {
30
+ const bare = host.startsWith("[") && host.endsWith("]") ? host.slice(1, -1) : host;
31
+ const version = isIP(bare);
32
+ if (version === 4) {
33
+ const parts = bare.split(".").map(Number);
34
+ const [a, b] = parts;
35
+ if (a === 10 || a === 127 || a === 0)
36
+ return true;
37
+ if (a === 172 && b >= 16 && b <= 31)
38
+ return true;
39
+ if (a === 192 && b === 168)
40
+ return true;
41
+ // 169.254.0.0/16 — link-local, and the cloud metadata endpoint.
42
+ if (a === 169 && b === 254)
43
+ return true;
44
+ return false;
45
+ }
46
+ if (version === 6) {
47
+ const lower = bare.toLowerCase();
48
+ if (lower === "::1" || lower === "::")
49
+ return true;
50
+ // fc00::/7 unique-local, fe80::/10 link-local.
51
+ if (lower.startsWith("fc") || lower.startsWith("fd"))
52
+ return true;
53
+ if (lower.startsWith("fe8") || lower.startsWith("fe9"))
54
+ return true;
55
+ if (lower.startsWith("fea") || lower.startsWith("feb"))
56
+ return true;
57
+ return false;
58
+ }
59
+ // Not a literal. Hostname forms that always mean "this machine".
60
+ const lowerHost = bare.toLowerCase();
61
+ return lowerHost === "localhost" || lowerHost.endsWith(".localhost");
62
+ }
63
+ /** Validate one URL in the chain. Applied to the origin URL and every hop. */
64
+ export function checkDeclarationUrl(raw, policy) {
65
+ let url;
66
+ try {
67
+ url = new URL(raw);
68
+ }
69
+ catch {
70
+ return {
71
+ code: "fetch_failed",
72
+ message: `malformed declaration URL: ${raw}`,
73
+ };
74
+ }
75
+ if (url.protocol !== "https:" && !policy.allowInsecureForTesting) {
76
+ return {
77
+ code: "insecure_scheme",
78
+ message: `declaration URL must use https, got ${url.protocol}`,
79
+ };
80
+ }
81
+ if (isPrivateAddressLiteral(url.hostname) &&
82
+ !policy.allowInsecureForTesting) {
83
+ return {
84
+ code: "private_address",
85
+ message: `declaration URL resolves to a private or loopback address: ${url.hostname}`,
86
+ };
87
+ }
88
+ if (!policy.allowAnyHttpsHost) {
89
+ const trusted = policy.trustedHosts ?? [];
90
+ if (!trusted.includes(url.hostname)) {
91
+ return {
92
+ code: "untrusted_source",
93
+ message: `declaration host '${url.hostname}' is not in this deployment's declaration trust policy`,
94
+ };
95
+ }
96
+ }
97
+ return null;
98
+ }
99
+ /**
100
+ * Project a normative §5 `SourceDeclaration` onto the internal snapshot shape.
101
+ *
102
+ * Returns the document unchanged when it is already in the internal shape, so
103
+ * existing private fixtures keep working — this is a compatibility adapter,
104
+ * not a redefinition of either format.
105
+ *
106
+ * The projection is deliberately narrow:
107
+ * - `source.id` / `source.kind` → `source_id` / `source_kind`
108
+ * - `declaration_version` → `version`
109
+ * - per stream, `schema.properties` keys → `fields`, and `schema.required`
110
+ * → `required_fields`
111
+ *
112
+ * Deriving fields from the JSON Schema is the substantive part. The internal
113
+ * model wants a flat allowlist because §6 field selection and §8 projection
114
+ * operate on top-level names; the normative model carries a real schema
115
+ * because a declaration must describe record shape, not just name it. Reading
116
+ * `properties` keys is the honest projection of one onto the other, and
117
+ * `required` is exactly the per-stream consent floor §6 already calls for.
118
+ *
119
+ * Nothing here validates the normative document beyond what the projection
120
+ * needs — the checks that follow do that, and they run on the projected form
121
+ * so one code path enforces both.
122
+ */
123
+ /**
124
+ * The source id a declaration document claims, in either shape.
125
+ *
126
+ * A caller that needs the id *before* parsing — a deployment loader keying
127
+ * retention by source, say — would otherwise have to reach into the document
128
+ * itself and pick a field. That is how the boot path came to accept only the
129
+ * internal flat `source_id` and silently skip every normative document, which
130
+ * left the AS unmounted with nothing but a warning to say why.
131
+ *
132
+ * Reading the shape is this module's job, so the question is answered here
133
+ * once. Returns null when neither shape carries a usable id; `parseDeclaration`
134
+ * remains the authority on whether the document is actually valid.
135
+ */
136
+ export function declaredSourceId(body) {
137
+ let doc;
138
+ try {
139
+ doc = JSON.parse(body);
140
+ }
141
+ catch {
142
+ return null;
143
+ }
144
+ if (typeof doc !== "object" || doc === null)
145
+ return null;
146
+ // Normative §5: `source.id`. Internal/flat: `source_id`.
147
+ const nested = doc.source?.id;
148
+ const flat = doc.source_id;
149
+ const id = typeof nested === "string" && nested.length > 0 ? nested : flat;
150
+ return typeof id === "string" && id.length > 0 ? id : null;
151
+ }
152
+ function normalizeNormativeDeclaration(doc) {
153
+ const source = doc.source;
154
+ if (typeof source !== "object" || source === null)
155
+ return doc;
156
+ const { id, kind } = source;
157
+ const declarationVersion = doc
158
+ .declaration_version;
159
+ const streams = Array.isArray(doc.streams)
160
+ ? doc.streams.map((raw) => {
161
+ const stream = raw;
162
+ // Already internal-shaped: leave it alone rather than guessing.
163
+ if (Array.isArray(stream.fields))
164
+ return stream;
165
+ const schema = stream.schema;
166
+ if (!schema || typeof schema !== "object")
167
+ return stream;
168
+ return {
169
+ ...stream,
170
+ fields: Object.keys(schema.properties ?? {}),
171
+ required_fields: Array.isArray(schema.required)
172
+ ? schema.required
173
+ : [],
174
+ };
175
+ })
176
+ : doc.streams;
177
+ return {
178
+ ...doc,
179
+ ...(typeof id === "string" && { source_id: id }),
180
+ ...(typeof kind === "string" && { source_kind: kind }),
181
+ ...(typeof declarationVersion === "string" && {
182
+ version: declarationVersion,
183
+ }),
184
+ streams,
185
+ };
186
+ }
187
+ export function computeDeclarationDigest(body) {
188
+ return createHash("sha256").update(body, "utf8").digest("hex");
189
+ }
190
+ /**
191
+ * Parse and structurally validate a declaration document.
192
+ *
193
+ * Validates the embedded stream schemas enough that resolution can rely on
194
+ * them: every stream needs a name, a field list, and a primary key, and its
195
+ * `required_fields` must be a subset of its declared fields — otherwise the
196
+ * per-stream consent floor would name fields the schema does not have.
197
+ */
198
+ export function parseDeclaration(body, expectedSourceId, expectedDigest) {
199
+ const digest = computeDeclarationDigest(body);
200
+ if (expectedDigest !== undefined && digest !== expectedDigest) {
201
+ return {
202
+ ok: false,
203
+ failure: {
204
+ code: "digest_mismatch",
205
+ message: "declaration digest does not match the expected value",
206
+ },
207
+ };
208
+ }
209
+ let doc;
210
+ try {
211
+ doc = JSON.parse(body);
212
+ }
213
+ catch {
214
+ return {
215
+ ok: false,
216
+ failure: {
217
+ code: "invalid_document",
218
+ message: "declaration is not valid JSON",
219
+ },
220
+ };
221
+ }
222
+ // Accept the NORMATIVE §5 SourceDeclaration and project it onto this
223
+ // module's internal snapshot shape.
224
+ //
225
+ // PS historically parsed a private shape (`source_id`, `source_kind`,
226
+ // `version`, flat `fields[]`/`required_fields[]`). That shape is not the
227
+ // protocol: the published schema
228
+ // (`https://pdpp.dev/schemas/source-declaration/0.1.0`, `reference-contract`)
229
+ // requires `protocol_version`, nested `source {kind,id}`,
230
+ // `declaration_version`, `publisher`, `display`, and a real JSON-Schema
231
+ // `schema` per stream — and sets `additionalProperties: false`, so the
232
+ // private shape is affirmatively INVALID, not merely different.
233
+ //
234
+ // Normalizing here rather than loosening the checks below keeps the
235
+ // protocol boundary honest: a normative document is validated as normative,
236
+ // and the internal snapshot stays an internal detail. The raw bytes and
237
+ // their digest are untouched — `digest` above is computed over `body`
238
+ // exactly as retrieved, which is the property that proves a producer read
239
+ // the same bytes the owner consented against.
240
+ doc = normalizeNormativeDeclaration(doc);
241
+ if (typeof doc.source_id !== "string" || doc.source_id.length === 0) {
242
+ return {
243
+ ok: false,
244
+ failure: {
245
+ code: "invalid_document",
246
+ message: "declaration is missing source_id",
247
+ },
248
+ };
249
+ }
250
+ // The declaration must claim the source we asked about. Without this check a
251
+ // trusted host could serve an authority for a source it does not own.
252
+ if (doc.source_id !== expectedSourceId) {
253
+ return {
254
+ ok: false,
255
+ failure: {
256
+ code: "source_id_mismatch",
257
+ message: `declaration declares source_id '${doc.source_id}' but was retrieved for '${expectedSourceId}'`,
258
+ },
259
+ };
260
+ }
261
+ if (doc.source_kind !== "connector" &&
262
+ doc.source_kind !== "provider_native") {
263
+ return {
264
+ ok: false,
265
+ failure: {
266
+ code: "invalid_document",
267
+ message: "declaration source_kind must be connector or provider_native",
268
+ },
269
+ };
270
+ }
271
+ if (typeof doc.version !== "string" || doc.version.length === 0) {
272
+ return {
273
+ ok: false,
274
+ failure: {
275
+ code: "invalid_document",
276
+ message: "declaration is missing version",
277
+ },
278
+ };
279
+ }
280
+ if (!Array.isArray(doc.streams) || doc.streams.length === 0) {
281
+ return {
282
+ ok: false,
283
+ failure: {
284
+ code: "invalid_document",
285
+ message: "declaration declares no streams",
286
+ },
287
+ };
288
+ }
289
+ const streams = [];
290
+ const seenStreams = new Set();
291
+ for (const raw of doc.streams) {
292
+ const s = raw;
293
+ if (typeof s.name !== "string" || s.name.length === 0) {
294
+ return {
295
+ ok: false,
296
+ failure: {
297
+ code: "invalid_document",
298
+ message: "a declared stream is missing name",
299
+ },
300
+ };
301
+ }
302
+ if (seenStreams.has(s.name)) {
303
+ return {
304
+ ok: false,
305
+ failure: {
306
+ code: "invalid_document",
307
+ message: `stream '${s.name}' is declared more than once`,
308
+ },
309
+ };
310
+ }
311
+ seenStreams.add(s.name);
312
+ if (!Array.isArray(s.fields) || s.fields.length === 0) {
313
+ return {
314
+ ok: false,
315
+ failure: {
316
+ code: "invalid_document",
317
+ message: `stream '${s.name}' declares no fields`,
318
+ },
319
+ };
320
+ }
321
+ const fields = s.fields;
322
+ const requiredFields = Array.isArray(s.required_fields)
323
+ ? s.required_fields
324
+ : [];
325
+ const missing = requiredFields.filter((f) => !fields.includes(f));
326
+ if (missing.length > 0) {
327
+ return {
328
+ ok: false,
329
+ failure: {
330
+ code: "invalid_document",
331
+ message: `stream '${s.name}' marks fields required that its schema does not declare: ${missing.join(", ")}`,
332
+ },
333
+ };
334
+ }
335
+ if (!Array.isArray(s.primary_key) || s.primary_key.length === 0) {
336
+ return {
337
+ ok: false,
338
+ failure: {
339
+ code: "invalid_document",
340
+ message: `stream '${s.name}' declares no primary_key`,
341
+ },
342
+ };
343
+ }
344
+ // §5 stream semantics. An unrecognized value is a rejection rather than a
345
+ // silent fallback: coercing an unknown semantics to `mutable_state` would
346
+ // upsert records a declaration may have meant to be immutable.
347
+ if (s.semantics !== undefined &&
348
+ s.semantics !== "mutable_state" &&
349
+ s.semantics !== "append_only") {
350
+ return {
351
+ ok: false,
352
+ failure: {
353
+ code: "invalid_document",
354
+ message: `stream '${s.name}' declares unsupported semantics '${String(s.semantics)}'`,
355
+ },
356
+ };
357
+ }
358
+ streams.push({
359
+ name: s.name,
360
+ fields,
361
+ required_fields: requiredFields,
362
+ ...(typeof s.semantics === "string" && {
363
+ semantics: s.semantics,
364
+ }),
365
+ ...(typeof s.consent_time_field === "string" && {
366
+ consent_time_field: s.consent_time_field,
367
+ }),
368
+ primary_key: s.primary_key,
369
+ // Carried verbatim from the normative declaration so §8 metadata can
370
+ // report record shape and selection capability without a second lookup.
371
+ ...(typeof s.schema === "object" && s.schema !== null
372
+ ? { schema: s.schema }
373
+ : {}),
374
+ ...(typeof s.selection === "object" && s.selection !== null
375
+ ? { selection: s.selection }
376
+ : {}),
377
+ });
378
+ }
379
+ // §6: a preset naming the same stream twice makes the declaration invalid.
380
+ // That is a declaration-acceptance failure, not deferred to issuance.
381
+ const presets = Array.isArray(doc.selection_presets)
382
+ ? doc.selection_presets
383
+ : undefined;
384
+ if (presets) {
385
+ for (const preset of presets) {
386
+ const seen = new Set();
387
+ for (const stream of preset.streams ?? []) {
388
+ if (seen.has(stream.name)) {
389
+ return {
390
+ ok: false,
391
+ failure: {
392
+ code: "invalid_document",
393
+ message: `selection preset '${preset.name}' names stream '${stream.name}' more than once`,
394
+ },
395
+ };
396
+ }
397
+ seen.add(stream.name);
398
+ }
399
+ }
400
+ }
401
+ return {
402
+ ok: true,
403
+ snapshot: {
404
+ source_id: doc.source_id,
405
+ source_kind: doc.source_kind,
406
+ version: doc.version,
407
+ digest,
408
+ streams,
409
+ ...(Array.isArray(doc.views) && {
410
+ views: doc.views,
411
+ }),
412
+ ...(presets && {
413
+ selection_presets: presets,
414
+ }),
415
+ },
416
+ };
417
+ }
418
+ /**
419
+ * Read a response body, giving up as soon as it exceeds `limit` bytes.
420
+ *
421
+ * Returns null when the cap is passed. The stream is cancelled at that point,
422
+ * so a hostile or misconfigured host cannot make us hold more than the cap in
423
+ * memory however it frames the response. Falls back to a buffered read only
424
+ * when the runtime gives no readable stream, and still checks the size.
425
+ */
426
+ async function readCapped(response, limit) {
427
+ const stream = response.body;
428
+ if (!stream) {
429
+ const buffered = await response.text();
430
+ return Buffer.byteLength(buffered, "utf8") > limit ? null : buffered;
431
+ }
432
+ const reader = stream.getReader();
433
+ const chunks = [];
434
+ let total = 0;
435
+ try {
436
+ for (;;) {
437
+ const { done, value } = await reader.read();
438
+ if (done)
439
+ break;
440
+ if (!value)
441
+ continue;
442
+ total += value.byteLength;
443
+ if (total > limit) {
444
+ await reader.cancel();
445
+ return null;
446
+ }
447
+ chunks.push(value);
448
+ }
449
+ }
450
+ finally {
451
+ reader.releaseLock();
452
+ }
453
+ return Buffer.concat(chunks.map((c) => Buffer.from(c))).toString("utf8");
454
+ }
455
+ /**
456
+ * Retrieve one declaration under the bounded rules, then parse and digest it.
457
+ *
458
+ * Redirects are followed manually so each hop can be re-validated. This is the
459
+ * difference between a fence and a formality: `fetch`'s automatic redirect
460
+ * following would validate only the URL we started with.
461
+ */
462
+ export async function retrieveDeclaration(url, expectedSourceId, policy, options = {}) {
463
+ const fetcher = options.fetcher ?? ((u, init) => fetch(u, init));
464
+ let current = url;
465
+ for (let hop = 0; hop <= MAX_REDIRECTS; hop += 1) {
466
+ const problem = checkDeclarationUrl(current, policy);
467
+ if (problem)
468
+ return { ok: false, failure: problem };
469
+ const controller = new AbortController();
470
+ const timer = setTimeout(() => controller.abort(), DECLARATION_FETCH_TIMEOUT_MS);
471
+ let response;
472
+ try {
473
+ response = await fetcher(current, {
474
+ redirect: "manual",
475
+ signal: controller.signal,
476
+ });
477
+ }
478
+ catch (err) {
479
+ return {
480
+ ok: false,
481
+ failure: {
482
+ code: "fetch_failed",
483
+ message: `declaration retrieval failed: ${err.message}`,
484
+ },
485
+ };
486
+ }
487
+ finally {
488
+ clearTimeout(timer);
489
+ }
490
+ if (response.status >= 300 && response.status < 400) {
491
+ const location = response.headers.get("location");
492
+ if (!location) {
493
+ return {
494
+ ok: false,
495
+ failure: {
496
+ code: "fetch_failed",
497
+ message: "redirect response carried no Location header",
498
+ },
499
+ };
500
+ }
501
+ // Resolve relative redirects against the current URL, then re-check.
502
+ current = new URL(location, current).toString();
503
+ continue;
504
+ }
505
+ if (!response.ok) {
506
+ return {
507
+ ok: false,
508
+ failure: {
509
+ code: "fetch_failed",
510
+ message: `declaration retrieval returned HTTP ${response.status}`,
511
+ },
512
+ };
513
+ }
514
+ const declaredLength = response.headers.get("content-length");
515
+ if (declaredLength && Number(declaredLength) > MAX_DECLARATION_BYTES) {
516
+ return {
517
+ ok: false,
518
+ failure: {
519
+ code: "too_large",
520
+ message: `declaration exceeds ${MAX_DECLARATION_BYTES} bytes`,
521
+ },
522
+ };
523
+ }
524
+ // Read incrementally and abort the moment the cap is passed. `text()`
525
+ // would buffer the whole response first, so a host that omits or lies
526
+ // about Content-Length could make us allocate an unbounded body and only
527
+ // then be told it was too large — the cap has to bound the allocation, not
528
+ // just the outcome.
529
+ const body = await readCapped(response, MAX_DECLARATION_BYTES);
530
+ if (body === null) {
531
+ return {
532
+ ok: false,
533
+ failure: {
534
+ code: "too_large",
535
+ message: `declaration exceeds ${MAX_DECLARATION_BYTES} bytes`,
536
+ },
537
+ };
538
+ }
539
+ return parseDeclaration(body, expectedSourceId, options.expectedDigest);
540
+ }
541
+ return {
542
+ ok: false,
543
+ failure: {
544
+ code: "too_many_redirects",
545
+ message: `declaration retrieval exceeded ${MAX_REDIRECTS} redirects`,
546
+ },
547
+ };
548
+ }
549
+ //# sourceMappingURL=declaration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declaration.js","sourceRoot":"","sources":["../../src/pdpp/declaration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * PDPP Core v0.1.0 Authorization Server.
3
+ *
4
+ * Public seam for the PDPP AS: selection validation, axis resolution, consent
5
+ * review, grant issuance, grant-bound tokens, introspection, and revocation.
6
+ * The Resource Server consumes `PdppTokenService.resolveToken` (co-located) or
7
+ * `introspect` (separated) and enforces only from that result.
8
+ */
9
+ export { PDPP_DATA_ACCESS_TYPE, PDPP_GRANT_VERSION, PDPP_API_VERSION, AI_TRAINING_PURPOSE, } from "./types.js";
10
+ export type { AccessMode, ClientClaims, ClientDisplay, DeclarationSnapshot, DeclaredPreset, DeclaredStream, DeclaredView, Grant, GrantStatus, InactiveReason, PdppAuthorizationDetail, PdppIntrospectionResponse, PdppTokenContext, PdppTokenKind, Retention, SelectionRequest, SourceKind, StreamGrant, StreamRequest, TimeConstraint, TimeRange, } from "./types.js";
11
+ export { validateSelectionRequest } from "./selection.js";
12
+ export type { SelectionFailure, SelectionFailureCode, SelectionValidation, } from "./selection.js";
13
+ export { resolveSelection } from "./resolve.js";
14
+ export type { InstanceInventory, ResolutionFailure, ResolutionFailureCode, ResolutionResult, } from "./resolve.js";
15
+ export { buildConsentReview, computeReviewDigest, isRegisteredPurposeCode, normalizeClientClaims, } from "./review.js";
16
+ export type { BuildReviewInput, ConsentReviewModel, RequesterIdentity, ReviewStream, } from "./review.js";
17
+ export { issueGrant } from "./issuance.js";
18
+ export type { ConsentEvidence, IssuanceFailure, IssuanceFailureCode, IssuanceResult, IssueGrantInput, } from "./issuance.js";
19
+ export { AUTHORIZATION_CODE_TTL_SECONDS, DEFAULT_ACCESS_TOKEN_TTL_SECONDS, mayIssueRefreshToken, PdppTokenService, toAuthorizationDetail, } from "./tokens.js";
20
+ export type { TokenFailure, TokenFailureCode, TokenIssuanceResult, TokenResult, PdppTokenServiceOptions, } from "./tokens.js";
21
+ export { approveAuthorization, AuthorizationSessionStore, denyAuthorization, fetchReview, REVIEW_SESSION_TTL_SECONDS, } from "./approval.js";
22
+ export type { ApprovalFailure, ApprovalFailureCode, ApprovalResult, AuthorizationSession, InstanceChoice, ReviewFetchResult, SessionState, } from "./approval.js";
23
+ export { REDIRECT_FAILURES_ARE_NEVER_REDIRECTED, validateRedirectUri, } from "./redirect.js";
24
+ export type { RedirectFailure, RedirectFailureCode, RegisteredRedirectPolicy, } from "./redirect.js";
25
+ export { computeS256Challenge, PKCE_METHOD_S256, validateCodeChallenge, verifyCodeVerifier, } from "./pkce.js";
26
+ export type { PkceFailure, PkceFailureCode } from "./pkce.js";
27
+ export { hashToken, newOpaqueToken, openPdppAuthStore, PdppAuthStore, PDPP_AUTH_STATE_VERSION, UnsupportedAuthStateError, } from "./store.js";
28
+ export type { AccessTokenRecord, AuthCodeRecord, StoredGrant, } from "./store.js";
29
+ export { checkDeclarationUrl, computeDeclarationDigest, declaredSourceId, DECLARATION_FETCH_TIMEOUT_MS, MAX_DECLARATION_BYTES, MAX_REDIRECTS, parseDeclaration, retrieveDeclaration, } from "./declaration.js";
30
+ export type { DeclarationFailure, DeclarationFailureCode, DeclarationFetcher, DeclarationResult, DeclarationTrustPolicy, } from "./declaration.js";
31
+ export { MAX_CLIENT_DOCUMENT_BYTES, resolveUrlHostedClientIdentity, } from "./client-identity.js";
32
+ export type { ClientDocumentFetcher, ClientIdentityFailure, ClientIdentityFailureCode, ClientIdentityResult, } from "./client-identity.js";
33
+ export { mayRenderRemoteLogo, resolveRequesterIdentity, verifyClientIdDocument, } from "./client-metadata.js";
34
+ export type { ClientIdMetadataDocument, RegisteredClientMetadata, ResolveRequesterInput, } from "./client-metadata.js";
35
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pdpp/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * PDPP Core v0.1.0 Authorization Server.
3
+ *
4
+ * Public seam for the PDPP AS: selection validation, axis resolution, consent
5
+ * review, grant issuance, grant-bound tokens, introspection, and revocation.
6
+ * The Resource Server consumes `PdppTokenService.resolveToken` (co-located) or
7
+ * `introspect` (separated) and enforces only from that result.
8
+ */
9
+ export { PDPP_DATA_ACCESS_TYPE, PDPP_GRANT_VERSION, PDPP_API_VERSION, AI_TRAINING_PURPOSE, } from "./types.js";
10
+ export { validateSelectionRequest } from "./selection.js";
11
+ export { resolveSelection } from "./resolve.js";
12
+ export { buildConsentReview, computeReviewDigest, isRegisteredPurposeCode, normalizeClientClaims, } from "./review.js";
13
+ export { issueGrant } from "./issuance.js";
14
+ export { AUTHORIZATION_CODE_TTL_SECONDS, DEFAULT_ACCESS_TOKEN_TTL_SECONDS, mayIssueRefreshToken, PdppTokenService, toAuthorizationDetail, } from "./tokens.js";
15
+ export { approveAuthorization, AuthorizationSessionStore, denyAuthorization, fetchReview, REVIEW_SESSION_TTL_SECONDS, } from "./approval.js";
16
+ export { REDIRECT_FAILURES_ARE_NEVER_REDIRECTED, validateRedirectUri, } from "./redirect.js";
17
+ export { computeS256Challenge, PKCE_METHOD_S256, validateCodeChallenge, verifyCodeVerifier, } from "./pkce.js";
18
+ export { hashToken, newOpaqueToken, openPdppAuthStore, PdppAuthStore, PDPP_AUTH_STATE_VERSION, UnsupportedAuthStateError, } from "./store.js";
19
+ export { checkDeclarationUrl, computeDeclarationDigest, declaredSourceId, DECLARATION_FETCH_TIMEOUT_MS, MAX_DECLARATION_BYTES, MAX_REDIRECTS, parseDeclaration, retrieveDeclaration, } from "./declaration.js";
20
+ export { MAX_CLIENT_DOCUMENT_BYTES, resolveUrlHostedClientIdentity, } from "./client-identity.js";
21
+ export { mayRenderRemoteLogo, resolveRequesterIdentity, verifyClientIdDocument, } from "./client-metadata.js";
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pdpp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAyBpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAO1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQhD,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAS3C,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,EAChC,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AASrB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,WAAW,EACX,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAWvB,OAAO,EACL,sCAAsC,EACtC,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAOvB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAOpB,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,4BAA4B,EAC5B,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EACL,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC"}