@lapxo/bound 0.2.5 → 0.2.6

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 (237) hide show
  1. package/CITATION.cff +1 -1
  2. package/README.md +20 -3
  3. package/TARGET.bound +75 -42
  4. package/dist/cli/accept.js +59 -70
  5. package/dist/cli/act-result.js +3 -3
  6. package/dist/cli/args.js +1 -1
  7. package/dist/cli/host.js +1 -1
  8. package/dist/cli/native.js +1 -1
  9. package/dist/cli/pass.js +22 -21
  10. package/dist/cli/place.js +6 -6
  11. package/dist/cli/release-result.js +3 -3
  12. package/dist/cli/retained-judgment.js +1 -1
  13. package/dist/cli/standing-result.js +3 -3
  14. package/dist/cli/takes.js +10 -10
  15. package/dist/cli/verb.js +79 -77
  16. package/dist/engine/computation.js +1 -1
  17. package/dist/engine/index.js +1 -1
  18. package/dist/engine/object.js +1 -1
  19. package/dist/engine/ports.js +1 -1
  20. package/dist/fold/admission-history.js +1 -1
  21. package/dist/fold/ceilings.js +1 -1
  22. package/dist/fold/claims.js +2 -2
  23. package/dist/fold/closed.js +1 -1
  24. package/dist/fold/configures.js +1 -1
  25. package/dist/fold/digests.js +10 -10
  26. package/dist/fold/evidence.js +1 -1
  27. package/dist/fold/keys.js +3 -3
  28. package/dist/fold/laid.js +1 -1
  29. package/dist/fold/observed.js +27 -26
  30. package/dist/fold/opened.js +1 -1
  31. package/dist/fold/own.js +3 -3
  32. package/dist/fold/paid.js +1 -1
  33. package/dist/fold/place-inputs.js +1 -1
  34. package/dist/fold/places.js +1 -1
  35. package/dist/fold/reach.js +1 -1
  36. package/dist/fold/readers.js +1 -1
  37. package/dist/fold/region.js +1 -1
  38. package/dist/fold/release-policy.js +1 -1
  39. package/dist/fold/resolved.js +1 -1
  40. package/dist/fold/roles.js +1 -1
  41. package/dist/fold/shards.js +8 -8
  42. package/dist/fold/signed.js +3 -3
  43. package/dist/fold/signers.js +1 -1
  44. package/dist/fold/stranger.js +6 -6
  45. package/dist/fold/wire.js +1 -1
  46. package/dist/fold/zoom.js +1 -1
  47. package/dist/host/act-cost.js +1 -1
  48. package/dist/host/adapters/keys/ed25519.js +1 -1
  49. package/dist/host/adapters/transport/http.js +1 -1
  50. package/dist/host/admitted-place.js +1 -1
  51. package/dist/host/call-context.js +1 -1
  52. package/dist/host/capsule-process.js +1 -1
  53. package/dist/host/capsule.js +1 -1
  54. package/dist/host/cell-receipts.js +1 -1
  55. package/dist/host/command-server.js +4 -0
  56. package/dist/host/content-store.js +1 -1
  57. package/dist/host/contextual-place.js +1 -1
  58. package/dist/host/digest.js +1 -1
  59. package/dist/host/host-controls.js +1 -1
  60. package/dist/host/in-process-act.js +1 -1
  61. package/dist/host/in-process-context.js +1 -1
  62. package/dist/host/in-process-root.js +1 -1
  63. package/dist/host/in-process.js +1 -1
  64. package/dist/host/index.d.ts +1 -1
  65. package/dist/host/index.js +1 -1
  66. package/dist/host/located.js +6 -6
  67. package/dist/host/native/authority-card-view.js +5 -0
  68. package/dist/host/native/authority-card.js +1 -0
  69. package/dist/host/native/command.js +1 -1
  70. package/dist/host/native/custody.js +1 -1
  71. package/dist/host/native/generated-custodian.js +1 -1
  72. package/dist/host/native/installed-package.d.ts +1 -0
  73. package/dist/host/native/installed-package.js +5 -0
  74. package/dist/host/native/module-delivery.d.ts +1 -1
  75. package/dist/host/native/module-delivery.js +1 -1
  76. package/dist/host/native/module-inventory.js +2 -0
  77. package/dist/host/native/module-syntax.js +1 -1
  78. package/dist/host/native/native-binary.js +1 -1
  79. package/dist/host/native/probes.js +1 -0
  80. package/dist/host/native/reading-witness-admission.js +5 -0
  81. package/dist/host/native/reading.js +1 -1
  82. package/dist/host/native/route.js +1 -1
  83. package/dist/host/native-place-state.js +1 -0
  84. package/dist/host/native-receiver.js +1 -1
  85. package/dist/host/objects.js +1 -1
  86. package/dist/host/persistent-host.js +1 -0
  87. package/dist/host/physical-lines.d.ts +1 -0
  88. package/dist/host/physical-lines.js +1 -0
  89. package/dist/host/place-act-transaction.js +1 -1
  90. package/dist/host/place-clock-selection.js +1 -1
  91. package/dist/host/ports/local-act.js +1 -1
  92. package/dist/host/ports/place-act.js +1 -1
  93. package/dist/host/ports/store.js +1 -1
  94. package/dist/host/ports/transport.js +1 -1
  95. package/dist/host/profile-composition.d.ts +1 -0
  96. package/dist/host/profile-composition.js +2 -0
  97. package/dist/host/reading-closures.js +6 -6
  98. package/dist/host/reading-context.js +1 -1
  99. package/dist/host/reading-identity.js +2 -2
  100. package/dist/host/reading-preparation.js +1 -1
  101. package/dist/host/reference-authenticated.d.ts +1 -1
  102. package/dist/host/reference-authenticated.js +1 -1
  103. package/dist/host/reference-export.js +1 -1
  104. package/dist/host/reference-native-api.d.ts +1 -1
  105. package/dist/host/reference-native-api.js +1 -1
  106. package/dist/host/reference-native.js +1 -1
  107. package/dist/host/reference-standing.js +1 -1
  108. package/dist/host/reference.js +1 -1
  109. package/dist/host/refusals.js +2 -2
  110. package/dist/host/release.js +1 -1
  111. package/dist/host/root-clock-source.js +1 -1
  112. package/dist/host/selected-capsules.js +1 -1
  113. package/dist/host/selected-topos.js +1 -1
  114. package/dist/host/signing.js +2 -2
  115. package/dist/host/source-content.js +1 -1
  116. package/dist/host/standing-carrier.js +1 -1
  117. package/dist/host/standing-projection.js +1 -1
  118. package/dist/host/timing.js +1 -1
  119. package/dist/host/walk.js +1 -1
  120. package/dist/host/work-trace.js +1 -0
  121. package/dist/judge/late.js +1 -1
  122. package/dist/judge/take.js +1 -1
  123. package/dist/judge/widening.js +1 -1
  124. package/dist/land/act.js +6 -6
  125. package/dist/land/alias.js +1 -1
  126. package/dist/land/held.js +1 -1
  127. package/dist/land/ledger.js +5 -6
  128. package/dist/land/sign.js +1 -1
  129. package/dist/land/standing-pin.js +1 -1
  130. package/dist/land/vouched.js +1 -1
  131. package/dist/land/withdraw.js +1 -1
  132. package/dist/observe/files.js +1 -1
  133. package/dist/observe/identity.js +1 -1
  134. package/dist/observe/match.js +1 -1
  135. package/dist/observe/regions.js +1 -1
  136. package/dist/observe/run.js +1 -2
  137. package/dist/observe/runner.js +1 -1
  138. package/dist/public-types.d.ts +945 -40
  139. package/dist/render/capsule.js +1 -1
  140. package/dist/render/field.js +1 -1
  141. package/dist/render/open.js +1 -1
  142. package/dist/render/page.js +1 -1
  143. package/dist/render/receipt-projection.js +1 -0
  144. package/dist/render/receipts.js +1 -1
  145. package/dist/render/shape.js +1 -1
  146. package/dist/render/target.js +4 -4
  147. package/dist/render/view.js +5 -5
  148. package/dist/vendor/bundle.json +1 -1
  149. package/dist/vendor/library14.js +1 -0
  150. package/dist/vendor/runtime.js +53 -30
  151. package/dist/wasm/adapter.d.ts +1 -1
  152. package/docs/contracts/authenticated-reference.publication.json +1 -1
  153. package/docs/contracts/authority-preflight.md +17 -0
  154. package/docs/contracts/authority-preflight.publication.json +25 -0
  155. package/docs/contracts/installed-package.md +21 -0
  156. package/docs/contracts/installed-package.publication.json +25 -0
  157. package/docs/contracts/materialized-leaf-sequence.md +15 -0
  158. package/docs/contracts/materialized-leaf-sequence.publication.json +25 -0
  159. package/docs/contracts/module-inventory.md +15 -0
  160. package/docs/contracts/module-inventory.publication.json +25 -0
  161. package/docs/contracts/native-host.md +29 -1
  162. package/docs/contracts/native-host.publication.json +4 -4
  163. package/docs/contracts/native-probes.md +13 -0
  164. package/docs/contracts/native-probes.publication.json +25 -0
  165. package/docs/contracts/native-publication.inventory.json +9 -1
  166. package/docs/contracts/native-view-batch.md +17 -0
  167. package/docs/contracts/native-view-batch.publication.json +25 -0
  168. package/docs/contracts/physical-lines.md +19 -0
  169. package/docs/contracts/physical-lines.publication.json +25 -0
  170. package/docs/contracts/profile-composition.md +17 -0
  171. package/docs/contracts/profile-composition.publication.json +25 -0
  172. package/docs/contracts/profile-preparation-native-meaning.md +9 -0
  173. package/docs/contracts/publication.md +12 -0
  174. package/docs/contracts/reading-identity.md +26 -2
  175. package/docs/contracts/reading-identity.publication.json +4 -4
  176. package/docs/contracts/reading-witness-admission.md +49 -0
  177. package/docs/contracts/readme.publication.json +1 -1
  178. package/docs/contracts/reference-port.md +11 -0
  179. package/docs/contracts/reference-port.publication.json +1 -1
  180. package/docs/contracts/refusals.bound +346 -145
  181. package/docs/contracts/refusals.md +119 -54
  182. package/docs/contracts/refusals.publication.json +2 -2
  183. package/docs/reference.md +8 -0
  184. package/licenses/wasm/{fast-text-encoding.txt → NOTICE.txt} +111 -0
  185. package/package.json +69 -8
  186. package/receipts.bound +12921 -11722
  187. package/samples/authority-preflight/no.json +6 -0
  188. package/samples/authority-preflight/yes.json +30 -0
  189. package/samples/engine-alphabet/reader.js +3 -1457
  190. package/samples/engine-alphabet/receipts.bound +7 -7
  191. package/samples/engine-interval/reader.js +3 -1457
  192. package/samples/engine-interval/receipts.bound +7 -7
  193. package/samples/installed-package/consumer.mjs +29 -0
  194. package/samples/installed-package/fixture.json +48 -0
  195. package/samples/installed-package/no.json +10 -0
  196. package/samples/installed-package/yes.json +52 -0
  197. package/samples/materialized-leaf-sequence/no.json +11 -0
  198. package/samples/materialized-leaf-sequence/yes.json +10 -0
  199. package/samples/module-inventory/yes.json +28 -0
  200. package/samples/native/physical-line-reader.mjs +1 -0
  201. package/samples/native/physical-line-reader.source.mjs +13 -0
  202. package/samples/native-host/no.json +6 -1
  203. package/samples/native-host/yes.json +18 -1
  204. package/samples/native-probes/inputs/inspection.json +28 -0
  205. package/samples/native-probes/no.json +7 -0
  206. package/samples/native-probes/yes.json +28 -0
  207. package/samples/native-view-batch/no.json +14 -0
  208. package/samples/native-view-batch/yes.json +10 -0
  209. package/samples/no/engine-order/reader.js +3 -1457
  210. package/samples/no/module-inventory/no.json +10 -0
  211. package/samples/physical-lines/no.json +5 -0
  212. package/samples/physical-lines/yes.json +9 -0
  213. package/samples/profile-composition/no.json +6 -0
  214. package/samples/profile-composition/yes.json +14 -0
  215. package/samples/reading-identity/no.json +7 -1
  216. package/samples/reading-identity/yes.json +24 -1
  217. package/vectors/native/authority-preflight.vector.json +55 -0
  218. package/vectors/native/installed-package.vector.json +31 -0
  219. package/vectors/native/materialized-leaf-sequence.vector.json +31 -0
  220. package/vectors/native/module-inventory.vector.json +56 -0
  221. package/vectors/native/native-host.vector.json +214 -0
  222. package/vectors/native/native-probes.vector.json +31 -0
  223. package/vectors/native/native-view-batch.vector.json +31 -0
  224. package/vectors/native/physical-lines.vector.json +105 -0
  225. package/vectors/native/profile-composition.vector.json +53 -0
  226. package/vectors/native/reading-identity.vector.json +38 -0
  227. package/vectors/native/refusals.vector.json +36 -2
  228. package/dist/vendor/library11.js +0 -1
  229. package/dist/vendor/sources.json +0 -1
  230. package/licenses/wasm/bound.txt +0 -21
  231. package/licenses/wasm/jitl-quickjs-ffi-types.txt +0 -21
  232. package/licenses/wasm/jitl-quickjs-wasmfile-release-sync.txt +0 -47
  233. package/licenses/wasm/obligations.txt +0 -21
  234. package/licenses/wasm/quickjs-emscripten-core.txt +0 -21
  235. package/licenses/wasm/topos.txt +0 -21
  236. /package/dist/vendor/{50086958553b9376d600583f7dff354196bfeb41170fc6d1482ca7bea7c493e2.LICENSE → 28cba430228db1c04f446c93f81b09a2705d6bf3e222d35adbe5a4cee4061884.LICENSE} +0 -0
  237. /package/dist/vendor/{b3e938d28f88a1851af303a40c749e12ebd5a686daac4f0b343b5cdd2e040419.LICENSE → 7aca161279d14bc0e054dcc281cd110aeb95be2e026b42fdf527a260e58b2aae.LICENSE} +0 -0
