@intentius/chant 0.124.17 → 0.124.18

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 (115) hide show
  1. package/dist/__golden__/wave-loop/fan-out-applied.json +511 -0
  2. package/dist/__golden__/wave-loop/fan-out-apply-fails.json +406 -0
  3. package/dist/__golden__/wave-loop/fan-out-gated.json +707 -0
  4. package/dist/__golden__/wave-loop/fan-out-no-members.json +898 -0
  5. package/dist/__golden__/wave-loop/fan-out-only.json +514 -0
  6. package/dist/__golden__/wave-loop/fan-out-plan-fails.json +359 -0
  7. package/dist/__golden__/wave-loop/fan-out-same-root.json +311 -0
  8. package/dist/__golden__/wave-loop/op-by-apply-after-fails.json +401 -0
  9. package/dist/__golden__/wave-loop/op-by-apply-hold.json +756 -0
  10. package/dist/__golden__/wave-loop/op-by-apply-ignored.json +340 -0
  11. package/dist/__golden__/wave-loop/op-by-apply-pass.json +400 -0
  12. package/dist/__golden__/wave-loop/op-by-apply-skip.json +404 -0
  13. package/dist/__golden__/wave-loop/op-cost-member-clash.json +62 -0
  14. package/dist/__golden__/wave-loop/op-cost-member.json +191 -0
  15. package/dist/__golden__/wave-loop/op-denied-source.json +407 -0
  16. package/dist/__golden__/wave-loop/op-denied.json +399 -0
  17. package/dist/__golden__/wave-loop/op-discover-rest-short.json +92 -0
  18. package/dist/__golden__/wave-loop/op-discover-rest-stops.json +340 -0
  19. package/dist/__golden__/wave-loop/op-discover-rest.json +659 -0
  20. package/dist/__golden__/wave-loop/op-discover-wide.json +290 -0
  21. package/dist/__golden__/wave-loop/op-held-on-again.json +176 -0
  22. package/dist/__golden__/wave-loop/op-held-on-before-apply.json +689 -0
  23. package/dist/__golden__/wave-loop/op-held-on.json +1455 -0
  24. package/dist/__golden__/wave-loop/op-hooks-apply-fails.json +673 -0
  25. package/dist/__golden__/wave-loop/op-hooks-fail-after-apply.json +737 -0
  26. package/dist/__golden__/wave-loop/op-hooks-fail-before-apply.json +450 -0
  27. package/dist/__golden__/wave-loop/op-hooks-fail-before-plan.json +97 -0
  28. package/dist/__golden__/wave-loop/op-hooks-held.json +1059 -0
  29. package/dist/__golden__/wave-loop/op-hooks-hold-before-apply.json +693 -0
  30. package/dist/__golden__/wave-loop/op-hooks-pass.json +735 -0
  31. package/dist/__golden__/wave-loop/op-hooks-refused-at-base.json +148 -0
  32. package/dist/__golden__/wave-loop/op-hooks-share.json +1225 -0
  33. package/dist/__golden__/wave-loop/op-outcome-held.json +202 -0
  34. package/dist/__golden__/wave-loop/op-outcome-replan-approved.json +286 -0
  35. package/dist/__golden__/wave-loop/op-outcome-replan-forever.json +823 -0
  36. package/dist/__golden__/wave-loop/op-outcome-replan.json +259 -0
  37. package/dist/__golden__/wave-loop/op-outcome-stood-down.json +196 -0
  38. package/dist/__golden__/wave-loop/op-outcome-unreadable.json +193 -0
  39. package/dist/__golden__/wave-loop/op-overridden.json +508 -0
  40. package/dist/__golden__/wave-loop/op-per-run.json +518 -0
  41. package/dist/__golden__/wave-loop/op-point.json +495 -0
  42. package/dist/__golden__/wave-loop/op-pr-review.json +397 -0
  43. package/dist/__golden__/wave-loop/op-sealed.json +125 -0
  44. package/dist/__golden__/wave-loop/op-spend-change-only.json +168 -0
  45. package/dist/__golden__/wave-loop/op-spend.json +328 -0
  46. package/dist/__golden__/wave-loop/op-wave-commands.json +1808 -0
  47. package/dist/__golden__/wave-loop/op-wide-refused.json +291 -0
  48. package/dist/__golden__/wave-loop/op-wide-waiting.json +231 -0
  49. package/dist/__golden__/wave-loop/op-wide.json +440 -0
  50. package/dist/components/fan-out-run.d.ts +4 -3
  51. package/dist/components/fan-out-run.d.ts.map +1 -1
  52. package/dist/components/fan-out-run.js +138 -123
  53. package/dist/op/op-waves-run.d.ts +7 -1
  54. package/dist/op/op-waves-run.d.ts.map +1 -1
  55. package/dist/op/op-waves-run.js +129 -72
  56. package/dist/wave-engine.d.ts +74 -5
  57. package/dist/wave-engine.d.ts.map +1 -1
  58. package/dist/wave-engine.js +47 -5
  59. package/dist/wave-runtime.mjs +202 -202
  60. package/package.json +1 -1
  61. package/src/__golden__/wave-loop/fan-out-applied.json +511 -0
  62. package/src/__golden__/wave-loop/fan-out-apply-fails.json +406 -0
  63. package/src/__golden__/wave-loop/fan-out-gated.json +707 -0
  64. package/src/__golden__/wave-loop/fan-out-no-members.json +898 -0
  65. package/src/__golden__/wave-loop/fan-out-only.json +514 -0
  66. package/src/__golden__/wave-loop/fan-out-plan-fails.json +359 -0
  67. package/src/__golden__/wave-loop/fan-out-same-root.json +311 -0
  68. package/src/__golden__/wave-loop/op-by-apply-after-fails.json +401 -0
  69. package/src/__golden__/wave-loop/op-by-apply-hold.json +756 -0
  70. package/src/__golden__/wave-loop/op-by-apply-ignored.json +340 -0
  71. package/src/__golden__/wave-loop/op-by-apply-pass.json +400 -0
  72. package/src/__golden__/wave-loop/op-by-apply-skip.json +404 -0
  73. package/src/__golden__/wave-loop/op-cost-member-clash.json +62 -0
  74. package/src/__golden__/wave-loop/op-cost-member.json +191 -0
  75. package/src/__golden__/wave-loop/op-denied-source.json +407 -0
  76. package/src/__golden__/wave-loop/op-denied.json +399 -0
  77. package/src/__golden__/wave-loop/op-discover-rest-short.json +92 -0
  78. package/src/__golden__/wave-loop/op-discover-rest-stops.json +340 -0
  79. package/src/__golden__/wave-loop/op-discover-rest.json +659 -0
  80. package/src/__golden__/wave-loop/op-discover-wide.json +290 -0
  81. package/src/__golden__/wave-loop/op-held-on-again.json +176 -0
  82. package/src/__golden__/wave-loop/op-held-on-before-apply.json +689 -0
  83. package/src/__golden__/wave-loop/op-held-on.json +1455 -0
  84. package/src/__golden__/wave-loop/op-hooks-apply-fails.json +673 -0
  85. package/src/__golden__/wave-loop/op-hooks-fail-after-apply.json +737 -0
  86. package/src/__golden__/wave-loop/op-hooks-fail-before-apply.json +450 -0
  87. package/src/__golden__/wave-loop/op-hooks-fail-before-plan.json +97 -0
  88. package/src/__golden__/wave-loop/op-hooks-held.json +1059 -0
  89. package/src/__golden__/wave-loop/op-hooks-hold-before-apply.json +693 -0
  90. package/src/__golden__/wave-loop/op-hooks-pass.json +735 -0
  91. package/src/__golden__/wave-loop/op-hooks-refused-at-base.json +148 -0
  92. package/src/__golden__/wave-loop/op-hooks-share.json +1225 -0
  93. package/src/__golden__/wave-loop/op-outcome-held.json +202 -0
  94. package/src/__golden__/wave-loop/op-outcome-replan-approved.json +286 -0
  95. package/src/__golden__/wave-loop/op-outcome-replan-forever.json +823 -0
  96. package/src/__golden__/wave-loop/op-outcome-replan.json +259 -0
  97. package/src/__golden__/wave-loop/op-outcome-stood-down.json +196 -0
  98. package/src/__golden__/wave-loop/op-outcome-unreadable.json +193 -0
  99. package/src/__golden__/wave-loop/op-overridden.json +508 -0
  100. package/src/__golden__/wave-loop/op-per-run.json +518 -0
  101. package/src/__golden__/wave-loop/op-point.json +495 -0
  102. package/src/__golden__/wave-loop/op-pr-review.json +397 -0
  103. package/src/__golden__/wave-loop/op-sealed.json +125 -0
  104. package/src/__golden__/wave-loop/op-spend-change-only.json +168 -0
  105. package/src/__golden__/wave-loop/op-spend.json +328 -0
  106. package/src/__golden__/wave-loop/op-wave-commands.json +1808 -0
  107. package/src/__golden__/wave-loop/op-wide-refused.json +291 -0
  108. package/src/__golden__/wave-loop/op-wide-waiting.json +231 -0
  109. package/src/__golden__/wave-loop/op-wide.json +440 -0
  110. package/src/components/fan-out-run.ts +156 -128
  111. package/src/meta/peer-deps.test.ts +39 -0
  112. package/src/op/op-waves-run.ts +184 -68
  113. package/src/wave-engine.test.ts +38 -1
  114. package/src/wave-engine.ts +101 -5
  115. package/src/wave-loop-golden.test.ts +627 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentius/chant",
