@lapxo/bound 0.2.3 → 0.2.5

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 (242) hide show
  1. package/CITATION.cff +19 -0
  2. package/TARGET.bound +95 -39
  3. package/dist/cli/accept.js +72 -558
  4. package/dist/cli/act-result.js +3 -103
  5. package/dist/cli/args.js +3 -44
  6. package/dist/cli/custodian.js +2 -29
  7. package/dist/cli/host.js +4 -32
  8. package/dist/cli/names.js +1 -12
  9. package/dist/cli/native-descendant.js +1 -19
  10. package/dist/cli/native.js +3 -60
  11. package/dist/cli/observe.js +1 -13
  12. package/dist/cli/owner.js +3 -139
  13. package/dist/cli/pass.js +21 -321
  14. package/dist/cli/place.js +6 -281
  15. package/dist/cli/release-result.js +3 -80
  16. package/dist/cli/retained-judgment.js +1 -25
  17. package/dist/cli/standing-result.js +4 -21
  18. package/dist/cli/takes.js +10 -111
  19. package/dist/cli/verb.d.ts +1 -2
  20. package/dist/cli/verb.js +83 -683
  21. package/dist/engine/computation.js +2 -0
  22. package/dist/engine/conformance.js +4 -0
  23. package/dist/engine/encoding.js +1 -2
  24. package/dist/engine/index.d.ts +1 -13
  25. package/dist/engine/index.js +2 -11
  26. package/dist/engine/object.js +1 -38
  27. package/dist/engine/ports.js +2 -103
  28. package/dist/fold/admission-history.js +1 -17
  29. package/dist/fold/bootstrap-anchor.js +1 -28
  30. package/dist/fold/ceilings.js +1 -142
  31. package/dist/fold/claims.js +2 -131
  32. package/dist/fold/closed.js +24 -234
  33. package/dist/fold/configures.js +1 -25
  34. package/dist/fold/digests.js +10 -226
  35. package/dist/fold/evidence.js +1 -22
  36. package/dist/fold/fold-worker.js +1 -13
  37. package/dist/fold/kept.js +12 -173
  38. package/dist/fold/keys.js +3 -91
  39. package/dist/fold/laid.js +3 -90
  40. package/dist/fold/nos.js +1 -48
  41. package/dist/fold/object.js +1 -2
  42. package/dist/fold/observed.js +27 -534
  43. package/dist/fold/opened.js +1 -33
  44. package/dist/fold/own.js +3 -217
  45. package/dist/fold/paid.js +1 -92
  46. package/dist/fold/place-inputs.js +1 -70
  47. package/dist/fold/places.js +3 -100
  48. package/dist/fold/rank.js +1 -9
  49. package/dist/fold/reach.js +1 -83
  50. package/dist/fold/readers.js +6 -142
  51. package/dist/fold/receipts.js +1 -47
  52. package/dist/fold/region-declarations.js +1 -13
  53. package/dist/fold/region.js +8 -286
  54. package/dist/fold/release-policy.js +1 -101
  55. package/dist/fold/resolved.js +6 -145
  56. package/dist/fold/roles.js +2 -59
  57. package/dist/fold/second.js +4 -71
  58. package/dist/fold/shards.js +12 -100
  59. package/dist/fold/signed.js +3 -81
  60. package/dist/fold/signers.js +1 -54
  61. package/dist/fold/stranger.js +6 -24
  62. package/dist/fold/views.js +1 -66
  63. package/dist/fold/wire.js +1 -46
  64. package/dist/fold/zoom.js +3 -81
  65. package/dist/host/act-cost.js +1 -25
  66. package/dist/host/adapters/keys/ed25519.js +1 -30
  67. package/dist/host/adapters/modules/javascript.js +1 -50
  68. package/dist/host/adapters/transport/http.js +1 -28
  69. package/dist/host/admitted-place.js +1 -63
  70. package/dist/host/archive.js +1 -152
  71. package/dist/host/call-context.js +1 -0
  72. package/dist/host/capsule-process.js +2 -61
  73. package/dist/host/capsule.js +9 -168
  74. package/dist/host/cell-receipts.js +12 -128
  75. package/dist/host/commit-result.js +1 -0
  76. package/dist/host/content-needed.js +1 -8
  77. package/dist/host/content-store.js +1 -31
  78. package/dist/host/contextual-place.js +2 -77
  79. package/dist/host/digest.js +2 -15
  80. package/dist/host/hash.js +1 -9
  81. package/dist/host/host-controls.js +1 -0
  82. package/dist/host/in-process-act.js +3 -0
  83. package/dist/host/in-process-context.js +3 -0
  84. package/dist/host/in-process-root.js +6 -0
  85. package/dist/host/in-process.js +4 -0
  86. package/dist/host/index.d.ts +1 -0
  87. package/dist/host/index.js +1 -0
  88. package/dist/host/io.js +1 -11
  89. package/dist/host/lifetime.js +1 -79
  90. package/dist/host/located.js +6 -105
  91. package/dist/host/native/bounded-file.js +1 -32
  92. package/dist/host/native/command.js +1 -91
  93. package/dist/host/native/control-bridge-worker.js +2 -88
  94. package/dist/host/native/control-bridge.js +1 -110
  95. package/dist/host/native/control-selection.js +1 -32
  96. package/dist/host/native/custody.js +1 -91
  97. package/dist/host/native/deadline.js +1 -28
  98. package/dist/host/native/descendants.js +1 -528
  99. package/dist/host/native/generated-custodian.js +5 -267
  100. package/dist/host/native/generated.js +1 -379
  101. package/dist/host/native/image.js +1 -45
  102. package/dist/host/native/jobs.js +2 -148
  103. package/dist/host/native/loader.js +1 -269
  104. package/dist/host/native/materialize.js +1 -175
  105. package/dist/host/native/module-closure.js +1 -130
  106. package/dist/host/native/module-delivery.d.ts +1 -62
  107. package/dist/host/native/module-delivery.js +1 -151
  108. package/dist/host/native/module-syntax.js +1 -69
  109. package/dist/host/native/native-binary.js +1 -115
  110. package/dist/host/native/native-program.js +1 -72
  111. package/dist/host/native/node-jobs.js +3 -187
  112. package/dist/host/native/node-launch.js +1 -159
  113. package/dist/host/native/preload.js +1 -45
  114. package/dist/host/native/reading.js +1 -249
  115. package/dist/host/native/receipt-environment.js +1 -41
  116. package/dist/host/native/references.js +1 -30
  117. package/dist/host/native/root.js +1 -37
  118. package/dist/host/native/route.js +1 -216
  119. package/dist/host/native/runtime.js +1 -9
  120. package/dist/host/native-reader-context.js +1 -8
  121. package/dist/host/native-receiver.js +1 -0
  122. package/dist/host/objects.js +1 -38
  123. package/dist/host/order.js +1 -2
  124. package/dist/host/place-act-transaction.js +4 -0
  125. package/dist/host/place-clock-selection.js +5 -124
  126. package/dist/host/ports/ingress.js +2 -57
  127. package/dist/host/ports/local-act.js +5 -172
  128. package/dist/host/ports/place-act.js +1 -169
  129. package/dist/host/ports/publication.js +1 -56
  130. package/dist/host/ports/signing.js +1 -74
  131. package/dist/host/ports/store.js +1 -18
  132. package/dist/host/ports/transport.js +1 -48
  133. package/dist/host/process-lifetime.js +1 -17
  134. package/dist/host/provide.js +1 -183
  135. package/dist/host/read-only.js +1 -9
  136. package/dist/host/reading-closures.js +7 -227
  137. package/dist/host/reading-context.js +1 -53
  138. package/dist/host/reading-identity-types.js +0 -0
  139. package/dist/host/reading-identity.js +3 -0
  140. package/dist/host/reading-preparation.js +6 -0
  141. package/dist/host/reference-authenticated.d.ts +1 -40
  142. package/dist/host/reference-authenticated.js +3 -100
  143. package/dist/host/reference-contracts.js +1 -6
  144. package/dist/host/reference-export.js +6 -81
  145. package/dist/host/reference-native-api.d.ts +1 -3
  146. package/dist/host/reference-native-api.js +1 -3
  147. package/dist/host/reference-native.js +1 -74
  148. package/dist/host/reference-profile.js +1 -63
  149. package/dist/host/reference-standing.js +2 -18
  150. package/dist/host/reference.js +1 -24
  151. package/dist/host/refusals.js +2 -43
  152. package/dist/host/release.js +4 -256
  153. package/dist/host/root-clock-source.js +1 -305
  154. package/dist/host/selected-capsules.js +1 -50
  155. package/dist/host/selected-topos.js +1 -80
  156. package/dist/host/signature-era.js +1 -0
  157. package/dist/host/signing.js +2 -48
  158. package/dist/host/source-content.js +2 -110
  159. package/dist/host/standing-carrier.js +1 -0
  160. package/dist/host/standing-projection.js +1 -0
  161. package/dist/host/timing.js +1 -7
  162. package/dist/host/walk.js +20 -193
  163. package/dist/judge/late.js +1 -33
  164. package/dist/judge/take.js +2 -75
  165. package/dist/judge/widening.js +1 -25
  166. package/dist/land/act.js +8 -302
  167. package/dist/land/alias.js +1 -41
  168. package/dist/land/held.js +1 -23
  169. package/dist/land/inert.js +1 -33
  170. package/dist/land/leaving.js +1 -55
  171. package/dist/land/ledger.js +7 -188
  172. package/dist/land/owned.js +4 -66
  173. package/dist/land/sign.js +1 -53
  174. package/dist/land/standing-pin.js +1 -49
  175. package/dist/land/vouched.js +1 -112
  176. package/dist/land/withdraw.js +1 -24
  177. package/dist/observe/files.js +1 -88
  178. package/dist/observe/identity.js +1 -61
  179. package/dist/observe/match.js +1 -8
  180. package/dist/observe/regions.js +7 -306
  181. package/dist/observe/run.js +2 -40
  182. package/dist/observe/runner.js +4 -93
  183. package/dist/public-types.d.ts +1114 -0
  184. package/dist/render/capsule.js +1 -30
  185. package/dist/render/field.js +1 -40
  186. package/dist/render/names.js +1 -4
  187. package/dist/render/open.js +1 -61
  188. package/dist/render/page.js +1 -7
  189. package/dist/render/receipts.js +1 -47
  190. package/dist/render/shape.js +1 -74
  191. package/dist/render/target.js +4 -52
  192. package/dist/render/view.js +7 -197
  193. package/dist/vendor/50086958553b9376d600583f7dff354196bfeb41170fc6d1482ca7bea7c493e2.LICENSE +21 -0
  194. package/dist/vendor/b3e938d28f88a1851af303a40c749e12ebd5a686daac4f0b343b5cdd2e040419.LICENSE +21 -0
  195. package/dist/vendor/bundle.json +1 -0
  196. package/dist/vendor/library11.js +1 -0
  197. package/dist/vendor/object-provider.js +42 -0
  198. package/dist/vendor/runtime.js +38 -0
  199. package/dist/vendor/sources.json +1 -0
  200. package/dist/wasm/adapter.d.ts +1 -51
  201. package/dist/wasm/adapter.js +1 -180
  202. package/dist/wasm/node-worker.js +1 -13
  203. package/dist/wasm/object.js +1 -76
  204. package/dist/wasm/worker.js +1 -7
  205. package/docs/contracts/closure-delivery.md +1 -1
  206. package/docs/contracts/closure-delivery.publication.json +1 -1
  207. package/docs/contracts/conformance.json +142 -0
  208. package/docs/contracts/determinism.bound +9 -0
  209. package/docs/contracts/engine-object-projection.publication.json +1 -1
  210. package/docs/contracts/engine.md +21 -1
  211. package/docs/contracts/native-host.md +21 -0
  212. package/docs/contracts/native-host.publication.json +25 -0
  213. package/docs/contracts/native-publication.inventory.json +3 -1
  214. package/docs/contracts/optional-wasm-adapter.publication.json +1 -1
  215. package/docs/contracts/publication.inventory.json +29 -0
  216. package/docs/contracts/reading-identity.md +37 -0
  217. package/docs/contracts/reading-identity.publication.json +25 -0
  218. package/docs/contracts/refusals.bound +51 -0
  219. package/docs/contracts/refusals.md +18 -3
  220. package/docs/contracts/refusals.publication.json +2 -2
  221. package/docs/contracts/views.md +8 -0
  222. package/docs/guide.md +10 -0
  223. package/docs/reference.md +40 -0
  224. package/docs/why.md +109 -0
  225. package/package.json +37 -18
  226. package/receipts.bound +11675 -9725
  227. package/samples/native-host/no.json +10 -0
  228. package/samples/native-host/yes.json +20 -0
  229. package/samples/reading-identity/no.json +20 -0
  230. package/samples/reading-identity/yes.json +46 -0
  231. package/vectors/native/native-host.vector.json +62 -0
  232. package/vectors/native/reading-identity.vector.json +101 -0
  233. package/vectors/native/refusals.vector.json +104 -0
  234. package/vendor/syntax/LICENSE.md +7 -0
  235. package/vendor/syntax/parser.js +1 -0
  236. package/dist/engine/object.d.ts +0 -17
  237. package/dist/engine/ports.d.ts +0 -32
  238. package/dist/host/native/module-closure.d.ts +0 -35
  239. package/dist/host/reference-export.d.ts +0 -33
  240. package/dist/host/reference-native.d.ts +0 -30
  241. package/dist/host/reference-profile.d.ts +0 -23
  242. package/dist/host/refusals.d.ts +0 -14