@@ -0,0 +1,10 @@
1
+ [
2
+ {
3
+ "name": "field-notes",
4
+ "carrier": "{\"manifest\":{\"format\":\"esm-file-closure/1\",\"needs\":[{\"name\":\"field-notes\",\"snapshot\":\"sha256:73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae\",\"entry\":\"entry.js\"}],\"modules\":[{\"snapshot\":\"sha256:73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae\",\"coordinate\":\"entry.js\",\"path\":\"modules/73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae/entry.js\"},{\"snapshot\":\"sha256:73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae\",\"coordinate\":\"value.js\",\"digest\":\"sha256:f1670f52eabccbb1f1c1c047ccee88965a894854b9717d470835475b7f7920b1\",\"path\":\"modules/73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae/value.js\"}],\"libraries\":[],\"notices\":[]},\"files\":[{\"path\":\"modules/73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae/entry.js\",\"source\":\"import './value.js'; export const result=7;\"},{\"path\":\"modules/73d7146ce6e337d89811c94fd4848e24d3a9431b01eaf56e422833e31e0a78ae/value.js\",\"source\":\"export const value=7;\"}]}"
5
+ },
6
+ {
7
+ "name": "water-level",
8
+ "carrier": "{\"manifest\":{\"format\":\"esm-file-closure/1\",\"needs\":[{\"name\":\"water-level\",\"snapshot\":\"sha256:d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b\",\"entry\":\"entry.js\"}],\"modules\":[{\"snapshot\":\"sha256:d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b\",\"coordinate\":\"entry.js\",\"path\":\"modules/d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b/entry.js\"},{\"snapshot\":\"sha256:d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b\",\"coordinate\":\"value.js\",\"digest\":\"sha256:ca83bd49a1d3b94db4076def1fdd98150b73b240ed6293a68ffaa2b4ff306825\",\"path\":\"modules/d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b/value.js\"}],\"libraries\":[],\"notices\":[]},\"files\":[{\"path\":\"modules/d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b/entry.js\",\"source\":\"import './value.js'; export const result=13;\"},{\"path\":\"modules/d99ba0cf723d36c49ca5da30d9e1d1fb1afb52159372dd14ea6c1bb3c8dfd60b/value.js\",\"source\":\"export const value=13;\"}]}"
9
+ }
10
+ ]
@@ -0,0 +1,5 @@
1
+ {
2
+ "over": "0..2",
3
+ "changedWitnessResult": "other result",
4
+ "invalidText": "invalid\rline"
5
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "places": [
3
+ "native-lines-one-",
4
+ "native-lines-other-"
5
+ ],
6
+ "coreSource": "// comment\n\nexport const n=1;\n",
7
+ "portsSource": "// comment\r\n\r\nexport const n=2;",
8
+ "within": "0..3"
9
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "intervalWidening": "0..9",
3
+ "alphabetWidening": "a|b|c",
4
+ "changedParent": "changed",
5
+ "disjointInterval": "10..20"
6
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "places": [
3
+ "orchard",
4
+ "harbor"
5
+ ],
6
+ "interval": {
7
+ "parent": "0..5",
8
+ "narrow": "0..3"
9
+ },
10
+ "alphabet": {
11
+ "parent": "a|b",
12
+ "narrow": "a"
13
+ }
14
+ }
@@ -6,7 +6,13 @@
6
6
  "physical input missing",
