@grnsft/if 0.1.2 → 0.1.3
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.
- package/CONTRIBUTING.md +13 -17
- package/README.md +17 -18
- package/coverage/clover.xml +111 -65
- package/coverage/coverage-final.json +7 -6
- package/coverage/lcov-report/config/config.ts.html +12 -3
- package/coverage/lcov-report/config/index.html +1 -1
- package/coverage/lcov-report/config/index.ts.html +3 -3
- package/coverage/lcov-report/config/strings.ts.html +2 -2
- package/coverage/lcov-report/index.html +9 -9
- package/coverage/lcov-report/lib/index.html +24 -9
- package/coverage/lcov-report/lib/models-universe.ts.html +1 -1
- package/coverage/lcov-report/lib/observatory.ts.html +7 -7
- package/coverage/lcov-report/lib/planet-aggregator.ts.html +253 -0
- package/coverage/lcov-report/lib/supercomputer.ts.html +211 -52
- package/coverage/lcov-report/util/args.ts.html +1 -1
- package/coverage/lcov-report/util/errors.ts.html +10 -7
- package/coverage/lcov-report/util/index.html +1 -1
- package/coverage/lcov-report/util/yaml.ts.html +1 -1
- package/coverage/lcov.info +184 -105
- package/examples/impls/case-studies/aggregation.yml +97 -0
- package/examples/impls/case-studies/ntt-data-on-premise.yaml +0 -42
- package/examples/impls/test/aggregation-test.yml +109 -0
- package/examples/impls/test/large-impl.yml +257303 -0
- package/examples/ompls/aggregation-test.yml +340 -0
- package/package.json +1 -1
- package/tsconfig.build.tsbuildinfo +1 -0
- package/yarn-error.log +5431 -0
- package/build/config/index.d.ts +0 -2
- package/build/config/index.js +0 -8
- package/build/config/strings.d.ts +0 -14
- package/build/config/strings.js +0 -30
- package/build/index.d.ts +0 -2
- package/build/index.js +0 -46
- package/build/lib/models-universe.d.ts +0 -28
- package/build/lib/models-universe.js +0 -95
- package/build/lib/supercomputer.d.ts +0 -30
- package/build/lib/supercomputer.js +0 -109
- package/build/types/azure-importer.d.ts +0 -29
- package/build/types/azure-importer.js +0 -3
- package/build/types/boavizta.d.ts +0 -7
- package/build/types/boavizta.js +0 -3
- package/build/types/common.d.ts +0 -7
- package/build/types/common.js +0 -9
- package/build/types/impl.d.ts +0 -40
- package/build/types/impl.js +0 -3
- package/build/types/models-universe.d.ts +0 -24
- package/build/types/models-universe.js +0 -3
- package/build/util/args.d.ts +0 -8
- package/build/util/helpers.d.ts +0 -4
- package/build/util/validations.d.ts +0 -25
- package/build/util/validations.js +0 -52
- package/build/util/yaml.d.ts +0 -13
- package/build/util/yaml.js +0 -36
|
@@ -25,28 +25,28 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>71/71</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">100% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>24/24</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>10/10</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>70/70</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -219,7 +219,60 @@
|
|
|
219
219
|
<a name='L154'></a><a href='#L154'>154</a>
|
|
220
220
|
<a name='L155'></a><a href='#L155'>155</a>
|
|
221
221
|
<a name='L156'></a><a href='#L156'>156</a>
|
|
222
|
-
<a name='L157'></a><a href='#L157'>157</a
|
|
222
|
+
<a name='L157'></a><a href='#L157'>157</a>
|
|
223
|
+
<a name='L158'></a><a href='#L158'>158</a>
|
|
224
|
+
<a name='L159'></a><a href='#L159'>159</a>
|
|
225
|
+
<a name='L160'></a><a href='#L160'>160</a>
|
|
226
|
+
<a name='L161'></a><a href='#L161'>161</a>
|
|
227
|
+
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
+
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
+
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
+
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
+
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
+
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
+
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
+
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
+
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
+
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
+
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
+
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
+
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
+
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
+
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
+
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
+
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
+
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
+
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
+
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
+
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
+
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
+
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
+
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
+
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
+
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
+
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
+
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
+
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
+
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
+
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
+
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
+
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
+
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
+
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
+
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
+
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
+
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
+
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
+
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
+
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
+
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
+
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
+
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
+
<a name='L210'></a><a href='#L210'>210</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
223
276
|
<span class="cline-any cline-yes">1x</span>
|
|
224
277
|
<span class="cline-any cline-neutral"> </span>
|
|
225
278
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -228,44 +281,54 @@
|
|
|
228
281
|
<span class="cline-any cline-neutral"> </span>
|
|
229
282
|
<span class="cline-any cline-neutral"> </span>
|
|
230
283
|
<span class="cline-any cline-neutral"> </span>
|
|
284
|
+
<span class="cline-any cline-yes">1x</span>
|
|
285
|
+
<span class="cline-any cline-neutral"> </span>
|
|
231
286
|
<span class="cline-any cline-neutral"> </span>
|
|
232
287
|
<span class="cline-any cline-yes">1x</span>
|
|
233
288
|
<span class="cline-any cline-neutral"> </span>
|
|
234
289
|
<span class="cline-any cline-yes">1x</span>
|
|
290
|
+
<span class="cline-any cline-yes">1x</span>
|
|
235
291
|
<span class="cline-any cline-neutral"> </span>
|
|
236
292
|
<span class="cline-any cline-neutral"> </span>
|
|
237
293
|
<span class="cline-any cline-neutral"> </span>
|
|
238
294
|
<span class="cline-any cline-neutral"> </span>
|
|
239
295
|
<span class="cline-any cline-yes">1x</span>
|
|
240
|
-
<span class="cline-any cline-yes">
|
|
296
|
+
<span class="cline-any cline-yes">11x</span>
|
|
241
297
|
<span class="cline-any cline-neutral"> </span>
|
|
242
298
|
<span class="cline-any cline-neutral"> </span>
|
|
299
|
+
<span class="cline-any cline-yes">11x</span>
|
|
300
|
+
<span class="cline-any cline-yes">11x</span>
|
|
243
301
|
<span class="cline-any cline-neutral"> </span>
|
|
244
302
|
<span class="cline-any cline-neutral"> </span>
|
|
245
|
-
<span class="cline-any cline-yes">
|
|
246
|
-
<span class="cline-any cline-yes">
|
|
303
|
+
<span class="cline-any cline-yes">11x</span>
|
|
304
|
+
<span class="cline-any cline-yes">11x</span>
|
|
247
305
|
<span class="cline-any cline-neutral"> </span>
|
|
248
306
|
<span class="cline-any cline-neutral"> </span>
|
|
249
307
|
<span class="cline-any cline-neutral"> </span>
|
|
250
308
|
<span class="cline-any cline-neutral"> </span>
|
|
251
309
|
<span class="cline-any cline-neutral"> </span>
|
|
252
310
|
<span class="cline-any cline-neutral"> </span>
|
|
253
|
-
<span class="cline-any cline-yes">
|
|
311
|
+
<span class="cline-any cline-yes">4x</span>
|
|
254
312
|
<span class="cline-any cline-yes">1x</span>
|
|
255
313
|
<span class="cline-any cline-neutral"> </span>
|
|
256
314
|
<span class="cline-any cline-neutral"> </span>
|
|
257
|
-
<span class="cline-any cline-yes">
|
|
258
|
-
<span class="cline-any cline-yes">15x</span>
|
|
259
|
-
<span class="cline-any cline-yes">16x</span>
|
|
315
|
+
<span class="cline-any cline-yes">3x</span>
|
|
260
316
|
<span class="cline-any cline-neutral"> </span>
|
|
317
|
+
<span class="cline-any cline-yes">3x</span>
|
|
318
|
+
<span class="cline-any cline-yes">7x</span>
|
|
261
319
|
<span class="cline-any cline-neutral"> </span>
|
|
320
|
+
<span class="cline-any cline-yes">7x</span>
|
|
321
|
+
<span class="cline-any cline-yes">7x</span>
|
|
322
|
+
<span class="cline-any cline-yes">7x</span>
|
|
262
323
|
<span class="cline-any cline-neutral"> </span>
|
|
324
|
+
<span class="cline-any cline-yes">7x</span>
|
|
325
|
+
<span class="cline-any cline-yes">3x</span>
|
|
326
|
+
<span class="cline-any cline-yes">2x</span>
|
|
263
327
|
<span class="cline-any cline-neutral"> </span>
|
|
264
|
-
<span class="cline-any cline-yes">16x</span>
|
|
265
328
|
<span class="cline-any cline-neutral"> </span>
|
|
266
329
|
<span class="cline-any cline-neutral"> </span>
|
|
267
|
-
<span class="cline-any cline-yes">15x</span>
|
|
268
330
|
<span class="cline-any cline-neutral"> </span>
|
|
331
|
+
<span class="cline-any cline-yes">7x</span>
|
|
269
332
|
<span class="cline-any cline-neutral"> </span>
|
|
270
333
|
<span class="cline-any cline-neutral"> </span>
|
|
271
334
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -273,17 +336,21 @@
|
|
|
273
336
|
<span class="cline-any cline-neutral"> </span>
|
|
274
337
|
<span class="cline-any cline-neutral"> </span>
|
|
275
338
|
<span class="cline-any cline-neutral"> </span>
|
|
339
|
+
<span class="cline-any cline-yes">32x</span>
|
|
340
|
+
<span class="cline-any cline-yes">1x</span>
|
|
276
341
|
<span class="cline-any cline-neutral"> </span>
|
|
277
342
|
<span class="cline-any cline-neutral"> </span>
|
|
278
|
-
<span class="cline-any cline-yes">
|
|
279
|
-
<span class="cline-any cline-yes">
|
|
343
|
+
<span class="cline-any cline-yes">31x</span>
|
|
344
|
+
<span class="cline-any cline-yes">31x</span>
|
|
345
|
+
<span class="cline-any cline-yes">34x</span>
|
|
280
346
|
<span class="cline-any cline-neutral"> </span>
|
|
281
|
-
<span class="cline-any cline-yes">11x</span>
|
|
282
347
|
<span class="cline-any cline-neutral"> </span>
|
|
283
348
|
<span class="cline-any cline-neutral"> </span>
|
|
284
349
|
<span class="cline-any cline-neutral"> </span>
|
|
350
|
+
<span class="cline-any cline-yes">34x</span>
|
|
285
351
|
<span class="cline-any cline-neutral"> </span>
|
|
286
352
|
<span class="cline-any cline-neutral"> </span>
|
|
353
|
+
<span class="cline-any cline-yes">31x</span>
|
|
287
354
|
<span class="cline-any cline-neutral"> </span>
|
|
288
355
|
<span class="cline-any cline-neutral"> </span>
|
|
289
356
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -294,99 +361,141 @@
|
|
|
294
361
|
<span class="cline-any cline-neutral"> </span>
|
|
295
362
|
<span class="cline-any cline-neutral"> </span>
|
|
296
363
|
<span class="cline-any cline-neutral"> </span>
|
|
364
|
+
<span class="cline-any cline-yes">16x</span>
|
|
365
|
+
<span class="cline-any cline-yes">16x</span>
|
|
297
366
|
<span class="cline-any cline-neutral"> </span>
|
|
298
|
-
<span class="cline-any cline-yes">
|
|
367
|
+
<span class="cline-any cline-yes">22x</span>
|
|
299
368
|
<span class="cline-any cline-neutral"> </span>
|
|
300
|
-
<span class="cline-any cline-yes">10x</span>
|
|
301
|
-
<span class="cline-any cline-yes">6x</span>
|
|
302
369
|
<span class="cline-any cline-neutral"> </span>
|
|
303
370
|
<span class="cline-any cline-neutral"> </span>
|
|
304
371
|
<span class="cline-any cline-neutral"> </span>
|
|
305
372
|
<span class="cline-any cline-neutral"> </span>
|
|
306
373
|
<span class="cline-any cline-neutral"> </span>
|
|
307
|
-
<span class="cline-any cline-yes">10x</span>
|
|
308
374
|
<span class="cline-any cline-neutral"> </span>
|
|
309
|
-
<span class="cline-any cline-yes">10x</span>
|
|
310
|
-
<span class="cline-any cline-yes">1x</span>
|
|
311
375
|
<span class="cline-any cline-neutral"> </span>
|
|
312
376
|
<span class="cline-any cline-neutral"> </span>
|
|
313
|
-
<span class="cline-any cline-yes">9x</span>
|
|
314
|
-
<span class="cline-any cline-yes">1x</span>
|
|
315
377
|
<span class="cline-any cline-neutral"> </span>
|
|
316
378
|
<span class="cline-any cline-neutral"> </span>
|
|
317
|
-
<span class="cline-any cline-yes">8x</span>
|
|
318
379
|
<span class="cline-any cline-neutral"> </span>
|
|
319
380
|
<span class="cline-any cline-neutral"> </span>
|
|
320
381
|
<span class="cline-any cline-neutral"> </span>
|
|
321
|
-
<span class="cline-any cline-yes">8x</span>
|
|
322
382
|
<span class="cline-any cline-neutral"> </span>
|
|
323
|
-
<span class="cline-any cline-yes">8x</span>
|
|
324
383
|
<span class="cline-any cline-neutral"> </span>
|
|
384
|
+
<span class="cline-any cline-yes">19x</span>
|
|
325
385
|
<span class="cline-any cline-neutral"> </span>
|
|
386
|
+
<span class="cline-any cline-yes">19x</span>
|
|
387
|
+
<span class="cline-any cline-yes">11x</span>
|
|
326
388
|
<span class="cline-any cline-neutral"> </span>
|
|
327
389
|
<span class="cline-any cline-neutral"> </span>
|
|
328
390
|
<span class="cline-any cline-neutral"> </span>
|
|
329
|
-
<span class="cline-any cline-yes">8x</span>
|
|
330
391
|
<span class="cline-any cline-neutral"> </span>
|
|
331
|
-
<span class="cline-any cline-yes">8x</span>
|
|
332
|
-
<span class="cline-any cline-yes">18x</span>
|
|
333
|
-
<span class="cline-any cline-yes">18x</span>
|
|
334
392
|
<span class="cline-any cline-neutral"> </span>
|
|
393
|
+
<span class="cline-any cline-yes">19x</span>
|
|
335
394
|
<span class="cline-any cline-neutral"> </span>
|
|
395
|
+
<span class="cline-any cline-yes">19x</span>
|
|
396
|
+
<span class="cline-any cline-yes">2x</span>
|
|
336
397
|
<span class="cline-any cline-neutral"> </span>
|
|
337
398
|
<span class="cline-any cline-neutral"> </span>
|
|
338
399
|
<span class="cline-any cline-yes">17x</span>
|
|
400
|
+
<span class="cline-any cline-yes">1x</span>
|
|
339
401
|
<span class="cline-any cline-neutral"> </span>
|
|
340
402
|
<span class="cline-any cline-neutral"> </span>
|
|
341
|
-
<span class="cline-any cline-yes">
|
|
403
|
+
<span class="cline-any cline-yes">16x</span>
|
|
342
404
|
<span class="cline-any cline-neutral"> </span>
|
|
343
|
-
<span class="cline-any cline-yes">
|
|
405
|
+
<span class="cline-any cline-yes">16x</span>
|
|
344
406
|
<span class="cline-any cline-neutral"> </span>
|
|
345
407
|
<span class="cline-any cline-neutral"> </span>
|
|
346
|
-
<span class="cline-any cline-yes">4x</span>
|
|
347
408
|
<span class="cline-any cline-neutral"> </span>
|
|
409
|
+
<span class="cline-any cline-yes">16x</span>
|
|
348
410
|
<span class="cline-any cline-neutral"> </span>
|
|
411
|
+
<span class="cline-any cline-yes">16x</span>
|
|
349
412
|
<span class="cline-any cline-neutral"> </span>
|
|
350
|
-
<span class="cline-any cline-yes">4x</span>
|
|
351
413
|
<span class="cline-any cline-neutral"> </span>
|
|
352
414
|
<span class="cline-any cline-neutral"> </span>
|
|
353
|
-
<span class="cline-any cline-yes">3x</span>
|
|
354
|
-
<span class="cline-any cline-yes">3x</span>
|
|
355
415
|
<span class="cline-any cline-neutral"> </span>
|
|
356
416
|
<span class="cline-any cline-neutral"> </span>
|
|
417
|
+
<span class="cline-any cline-yes">16x</span>
|
|
357
418
|
<span class="cline-any cline-neutral"> </span>
|
|
419
|
+
<span class="cline-any cline-yes">16x</span>
|
|
420
|
+
<span class="cline-any cline-yes">36x</span>
|
|
421
|
+
<span class="cline-any cline-yes">36x</span>
|
|
358
422
|
<span class="cline-any cline-neutral"> </span>
|
|
359
423
|
<span class="cline-any cline-neutral"> </span>
|
|
360
424
|
<span class="cline-any cline-neutral"> </span>
|
|
361
|
-
<span class="cline-any cline-yes">6x</span>
|
|
362
|
-
<span class="cline-any cline-yes">6x</span>
|
|
363
|
-
<span class="cline-any cline-yes">6x</span>
|
|
364
425
|
<span class="cline-any cline-neutral"> </span>
|
|
426
|
+
<span class="cline-any cline-yes">35x</span>
|
|
365
427
|
<span class="cline-any cline-neutral"> </span>
|
|
366
|
-
<span class="cline-any cline-yes">6x</span>
|
|
367
428
|
<span class="cline-any cline-neutral"> </span>
|
|
368
|
-
<span class="cline-any cline-yes">
|
|
369
|
-
<span class="cline-any cline-yes">10x</span>
|
|
429
|
+
<span class="cline-any cline-yes">15x</span>
|
|
370
430
|
<span class="cline-any cline-neutral"> </span>
|
|
371
431
|
<span class="cline-any cline-neutral"> </span>
|
|
372
432
|
<span class="cline-any cline-neutral"> </span>
|
|
373
433
|
<span class="cline-any cline-neutral"> </span>
|
|
434
|
+
<span class="cline-any cline-yes">15x</span>
|
|
435
|
+
<span class="cline-any cline-yes">13x</span>
|
|
436
|
+
<span class="cline-any cline-neutral"> </span>
|
|
437
|
+
<span class="cline-any cline-neutral"> </span>
|
|
438
|
+
<span class="cline-any cline-neutral"> </span>
|
|
439
|
+
<span class="cline-any cline-neutral"> </span>
|
|
440
|
+
<span class="cline-any cline-yes">12x</span>
|
|
441
|
+
<span class="cline-any cline-neutral"> </span>
|
|
442
|
+
<span class="cline-any cline-yes">12x</span>
|
|
443
|
+
<span class="cline-any cline-yes">8x</span>
|
|
444
|
+
<span class="cline-any cline-neutral"> </span>
|
|
445
|
+
<span class="cline-any cline-neutral"> </span>
|
|
374
446
|
<span class="cline-any cline-neutral"> </span>
|
|
375
447
|
<span class="cline-any cline-yes">4x</span>
|
|
376
448
|
<span class="cline-any cline-neutral"> </span>
|
|
377
449
|
<span class="cline-any cline-neutral"> </span>
|
|
450
|
+
<span class="cline-any cline-neutral"> </span>
|
|
451
|
+
<span class="cline-any cline-neutral"> </span>
|
|
452
|
+
<span class="cline-any cline-yes">14x</span>
|
|
453
|
+
<span class="cline-any cline-yes">8x</span>
|
|
454
|
+
<span class="cline-any cline-neutral"> </span>
|
|
455
|
+
<span class="cline-any cline-neutral"> </span>
|
|
456
|
+
<span class="cline-any cline-neutral"> </span>
|
|
457
|
+
<span class="cline-any cline-yes">6x</span>
|
|
458
|
+
<span class="cline-any cline-neutral"> </span>
|
|
459
|
+
<span class="cline-any cline-neutral"> </span>
|
|
460
|
+
<span class="cline-any cline-yes">14x</span>
|
|
461
|
+
<span class="cline-any cline-neutral"> </span>
|
|
462
|
+
<span class="cline-any cline-neutral"> </span>
|
|
463
|
+
<span class="cline-any cline-neutral"> </span>
|
|
464
|
+
<span class="cline-any cline-neutral"> </span>
|
|
465
|
+
<span class="cline-any cline-neutral"> </span>
|
|
466
|
+
<span class="cline-any cline-neutral"> </span>
|
|
467
|
+
<span class="cline-any cline-yes">11x</span>
|
|
468
|
+
<span class="cline-any cline-yes">11x</span>
|
|
469
|
+
<span class="cline-any cline-yes">11x</span>
|
|
470
|
+
<span class="cline-any cline-neutral"> </span>
|
|
471
|
+
<span class="cline-any cline-neutral"> </span>
|
|
472
|
+
<span class="cline-any cline-yes">11x</span>
|
|
473
|
+
<span class="cline-any cline-neutral"> </span>
|
|
474
|
+
<span class="cline-any cline-yes">11x</span>
|
|
475
|
+
<span class="cline-any cline-yes">19x</span>
|
|
476
|
+
<span class="cline-any cline-neutral"> </span>
|
|
477
|
+
<span class="cline-any cline-neutral"> </span>
|
|
478
|
+
<span class="cline-any cline-neutral"> </span>
|
|
479
|
+
<span class="cline-any cline-neutral"> </span>
|
|
480
|
+
<span class="cline-any cline-neutral"> </span>
|
|
481
|
+
<span class="cline-any cline-yes">8x</span>
|
|
482
|
+
<span class="cline-any cline-neutral"> </span>
|
|
483
|
+
<span class="cline-any cline-neutral"> </span>
|
|
378
484
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {ModelsUniverse} from './models-universe';
|
|
379
485
|
import {Observatory} from './observatory';
|
|
380
486
|
|
|
381
487
|
import {ERRORS} from '../util/errors';
|
|
382
488
|
|
|
383
|
-
import {STRINGS} from '../config';
|
|
489
|
+
import {CONFIG, STRINGS} from '../config';
|
|
384
490
|
|
|
385
491
|
import {ChildInformation} from '../types/supercomputer';
|
|
386
492
|
import {Children, Config, Impl, ModelParams} from '../types/impl';
|
|
493
|
+
import {planetAggregator} from './planet-aggregator';
|
|
494
|
+
import {AggregationResult} from '../types/planet-aggregator';
|
|
387
495
|
|
|
388
496
|
const {ImplValidationError} = ERRORS;
|
|
389
497
|
|
|
498
|
+
const {AVERAGE_NAMES} = CONFIG;
|
|
390
499
|
const {STRUCTURE_MALFORMED} = STRINGS;
|
|
391
500
|
|
|
392
501
|
/**
|
|
@@ -396,11 +505,41 @@ export class Supercomputer {
|
|
|
396
505
|
private olderChild: ChildInformation = {name: '', info: {}};
|
|
397
506
|
private impl: Impl;
|
|
398
507
|
private modelsHandbook: ModelsUniverse;
|
|
508
|
+
private aggregatedImpacts: AggregationResult[] = [];
|
|
509
|
+
private childAmount = 0;
|
|
399
510
|
|
|
400
511
|
constructor(impl: Impl, modelsHandbook: ModelsUniverse) {
|
|
401
512
|
this.impl = impl;
|
|
402
513
|
this.modelsHandbook = modelsHandbook;
|
|
403
514
|
}
|
|
515
|
+
|
|
516
|
+
/**
|
|
517
|
+
* Goes through all aggregations collected from child components, then calculates the average.
|
|
518
|
+
*/
|
|
519
|
+
public calculateAggregation() {
|
|
520
|
+
if (!this.impl.aggregation) {
|
|
521
|
+
throw new ImplValidationError('Aggregation params are not provided.');
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
const method = this.impl.aggregation['aggregation-method'];
|
|
525
|
+
|
|
526
|
+
return this.aggregatedImpacts.reduce((acc, impact, index) => {
|
|
527
|
+
const keys = Object.keys(impact);
|
|
528
|
+
|
|
529
|
+
keys.forEach(key => {
|
|
530
|
+
acc[key] = acc[key] ?? 0;
|
|
531
|
+
acc[key] += impact[key];
|
|
532
|
+
|
|
533
|
+
if (index === this.childAmount - 1) {
|
|
534
|
+
if (AVERAGE_NAMES.includes(method)) {
|
|
535
|
+
acc[key] /= this.childAmount;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
});
|
|
539
|
+
|
|
540
|
+
return acc;
|
|
541
|
+
}, {});
|
|
542
|
+
}
|
|
404
543
|
|
|
405
544
|
/**
|
|
406
545
|
* Flattens config entries.
|
|
@@ -469,6 +608,8 @@ export class Supercomputer {
|
|
|
469
608
|
if (!('inputs' in childrenObject[childName])) {
|
|
470
609
|
throw new ImplValidationError(STRUCTURE_MALFORMED(childName));
|
|
471
610
|
}
|
|
611
|
+
|
|
612
|
+
this.childAmount++;
|
|
472
613
|
|
|
473
614
|
const specificInputs = areChildrenNested
|
|
474
615
|
? childrenObject[childName].inputs
|
|
@@ -495,18 +636,36 @@ export class Supercomputer {
|
|
|
495
636
|
}
|
|
496
637
|
|
|
497
638
|
const outputs = observatory.getOutputs();
|
|
639
|
+
|
|
640
|
+
/**
|
|
641
|
+
* If aggregation is required, then init `aggregated-outputs`.
|
|
642
|
+
*/
|
|
643
|
+
if (this.impl.aggregation) {
|
|
644
|
+
const aggregatedImpactsPerChild = planetAggregator(
|
|
645
|
+
outputs,
|
|
646
|
+
this.impl.aggregation
|
|
647
|
+
);
|
|
648
|
+
|
|
649
|
+
this.aggregatedImpacts.push(aggregatedImpactsPerChild);
|
|
650
|
+
|
|
651
|
+
if (areChildrenNested) {
|
|
652
|
+
this.impl.graph.children[this.olderChild.name].children[childName][
|
|
653
|
+
'aggregated-outputs'
|
|
654
|
+
] = aggregatedImpactsPerChild;
|
|
655
|
+
} else {
|
|
656
|
+
this.impl.graph.children[this.olderChild.name]['aggregated-outputs'] =
|
|
657
|
+
aggregatedImpactsPerChild;
|
|
658
|
+
}
|
|
659
|
+
}
|
|
498
660
|
|
|
499
661
|
if (areChildrenNested) {
|
|
500
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
501
|
-
// @ts-ignore
|
|
502
662
|
this.impl.graph.children[this.olderChild.name].children[
|
|
503
663
|
childName
|
|
504
|
-
].outputs =
|
|
505
|
-
|
|
506
|
-
|
|
664
|
+
].outputs = outputs;
|
|
665
|
+
} else {
|
|
666
|
+
this.impl.graph.children[this.olderChild.name].outputs = outputs;
|
|
507
667
|
}
|
|
508
668
|
|
|
509
|
-
this.impl.graph.children[this.olderChild.name].outputs = outputs;
|
|
510
669
|
return;
|
|
511
670
|
}
|
|
512
671
|
|
|
@@ -538,7 +697,7 @@ export class Supercomputer {
|
|
|
538
697
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
539
698
|
Code coverage generated by
|
|
540
699
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
541
|
-
at 2023-
|
|
700
|
+
at 2023-12-04T08:39:10.143Z
|
|
542
701
|
</div>
|
|
543
702
|
<script src="../prettify.js"></script>
|
|
544
703
|
<script>
|
|
@@ -244,7 +244,7 @@ export const parseProcessArgument = () => {
|
|
|
244
244
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
245
245
|
Code coverage generated by
|
|
246
246
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
247
|
-
at 2023-
|
|
247
|
+
at 2023-12-04T08:39:10.143Z
|
|
248
248
|
</div>
|
|
249
249
|
<script src="../prettify.js"></script>
|
|
250
250
|
<script>
|
|
@@ -87,7 +87,8 @@
|
|
|
87
87
|
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
88
|
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
89
|
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a
|
|
90
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
+
<a name='L26'></a><a href='#L26'>26</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
|
|
91
92
|
<span class="cline-any cline-neutral"> </span>
|
|
92
93
|
<span class="cline-any cline-neutral"> </span>
|
|
93
94
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -98,22 +99,24 @@
|
|
|
98
99
|
<span class="cline-any cline-neutral"> </span>
|
|
99
100
|
<span class="cline-any cline-neutral"> </span>
|
|
100
101
|
<span class="cline-any cline-neutral"> </span>
|
|
101
|
-
<span class="cline-any cline-yes">3x</span>
|
|
102
|
-
<span class="cline-any cline-yes">12x</span>
|
|
103
102
|
<span class="cline-any cline-neutral"> </span>
|
|
103
|
+
<span class="cline-any cline-yes">4x</span>
|
|
104
|
+
<span class="cline-any cline-yes">20x</span>
|
|
104
105
|
<span class="cline-any cline-neutral"> </span>
|
|
105
106
|
<span class="cline-any cline-neutral"> </span>
|
|
106
|
-
<span class="cline-any cline-yes">9x</span>
|
|
107
|
-
<span class="cline-any cline-yes">9x</span>
|
|
108
107
|
<span class="cline-any cline-neutral"> </span>
|
|
108
|
+
<span class="cline-any cline-yes">14x</span>
|
|
109
|
+
<span class="cline-any cline-yes">14x</span>
|
|
109
110
|
<span class="cline-any cline-neutral"> </span>
|
|
110
111
|
<span class="cline-any cline-neutral"> </span>
|
|
111
112
|
<span class="cline-any cline-neutral"> </span>
|
|
112
|
-
<span class="cline-any cline-
|
|
113
|
+
<span class="cline-any cline-neutral"> </span>
|
|
114
|
+
<span class="cline-any cline-yes">20x</span>
|
|
113
115
|
<span class="cline-any cline-neutral"> </span>
|
|
114
116
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const CUSTOM_ERRORS = [
|
|
115
117
|
'CliInputError',
|
|
116
118
|
'ImplValidationError',
|
|
119
|
+
'InvalidAggregationParams',
|
|
117
120
|
'ModelInitializationError',
|
|
118
121
|
'ModelCredentialError',
|
|
119
122
|
] as const;
|
|
@@ -142,7 +145,7 @@ export const ERRORS = CUSTOM_ERRORS.reduce((acc, className) => {
|
|
|
142
145
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
146
|
Code coverage generated by
|
|
144
147
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at 2023-
|
|
148
|
+
at 2023-12-04T08:39:10.143Z
|
|
146
149
|
</div>
|
|
147
150
|
<script src="../prettify.js"></script>
|
|
148
151
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at 2023-
|
|
134
|
+
at 2023-12-04T08:39:10.143Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -184,7 +184,7 @@ export const checkIfFileIsYaml = (fileName: string) => {
|
|
|
184
184
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
185
185
|
Code coverage generated by
|
|
186
186
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
187
|
-
at 2023-
|
|
187
|
+
at 2023-12-04T08:39:10.143Z
|
|
188
188
|
</div>
|
|
189
189
|
<script src="../prettify.js"></script>
|
|
190
190
|
<script>
|