@@ -1,93 +1,4 @@
1
- import { spawnSync } from 'node:child_process';
2
- import { sha } from "../host/hash.js";
3
- import { existsSync, mkdirSync, realpathSync, rmSync, statSync, writeFileSync } from 'node:fs';
4
- import { basename, dirname, extname, join, resolve } from 'node:path';
5
- import { fileURLToPath } from 'node:url';
6
- import { fieldOf } from "../fold/claims.js";
7
- import { observeFile, observeText } from "./files.js";
8
- import { ownLockOf } from "../fold/signed.js";
9
- import { landBlob } from "../land/ledger.js";
10
- import { EXTENSION, LOCK, publicLock } from '@lapxo/topos/wire';
11
- import { foldClaims, isWire } from "../fold/claims.js";
12
- const self = () => process.argv[1] ?? '';
13
- const fromBlob = () => extname(existsSync(self()) ? realpathSync(self()) : self()) === '';
14
- /**
15
- * Where the instrument lies and what it is run from: from source or compiled modules, bound is two steps above this runner module; as a blob, the command is a blob of the tree's store, named by the digest bound's own lock names for
16
- * it, and bound lies beside that store. Other processes use the same runtime directory and extension; only source readers receive source conditions. A name that resolves to no blob beside it is refused by name
17
- * before anything is started, never handed to the runtime as the store's own directory.
18
- */
19
- // Blob bundles have no module URL; source and compiled modules carry their own entry location.
20
- const moduleAt = fromBlob() ? undefined : fileURLToPath(import.meta.url);
21
- const runtimeAt = moduleAt === undefined ? '' : resolve(dirname(moduleAt), '..');
22
- const runtimeExtension = moduleAt === undefined ? '' : extname(moduleAt);
23
- export const ownRoot = () => (fromBlob() ? join(resolve(dirname(self()), '..', '..', '..'), 'bound') : resolve(runtimeAt, '..'));
24
- /** A published instrument carries its own content store even before any ledger
25
- * exists. Public-lock recognition grants no authority; legacy signed delivery
26
- * trees retain their historical colocated-ledger or sibling-store layout. */
27
- export function instrumentStoreAt(root) {
28
- const lines = (observeText(join(root, LOCK)) ?? '').split('\n').filter(isWire);
29
- const published = lines.length > 0 && publicLock(lines) !== undefined;
30
- return published || existsSync(join(root, EXTENSION, 'ledger')) ? join(root, EXTENSION) : join(root, '..', EXTENSION);
31
- }
32
- export const ownStore = () => instrumentStoreAt(ownRoot());
33
- /** The colocated public artifact is read without an unrelated parent's authority store. */
34
- // An act is judged by the instrument it started with, even when that act changes its colocated lock.
35
- let instrumentLock;
36
- export const ownLock = () => {
37
- if (instrumentLock !== undefined)
38
- return instrumentLock;
39
- const lines = (observeText(join(ownRoot(), LOCK)) ?? '').split('\n').filter(isWire);
40
- const published = publicLock(lines);
41
- instrumentLock = published === undefined
42
- ? dirname(ownStore()) === ownRoot() ? ownLockOf(ownRoot(), '', true) : ownLockOf(join(ownRoot(), '..'), basename(ownRoot()), true)
43
- : foldClaims(published).standing;
44
- return instrumentLock;
45
- };
46
- export const sourceOf = () => (fromBlob() ? join(ownRoot(), 'src', 'cli', 'verb.ts') : self());
47
- export function processOf(name, folder) {
48
- if (!fromBlob())
49
- return join(runtimeAt, folder ?? 'cli', `${name}${runtimeExtension}`);
50
- const named = ownLock().find((line) => fieldOf(line, 'scope') === `runner/${name}`);
51
- const blob = fieldOf(named ?? '', 'value').replace(/^[^:]*:/, '');
52
- if (!blob || !existsSync(join(dirname(self()), blob))) {
53
- throw new Error(`${basename(ownRoot())}: REFUSE·alias runner/${name} resolves to no blob: ${named === undefined ? 'no signed line of the instrument\'s own lock names it' : `${fieldOf(named, 'value')} is not beside ${basename(self())}`}`);
54
- }
55
- return join(dirname(self()), blob);
56
- }
57
- /**
58
- * A reader's code is what the bundler takes of it: its module and every file that module imports, wherever it lies, as
59
- * one blob of the tree's store named by the digest of its bytes. The files the bundler read, at the stamps they had, key
60
- * the blob, so it is built again only when one of them moved, and a helper a step above the module is one of them.
61
- */
62
- export function bundleOf(module) {
63
- const tree = join(ownRoot(), '..');
64
- const named = fieldOf(ownLock().find((line) => fieldOf(line, 'scope') === 'host/bundler') ?? '', 'value');
65
- const bundler = named && existsSync(join(tree, named)) ? join(tree, named) : '';
66
- if (!bundler)
67
- return undefined;
68
- const store = join(tree, EXTENSION);
69
- const stamp = (coordinate) => ((at) => (at === undefined ? '' : `${at.mtimeMs} ${at.size}`))(statSync(join(tree, coordinate), { throwIfNoEntry: false }));
70
- const index = join(store, 'cas', 'built', sha(`bundle ${module}`));
71
- const held = JSON.parse(observeText(index) ?? 'null');
72
- if (held !== null && existsSync(join(store, 'cas', 'blobs', held.blob)) && held.inputs.every(([coordinate, was]) => stamp(coordinate) === was))
73
- return held.blob;
74
- const [meta, out] = [`${index}.${process.pid}.json`, `${index}.${process.pid}.js`];
75
- mkdirSync(dirname(index), { recursive: true });
76
- const built = spawnSync(bundler, [module, '--bundle', '--platform=node', '--format=cjs', '--external:typescript', '--log-level=error', `--metafile=${meta}`, `--outfile=${out}`], { cwd: tree });
77
- const inputs = Object.keys(JSON.parse(observeText(meta) ?? '{}').inputs ?? {}).sort();
78
- const bytes = observeFile(out);
79
- rmSync(meta, { force: true });
80
- rmSync(out, { force: true });
81
- if (built.status !== 0 || bytes === undefined || !bytes.length || !inputs.length)
82
- return undefined;
83
- const hex = sha(bytes);
84
- landBlob(store, `sha256:${hex}`, bytes);
85
- writeFileSync(index, `${JSON.stringify({ blob: hex, inputs: inputs.map((coordinate) => [coordinate, stamp(coordinate)]) })}\n`);
86
- return hex;
87
- }
88
- /** A reader run by a blob is a blob itself: its bundle, with everything it imports but the compiler. */
89
- export function readerOf(module) {
90
- const source = { path: module, flags: runtimeExtension === '.ts' ? ['--disable-warning=ExperimentalWarning', '--disable-warning=MODULE_TYPELESS_PACKAGE_JSON'] : [] };
91
- const hex = fromBlob() ? bundleOf(module) : undefined;
92
- return hex === undefined ? source : { path: join(ownStore(), 'cas', 'blobs', hex), flags: [] };
93
- }
1
+ var M=Object.defineProperty;var r=(e,n)=>M(e,"name",{value:n,configurable:!0});import{hostInstrumentRuntime as u}from"../host/call-context.js";import{spawnSync as W}from"node:child_process";import{sha as _}from"../host/hash.js";import{existsSync as m,mkdirSync as X,realpathSync as z,rmSync as j,statSync as D,writeFileSync as G}from"node:fs";import{basename as v,dirname as f,extname as A,join as t,resolve as L}from"node:path";import{fileURLToPath as Y}from"node:url";import{fieldOf as b}from"../fold/claims.js";import{observeFile as q,observeText as y}from"./files.js";import{ownLockOf as T}from"../fold/signed.js";import{landBlob as H}from"../land/ledger.js";import{library11_EXTENSION as S,library11_LOCK as C,library11_publicLock as I}from"../vendor/runtime.js";import{foldClaims as Q,isWire as J}from"../fold/claims.js";const c=r(()=>process.argv[1]??"","self"),x=r(()=>u()!==void 0?!1:A(m(c())?z(c()):c())==="","fromBlob"),R=r(()=>x()?void 0:Y(import.meta.url),"moduleAt"),F=r(()=>{const e=u();if(e)return e.directory;const n=R();return n===void 0?"":L(f(n),"..")},"runtimeAt"),K=r(()=>{const e=u();if(e)return e.extension;const n=R();return n===void 0?"":A(n)},"runtimeExtension"),s=r(()=>u()?.root??(x()?t(L(f(c()),"..","..",".."),"bound"):L(F(),"..")),"ownRoot");function V(e){const n=(y(t(e,C))??"").split(`
2
+ `).filter(J);return n.length>0&&I(n)!==void 0||m(t(e,S,"ledger"))?t(e,S):t(e,"..",S)}r(V,"instrumentStoreAt");const P=r(()=>V(s()),"ownStore");let O;const U=r(()=>{const e=u();if(e)return e.lock;if(O!==void 0)return O;const n=(y(t(s(),C))??"").split(`
3
+ `).filter(J),o=I(n);return O=o===void 0?f(P())===s()?T(s(),"",!0):T(t(s(),".."),v(s()),!0):Q(o).standing,O},"ownLock"),ae=r(()=>u()?.entry??(x()?t(s(),"src","cli","verb.ts"):c()),"sourceOf");function me(e,n){if(!x())return t(F(),n??"cli",`${e}${K()}`);const o=U().find(d=>b(d,"scope")===`runner/${e}`),l=b(o??"","value").replace(/^[^:]*:/,"");if(!l||!m(t(f(c()),l)))throw new Error(`${v(s())}: REFUSE\xB7alias runner/${e} resolves to no blob: ${o===void 0?"no signed line of the instrument's own lock names it":`${b(o,"value")} is not beside ${v(c())}`}`);return t(f(c()),l)}r(me,"processOf");function Z(e){const n=t(s(),".."),o=b(U().find(i=>b(i,"scope")==="host/bundler")??"","value"),l=o&&m(t(n,o))?t(n,o):"";if(!l)return;const d=t(n,S),k=r(i=>(a=>a===void 0?"":`${a.mtimeMs} ${a.size}`)(D(t(n,i),{throwIfNoEntry:!1})),"stamp"),p=t(d,"cas","built",_(`bundle ${e}`)),h=JSON.parse(y(p)??"null");if(h!==null&&m(t(d,"cas","blobs",h.blob))&&h.inputs.every(([i,a])=>k(i)===a))return h.blob;const[g,E]=[`${p}.${process.pid}.json`,`${p}.${process.pid}.js`];X(f(p),{recursive:!0});const B=W(l,[e,"--bundle","--platform=node","--format=cjs","--external:typescript","--log-level=error",`--metafile=${g}`,`--outfile=${E}`],{cwd:n}),N=Object.keys(JSON.parse(y(g)??"{}").inputs??{}).sort(),$=q(E);if(j(g,{force:!0}),j(E,{force:!0}),B.status!==0||$===void 0||!$.length||!N.length)return;const w=_($);return H(d,`sha256:${w}`,$),G(p,`${JSON.stringify({blob:w,inputs:N.map(i=>[i,k(i)])})}
4
+ `),w}r(Z,"bundleOf");function be(e){const n={path:e,flags:K()===".ts"?["--disable-warning=ExperimentalWarning","--disable-warning=MODULE_TYPELESS_PACKAGE_JSON"]:[]},o=x()?Z(e):void 0;return o===void 0?n:{path:t(P(),"cas","blobs",o),flags:[]}}r(be,"readerOf");export{Z as bundleOf,V as instrumentStoreAt,U as ownLock,s as ownRoot,P as ownStore,me as processOf,be as readerOf,ae as sourceOf};