7
7
  "transitive reference changed",
8
8
  "cancelled before projection",
9
- "handed byte budget exhausted"
9
+ "handed byte budget exhausted",
10
+ "a query stub persists bytes despite returning an unchanged identity",
11
+ "receipt-only projection over an obsolete rendered leaf",
12
+ "byte-only sealing attempts to close an obsolete rendered leaf",
13
+ "selected delivery leaf is missing",
14
+ "selected delivery leaf differs from its native rendering",
15
+ "missing outputs implicitly select a delivery subset"
10
16
  ],
11
17
  "missing": "needs",
12
18
  "integrity": "refuse",
@@ -41,6 +41,29 @@
41
41
  ],
42
42
  "operation": "prepareNativeViewIdentity",
43
43
  "noRootExclusion": true,
44
- "resultBoundToConsumedIdentity": true
44
+ "resultBoundToConsumedIdentity": true,
45
+ "unchangedQueryProtocol": {
46
+ "places": [
47
+ "coastal-readings",
48
+ "archive-register"
49
+ ],
50
+ "repetitionsPerView": 8,
51
+ "persistentFileDelta": 0,
52
+ "persistentByteDelta": 0,
53
+ "treeExclusions": []
54
+ }
55
+ },
56
+ "renderedLeaves": {
57
+ "places": [
58
+ "calibration",
59
+ "inventory"
60
+ ],
61
+ "admittedChange": "sample/edition",
62
+ "nextOrdinaryFold": "renders current bytes and closes",
63
+ "delivery": {
64
+ "selection": "captured from the manifest before copying a closed source",
65
+ "sourceOnlyOutput": "view capability retained, not materialized or certified present",
66
+ "selectedOutput": "same native rendering, public check passes"
67
+ }
45
68
  }
