@lapxo/bound 0.1.9 → 0.2.0

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 (133) hide show
  1. package/README.md +10 -10
  2. package/TARGET.bound +57 -14
  3. package/assets/wasm/guest.js +4 -0
  4. package/assets/wasm/manifest.json +27 -0
  5. package/assets/wasm/runtime.js +6 -0
  6. package/assets/wasm/runtime.wasm +0 -0
  7. package/dist/cli/pass.js +3 -3
  8. package/dist/cli/place.d.ts +2 -0
  9. package/dist/cli/place.js +7 -4
  10. package/dist/cli/verb.js +43 -6
  11. package/dist/engine/index.d.ts +11 -0
  12. package/dist/engine/index.js +9 -0
  13. package/dist/engine/object.d.ts +17 -0
  14. package/dist/engine/object.js +38 -0
  15. package/dist/fold/closed.d.ts +1 -1
  16. package/dist/fold/closed.js +22 -5
  17. package/dist/fold/digests.js +3 -2
  18. package/dist/fold/object.d.ts +3 -17
  19. package/dist/fold/object.js +2 -38
  20. package/dist/fold/resolved.js +1 -1
  21. package/dist/host/admitted-place.js +4 -1
  22. package/dist/host/cell-receipts.js +1 -1
  23. package/dist/host/objects.d.ts +2 -1
  24. package/dist/host/objects.js +24 -4
  25. package/dist/host/reading-closures.d.ts +2 -0
  26. package/dist/host/reading-closures.js +11 -13
  27. package/dist/host/reference-authenticated.d.ts +28 -0
  28. package/dist/host/reference-authenticated.js +84 -0
  29. package/dist/host/reference-native.d.ts +10 -0
  30. package/dist/host/reference-native.js +50 -0
  31. package/dist/host/reference-profile.d.ts +23 -0
  32. package/dist/host/reference-profile.js +62 -0
  33. package/dist/host/reference.d.ts +6 -0
  34. package/dist/host/reference.js +24 -0
  35. package/dist/host/selected-topos.d.ts +1 -1
  36. package/dist/host/selected-topos.js +9 -1
  37. package/dist/observe/regions.d.ts +4 -0
  38. package/dist/observe/regions.js +109 -1
  39. package/dist/wasm/adapter.d.ts +51 -0
  40. package/dist/wasm/adapter.js +180 -0
  41. package/dist/wasm/node-worker.d.ts +1 -0
  42. package/dist/wasm/node-worker.js +13 -0
  43. package/dist/wasm/object.d.ts +8 -0
  44. package/dist/wasm/object.js +76 -0
  45. package/dist/wasm/worker.d.ts +1 -0
  46. package/dist/wasm/worker.js +7 -0
  47. package/docs/contracts/authenticated-reference.publication.json +25 -0
  48. package/docs/contracts/engine-object-projection.publication.json +25 -0
  49. package/docs/contracts/engine.md +39 -0
  50. package/docs/contracts/native-publication.inventory.json +8 -0
  51. package/docs/contracts/optional-wasm-adapter.publication.json +25 -0
  52. package/docs/contracts/publication-additions.inventory.json +8 -0
  53. package/docs/contracts/reference-port.md +33 -0
  54. package/docs/contracts/reference-port.publication.json +25 -0
  55. package/licenses/wasm/bound.txt +21 -0
  56. package/licenses/wasm/fast-text-encoding.txt +201 -0
  57. package/licenses/wasm/jitl-quickjs-ffi-types.txt +21 -0
  58. package/licenses/wasm/jitl-quickjs-wasmfile-release-sync.txt +47 -0
  59. package/licenses/wasm/obligations.txt +21 -0
  60. package/licenses/wasm/quickjs-emscripten-core.txt +21 -0
  61. package/licenses/wasm/topos.txt +21 -0
  62. package/package.json +94 -4
  63. package/receipts.bound +7672 -613
  64. package/samples/authenticated-reference/no.json +31 -0
  65. package/samples/authenticated-reference/yes/editorial-state/TARGET.bound +57 -0
  66. package/samples/authenticated-reference/yes/editorial-state/inputs/arrival.json +1 -0
  67. package/samples/authenticated-reference/yes/editorial-state/inputs/coverage.json +1 -0
  68. package/samples/authenticated-reference/yes/editorial-state/inputs/era.json +1 -0
  69. package/samples/authenticated-reference/yes/editorial-state/inputs/order.json +1 -0
  70. package/samples/authenticated-reference/yes/editorial-state/inputs/signature.json +1 -0
  71. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.arrival.json +1 -0
  72. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.coverage.json +1 -0
  73. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.era.json +1 -0
  74. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.order.json +1 -0
  75. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.signature.json +1 -0
  76. package/samples/authenticated-reference/yes/editorial-state/inputs/transport.yes.json +1 -0
  77. package/samples/authenticated-reference/yes/editorial-state/inputs/yes.json +1 -0
  78. package/samples/authenticated-reference/yes/weather-reading/TARGET.bound +57 -0
  79. package/samples/authenticated-reference/yes/weather-reading/inputs/arrival.json +1 -0
  80. package/samples/authenticated-reference/yes/weather-reading/inputs/coverage.json +1 -0
  81. package/samples/authenticated-reference/yes/weather-reading/inputs/era.json +1 -0
  82. package/samples/authenticated-reference/yes/weather-reading/inputs/order.json +1 -0
  83. package/samples/authenticated-reference/yes/weather-reading/inputs/signature.json +1 -0
  84. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.arrival.json +1 -0
  85. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.coverage.json +1 -0
  86. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.era.json +1 -0
  87. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.order.json +1 -0
  88. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.signature.json +1 -0
  89. package/samples/authenticated-reference/yes/weather-reading/inputs/transport.yes.json +1 -0
  90. package/samples/authenticated-reference/yes/weather-reading/inputs/yes.json +1 -0
  91. package/samples/authenticated-reference/yes.json +19 -0
  92. package/samples/engine-alphabet/TARGET.bound +29 -0
  93. package/samples/engine-alphabet/inputs/sample.json +323 -0
  94. package/samples/engine-alphabet/package.json +1 -0
  95. package/samples/engine-alphabet/reader.js +1457 -0
  96. package/samples/engine-alphabet/receipts.bound +12 -0
  97. package/samples/engine-interval/TARGET.bound +29 -0
  98. package/samples/engine-interval/inputs/sample.json +277 -0
  99. package/samples/engine-interval/package.json +1 -0
  100. package/samples/engine-interval/reader.js +1457 -0
  101. package/samples/engine-interval/receipts.bound +12 -0
  102. package/samples/no/engine-order/TARGET.bound +29 -0
  103. package/samples/no/engine-order/inputs/sample.json +277 -0
  104. package/samples/no/engine-order/package.json +1 -0
  105. package/samples/no/engine-order/reader.js +1457 -0
  106. package/samples/reference-port/no/catalog/standing.json +1 -0
  107. package/samples/reference-port/no/catalog/transport.json +1 -0
  108. package/samples/reference-port/no/route-notes/standing.json +1 -0
  109. package/samples/reference-port/no/route-notes/transport.json +1 -0
  110. package/samples/reference-port/yes/catalog/TARGET.bound +33 -0
  111. package/samples/reference-port/yes/catalog/standing.json +1 -0
  112. package/samples/reference-port/yes/catalog/transport.json +1 -0
  113. package/samples/reference-port/yes/route-notes/TARGET.bound +33 -0
  114. package/samples/reference-port/yes/route-notes/standing.json +1 -0
  115. package/samples/reference-port/yes/route-notes/transport.json +1 -0
  116. package/samples/wasm/editorial-notes/TARGET.bound +65 -0
  117. package/samples/wasm/editorial-notes/esm.bound +59 -0
  118. package/samples/wasm/editorial-notes/no-deadline.bound +65 -0
  119. package/samples/wasm/editorial-notes/no-memory.bound +65 -0
  120. package/samples/wasm/editorial-notes/no-missing-limit.bound +64 -0
  121. package/samples/wasm/editorial-notes/receipts.bound +1 -0
  122. package/samples/wasm/water-level/TARGET.bound +65 -0
  123. package/samples/wasm/water-level/esm.bound +59 -0
  124. package/samples/wasm/water-level/no-deadline.bound +65 -0
  125. package/samples/wasm/water-level/no-memory.bound +65 -0
  126. package/samples/wasm/water-level/no-missing-limit.bound +64 -0
  127. package/samples/wasm/water-level/receipts.bound +1 -0
  128. package/vectors/engine-object.cli.json +548 -0
  129. package/vectors/native/authenticated-reference-formation.vector.json +53 -0
  130. package/vectors/native/authenticated-reference.cli.json +157 -0
  131. package/vectors/native/authenticated-reference.vector.json +440 -0
  132. package/vectors/reference-port.cli.json +688 -0
  133. package/vectors/wasm-object.cli.json +452 -0
