@lapxo/bound 0.2.2 → 0.2.4

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 (79) hide show
  1. package/.github/workflows/release.yml +67 -0
  2. package/.github/workflows/test.yml +35 -0
  3. package/CITATION.cff +19 -0
  4. package/TARGET.bound +80 -21
  5. package/dist/cli/accept.js +103 -71
  6. package/dist/cli/place.js +3 -2
  7. package/dist/cli/standing-result.js +3 -5
  8. package/dist/cli/takes.js +4 -3
  9. package/dist/cli/verb.js +2 -1
  10. package/dist/engine/ports.d.ts +6 -1
  11. package/dist/engine/ports.js +23 -9
  12. package/dist/fold/claims.d.ts +29 -0
  13. package/dist/fold/claims.js +2 -1
  14. package/dist/fold/closed.js +2 -1
  15. package/dist/fold/digests.js +7 -7
  16. package/dist/host/admitted-place.js +3 -31
  17. package/dist/host/call-context.d.ts +20 -0
  18. package/dist/host/call-context.js +14 -0
  19. package/dist/host/capsule-process.js +2 -1
  20. package/dist/host/capsule.js +7 -4
  21. package/dist/host/commit-result.d.ts +6 -0
  22. package/dist/host/commit-result.js +5 -0
  23. package/dist/host/contextual-place.js +9 -14
  24. package/dist/host/host-controls.js +19 -0
  25. package/dist/host/in-process-act.d.ts +82 -0
  26. package/dist/host/in-process-act.js +84 -0
  27. package/dist/host/in-process-context.d.ts +46 -0
  28. package/dist/host/in-process-context.js +91 -0
  29. package/dist/host/in-process-root.d.ts +117 -0
  30. package/dist/host/in-process-root.js +84 -0
  31. package/dist/host/in-process.d.ts +41 -0
  32. package/dist/host/in-process.js +55 -0
  33. package/dist/host/index.d.ts +15 -0
  34. package/dist/host/index.js +7 -0
  35. package/dist/host/native/loader.js +1 -1
  36. package/dist/host/native/module-closure.d.ts +35 -0
  37. package/dist/host/native/module-closure.js +34 -3
  38. package/dist/host/native/module-delivery.d.ts +62 -0
  39. package/dist/host/native/module-delivery.js +151 -0
  40. package/dist/host/native/module-syntax.js +3 -1
  41. package/dist/host/native-receiver.d.ts +19 -0
  42. package/dist/host/native-receiver.js +25 -0
  43. package/dist/host/order.js +2 -0
  44. package/dist/host/place-act-transaction.d.ts +24 -0
  45. package/dist/host/place-act-transaction.js +78 -0
  46. package/dist/host/place-clock-selection.d.ts +55 -0
  47. package/dist/host/place-clock-selection.js +1 -1
  48. package/dist/host/ports/local-act.d.ts +44 -0
  49. package/dist/host/ports/local-act.js +13 -2
  50. package/dist/host/ports/place-act.d.ts +49 -0
  51. package/dist/host/ports/place-act.js +19 -54
  52. package/dist/host/ports/publication.d.ts +10 -0
  53. package/dist/host/root-clock-source.d.ts +86 -0
  54. package/dist/host/root-clock-source.js +7 -5
  55. package/dist/host/signature-era.js +12 -0
  56. package/dist/host/signing.js +1 -1
  57. package/dist/host/source-content.js +2 -1
  58. package/dist/host/standing-carrier.js +18 -0
  59. package/dist/host/standing-projection.js +50 -0
  60. package/dist/land/act.js +60 -26
  61. package/dist/observe/run.js +2 -1
  62. package/dist/observe/runner.js +16 -8
  63. package/docs/contracts/closure-delivery.md +23 -0
  64. package/docs/contracts/closure-delivery.publication.json +25 -0
  65. package/docs/contracts/native-host.md +21 -0
  66. package/docs/contracts/native-host.publication.json +25 -0
  67. package/docs/contracts/native-publication.inventory.json +2 -1
  68. package/docs/contracts/publication.inventory.json +29 -0
  69. package/docs/guide.md +10 -0
  70. package/docs/reference.md +39 -0
  71. package/docs/why.md +109 -0
  72. package/package.json +43 -2
  73. package/receipts.bound +10405 -9625
  74. package/samples/module-delivery/inputs/delivery.json +1 -0
  75. package/samples/native-host/no.json +10 -0
  76. package/samples/native-host/yes.json +20 -0
  77. package/samples/no/module-delivery/delivery.json +1 -0
  78. package/vectors/native/module-delivery.vector.json +32 -0
  79. package/vectors/native/native-host.vector.json +62 -0