46
69
  }
@@ -0,0 +1,55 @@
1
+ {
2
+ "scope": "conformance/authority-preflight",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "authority-preflight/coverage-and-retirement",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--experimental-strip-types",
12
+ "--import",
13
+ "./test/setup.ts",
14
+ "--test",
15
+ "test/native-authority-card.test.ts",
16
+ "test/authority-dependency-withdrawal.test.ts",
17
+ "test/native-authority-card-view.test.ts"
18
+ ],
19
+ "cwd": ".",
20
+ "inputs": [
21
+ "src/host/native/authority-card.ts",
22
+ "src/cli/accept.ts",
23
+ "src/cli/takes.ts",
24
+ "src/fold/signed.ts",
25
+ "test/native-authority-card.test.ts",
26
+ "test/authority-dependency-withdrawal.test.ts",
27
+ "docs/contracts/authority-preflight.md",
28
+ "samples/authority-preflight/yes.json",
29
+ "samples/authority-preflight/no.json",
30
+ "test/setup.ts",
31
+ "test/support/acting-root.ts",
32
+ "src/host/reference-contracts.ts",
33
+ "docs/contracts/refusals.bound",
34
+ "docs/contracts/standing.bound",
35
+ "src/host/native/reading-witness-admission.ts",
36
+ "src/host/physical-lines.ts",
37
+ "test/native-authority-card-view.test.ts",
38
+ "src/host/native/authority-card-view.ts"
39
+ ],
40
+ "timeoutMs": 30000,
41
+ "maxBytes": 16777216,
42
+ "exit": 0,
43
+ "matches": [
44
+ {
45
+ "stream": "stdout",
46
+ "pattern": "native authority card checks admission and rechecks current grants"
47
+ },
48
+ {
49
+ "stream": "stdout",
50
+ "pattern": "native dependency reading refuses withdrawal through the authority port"
51
+ }
52
+ ]
53
+ }
54
+ ]
55
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "scope": "conformance/installed-package",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "installed-package/native-parameter-cases",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--import",
12
+ "./test/setup.ts",
13
+ "--test",
14
+ "--test-concurrency=1",
15
+ "test/installed-package.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/installed-package.test.ts",
20
+ "test/setup.ts",
21
+ "samples/installed-package/yes.json",
22
+ "samples/installed-package/no.json",
23
+ "docs/contracts/installed-package.md"
24
+ ],
25
+ "timeoutMs": 180000,
26
+ "maxBytes": 16777216,
27
+ "exit": 0,
28
+ "matches": []
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "scope": "conformance/materialized-leaf-sequence",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "materialized-leaf-sequence/native-parameter-cases",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--import",
12
+ "./test/setup.ts",
13
+ "--test",
14
+ "--test-concurrency=1",
15
+ "test/materialized-leaf-sequence.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/materialized-leaf-sequence.test.ts",
20
+ "test/setup.ts",
21
+ "samples/materialized-leaf-sequence/yes.json",
22
+ "samples/materialized-leaf-sequence/no.json",
23
+ "docs/contracts/materialized-leaf-sequence.md"
24
+ ],
25
+ "timeoutMs": 180000,
26
+ "maxBytes": 16777216,
27
+ "exit": 0,
28
+ "matches": []
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "scope": "conformance/module-inventory",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "module-inventory/field-notes",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--input-type=module",
12
+ "-e",
13
+ "import assert from 'node:assert/strict';import{readFileSync}from'node:fs';import{createHash}from'node:crypto';import{moduleInventory}from'@lapxo/bound/closure/native';const digest=b=>'sha256:'+createHash('sha256').update(b).digest('hex'),limits={members:20,bytes:100000,responseBytes:200000},context={scope:'consumer/modules',by:'consumer',at:'policy:module-inventory'},fixture=JSON.parse(readFileSync('samples/module-inventory/yes.json','utf8')).find(one=>one.name==='field-notes'),negative=JSON.parse(readFileSync('samples/no/module-inventory/no.json','utf8')).find(one=>one.name==='field-notes'),yes=new TextEncoder().encode(fixture.carrier),inventory=moduleInventory(yes,fixture.pin,limits,fixture.sources,context);assert.equal(inventory.lines,fixture.expected);assert.equal(inventory.modules.length,2);assert.ok(!inventory.modules.some(one=>one.module==='unreached.js'));assert.equal(moduleInventory(yes,fixture.pin,limits,fixture.sources,context).lines,fixture.expected);const bad=new TextEncoder().encode(negative.carrier);assert.throws(()=>moduleInventory(bad,digest(bad),limits,fixture.sources,context),/REFUSE·closure delivery/);assert.throws(()=>moduleInventory(bad,fixture.pin,limits,fixture.sources,context),/bundle bytes differ/);assert.throws(()=>moduleInventory(yes,fixture.pin,limits,[],context),/source coverage/);console.log('INVENTORY field-notes · 2 modules · exact canonical lines · integrity and coverage refused');"
14
+ ],
15
+ "cwd": ".",
16
+ "inputs": [
17
+ "package.json",
18
+ "samples/module-inventory/yes.json",
19
+ "samples/no/module-inventory/no.json"
20
+ ],
21
+ "timeoutMs": 15000,
22
+ "maxBytes": 262144,
23
+ "exit": 0,
24
+ "matches": [
25
+ {
26
+ "stream": "stdout",
27
+ "pattern": "INVENTORY field-notes · 2 modules · exact canonical lines · integrity and coverage refused"
28
+ }
29
+ ]
30
+ },
31
+ {
32
+ "name": "module-inventory/water-level",
33
+ "program": "runtime",
34
+ "args": [
35
+ "--input-type=module",
36
+ "-e",
37
+ "import assert from 'node:assert/strict';import{readFileSync}from'node:fs';import{createHash}from'node:crypto';import{moduleInventory}from'@lapxo/bound/closure/native';const digest=b=>'sha256:'+createHash('sha256').update(b).digest('hex'),limits={members:20,bytes:100000,responseBytes:200000},context={scope:'consumer/modules',by:'consumer',at:'policy:module-inventory'},fixture=JSON.parse(readFileSync('samples/module-inventory/yes.json','utf8')).find(one=>one.name==='water-level'),negative=JSON.parse(readFileSync('samples/no/module-inventory/no.json','utf8')).find(one=>one.name==='water-level'),yes=new TextEncoder().encode(fixture.carrier),inventory=moduleInventory(yes,fixture.pin,limits,fixture.sources,context);assert.equal(inventory.lines,fixture.expected);assert.equal(inventory.modules.length,2);assert.ok(!inventory.modules.some(one=>one.module==='unreached.js'));assert.equal(moduleInventory(yes,fixture.pin,limits,fixture.sources,context).lines,fixture.expected);const bad=new TextEncoder().encode(negative.carrier);assert.throws(()=>moduleInventory(bad,digest(bad),limits,fixture.sources,context),/REFUSE·closure delivery/);assert.throws(()=>moduleInventory(bad,fixture.pin,limits,fixture.sources,context),/bundle bytes differ/);assert.throws(()=>moduleInventory(yes,fixture.pin,limits,[],context),/source coverage/);console.log('INVENTORY water-level · 2 modules · exact canonical lines · integrity and coverage refused');"
38
+ ],
39
+ "cwd": ".",
40
+ "inputs": [
41
+ "package.json",
42
+ "samples/module-inventory/yes.json",
43
+ "samples/no/module-inventory/no.json"
44
+ ],
45
+ "timeoutMs": 15000,
46
+ "maxBytes": 262144,
47
+ "exit": 0,
48
+ "matches": [
49
+ {
50
+ "stream": "stdout",
51
+ "pattern": "INVENTORY water-level · 2 modules · exact canonical lines · integrity and coverage refused"
52
+ }
53
+ ]
54
+ }
55
+ ]
56
+ }
@@ -57,6 +57,220 @@
57
57
  "pattern": "HOST coastal-survey \u00b7 admitted \u00b7 recovered \u00b7 held without signing \u00b7 altered coverage cancellation format refused"