3
- "version": "0.124.17",
3
+ "version": "0.124.18",
4
4
  "description": "Declarative infrastructure-as-code toolkit — TypeScript on Node.js",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://intentius.io/chant",
@@ -0,0 +1,511 @@
1
+ [
2
+ {
3
+ "label": "all approved",
4
+ "plan": {
5
+ "order": [
6
+ "net",
7
+ "a",
8
+ "b",
9
+ "app"
10
+ ],
11
+ "waves": [
12
+ [
13
+ "net"
14
+ ],
15
+ [
16
+ "a",
17
+ "b"
18
+ ],
19
+ [
20
+ "app"
21
+ ]
22
+ ],
23
+ "skipped": [],
24
+ "seeds": [],
25
+ "indeterminate": [],
26
+ "digest": "jcs1-sha256:4eb61d657aecab33201cedb6d604c6be9ca99eb91ac05897766e49a2350b1cb2"
27
+ },
28
+ "result": {
29
+ "plan": {
30
+ "order": [
31
+ "net",
32
+ "a",
33
+ "b",
34
+ "app"
35
+ ],
36
+ "waves": [
37
+ [
38
+ "net"
39
+ ],
40
+ [
41
+ "a",
42
+ "b"
43
+ ],
44
+ [
45
+ "app"
46
+ ]
47
+ ],
48
+ "skipped": [],
49
+ "seeds": [],
50
+ "indeterminate": [],
51
+ "digest": "jcs1-sha256:4eb61d657aecab33201cedb6d604c6be9ca99eb91ac05897766e49a2350b1cb2"
52
+ },
53
+ "status": "ok",
54
+ "results": [
55
+ {
56
+ "component": "net",
57
+ "ok": true,
58
+ "status": "ok",
59
+ "records": [
60
+ {
61
+ "component": "net",
62
+ "phase": "Apply",
63
+ "kind": "fake-root",
64
+ "status": "ok",
65
+ "durationMs": 0,
66
+ "output": {
67
+ "outputs": {
68
+ "id": "net-id"
69
+ }
70
+ }
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "component": "a",
76
+ "ok": true,
77
+ "status": "ok",
78
+ "records": [
79
+ {
80
+ "component": "a",
81
+ "phase": "Apply",
82
+ "kind": "fake-root",
83
+ "status": "ok",
84
+ "durationMs": 0,
85
+ "output": {
86
+ "outputs": {
87
+ "id": "a-id"
88
+ }
89
+ }
90
+ }
91
+ ]
92
+ },
93
+ {
94
+ "component": "b",
95
+ "ok": true,
96
+ "status": "ok",
97
+ "records": [
98
+ {
99
+ "component": "b",
100
+ "phase": "Apply",
101
+ "kind": "fake-root",
102
+ "status": "ok",
103
+ "durationMs": 0,
104
+ "output": {
105
+ "outputs": {
106
+ "id": "b-id"
107
+ }
108
+ }
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "component": "app",
114
+ "ok": true,
115
+ "status": "ok",
116
+ "records": [
117
+ {
118
+ "component": "app",
119
+ "phase": "Apply",
120
+ "kind": "fake-root",
121
+ "status": "ok",
122
+ "durationMs": 0,
123
+ "output": {
124
+ "outputs": {
125
+ "id": "app-id"
126
+ }
127
+ }
128
+ }
129
+ ]
130
+ }
131
+ ],
132
+ "completed": [
133
+ "a",
134
+ "app",
135
+ "b",
136
+ "net"
137
+ ],
138
+ "failed": [],
139
+ "blocked": [],
140
+ "componentOutputs": {
141
+ "net": {
142
+ "id": "net-id"
143
+ },
144
+ "a": {
145
+ "id": "a-id"
146
+ },
147
+ "b": {
148
+ "id": "b-id"
149
+ },
150
+ "app": {
151
+ "id": "app-id"
152
+ }
153
+ },
154
+ "waves": [
155
+ {
156
+ "wave": 1,
157
+ "op": "fan-out",
158
+ "gate": "release-wave-1",
159
+ "components": [
160
+ "net"
161
+ ],
162
+ "digest": "jcs1-sha256:95bbd78ad48471cefeb1cb32a3f308abde40b2d299eac36ab86b0614f23bcccf",
163
+ "members": [
164
+ {
165
+ "member": "net",
166
+ "planDigest": "sha256:7b22726f6f74223a226e6574227d000000000000000000000000000000000000"
167
+ }
168
+ ],
169
+ "status": "applied",
170
+ "approvedBy": "ana"
171
+ },
172
+ {
173
+ "wave": 2,
174
+ "op": "fan-out",
175
+ "gate": "release-wave-2",
176
+ "components": [
177
+ "a",
178
+ "b"
179
+ ],
180
+ "digest": "jcs1-sha256:f56bc903abaf2bb2f593fcb6f83b48322c7079deed286c1439d2a4e0310e2bdd",
181
+ "members": [
182
+ {
183
+ "member": "a",
184
+ "planDigest": "sha256:7b22726f6f74223a2261227d0000000000000000000000000000000000000000"
185
+ },
186
+ {
187
+ "member": "b",
188
+ "planDigest": "sha256:7b22726f6f74223a2262227d0000000000000000000000000000000000000000"
189
+ }
190
+ ],
191
+ "status": "applied",
192
+ "approvedBy": "ana"
193
+ },
194
+ {
195
+ "wave": 3,
196
+ "op": "fan-out",
197
+ "gate": "release-wave-3",
198
+ "components": [
199
+ "app"
200
+ ],
201
+ "digest": "jcs1-sha256:7a62831fe9eb73d86761a06ac2723600b2ce02ce3c2d503ab0fe8d4a0ca6f34d",
202
+ "members": [
203
+ {
204
+ "member": "app",
205
+ "planDigest": "sha256:7b22726f6f74223a22617070222c2276617273223a7b22757073747265616d22"
206
+ }
207
+ ],
208
+ "status": "applied",
209
+ "approvedBy": "ana"
210
+ }
211
+ ]
212
+ },
213
+ "events": [
214
+ {
215
+ "type": "run-start",
216
+ "waves": [
217
+ [
218
+ "net"
219
+ ],
220
+ [
221
+ "a",
222
+ "b"
223
+ ],
224
+ [
225
+ "app"
226
+ ]
227
+ ]
228
+ },
229
+ {
230
+ "type": "wave-start",
231
+ "wave": 1,
232
+ "components": [
233
+ "net"
234
+ ]
235
+ },
236
+ {
237
+ "type": "component-start",
238
+ "wave": 1,
239
+ "component": "net"
240
+ },
241
+ {
242
+ "type": "phase-start",
243
+ "component": "net",
244
+ "phase": "Apply"
245
+ },
246
+ {
247
+ "type": "step",
248
+ "component": "net",
249
+ "phase": "Apply",
250
+ "step": "fake-root",
251
+ "status": "running"
252
+ },
253
+ {
254
+ "type": "step",
255
+ "component": "net",
256
+ "phase": "Apply",
257
+ "step": "fake-root",
258
+ "status": "ok"
259
+ },
260
+ {
261
+ "type": "phase-done",
262
+ "component": "net",
263
+ "phase": "Apply",
264
+ "status": "ok"
265
+ },
266
+ {
267
+ "type": "component-done",
268
+ "wave": 1,
269
+ "component": "net",
270
+ "status": "ok"
271
+ },
272
+ {
273
+ "type": "wave-done",
274
+ "wave": 1,
275
+ "status": "ok"
276
+ },
277
+ {
278
+ "type": "wave-start",
279
+ "wave": 2,
280
+ "components": [
281
+ "a",
282
+ "b"
283
+ ]
284
+ },
285
+ {
286
+ "type": "component-start",
287
+ "wave": 2,
288
+ "component": "a"
289
+ },
290
+ {
291
+ "type": "phase-start",
292
+ "component": "a",
293
+ "phase": "Apply"
294
+ },
295
+ {
296
+ "type": "component-start",
297
+ "wave": 2,
298
+ "component": "b"
299
+ },
300
+ {
301
+ "type": "phase-start",
302
+ "component": "b",
303
+ "phase": "Apply"
304
+ },
305
+ {
306
+ "type": "step",
307
+ "component": "a",
308
+ "phase": "Apply",
309
+ "step": "fake-root",
310
+ "status": "running"
311
+ },
312
+ {
313
+ "type": "step",
314
+ "component": "b",
315
+ "phase": "Apply",
316
+ "step": "fake-root",
317
+ "status": "running"
318
+ },
319
+ {
320
+ "type": "step",
321
+ "component": "a",
322
+ "phase": "Apply",
323
+ "step": "fake-root",
324
+ "status": "ok"
325
+ },
326
+ {
327
+ "type": "step",
328
+ "component": "b",
329
+ "phase": "Apply",
330
+ "step": "fake-root",
331
+ "status": "ok"
332
+ },
333
+ {
334
+ "type": "phase-done",
335
+ "component": "a",
336
+ "phase": "Apply",
337
+ "status": "ok"
338
+ },
339
+ {
340
+ "type": "phase-done",
341
+ "component": "b",
342
+ "phase": "Apply",
343
+ "status": "ok"
344
+ },
345
+ {
346
+ "type": "component-done",
347
+ "wave": 2,
348
+ "component": "a",
349
+ "status": "ok"
350
+ },
351
+ {
352
+ "type": "component-done",
353
+ "wave": 2,
354
+ "component": "b",
355
+ "status": "ok"
356
+ },
357
+ {
358
+ "type": "wave-done",
359
+ "wave": 2,
360
+ "status": "ok"
361
+ },
362
+ {
363
+ "type": "wave-start",
364
+ "wave": 3,
365
+ "components": [
366
+ "app"
367
+ ]
368
+ },
369
+ {
370
+ "type": "component-start",
371
+ "wave": 3,
372
+ "component": "app"
373
+ },
374
+ {
375
+ "type": "phase-start",
376
+ "component": "app",
377
+ "phase": "Apply"
378
+ },
379
+ {
380
+ "type": "step",
381
+ "component": "app",
382
+ "phase": "Apply",
383
+ "step": "fake-root",
384
+ "status": "running"
385
+ },
386
+ {
387
+ "type": "step",
388
+ "component": "app",
389
+ "phase": "Apply",
390
+ "step": "fake-root",
391
+ "status": "ok"
392
+ },
393
+ {
394
+ "type": "phase-done",
395
+ "component": "app",
396
+ "phase": "Apply",
397
+ "status": "ok"
398
+ },
399
+ {
400
+ "type": "component-done",
401
+ "wave": 3,
402
+ "component": "app",
403
+ "status": "ok"
404
+ },
405
+ {
406
+ "type": "wave-done",
407
+ "wave": 3,
408
+ "status": "ok"
409
+ },
410
+ {
411
+ "type": "run-done",
412
+ "status": "ok"
413
+ }
414
+ ],
415
+ "settled": [
416
+ {
417
+ "wave": 1,
418
+ "op": "fan-out",
419
+ "gate": "release-wave-1",
420
+ "components": [
421
+ "net"
422
+ ],
423
+ "digest": "jcs1-sha256:95bbd78ad48471cefeb1cb32a3f308abde40b2d299eac36ab86b0614f23bcccf",
424
+ "members": [
425
+ {
426
+ "member": "net",
427
+ "planDigest": "sha256:7b22726f6f74223a226e6574227d000000000000000000000000000000000000"
428
+ }
429
+ ],
430
+ "status": "applied",
431
+ "approvedBy": "ana"
432
+ },
433
+ {
434
+ "wave": 2,
435
+ "op": "fan-out",
436
+ "gate": "release-wave-2",
437
+ "components": [
438
+ "a",
439
+ "b"
440
+ ],
441
+ "digest": "jcs1-sha256:f56bc903abaf2bb2f593fcb6f83b48322c7079deed286c1439d2a4e0310e2bdd",
442
+ "members": [
443
+ {
444
+ "member": "a",
445
+ "planDigest": "sha256:7b22726f6f74223a2261227d0000000000000000000000000000000000000000"
446
+ },
447
+ {
448
+ "member": "b",
449
+ "planDigest": "sha256:7b22726f6f74223a2262227d0000000000000000000000000000000000000000"
450
+ }
451
+ ],
452
+ "status": "applied",
453
+ "approvedBy": "ana"
454
+ },
455
+ {
456
+ "wave": 3,
457
+ "op": "fan-out",
458
+ "gate": "release-wave-3",
459
+ "components": [
460
+ "app"
461
+ ],
462
+ "digest": "jcs1-sha256:7a62831fe9eb73d86761a06ac2723600b2ce02ce3c2d503ab0fe8d4a0ca6f34d",
463
+ "members": [
464
+ {
465
+ "member": "app",
466
+ "planDigest": "sha256:7b22726f6f74223a22617070222c2276617273223a7b22757073747265616d22"
467
+ }
468
+ ],
469
+ "status": "applied",
470
+ "approvedBy": "ana"
471
+ }
472
+ ],
473
+ "components": [
474
+ {
475
+ "component": "net",
476
+ "outputs": {
477
+ "id": "net-id"
478
+ }
479
+ },
480
+ {
481
+ "component": "a",
482
+ "outputs": {
483
+ "id": "a-id"
484
+ }
485
+ },
486
+ {
487
+ "component": "b",
488
+ "outputs": {
489
+ "id": "b-id"
490
+ }
491
+ },
492
+ {
493
+ "component": "app",
494
+ "outputs": {
495
+ "id": "app-id"
496
+ }
497
+ }
498
+ ],
499
+ "applied": [
500
+ "net",
501
+ "a",
502
+ "b",
503
+ "app"
504
+ ],
505
+ "ledger": {
506
+ "appended": [],
507
+ "resolved": [],
508
+ "applied": []
509
+ }
510
+ }
511
+ ]