@@ -0,0 +1,10 @@
1
+ {
2
+ "profile": "native-host@1",
3
+ "cases": [
4
+ "altered lot bytes",
5
+ "uncovered signer",
6
+ "cancelled before commit",
7
+ "noncanonical unsigned Root lot"
8
+ ],
9
+ "expected": "refuse without a visible act or an additional signature"
10
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "profile": "native-host@1",
3
+ "places": [
4
+ {
5
+ "name": "seed-library",
6
+ "scope": "sample/accession",
7
+ "value": "oat-archive"
8
+ },
9
+ {
10
+ "name": "coastal-survey",
11
+ "scope": "sample/tide-station",
12
+ "value": "outer-bay"
13
+ }
14
+ ],
15
+ "expected": [
16
+ "landed",
17
+ "historical recovery",
18
+ "already-held without signing"
19
+ ]
20
+ }
@@ -0,0 +1 @@
1
+ {"format":"esm-file-closure/1","manifest":null,"files":[]}
@@ -0,0 +1,32 @@
1
+ {
2
+ "scope": "conformance/closure-delivery",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "closure-delivery/published-carriers",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--input-type=module",
12
+ "-e",
13
+ "import assert from 'node:assert/strict';import{readFileSync}from'node:fs';import{verifyModuleDelivery}from'@lapxo/bound/closure/native';const pin='sha256:a6df1d11537a0792c9772b1874c7e127e0fda22203f756d6f0eb104d072a9df1',limits={members:1000,bytes:4194304,responseBytes:8388608};const yes=verifyModuleDelivery(readFileSync('samples/module-delivery/inputs/delivery.json'),pin,limits);assert.equal(yes.manifest.modules.length,87);assert.equal(yes.manifest.notices.length,3);assert.throws(()=>verifyModuleDelivery(readFileSync('samples/no/module-delivery/delivery.json'),pin,limits),/bundle bytes differ/);console.log('DELIVERY 87 modules · 3 notices · exact carrier verified · changed carrier refused');"
14
+ ],
15
+ "cwd": ".",
16
+ "inputs": [
17
+ "package.json",
18
+ "samples/module-delivery/inputs/delivery.json",
19
+ "samples/no/module-delivery/delivery.json"
20
+ ],
21
+ "timeoutMs": 15000,
22
+ "maxBytes": 262144,
23
+ "exit": 0,
24
+ "matches": [
25
+ {
26
+ "stream": "stdout",
27
+ "pattern": "DELIVERY 87 modules · 3 notices · exact carrier verified · changed carrier refused"
28
+ }
29
+ ]
30
+ }
31
+ ]
32
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "scope": "conformance/native-host",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "name": "native-host/seed-library",
9
+ "program": "runtime",
10
+ "args": [
11
+ "--experimental-strip-types",
12
+ "--test",
13
+ "--test-name-pattern",
14
+ "public compiled host consumer: seed-library",
15
+ "test/host-api.test.ts"
16
+ ],
17
+ "cwd": ".",
18
+ "inputs": [
19
+ "test/host-api.test.ts",
20
+ "test/support/acting-root.ts",
21
+ "samples/native-host/yes.json",
22
+ "samples/native-host/no.json"
23
+ ],
24
+ "timeoutMs": 15000,
25
+ "maxBytes": 262144,
26
+ "exit": 0,
27
+ "matches": [
28
+ {
29
+ "stream": "stdout",
30
+ "pattern": "HOST seed-library \u00b7 admitted \u00b7 recovered \u00b7 held without signing \u00b7 altered coverage cancellation format refused"
31
+ }
32
+ ]
33
+ },
34
+ {
35
+ "name": "native-host/coastal-survey",
36
+ "program": "runtime",
37
+ "args": [
38
+ "--experimental-strip-types",
39
+ "--test",
40
+ "--test-name-pattern",
41
+ "public compiled host consumer: coastal-survey",
42
+ "test/host-api.test.ts"
43
+ ],
44
+ "cwd": ".",
45
+ "inputs": [
46
+ "test/host-api.test.ts",
47
+ "test/support/acting-root.ts",
48
+ "samples/native-host/yes.json",
49
+ "samples/native-host/no.json"
50
+ ],
51
+ "timeoutMs": 15000,
52
+ "maxBytes": 262144,
53
+ "exit": 0,
54
+ "matches": [
55
+ {
56
+ "stream": "stdout",
57
+ "pattern": "HOST coastal-survey \u00b7 admitted \u00b7 recovered \u00b7 held without signing \u00b7 altered coverage cancellation format refused"
58
+ }
59
+ ]
60
+ }
61
+ ]
62
+ }