58
58
  }
59
59
  ]
60
+ },
61
+ {
62
+ "name": "native-host/persistent-catalog",
63
+ "program": "runtime",
64
+ "args": [
65
+ "--experimental-strip-types",
66
+ "--test",
67
+ "--test-name-pattern",
68
+ "persistent native host shares CLI bytes and authority: catalog",
69
+ "test/persistent-host.test.ts"
70
+ ],
71
+ "cwd": ".",
72
+ "inputs": [
73
+ "test/persistent-host.test.ts",
74
+ "test/support/acting-root.ts",
75
+ "samples/native-host/yes.json",
76
+ "samples/native-host/no.json",
77
+ "test/support/pinned-host-instrument.ts"
78
+ ],
79
+ "timeoutMs": 15000,
80
+ "maxBytes": 262144,
81
+ "exit": 0,
82
+ "matches": [
83
+ {
84
+ "stream": "stdout",
85
+ "pattern": "PERSISTENT-HOST catalog \u00b7 CLI identity text sign refusal act matched \u00b7 no retained request files \u00b7 closed"
86
+ }
87
+ ]
88
+ },
89
+ {
90
+ "name": "native-host/persistent-weather",
91
+ "program": "runtime",
92
+ "args": [
93
+ "--experimental-strip-types",
94
+ "--test",
95
+ "--test-name-pattern",
96
+ "persistent native host shares CLI bytes and authority: weather",
97
+ "test/persistent-host.test.ts"
98
+ ],
99
+ "cwd": ".",
100
+ "inputs": [
101
+ "test/persistent-host.test.ts",
102
+ "test/support/acting-root.ts",
103
+ "samples/native-host/yes.json",
104
+ "samples/native-host/no.json",
105
+ "test/support/pinned-host-instrument.ts"
106
+ ],
107
+ "timeoutMs": 15000,
108
+ "maxBytes": 262144,
109
+ "exit": 0,
110
+ "matches": [
111
+ {
112
+ "stream": "stdout",
113
+ "pattern": "PERSISTENT-HOST weather \u00b7 CLI identity text sign refusal act matched \u00b7 no retained request files \u00b7 closed"
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "name": "native-host/persistent-lifecycle",
119
+ "program": "runtime",
120
+ "args": [
121
+ "--experimental-strip-types",
122
+ "--test",
123
+ "--test-name-pattern",
124
+ "environment sanitation|cancelling an active|consumer dies|startup deadline|bounded queue",
125
+ "test/persistent-host.test.ts"
126
+ ],
127
+ "cwd": ".",
128
+ "inputs": [
129
+ "test/persistent-host.test.ts",
130
+ "test/support/acting-root.ts",
131
+ "samples/native-host/yes.json",
132
+ "samples/native-host/no.json",
133
+ "test/support/pinned-host-instrument.ts"
134
+ ],
135
+ "timeoutMs": 15000,
136
+ "maxBytes": 262144,
137
+ "exit": 0,
138
+ "matches": [
139
+ {
140
+ "stream": "stdout",
141
+ "pattern": "a native host exits and removes its scratch when its consumer dies"
142
+ }
143
+ ]
144
+ },
145
+ {
146
+ "name": "native-host/persistent-current-bytes",
147
+ "program": "runtime",
148
+ "args": [
149
+ "--experimental-strip-types",
150
+ "--test",
151
+ "--test-name-pattern",
152
+ "persistent non-view|externally edited public lock|receiver-selected instrument",
153
+ "test/persistent-host.test.ts",
154
+ "test/persistent-current-bytes.test.ts"
155
+ ],
156
+ "cwd": ".",
157
+ "inputs": [
158
+ "test/persistent-host.test.ts",
159
+ "test/persistent-current-bytes.test.ts",
160
+ "test/support/acting-root.ts",
161
+ "samples/native-host/yes.json",
162
+ "samples/native-host/no.json",
163
+ "test/support/pinned-host-instrument.ts"
164
+ ],
165
+ "timeoutMs": 15000,
166
+ "maxBytes": 262144,
167
+ "exit": 0,
168
+ "matches": [
169
+ {
170
+ "stream": "stdout",
171
+ "pattern": "receiver-selected instrument bytes are checked again before sign and land"
172
+ }
173
+ ]
174
+ },
175
+ {
176
+ "name": "native-host/signers-and-foundation",
177
+ "program": "runtime",
178
+ "args": [
179
+ "--experimental-strip-types",
180
+ "--test",
181
+ "--test-name-pattern",
182
+ "host signer selection and birth state",
183
+ "test/persistent-host-gaps.test.ts"
184
+ ],
185
+ "cwd": ".",
186
+ "inputs": [
187
+ "test/persistent-host-gaps.test.ts",
188
+ "test/support/acting-root.ts",
189
+ "test/support/pinned-host-instrument.ts"
190
+ ],
191
+ "timeoutMs": 15000,
192
+ "maxBytes": 262144,
193
+ "exit": 0,
194
+ "matches": [
195
+ {
196
+ "stream": "stdout",
197
+ "pattern": "host signer selection and birth state"
198
+ }
199
+ ]
200
+ },
201
+ {
202
+ "name": "native-host/installed-pin",
203
+ "program": "runtime",
204
+ "args": [
205
+ "--experimental-strip-types",
206
+ "--test",
207
+ "--test-name-pattern",
208
+ "installed instrument pins",
209
+ "test/persistent-host-gaps.test.ts"
210
+ ],
211
+ "cwd": ".",
212
+ "inputs": [
213
+ "test/persistent-host-gaps.test.ts",
214
+ "test/support/acting-root.ts",
215
+ "test/support/pinned-host-instrument.ts"
216
+ ],
217
+ "timeoutMs": 15000,
218
+ "maxBytes": 262144,
219
+ "exit": 0,
220
+ "matches": [
221
+ {
222
+ "stream": "stdout",
223
+ "pattern": "installed instrument pins"
224
+ }
225
+ ]
226
+ },
227
+ {
228
+ "name": "native-host/cross-process-serialization",
229
+ "program": "runtime",
230
+ "args": [
231
+ "--experimental-strip-types",
232
+ "--test",
233
+ "--test-name-pattern",
234
+ "two independent host processes",
235
+ "test/persistent-host-gaps.test.ts"
236
+ ],
237
+ "cwd": ".",
238
+ "inputs": [
239
+ "test/persistent-host-gaps.test.ts",
240
+ "test/support/acting-root.ts",
241
+ "test/support/pinned-host-instrument.ts"
242
+ ],
243
+ "timeoutMs": 15000,
244
+ "maxBytes": 262144,
245
+ "exit": 0,
246
+ "matches": [
247
+ {
248
+ "stream": "stdout",
249
+ "pattern": "two independent host processes"
250
+ }
251
+ ]
252
+ },
253
+ {
254
+ "name": "native-host/request-act-cost",
255
+ "program": "runtime",
256
+ "args": [
257
+ "--experimental-strip-types",
258
+ "--test",
259
+ "test/persistent-act-cost.test.ts"
260
+ ],
261
+ "cwd": ".",
262
+ "inputs": [
263
+ "test/persistent-act-cost.test.ts"
264
+ ],
265
+ "timeoutMs": 15000,
266
+ "maxBytes": 262144,
267
+ "exit": 0,
268
+ "matches": [
269
+ {
270
+ "stream": "stdout",
271
+ "pattern": "request accounting preserves a red"
272
+ }
273
+ ]
60
274
  }
61
275
  ]
62
276
  }