@@ -0,0 +1,452 @@
1
+ {
2
+ "scope": "optional-wasm-adapter/conformance",
3
+ "measure": "count",
4
+ "result": "failures",
5
+ "execution": "independent",
6
+ "cases": [
7
+ {
8
+ "program": "runtime",
9
+ "args": [
10
+ "../../../dist/cli/verb.js",
11
+ "land"
12
+ ],
13
+ "cwd": "samples/wasm/water-level",
14
+ "inputs": [
15
+ "dist/cli/verb.js",
16
+ "dist/wasm/node-worker.js",
17
+ "package.json",
18
+ "assets/wasm/manifest.json",
19
+ "assets/wasm/runtime.js",
20
+ "assets/wasm/runtime.wasm",
21
+ "assets/wasm/guest.js",
22
+ "samples/wasm/water-level/TARGET.bound"
23
+ ],
24
+ "timeoutMs": 20000,
25
+ "maxBytes": 1048576,
26
+ "exit": 0,
27
+ "matches": [
28
+ {
29
+ "stream": "stdout",
30
+ "pattern": "FACT\\s+landed"
31
+ }
32
+ ]
33
+ },
34
+ {
35
+ "program": "runtime",
36
+ "args": [
37
+ "../../../dist/cli/verb.js",
38
+ "fold",
39
+ "TARGET.bound",
40
+ "--as",
41
+ "object"
42
+ ],
43
+ "cwd": "samples/wasm/water-level",
44
+ "inputs": [
45
+ "dist/cli/verb.js",
46
+ "dist/wasm/node-worker.js",
47
+ "package.json",
48
+ "assets/wasm/manifest.json",
49
+ "assets/wasm/runtime.js",
50
+ "assets/wasm/runtime.wasm",
51
+ "assets/wasm/guest.js",
52
+ "samples/wasm/water-level/TARGET.bound"
53
+ ],
54
+ "timeoutMs": 20000,
55
+ "maxBytes": 1048576,
56
+ "exit": 0,
57
+ "matches": [
58
+ {
59
+ "stream": "stdout",
60
+ "pattern": "^CELL \\{\"cell\":\"B\",\"state\":\"REQUIRED\"",
61
+ "flags": "m"
62
+ },
63
+ {
64
+ "stream": "stdout",
65
+ "pattern": "^CELL \\{\"cell\":\"C\",\"state\":\"FORBIDDEN\"",
66
+ "flags": "m"
67
+ },
68
+ {
69
+ "stream": "stdout",
70
+ "pattern": "^CELL \\{\"cell\":\"G\",\"state\":\"CONFLICT\"",
71
+ "flags": "m"
72
+ },
73
+ {
74
+ "stream": "stdout",
75
+ "pattern": "^CELL \\{\"cell\":\"D\",\"state\":\"REQUIRED\"",
76
+ "flags": "m"
77
+ },
78
+ {
79
+ "stream": "stdout",
80
+ "pattern": "FACT\\s+object fold 4 cells",
81
+ "flags": "m"
82
+ }
83
+ ]
84
+ },
85
+ {
86
+ "program": "runtime",
87
+ "args": [
88
+ "../../../dist/cli/verb.js",
89
+ "fold",
90
+ "esm.bound",
91
+ "--as",
92
+ "object"
93
+ ],
94
+ "cwd": "samples/wasm/water-level",
95
+ "inputs": [
96
+ "dist/cli/verb.js",
97
+ "dist/wasm/node-worker.js",
98
+ "package.json",
99
+ "assets/wasm/manifest.json",
100
+ "assets/wasm/runtime.js",
101
+ "assets/wasm/runtime.wasm",
102
+ "assets/wasm/guest.js",
103
+ "samples/wasm/water-level/esm.bound"
104
+ ],
105
+ "timeoutMs": 20000,
106
+ "maxBytes": 1048576,
107
+ "exit": 0,
108
+ "matches": [
109
+ {
110
+ "stream": "stdout",
111
+ "pattern": "^CELL \\{\"cell\":\"B\",\"state\":\"REQUIRED\"",
112
+ "flags": "m"
113
+ },
114
+ {
115
+ "stream": "stdout",
116
+ "pattern": "^CELL \\{\"cell\":\"C\",\"state\":\"FORBIDDEN\"",
117
+ "flags": "m"
118
+ },
119
+ {
120
+ "stream": "stdout",
121
+ "pattern": "^CELL \\{\"cell\":\"G\",\"state\":\"CONFLICT\"",
122
+ "flags": "m"
123
+ },
124
+ {
125
+ "stream": "stdout",
126
+ "pattern": "^CELL \\{\"cell\":\"D\",\"state\":\"REQUIRED\"",
127
+ "flags": "m"
128
+ },
129
+ {
130
+ "stream": "stdout",
131
+ "pattern": "FACT\\s+object fold 4 cells",
132
+ "flags": "m"
133
+ }
134
+ ]
135
+ },
136
+ {
137
+ "program": "runtime",
138
+ "args": [
139
+ "../../../dist/cli/verb.js",
140
+ "fold",
141
+ "no-missing-limit.bound",
142
+ "--as",
143
+ "object"
144
+ ],
145
+ "cwd": "samples/wasm/water-level",
146
+ "inputs": [
147
+ "dist/cli/verb.js",
148
+ "dist/wasm/node-worker.js",
149
+ "package.json",
150
+ "assets/wasm/manifest.json",
151
+ "assets/wasm/runtime.js",
152
+ "assets/wasm/runtime.wasm",
153
+ "assets/wasm/guest.js",
154
+ "samples/wasm/water-level/no-missing-limit.bound"
155
+ ],
156
+ "timeoutMs": 20000,
157
+ "maxBytes": 1048576,
158
+ "exit": 1,
159
+ "matches": [
160
+ {
161
+ "stream": "stderr",
162
+ "pattern": "^[^\\s:]+: REFUSE·wasm object missing or ambiguous stack limit",
163
+ "flags": "m"
164
+ }
165
+ ]
166
+ },
167
+ {
168
+ "program": "runtime",
169
+ "args": [
170
+ "../../../dist/cli/verb.js",
171
+ "fold",
172
+ "no-memory.bound",
173
+ "--as",
174
+ "object"
175
+ ],
176
+ "cwd": "samples/wasm/water-level",
177
+ "inputs": [
178
+ "dist/cli/verb.js",
179
+ "dist/wasm/node-worker.js",
180
+ "package.json",
181
+ "assets/wasm/manifest.json",
182
+ "assets/wasm/runtime.js",
183
+ "assets/wasm/runtime.wasm",
184
+ "assets/wasm/guest.js",
185
+ "samples/wasm/water-level/no-memory.bound"
186
+ ],
187
+ "timeoutMs": 20000,
188
+ "maxBytes": 1048576,
189
+ "exit": 1,
190
+ "matches": [
191
+ {
192
+ "stream": "stderr",
193
+ "pattern": "^[^\\s:]+: REFUSE·wasm initialized memory [0-9]+ exceeds declared memory 1",
194
+ "flags": "m"
195
+ }
196
+ ]
197
+ },
198
+ {
199
+ "program": "runtime",
200
+ "args": [
201
+ "../../../dist/cli/verb.js",
202
+ "fold",
203
+ "no-deadline.bound",
204
+ "--as",
205
+ "object"
206
+ ],
207
+ "cwd": "samples/wasm/water-level",
208
+ "inputs": [
209
+ "dist/cli/verb.js",
210
+ "dist/wasm/node-worker.js",
211
+ "package.json",
212
+ "assets/wasm/manifest.json",
213
+ "assets/wasm/runtime.js",
214
+ "assets/wasm/runtime.wasm",
215
+ "assets/wasm/guest.js",
216
+ "samples/wasm/water-level/no-deadline.bound"
217
+ ],
218
+ "timeoutMs": 20000,
219
+ "maxBytes": 1048576,
220
+ "exit": 1,
221
+ "matches": [
222
+ {
223
+ "stream": "stderr",
224
+ "pattern": "^[^\\s:]+: REFUSE·wasm worker lifetime",
225
+ "flags": "m"
226
+ }
227
+ ]
228
+ },
229
+ {
230
+ "program": "runtime",
231
+ "args": [
232
+ "../../../dist/cli/verb.js",
233
+ "land"
234
+ ],
235
+ "cwd": "samples/wasm/editorial-notes",
236
+ "inputs": [
237
+ "dist/cli/verb.js",
238
+ "dist/wasm/node-worker.js",
239
+ "package.json",
240
+ "assets/wasm/manifest.json",
241
+ "assets/wasm/runtime.js",
242
+ "assets/wasm/runtime.wasm",
243
+ "assets/wasm/guest.js",
244
+ "samples/wasm/editorial-notes/TARGET.bound"
245
+ ],
246
+ "timeoutMs": 20000,
247
+ "maxBytes": 1048576,
248
+ "exit": 0,
249
+ "matches": [
250
+ {
251
+ "stream": "stdout",
252
+ "pattern": "FACT\\s+landed"
253
+ }
254
+ ]
255
+ },
256
+ {
257
+ "program": "runtime",
258
+ "args": [
259
+ "../../../dist/cli/verb.js",
260
+ "fold",
261
+ "TARGET.bound",
262
+ "--as",
263
+ "object"
264
+ ],
265
+ "cwd": "samples/wasm/editorial-notes",
266
+ "inputs": [
267
+ "dist/cli/verb.js",
268
+ "dist/wasm/node-worker.js",
269
+ "package.json",
270
+ "assets/wasm/manifest.json",
271
+ "assets/wasm/runtime.js",
272
+ "assets/wasm/runtime.wasm",
273
+ "assets/wasm/guest.js",
274
+ "samples/wasm/editorial-notes/TARGET.bound"
275
+ ],
276
+ "timeoutMs": 20000,
277
+ "maxBytes": 1048576,
278
+ "exit": 0,
279
+ "matches": [
280
+ {
281
+ "stream": "stdout",
282
+ "pattern": "^CELL \\{\"cell\":\"B\",\"state\":\"REQUIRED\"",
283
+ "flags": "m"
284
+ },
285
+ {
286
+ "stream": "stdout",
287
+ "pattern": "^CELL \\{\"cell\":\"C\",\"state\":\"FORBIDDEN\"",
288
+ "flags": "m"
289
+ },
290
+ {
291
+ "stream": "stdout",
292
+ "pattern": "^CELL \\{\"cell\":\"G\",\"state\":\"CONFLICT\"",
293
+ "flags": "m"
294
+ },
295
+ {
296
+ "stream": "stdout",
297
+ "pattern": "^CELL \\{\"cell\":\"D\",\"state\":\"REQUIRED\"",
298
+ "flags": "m"
299
+ },
300
+ {
301
+ "stream": "stdout",
302
+ "pattern": "FACT\\s+object fold 4 cells",
303
+ "flags": "m"
304
+ }
305
+ ]
306
+ },
307
+ {
308
+ "program": "runtime",
309
+ "args": [
310
+ "../../../dist/cli/verb.js",
311
+ "fold",
312
+ "esm.bound",
313
+ "--as",
314
+ "object"
315
+ ],
316
+ "cwd": "samples/wasm/editorial-notes",
317
+ "inputs": [
318
+ "dist/cli/verb.js",
319
+ "dist/wasm/node-worker.js",
320
+ "package.json",
321
+ "assets/wasm/manifest.json",
322
+ "assets/wasm/runtime.js",
323
+ "assets/wasm/runtime.wasm",
324
+ "assets/wasm/guest.js",
325
+ "samples/wasm/editorial-notes/esm.bound"
326
+ ],
327
+ "timeoutMs": 20000,
328
+ "maxBytes": 1048576,
329
+ "exit": 0,
330
+ "matches": [
331
+ {
332
+ "stream": "stdout",
333
+ "pattern": "^CELL \\{\"cell\":\"B\",\"state\":\"REQUIRED\"",
334
+ "flags": "m"
335
+ },
336
+ {
337
+ "stream": "stdout",
338
+ "pattern": "^CELL \\{\"cell\":\"C\",\"state\":\"FORBIDDEN\"",
339
+ "flags": "m"
340
+ },
341
+ {
342
+ "stream": "stdout",
343
+ "pattern": "^CELL \\{\"cell\":\"G\",\"state\":\"CONFLICT\"",
344
+ "flags": "m"
345
+ },
346
+ {
347
+ "stream": "stdout",
348
+ "pattern": "^CELL \\{\"cell\":\"D\",\"state\":\"REQUIRED\"",
349
+ "flags": "m"
350
+ },
351
+ {
352
+ "stream": "stdout",
353
+ "pattern": "FACT\\s+object fold 4 cells",
354
+ "flags": "m"
355
+ }
356
+ ]
357
+ },
358
+ {
359
+ "program": "runtime",
360
+ "args": [
361
+ "../../../dist/cli/verb.js",
362
+ "fold",
363
+ "no-missing-limit.bound",
364
+ "--as",
365
+ "object"
366
+ ],
367
+ "cwd": "samples/wasm/editorial-notes",
368
+ "inputs": [
369
+ "dist/cli/verb.js",
370
+ "dist/wasm/node-worker.js",
371
+ "package.json",
372
+ "assets/wasm/manifest.json",
373
+ "assets/wasm/runtime.js",
374
+ "assets/wasm/runtime.wasm",
375
+ "assets/wasm/guest.js",
376
+ "samples/wasm/editorial-notes/no-missing-limit.bound"
377
+ ],
378
+ "timeoutMs": 20000,
379
+ "maxBytes": 1048576,
380
+ "exit": 1,
381
+ "matches": [
382
+ {
383
+ "stream": "stderr",
384
+ "pattern": "^[^\\s:]+: REFUSE·wasm object missing or ambiguous stack limit",
385
+ "flags": "m"
386
+ }
387
+ ]
388
+ },
389
+ {
390
+ "program": "runtime",
391
+ "args": [
392
+ "../../../dist/cli/verb.js",
393
+ "fold",
394
+ "no-memory.bound",
395
+ "--as",
396
+ "object"
397
+ ],
398
+ "cwd": "samples/wasm/editorial-notes",
399
+ "inputs": [
400
+ "dist/cli/verb.js",
401
+ "dist/wasm/node-worker.js",
402
+ "package.json",
403
+ "assets/wasm/manifest.json",
404
+ "assets/wasm/runtime.js",
405
+ "assets/wasm/runtime.wasm",
406
+ "assets/wasm/guest.js",
407
+ "samples/wasm/editorial-notes/no-memory.bound"
408
+ ],
409
+ "timeoutMs": 20000,
410
+ "maxBytes": 1048576,
411
+ "exit": 1,
412
+ "matches": [
413
+ {
414
+ "stream": "stderr",
415
+ "pattern": "^[^\\s:]+: REFUSE·wasm initialized memory [0-9]+ exceeds declared memory 1",
416
+ "flags": "m"
417
+ }
418
+ ]
419
+ },
420
+ {
421
+ "program": "runtime",
422
+ "args": [
423
+ "../../../dist/cli/verb.js",
424
+ "fold",
425
+ "no-deadline.bound",
426
+ "--as",
427
+ "object"
428
+ ],
429
+ "cwd": "samples/wasm/editorial-notes",
430
+ "inputs": [
431
+ "dist/cli/verb.js",
432
+ "dist/wasm/node-worker.js",
433
+ "package.json",
434
+ "assets/wasm/manifest.json",
435
+ "assets/wasm/runtime.js",
436
+ "assets/wasm/runtime.wasm",
437
+ "assets/wasm/guest.js",
438
+ "samples/wasm/editorial-notes/no-deadline.bound"
439
+ ],
440
+ "timeoutMs": 20000,
441
+ "maxBytes": 1048576,
442
+ "exit": 1,
443
+ "matches": [
444
+ {
445
+ "stream": "stderr",
446
+ "pattern": "^[^\\s:]+: REFUSE·wasm worker lifetime",
447
+ "flags": "m"
448
+ }
449
+ ]
450
+ }
451
+ ]
452
+ }