@hyperscale0/hsx 1.0.0 → 2.0.1
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/CHANGELOG.md +28 -4
- package/README.md +58 -38
- package/dist/src/ast.d.ts +4 -2
- package/dist/src/ast.d.ts.map +1 -1
- package/dist/src/cli.d.ts +1 -1
- package/dist/src/cli.js.map +1 -1
- package/dist/src/compile.d.ts +8 -2
- package/dist/src/compile.d.ts.map +1 -1
- package/dist/src/compile.js +8 -1
- package/dist/src/compile.js.map +1 -1
- package/dist/src/cost.d.ts +3 -1
- package/dist/src/cost.d.ts.map +1 -1
- package/dist/src/cost.js +124 -94
- package/dist/src/cost.js.map +1 -1
- package/dist/src/diagnostics.d.ts.map +1 -1
- package/dist/src/diagnostics.js +96 -5
- package/dist/src/diagnostics.js.map +1 -1
- package/dist/src/emit.d.ts +3 -1
- package/dist/src/emit.d.ts.map +1 -1
- package/dist/src/emit.js +27 -10
- package/dist/src/emit.js.map +1 -1
- package/dist/src/format.js.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/ir.d.ts.map +1 -1
- package/dist/src/lex.d.ts.map +1 -1
- package/dist/src/lsp/server.js.map +1 -1
- package/dist/src/modules.js +7 -3
- package/dist/src/modules.js.map +1 -1
- package/dist/src/parse.js +3 -3
- package/dist/src/parse.js.map +1 -1
- package/dist/src/std-bundle.js +41 -41
- package/dist/src/std-bundle.js.map +1 -1
- package/dist/src/std-library.js +2 -2
- package/dist/src/typecheck.d.ts.map +1 -1
- package/dist/src/typecheck.js +948 -157
- package/dist/src/typecheck.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/docs/README.md +10 -1
- package/docs/assets/hsx.svg +18 -0
- package/docs/guide/01-first-program.md +1 -1
- package/docs/guide/02-money.md +1 -1
- package/docs/guide/03-instruments.md +44 -3
- package/docs/guide/04-lifecycles.md +18 -3
- package/docs/guide/05-fees-and-splits.md +2 -2
- package/docs/guide/06-schedules.md +1 -1
- package/docs/guide/07-composition.md +8 -2
- package/docs/guide/08-writing-a-module.md +13 -2
- package/docs/guide/09-cost.md +3 -3
- package/docs/guide/10-diagnostics.md +1 -1
- package/docs/llms-full.txt +473 -190
- package/docs/llms.txt +2 -2
- package/docs/playground.md +4 -3
- package/docs/reference/cli.md +2 -2
- package/docs/reference/diagnostics.md +243 -37
- package/docs/reference/grammar.md +2 -2
- package/docs/reference/std/advance.md +2 -2
- package/docs/reference/std/cancellable_booking.md +10 -10
- package/docs/reference/std/captured_payment.md +14 -14
- package/docs/reference/std/conditional_disbursement.md +3 -3
- package/docs/reference/std/credit_facility.md +2 -2
- package/docs/reference/std/held_payment.md +37 -33
- package/docs/reference/std/instant_transfer.md +8 -8
- package/docs/reference/std/metered.md +2 -2
- package/docs/reference/std/pooled_split.md +2 -2
- package/docs/reference/std/premium_forward.md +13 -13
- package/docs/reference/std/reconciled_payout.md +2 -2
- package/docs/reference/std/recurring_collection.md +2 -2
- package/docs/reference/std/rotating_pool.md +2 -2
- package/docs/reference/std/scheduled.md +18 -18
- package/docs/reference/std/security_deposit.md +14 -14
- package/docs/reference/std/settlement_batch.md +2 -2
- package/docs/reference/std/swap.md +18 -18
- package/docs/reference/std/threshold_pool.md +2 -2
- package/docs/reference/std/weighted_distribution.md +2 -2
- package/docs/reference/types.md +1 -1
- package/docs/reference/udl-output.md +1 -1
- package/examples/01-first-program/README.md +1 -1
- package/examples/01-first-program/tip-jar.hsx +1 -1
- package/examples/02-imports-and-archetypes/photo-booth.hsx +1 -1
- package/examples/03-diagnostics/corner-shop-fixed.hsx +1 -1
- package/examples/03-diagnostics/corner-shop.hsx +1 -1
- package/examples/04-complete-product/study-hall.hsx +1 -1
- package/examples/05-watch-club/README.md +0 -3
- package/examples/05-watch-club/watch-club.hsx +1 -1
- package/examples/README.md +35 -4
- package/examples/advance/advance.hsx +1 -1
- package/examples/advance/advance.udl +16 -11
- package/examples/cancellable_booking/cancellable_booking.hsx +1 -1
- package/examples/cancellable_booking/cancellable_booking.udl +13 -11
- package/examples/captured_payment/captured_payment.hsx +1 -1
- package/examples/captured_payment/captured_payment.udl +10 -7
- package/examples/conditional_disbursement/conditional_disbursement.hsx +1 -1
- package/examples/conditional_disbursement/conditional_disbursement.udl +7 -5
- package/examples/cost-table.json +1542 -382
- package/examples/credit_facility/credit_facility.hsx +1 -1
- package/examples/credit_facility/credit_facility.udl +26 -19
- package/examples/held_payment/held_payment.hsx +1 -1
- package/examples/held_payment/held_payment.udl +61 -15
- package/examples/instant_transfer/instant_transfer.hsx +1 -1
- package/examples/instant_transfer/instant_transfer.udl +17 -11
- package/examples/metered/metered.hsx +1 -1
- package/examples/metered/metered.udl +8 -6
- package/examples/pooled_split/pooled_split.hsx +1 -1
- package/examples/pooled_split/pooled_split.udl +16 -13
- package/examples/premium_forward/premium_forward.hsx +1 -1
- package/examples/premium_forward/premium_forward.udl +22 -16
- package/examples/reconciled_payout/reconciled_payout.hsx +1 -1
- package/examples/reconciled_payout/reconciled_payout.udl +4 -2
- package/examples/recurring_collection/recurring_collection.hsx +1 -1
- package/examples/recurring_collection/recurring_collection.udl +20 -15
- package/examples/rotating_pool/rotating_pool.hsx +1 -1
- package/examples/rotating_pool/rotating_pool.udl +92 -82
- package/examples/scheduled/scheduled.hsx +1 -1
- package/examples/scheduled/scheduled.udl +15 -10
- package/examples/security_deposit/security_deposit.hsx +1 -1
- package/examples/security_deposit/security_deposit.udl +19 -5
- package/examples/settlement_batch/settlement_batch.hsx +1 -1
- package/examples/swap/swap.hsx +1 -1
- package/examples/swap/swap.udl +34 -28
- package/examples/threshold_pool/threshold_pool.hsx +1 -1
- package/examples/threshold_pool/threshold_pool.udl +14 -12
- package/examples/weighted_distribution/weighted_distribution.hsx +1 -1
- package/examples/weighted_distribution/weighted_distribution.udl +6 -4
- package/package.json +6 -5
- package/skills/hsx/SKILL.md +26 -26
- package/src/ast.ts +4 -2
- package/src/cli.ts +4 -4
- package/src/compile.ts +14 -3
- package/src/cost.ts +176 -104
- package/src/diagnostics.ts +99 -4
- package/src/emit.ts +32 -18
- package/src/index.ts +2 -1
- package/src/modules.ts +9 -3
- package/src/parse.ts +3 -3
- package/src/std-bundle.ts +41 -41
- package/src/std-library.ts +2 -2
- package/src/typecheck.ts +1251 -235
- package/src/version.ts +1 -1
- package/std/SEMANTICS.md +12 -3
- package/std/{settlements → money_flows}/advance.hsx +1 -1
- package/std/{settlements → money_flows}/cancellable_booking.hsx +4 -3
- package/std/{settlements → money_flows}/captured_payment.hsx +35 -6
- package/std/{settlements → money_flows}/conditional_disbursement.hsx +17 -16
- package/std/{settlements → money_flows}/credit_facility.hsx +1 -2
- package/std/{settlements → money_flows}/held_payment.hsx +61 -25
- package/std/money_flows/index.hsx +3 -0
- package/std/{settlements → money_flows}/instant_transfer.hsx +2 -3
- package/std/{settlements → money_flows}/metered.hsx +1 -1
- package/std/{settlements → money_flows}/pooled_split.hsx +3 -3
- package/std/{settlements → money_flows}/premium_forward.hsx +22 -23
- package/std/{settlements → money_flows}/reconciled_payout.hsx +3 -3
- package/std/{settlements → money_flows}/recurring_collection.hsx +1 -1
- package/std/{settlements → money_flows}/rotating_pool.hsx +8 -6
- package/std/{settlements → money_flows}/scheduled.hsx +22 -27
- package/std/{settlements → money_flows}/security_deposit.hsx +38 -14
- package/std/{settlements → money_flows}/settlement_batch.hsx +3 -3
- package/std/{settlements → money_flows}/swap.hsx +41 -16
- package/std/{settlements → money_flows}/threshold_pool.hsx +5 -5
- package/std/{settlements → money_flows}/weighted_distribution.hsx +6 -6
- package/docs/sessions/2026-09-02-two-instruments.hsx +0 -21
- package/docs/sessions/2026-09-02-two-instruments.md +0 -41
- package/std/settlements/index.hsx +0 -3
|
@@ -396,7 +396,8 @@
|
|
|
396
396
|
"contributionAmount": {
|
|
397
397
|
"description": "Exact contribution in SAR minor units",
|
|
398
398
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
399
|
-
"type": "string"
|
|
399
|
+
"type": "string",
|
|
400
|
+
"x-hyperscale-currency": "SAR"
|
|
400
401
|
},
|
|
401
402
|
"currency": {
|
|
402
403
|
"description": "ISO 4217 currency code",
|
|
@@ -605,8 +606,8 @@
|
|
|
605
606
|
"path": "fields.contributionAmount"
|
|
606
607
|
},
|
|
607
608
|
"currency": {
|
|
608
|
-
"from": "
|
|
609
|
-
"
|
|
609
|
+
"from": "const",
|
|
610
|
+
"value": "SAR"
|
|
610
611
|
},
|
|
611
612
|
"destinationAccountId": {
|
|
612
613
|
"from": "instance",
|
|
@@ -648,6 +649,7 @@
|
|
|
648
649
|
]
|
|
649
650
|
}
|
|
650
651
|
],
|
|
652
|
+
"sandboxFailurePoint": "funding",
|
|
651
653
|
"steps": [],
|
|
652
654
|
"summary": "Fund member a's cycle 1 contribution"
|
|
653
655
|
},
|
|
@@ -684,8 +686,8 @@
|
|
|
684
686
|
"path": "fields.contributionAmount"
|
|
685
687
|
},
|
|
686
688
|
"currency": {
|
|
687
|
-
"from": "
|
|
688
|
-
"
|
|
689
|
+
"from": "const",
|
|
690
|
+
"value": "SAR"
|
|
689
691
|
},
|
|
690
692
|
"destinationAccountId": {
|
|
691
693
|
"from": "instance",
|
|
@@ -763,8 +765,8 @@
|
|
|
763
765
|
"path": "fields.contributionAmount"
|
|
764
766
|
},
|
|
765
767
|
"currency": {
|
|
766
|
-
"from": "
|
|
767
|
-
"
|
|
768
|
+
"from": "const",
|
|
769
|
+
"value": "SAR"
|
|
768
770
|
},
|
|
769
771
|
"destinationAccountId": {
|
|
770
772
|
"from": "instance",
|
|
@@ -843,8 +845,8 @@
|
|
|
843
845
|
{
|
|
844
846
|
"bind": {
|
|
845
847
|
"currency": {
|
|
846
|
-
"from": "
|
|
847
|
-
"
|
|
848
|
+
"from": "const",
|
|
849
|
+
"value": "SAR"
|
|
848
850
|
},
|
|
849
851
|
"owner.id": {
|
|
850
852
|
"from": "instance",
|
|
@@ -895,8 +897,8 @@
|
|
|
895
897
|
"path": "fields.contributionAmount"
|
|
896
898
|
},
|
|
897
899
|
"currency": {
|
|
898
|
-
"from": "
|
|
899
|
-
"
|
|
900
|
+
"from": "const",
|
|
901
|
+
"value": "SAR"
|
|
900
902
|
},
|
|
901
903
|
"destinationAccountId": {
|
|
902
904
|
"from": "instance",
|
|
@@ -966,8 +968,8 @@
|
|
|
966
968
|
"path": "fields.contributionAmount"
|
|
967
969
|
},
|
|
968
970
|
"currency": {
|
|
969
|
-
"from": "
|
|
970
|
-
"
|
|
971
|
+
"from": "const",
|
|
972
|
+
"value": "SAR"
|
|
971
973
|
},
|
|
972
974
|
"destinationAccountId": {
|
|
973
975
|
"from": "instance",
|
|
@@ -1037,8 +1039,8 @@
|
|
|
1037
1039
|
"path": "fields.contributionAmount"
|
|
1038
1040
|
},
|
|
1039
1041
|
"currency": {
|
|
1040
|
-
"from": "
|
|
1041
|
-
"
|
|
1042
|
+
"from": "const",
|
|
1043
|
+
"value": "SAR"
|
|
1042
1044
|
},
|
|
1043
1045
|
"destinationAccountId": {
|
|
1044
1046
|
"from": "instance",
|
|
@@ -1200,8 +1202,8 @@
|
|
|
1200
1202
|
"path": "fields.contributionAmount"
|
|
1201
1203
|
},
|
|
1202
1204
|
"currency": {
|
|
1203
|
-
"from": "
|
|
1204
|
-
"
|
|
1205
|
+
"from": "const",
|
|
1206
|
+
"value": "SAR"
|
|
1205
1207
|
},
|
|
1206
1208
|
"destinationAccountId": {
|
|
1207
1209
|
"from": "instance",
|
|
@@ -1244,6 +1246,7 @@
|
|
|
1244
1246
|
]
|
|
1245
1247
|
}
|
|
1246
1248
|
],
|
|
1249
|
+
"sandboxFailurePoint": "release",
|
|
1247
1250
|
"steps": [],
|
|
1248
1251
|
"summary": "Pay this member's stored contribution into cycle 1's shared pot recipient"
|
|
1249
1252
|
},
|
|
@@ -1271,8 +1274,8 @@
|
|
|
1271
1274
|
"path": "fields.contributionAmount"
|
|
1272
1275
|
},
|
|
1273
1276
|
"currency": {
|
|
1274
|
-
"from": "
|
|
1275
|
-
"
|
|
1277
|
+
"from": "const",
|
|
1278
|
+
"value": "SAR"
|
|
1276
1279
|
},
|
|
1277
1280
|
"destinationAccountId": {
|
|
1278
1281
|
"from": "instance",
|
|
@@ -1342,8 +1345,8 @@
|
|
|
1342
1345
|
"path": "fields.contributionAmount"
|
|
1343
1346
|
},
|
|
1344
1347
|
"currency": {
|
|
1345
|
-
"from": "
|
|
1346
|
-
"
|
|
1348
|
+
"from": "const",
|
|
1349
|
+
"value": "SAR"
|
|
1347
1350
|
},
|
|
1348
1351
|
"destinationAccountId": {
|
|
1349
1352
|
"from": "instance",
|
|
@@ -1413,8 +1416,8 @@
|
|
|
1413
1416
|
"path": "fields.contributionAmount"
|
|
1414
1417
|
},
|
|
1415
1418
|
"currency": {
|
|
1416
|
-
"from": "
|
|
1417
|
-
"
|
|
1419
|
+
"from": "const",
|
|
1420
|
+
"value": "SAR"
|
|
1418
1421
|
},
|
|
1419
1422
|
"destinationAccountId": {
|
|
1420
1423
|
"from": "instance",
|
|
@@ -1484,8 +1487,8 @@
|
|
|
1484
1487
|
"path": "fields.contributionAmount"
|
|
1485
1488
|
},
|
|
1486
1489
|
"currency": {
|
|
1487
|
-
"from": "
|
|
1488
|
-
"
|
|
1490
|
+
"from": "const",
|
|
1491
|
+
"value": "SAR"
|
|
1489
1492
|
},
|
|
1490
1493
|
"destinationAccountId": {
|
|
1491
1494
|
"from": "instance",
|
|
@@ -1555,8 +1558,8 @@
|
|
|
1555
1558
|
"path": "fields.contributionAmount"
|
|
1556
1559
|
},
|
|
1557
1560
|
"currency": {
|
|
1558
|
-
"from": "
|
|
1559
|
-
"
|
|
1561
|
+
"from": "const",
|
|
1562
|
+
"value": "SAR"
|
|
1560
1563
|
},
|
|
1561
1564
|
"destinationAccountId": {
|
|
1562
1565
|
"from": "instance",
|
|
@@ -1609,7 +1612,8 @@
|
|
|
1609
1612
|
"contributionAmount": {
|
|
1610
1613
|
"description": "Exact contribution amount shared by every cycle",
|
|
1611
1614
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
1612
|
-
"type": "string"
|
|
1615
|
+
"type": "string",
|
|
1616
|
+
"x-hyperscale-currency": "SAR"
|
|
1613
1617
|
},
|
|
1614
1618
|
"currency": {
|
|
1615
1619
|
"description": "ISO 4217 currency code",
|
|
@@ -1872,8 +1876,8 @@
|
|
|
1872
1876
|
"path": "fields.contributionAmount"
|
|
1873
1877
|
},
|
|
1874
1878
|
"currency": {
|
|
1875
|
-
"from": "
|
|
1876
|
-
"
|
|
1879
|
+
"from": "const",
|
|
1880
|
+
"value": "SAR"
|
|
1877
1881
|
},
|
|
1878
1882
|
"destinationAccountId": {
|
|
1879
1883
|
"from": "instance",
|
|
@@ -1915,6 +1919,7 @@
|
|
|
1915
1919
|
]
|
|
1916
1920
|
}
|
|
1917
1921
|
],
|
|
1922
|
+
"sandboxFailurePoint": "funding",
|
|
1918
1923
|
"steps": [],
|
|
1919
1924
|
"summary": "Fund member b's cycle 1 contribution"
|
|
1920
1925
|
},
|
|
@@ -1951,8 +1956,8 @@
|
|
|
1951
1956
|
"path": "fields.contributionAmount"
|
|
1952
1957
|
},
|
|
1953
1958
|
"currency": {
|
|
1954
|
-
"from": "
|
|
1955
|
-
"
|
|
1959
|
+
"from": "const",
|
|
1960
|
+
"value": "SAR"
|
|
1956
1961
|
},
|
|
1957
1962
|
"destinationAccountId": {
|
|
1958
1963
|
"from": "instance",
|
|
@@ -2030,8 +2035,8 @@
|
|
|
2030
2035
|
"path": "fields.contributionAmount"
|
|
2031
2036
|
},
|
|
2032
2037
|
"currency": {
|
|
2033
|
-
"from": "
|
|
2034
|
-
"
|
|
2038
|
+
"from": "const",
|
|
2039
|
+
"value": "SAR"
|
|
2035
2040
|
},
|
|
2036
2041
|
"destinationAccountId": {
|
|
2037
2042
|
"from": "instance",
|
|
@@ -2110,8 +2115,8 @@
|
|
|
2110
2115
|
{
|
|
2111
2116
|
"bind": {
|
|
2112
2117
|
"currency": {
|
|
2113
|
-
"from": "
|
|
2114
|
-
"
|
|
2118
|
+
"from": "const",
|
|
2119
|
+
"value": "SAR"
|
|
2115
2120
|
},
|
|
2116
2121
|
"owner.id": {
|
|
2117
2122
|
"from": "instance",
|
|
@@ -2162,8 +2167,8 @@
|
|
|
2162
2167
|
"path": "fields.contributionAmount"
|
|
2163
2168
|
},
|
|
2164
2169
|
"currency": {
|
|
2165
|
-
"from": "
|
|
2166
|
-
"
|
|
2170
|
+
"from": "const",
|
|
2171
|
+
"value": "SAR"
|
|
2167
2172
|
},
|
|
2168
2173
|
"destinationAccountId": {
|
|
2169
2174
|
"from": "instance",
|
|
@@ -2233,8 +2238,8 @@
|
|
|
2233
2238
|
"path": "fields.contributionAmount"
|
|
2234
2239
|
},
|
|
2235
2240
|
"currency": {
|
|
2236
|
-
"from": "
|
|
2237
|
-
"
|
|
2241
|
+
"from": "const",
|
|
2242
|
+
"value": "SAR"
|
|
2238
2243
|
},
|
|
2239
2244
|
"destinationAccountId": {
|
|
2240
2245
|
"from": "instance",
|
|
@@ -2304,8 +2309,8 @@
|
|
|
2304
2309
|
"path": "fields.contributionAmount"
|
|
2305
2310
|
},
|
|
2306
2311
|
"currency": {
|
|
2307
|
-
"from": "
|
|
2308
|
-
"
|
|
2312
|
+
"from": "const",
|
|
2313
|
+
"value": "SAR"
|
|
2309
2314
|
},
|
|
2310
2315
|
"destinationAccountId": {
|
|
2311
2316
|
"from": "instance",
|
|
@@ -2467,8 +2472,8 @@
|
|
|
2467
2472
|
"path": "fields.contributionAmount"
|
|
2468
2473
|
},
|
|
2469
2474
|
"currency": {
|
|
2470
|
-
"from": "
|
|
2471
|
-
"
|
|
2475
|
+
"from": "const",
|
|
2476
|
+
"value": "SAR"
|
|
2472
2477
|
},
|
|
2473
2478
|
"destinationAccountId": {
|
|
2474
2479
|
"from": "instance",
|
|
@@ -2511,6 +2516,7 @@
|
|
|
2511
2516
|
]
|
|
2512
2517
|
}
|
|
2513
2518
|
],
|
|
2519
|
+
"sandboxFailurePoint": "release",
|
|
2514
2520
|
"steps": [],
|
|
2515
2521
|
"summary": "Pay this member's stored contribution into cycle 1's shared pot recipient"
|
|
2516
2522
|
},
|
|
@@ -2538,8 +2544,8 @@
|
|
|
2538
2544
|
"path": "fields.contributionAmount"
|
|
2539
2545
|
},
|
|
2540
2546
|
"currency": {
|
|
2541
|
-
"from": "
|
|
2542
|
-
"
|
|
2547
|
+
"from": "const",
|
|
2548
|
+
"value": "SAR"
|
|
2543
2549
|
},
|
|
2544
2550
|
"destinationAccountId": {
|
|
2545
2551
|
"from": "instance",
|
|
@@ -2609,8 +2615,8 @@
|
|
|
2609
2615
|
"path": "fields.contributionAmount"
|
|
2610
2616
|
},
|
|
2611
2617
|
"currency": {
|
|
2612
|
-
"from": "
|
|
2613
|
-
"
|
|
2618
|
+
"from": "const",
|
|
2619
|
+
"value": "SAR"
|
|
2614
2620
|
},
|
|
2615
2621
|
"destinationAccountId": {
|
|
2616
2622
|
"from": "instance",
|
|
@@ -2680,8 +2686,8 @@
|
|
|
2680
2686
|
"path": "fields.contributionAmount"
|
|
2681
2687
|
},
|
|
2682
2688
|
"currency": {
|
|
2683
|
-
"from": "
|
|
2684
|
-
"
|
|
2689
|
+
"from": "const",
|
|
2690
|
+
"value": "SAR"
|
|
2685
2691
|
},
|
|
2686
2692
|
"destinationAccountId": {
|
|
2687
2693
|
"from": "instance",
|
|
@@ -2751,8 +2757,8 @@
|
|
|
2751
2757
|
"path": "fields.contributionAmount"
|
|
2752
2758
|
},
|
|
2753
2759
|
"currency": {
|
|
2754
|
-
"from": "
|
|
2755
|
-
"
|
|
2760
|
+
"from": "const",
|
|
2761
|
+
"value": "SAR"
|
|
2756
2762
|
},
|
|
2757
2763
|
"destinationAccountId": {
|
|
2758
2764
|
"from": "instance",
|
|
@@ -2822,8 +2828,8 @@
|
|
|
2822
2828
|
"path": "fields.contributionAmount"
|
|
2823
2829
|
},
|
|
2824
2830
|
"currency": {
|
|
2825
|
-
"from": "
|
|
2826
|
-
"
|
|
2831
|
+
"from": "const",
|
|
2832
|
+
"value": "SAR"
|
|
2827
2833
|
},
|
|
2828
2834
|
"destinationAccountId": {
|
|
2829
2835
|
"from": "instance",
|
|
@@ -2876,7 +2882,8 @@
|
|
|
2876
2882
|
"contributionAmount": {
|
|
2877
2883
|
"description": "Exact contribution amount shared by every cycle",
|
|
2878
2884
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
2879
|
-
"type": "string"
|
|
2885
|
+
"type": "string",
|
|
2886
|
+
"x-hyperscale-currency": "SAR"
|
|
2880
2887
|
},
|
|
2881
2888
|
"currency": {
|
|
2882
2889
|
"description": "ISO 4217 currency code",
|
|
@@ -3139,8 +3146,8 @@
|
|
|
3139
3146
|
"path": "fields.contributionAmount"
|
|
3140
3147
|
},
|
|
3141
3148
|
"currency": {
|
|
3142
|
-
"from": "
|
|
3143
|
-
"
|
|
3149
|
+
"from": "const",
|
|
3150
|
+
"value": "SAR"
|
|
3144
3151
|
},
|
|
3145
3152
|
"destinationAccountId": {
|
|
3146
3153
|
"from": "instance",
|
|
@@ -3182,6 +3189,7 @@
|
|
|
3182
3189
|
]
|
|
3183
3190
|
}
|
|
3184
3191
|
],
|
|
3192
|
+
"sandboxFailurePoint": "funding",
|
|
3185
3193
|
"steps": [],
|
|
3186
3194
|
"summary": "Fund member c's cycle 1 contribution"
|
|
3187
3195
|
},
|
|
@@ -3218,8 +3226,8 @@
|
|
|
3218
3226
|
"path": "fields.contributionAmount"
|
|
3219
3227
|
},
|
|
3220
3228
|
"currency": {
|
|
3221
|
-
"from": "
|
|
3222
|
-
"
|
|
3229
|
+
"from": "const",
|
|
3230
|
+
"value": "SAR"
|
|
3223
3231
|
},
|
|
3224
3232
|
"destinationAccountId": {
|
|
3225
3233
|
"from": "instance",
|
|
@@ -3297,8 +3305,8 @@
|
|
|
3297
3305
|
"path": "fields.contributionAmount"
|
|
3298
3306
|
},
|
|
3299
3307
|
"currency": {
|
|
3300
|
-
"from": "
|
|
3301
|
-
"
|
|
3308
|
+
"from": "const",
|
|
3309
|
+
"value": "SAR"
|
|
3302
3310
|
},
|
|
3303
3311
|
"destinationAccountId": {
|
|
3304
3312
|
"from": "instance",
|
|
@@ -3377,8 +3385,8 @@
|
|
|
3377
3385
|
{
|
|
3378
3386
|
"bind": {
|
|
3379
3387
|
"currency": {
|
|
3380
|
-
"from": "
|
|
3381
|
-
"
|
|
3388
|
+
"from": "const",
|
|
3389
|
+
"value": "SAR"
|
|
3382
3390
|
},
|
|
3383
3391
|
"owner.id": {
|
|
3384
3392
|
"from": "instance",
|
|
@@ -3429,8 +3437,8 @@
|
|
|
3429
3437
|
"path": "fields.contributionAmount"
|
|
3430
3438
|
},
|
|
3431
3439
|
"currency": {
|
|
3432
|
-
"from": "
|
|
3433
|
-
"
|
|
3440
|
+
"from": "const",
|
|
3441
|
+
"value": "SAR"
|
|
3434
3442
|
},
|
|
3435
3443
|
"destinationAccountId": {
|
|
3436
3444
|
"from": "instance",
|
|
@@ -3500,8 +3508,8 @@
|
|
|
3500
3508
|
"path": "fields.contributionAmount"
|
|
3501
3509
|
},
|
|
3502
3510
|
"currency": {
|
|
3503
|
-
"from": "
|
|
3504
|
-
"
|
|
3511
|
+
"from": "const",
|
|
3512
|
+
"value": "SAR"
|
|
3505
3513
|
},
|
|
3506
3514
|
"destinationAccountId": {
|
|
3507
3515
|
"from": "instance",
|
|
@@ -3571,8 +3579,8 @@
|
|
|
3571
3579
|
"path": "fields.contributionAmount"
|
|
3572
3580
|
},
|
|
3573
3581
|
"currency": {
|
|
3574
|
-
"from": "
|
|
3575
|
-
"
|
|
3582
|
+
"from": "const",
|
|
3583
|
+
"value": "SAR"
|
|
3576
3584
|
},
|
|
3577
3585
|
"destinationAccountId": {
|
|
3578
3586
|
"from": "instance",
|
|
@@ -3734,8 +3742,8 @@
|
|
|
3734
3742
|
"path": "fields.contributionAmount"
|
|
3735
3743
|
},
|
|
3736
3744
|
"currency": {
|
|
3737
|
-
"from": "
|
|
3738
|
-
"
|
|
3745
|
+
"from": "const",
|
|
3746
|
+
"value": "SAR"
|
|
3739
3747
|
},
|
|
3740
3748
|
"destinationAccountId": {
|
|
3741
3749
|
"from": "instance",
|
|
@@ -3778,6 +3786,7 @@
|
|
|
3778
3786
|
]
|
|
3779
3787
|
}
|
|
3780
3788
|
],
|
|
3789
|
+
"sandboxFailurePoint": "release",
|
|
3781
3790
|
"steps": [],
|
|
3782
3791
|
"summary": "Pay this member's stored contribution into cycle 1's shared pot recipient"
|
|
3783
3792
|
},
|
|
@@ -3805,8 +3814,8 @@
|
|
|
3805
3814
|
"path": "fields.contributionAmount"
|
|
3806
3815
|
},
|
|
3807
3816
|
"currency": {
|
|
3808
|
-
"from": "
|
|
3809
|
-
"
|
|
3817
|
+
"from": "const",
|
|
3818
|
+
"value": "SAR"
|
|
3810
3819
|
},
|
|
3811
3820
|
"destinationAccountId": {
|
|
3812
3821
|
"from": "instance",
|
|
@@ -3876,8 +3885,8 @@
|
|
|
3876
3885
|
"path": "fields.contributionAmount"
|
|
3877
3886
|
},
|
|
3878
3887
|
"currency": {
|
|
3879
|
-
"from": "
|
|
3880
|
-
"
|
|
3888
|
+
"from": "const",
|
|
3889
|
+
"value": "SAR"
|
|
3881
3890
|
},
|
|
3882
3891
|
"destinationAccountId": {
|
|
3883
3892
|
"from": "instance",
|
|
@@ -3947,8 +3956,8 @@
|
|
|
3947
3956
|
"path": "fields.contributionAmount"
|
|
3948
3957
|
},
|
|
3949
3958
|
"currency": {
|
|
3950
|
-
"from": "
|
|
3951
|
-
"
|
|
3959
|
+
"from": "const",
|
|
3960
|
+
"value": "SAR"
|
|
3952
3961
|
},
|
|
3953
3962
|
"destinationAccountId": {
|
|
3954
3963
|
"from": "instance",
|
|
@@ -4018,8 +4027,8 @@
|
|
|
4018
4027
|
"path": "fields.contributionAmount"
|
|
4019
4028
|
},
|
|
4020
4029
|
"currency": {
|
|
4021
|
-
"from": "
|
|
4022
|
-
"
|
|
4030
|
+
"from": "const",
|
|
4031
|
+
"value": "SAR"
|
|
4023
4032
|
},
|
|
4024
4033
|
"destinationAccountId": {
|
|
4025
4034
|
"from": "instance",
|
|
@@ -4089,8 +4098,8 @@
|
|
|
4089
4098
|
"path": "fields.contributionAmount"
|
|
4090
4099
|
},
|
|
4091
4100
|
"currency": {
|
|
4092
|
-
"from": "
|
|
4093
|
-
"
|
|
4101
|
+
"from": "const",
|
|
4102
|
+
"value": "SAR"
|
|
4094
4103
|
},
|
|
4095
4104
|
"destinationAccountId": {
|
|
4096
4105
|
"from": "instance",
|
|
@@ -4143,7 +4152,8 @@
|
|
|
4143
4152
|
"contributionAmount": {
|
|
4144
4153
|
"description": "Exact contribution amount shared by every cycle",
|
|
4145
4154
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
4146
|
-
"type": "string"
|
|
4155
|
+
"type": "string",
|
|
4156
|
+
"x-hyperscale-currency": "SAR"
|
|
4147
4157
|
},
|
|
4148
4158
|
"currency": {
|
|
4149
4159
|
"description": "ISO 4217 currency code",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"path": "fields.installment1Amount"
|
|
42
42
|
},
|
|
43
43
|
"currency": {
|
|
44
|
-
"from": "
|
|
45
|
-
"
|
|
44
|
+
"from": "const",
|
|
45
|
+
"value": "SAR"
|
|
46
46
|
},
|
|
47
47
|
"destinationAccountId": {
|
|
48
48
|
"from": "instance",
|
|
@@ -76,6 +76,7 @@
|
|
|
76
76
|
"operation": "internal_transfer.create"
|
|
77
77
|
}
|
|
78
78
|
],
|
|
79
|
+
"sandboxFailurePoint": "funding",
|
|
79
80
|
"steps": [],
|
|
80
81
|
"summary": "Collect installment 1 of 3"
|
|
81
82
|
},
|
|
@@ -106,8 +107,8 @@
|
|
|
106
107
|
"path": "fields.installment2Amount"
|
|
107
108
|
},
|
|
108
109
|
"currency": {
|
|
109
|
-
"from": "
|
|
110
|
-
"
|
|
110
|
+
"from": "const",
|
|
111
|
+
"value": "SAR"
|
|
111
112
|
},
|
|
112
113
|
"destinationAccountId": {
|
|
113
114
|
"from": "instance",
|
|
@@ -171,8 +172,8 @@
|
|
|
171
172
|
"path": "fields.installment3Amount"
|
|
172
173
|
},
|
|
173
174
|
"currency": {
|
|
174
|
-
"from": "
|
|
175
|
-
"
|
|
175
|
+
"from": "const",
|
|
176
|
+
"value": "SAR"
|
|
176
177
|
},
|
|
177
178
|
"destinationAccountId": {
|
|
178
179
|
"from": "instance",
|
|
@@ -228,17 +229,20 @@
|
|
|
228
229
|
"installment1Amount": {
|
|
229
230
|
"description": "Installment 1 of 3 (carries the integer-division remainder): about 33.34% of totalAmount, collected on its own stored-date anchor",
|
|
230
231
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
231
|
-
"type": "string"
|
|
232
|
+
"type": "string",
|
|
233
|
+
"x-hyperscale-currency": "SAR"
|
|
232
234
|
},
|
|
233
235
|
"installment2Amount": {
|
|
234
236
|
"description": "Installment 2 of 3: about 33.33% of totalAmount, collected on its own stored-date anchor",
|
|
235
237
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
236
|
-
"type": "string"
|
|
238
|
+
"type": "string",
|
|
239
|
+
"x-hyperscale-currency": "SAR"
|
|
237
240
|
},
|
|
238
241
|
"installment3Amount": {
|
|
239
242
|
"description": "Installment 3 of 3: about 33.33% of totalAmount, collected on its own stored-date anchor",
|
|
240
243
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
241
|
-
"type": "string"
|
|
244
|
+
"type": "string",
|
|
245
|
+
"x-hyperscale-currency": "SAR"
|
|
242
246
|
},
|
|
243
247
|
"payeeAccountId": {
|
|
244
248
|
"description": "The payee account",
|
|
@@ -265,7 +269,8 @@
|
|
|
265
269
|
"totalAmount": {
|
|
266
270
|
"description": "The total scheduled amount in SAR minor units; the installment fields below partition it exactly",
|
|
267
271
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
268
|
-
"type": "string"
|
|
272
|
+
"type": "string",
|
|
273
|
+
"x-hyperscale-currency": "SAR"
|
|
269
274
|
}
|
|
270
275
|
},
|
|
271
276
|
"id": "installments",
|
|
@@ -37,9 +37,10 @@
|
|
|
37
37
|
"additionalProperties": false,
|
|
38
38
|
"properties": {
|
|
39
39
|
"damageAmount": {
|
|
40
|
-
"description": "
|
|
40
|
+
"description": "Decided amount in SAR minor units",
|
|
41
41
|
"pattern": "^(0|[1-9][0-9]{0,17})$",
|
|
42
|
-
"type": "string"
|
|
42
|
+
"type": "string",
|
|
43
|
+
"x-hyperscale-currency": "SAR"
|
|
43
44
|
},
|
|
44
45
|
"evidence": {
|
|
45
46
|
"description": "Required decision reference retained in the operation receipt",
|
|
@@ -132,8 +133,8 @@
|
|
|
132
133
|
"path": "fields.depositAmount"
|
|
133
134
|
},
|
|
134
135
|
"currency": {
|
|
135
|
-
"from": "
|
|
136
|
-
"
|
|
136
|
+
"from": "const",
|
|
137
|
+
"value": "SAR"
|
|
137
138
|
},
|
|
138
139
|
"destinationAccountId": {
|
|
139
140
|
"from": "instance",
|
|
@@ -168,12 +169,19 @@
|
|
|
168
169
|
}
|
|
169
170
|
],
|
|
170
171
|
"publicAction": "placeDepositSecurityDeposit",
|
|
172
|
+
"sandboxFailurePoint": "funding",
|
|
171
173
|
"steps": [],
|
|
172
174
|
"summary": "Reserve the depositAmount against the renter's account"
|
|
173
175
|
},
|
|
174
176
|
"return_deposit": {
|
|
175
177
|
"agentDescription": "Return the held deposit to the renter. The deposit must be in held and unclaimed. This releases the reservation whole and the owner receives nothing.",
|
|
176
178
|
"effects": {
|
|
179
|
+
"decides": [
|
|
180
|
+
{
|
|
181
|
+
"signature": "decides.tenant_port",
|
|
182
|
+
"source": "port"
|
|
183
|
+
}
|
|
184
|
+
],
|
|
177
185
|
"moves": [
|
|
178
186
|
{
|
|
179
187
|
"signature": "moves.transfer.internal",
|
|
@@ -197,6 +205,11 @@
|
|
|
197
205
|
"operation": "internal_transfer.void"
|
|
198
206
|
}
|
|
199
207
|
],
|
|
208
|
+
"port": {
|
|
209
|
+
"allowedParties": [
|
|
210
|
+
"beneficiary"
|
|
211
|
+
]
|
|
212
|
+
},
|
|
200
213
|
"publicAction": "returnDepositSecurityDeposit",
|
|
201
214
|
"steps": [],
|
|
202
215
|
"summary": "Return the deposit to the renter through return_deposit"
|
|
@@ -215,7 +228,8 @@
|
|
|
215
228
|
"depositAmount": {
|
|
216
229
|
"description": "The deposit amount in SAR minor units, reserved in full and fully accounted on claim or return",
|
|
217
230
|
"pattern": "^[1-9][0-9]{0,17}$",
|
|
218
|
-
"type": "string"
|
|
231
|
+
"type": "string",
|
|
232
|
+
"x-hyperscale-currency": "SAR"
|
|
219
233
|
},
|
|
220
234
|
"ownerAccountId": {
|
|
221
235
|
"description": "The owner account",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
program settlement_batch_example "Settlement batch example"
|
|
2
|
-
import { settlement_batch } from "std/
|
|
2
|
+
import { settlement_batch } from "std/money_flows"
|
|
3
3
|
party settlement_account: business
|
|
4
4
|
party payout_destination: business
|
|
5
5
|
settlement batch = settlement_batch {
|