@@ -0,0 +1,31 @@
1
+ {
2
+ "scope": "conformance/native-probes",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "native-probes/native-parameter-cases",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--import",
12
+ "./test/setup.ts",
13
+ "--test",
14
+ "--test-concurrency=1",
15
+ "test/native-probes.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/native-probes.test.ts",
20
+ "test/setup.ts",
21
+ "samples/native-probes/yes.json",
22
+ "samples/native-probes/no.json",
23
+ "docs/contracts/native-probes.md"
24
+ ],
25
+ "timeoutMs": 180000,
26
+ "maxBytes": 16777216,
27
+ "exit": 0,
28
+ "matches": []
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "scope": "conformance/native-view-batch",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "native-view-batch/native-parameter-cases",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--import",
12
+ "./test/setup.ts",
13
+ "--test",
14
+ "--test-concurrency=1",
15
+ "test/native-view-batch.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/native-view-batch.test.ts",
20
+ "test/setup.ts",
21
+ "samples/native-view-batch/yes.json",
22
+ "samples/native-view-batch/no.json",
23
+ "docs/contracts/native-view-batch.md"
24
+ ],
25
+ "timeoutMs": 180000,
26
+ "maxBytes": 16777216,
27
+ "exit": 0,
28
+ "matches": []
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,105 @@
1
+ {
2
+ "scope": "conformance/physical-lines",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "physical-lines/native-parameter-cases",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--import",
12
+ "./test/setup.ts",
13
+ "--test",
14
+ "--test-concurrency=1",
15
+ "test/physical-lines-place.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/physical-lines-place.test.ts",
20
+ "test/setup.ts",
21
+ "samples/physical-lines/yes.json",
22
+ "samples/physical-lines/no.json",
23
+ "docs/contracts/physical-lines.md"
24
+ ],
25
+ "timeoutMs": 180000,
26
+ "maxBytes": 16777216,
27
+ "exit": 0,
28
+ "matches": []
29
+ },
30
+ {
31
+ "name": "physical-lines/actual-native-witness-admission",
32
+ "program": "runtime",
33
+ "args": [
34
+ "--experimental-strip-types",
35
+ "--test",
36
+ "--test-concurrency=1",
37
+ "test/physical-lines-policy-land.test.ts"
38
+ ],
39
+ "cwd": ".",
40
+ "inputs": [
41
+ "test/physical-lines-policy-land.test.ts",
42
+ "test/support/installed-consumer.mjs",
43
+ "test/support/native-physical-place.mjs",
44
+ "test/support/physical-witness-proof.mjs",
45
+ "samples/native/physical-line-reader.source.mjs",
46
+ "samples/native/physical-line-reader.mjs",
47
+ "samples/physical-lines/yes.json",
48
+ "samples/physical-lines/no.json",
49
+ "docs/contracts/reading-witness-admission.md",
50
+ "src/host/native/reading-witness-admission.ts"
51
+ ],
52
+ "timeoutMs": 180000,
53
+ "maxBytes": 1048576,
54
+ "exit": 0,
55
+ "matches": []
56
+ },
57
+ {
58
+ "name": "physical-lines/public-refusals-and-compiled-resolution",
59
+ "program": "runtime",
60
+ "args": [
61
+ "--experimental-strip-types",
62
+ "--test",
63
+ "--test-concurrency=1",
64
+ "test/physical-lines-public-refusals.test.ts"
65
+ ],
66
+ "cwd": ".",
67
+ "inputs": [
68
+ "test/physical-lines-public-refusals.test.ts",
69
+ "test/support/installed-consumer.mjs",
70
+ "docs/contracts/physical-lines.md"
71
+ ],
72
+ "timeoutMs": 30000,
73
+ "maxBytes": 1048576,
74
+ "exit": 0,
75
+ "matches": []
76
+ },
77
+ {
78
+ "name": "physical-lines/source-hook-native-evidence-regression",
79
+ "program": "runtime",
80
+ "args": [
81
+ "--experimental-strip-types",
82
+ "--test",
83
+ "--test-concurrency=1",
84
+ "test/reading-witness-hook.test.ts"
85
+ ],
86
+ "cwd": ".",
87
+ "inputs": [
88
+ "test/reading-witness-hook.test.ts",
89
+ "test/support/installed-consumer.mjs",
90
+ "test/support/native-physical-place.mjs",
91
+ "test/support/physical-witness-proof.mjs",
92
+ "samples/native/physical-line-reader.source.mjs",
93
+ "samples/native/physical-line-reader.mjs",
94
+ "src/host/native/reading-witness-admission.ts",
95
+ "src/host/physical-lines.ts",
96
+ "src/host/call-context.ts",
97
+ "docs/contracts/reading-witness-admission.md"
98
+ ],
99
+ "timeoutMs": 60000,
100
+ "maxBytes": 1048576,
101
+ "exit": 0,
102
+ "matches": []
103
+ }
104
+ ]
105
+ }