@ottochain/sdk 1.6.0 → 2.0.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 (40) hide show
  1. package/dist/cjs/apps/contracts/index.js +18 -13
  2. package/dist/cjs/apps/contracts/state-machines/index.js +139 -7
  3. package/dist/cjs/apps/corporate/index.js +18 -20
  4. package/dist/cjs/apps/corporate/state-machines/index.js +535 -6336
  5. package/dist/cjs/apps/governance/index.js +32 -31
  6. package/dist/cjs/apps/governance/state-machines/index.js +498 -2315
  7. package/dist/cjs/apps/identity/index.js +15 -7
  8. package/dist/cjs/apps/identity/state-machines/index.js +516 -4
  9. package/dist/cjs/apps/index.js +15 -13
  10. package/dist/cjs/apps/markets/index.js +23 -10
  11. package/dist/cjs/apps/markets/state-machines/index.js +1904 -230
  12. package/dist/esm/apps/contracts/index.js +16 -13
  13. package/dist/esm/apps/contracts/state-machines/index.js +138 -6
  14. package/dist/esm/apps/corporate/index.js +14 -20
  15. package/dist/esm/apps/corporate/state-machines/index.js +534 -6335
  16. package/dist/esm/apps/governance/index.js +26 -30
  17. package/dist/esm/apps/governance/state-machines/index.js +497 -2314
  18. package/dist/esm/apps/identity/index.js +13 -7
  19. package/dist/esm/apps/identity/state-machines/index.js +515 -3
  20. package/dist/esm/apps/index.js +14 -12
  21. package/dist/esm/apps/markets/index.js +19 -10
  22. package/dist/esm/apps/markets/state-machines/index.js +1903 -229
  23. package/dist/types/apps/contracts/index.d.ts +661 -9
  24. package/dist/types/apps/contracts/state-machines/index.d.ts +109 -6
  25. package/dist/types/apps/corporate/index.d.ts +4015 -7
  26. package/dist/types/apps/corporate/state-machines/index.d.ts +472 -5587
  27. package/dist/types/apps/governance/index.d.ts +2151 -12
  28. package/dist/types/apps/governance/state-machines/index.d.ts +462 -1875
  29. package/dist/types/apps/identity/index.d.ts +601 -4
  30. package/dist/types/apps/identity/state-machines/index.d.ts +393 -3
  31. package/dist/types/apps/index.d.ts +14 -12
  32. package/dist/types/apps/markets/index.d.ts +1690 -7
  33. package/dist/types/apps/markets/state-machines/index.d.ts +1416 -184
  34. package/package.json +1 -1
  35. package/dist/cjs/apps/oracles/index.js +0 -59
  36. package/dist/cjs/apps/oracles/state-machines/index.js +0 -415
  37. package/dist/esm/apps/oracles/index.js +0 -42
  38. package/dist/esm/apps/oracles/state-machines/index.js +0 -412
  39. package/dist/types/apps/oracles/index.d.ts +0 -34
  40. package/dist/types/apps/oracles/state-machines/index.d.ts +0 -312
@@ -669,240 +669,10 @@ export const daoMultisigDef = {
669
669
  "Escrow": "controlled release"
670
670
  }
671
671
  };
672
- export const daoSingleDef = {
673
- "metadata": {
674
- "name": "SingleOwnerDAO",
675
- "description": "Single owner controls all actions. Simplest governance model.",
676
- "version": "1.0.0",
677
- "category": "governance/dao"
678
- },
679
- "states": {
680
- "ACTIVE": {
681
- "id": "ACTIVE",
682
- "isFinal": false,
683
- "metadata": null
684
- },
685
- "TRANSFERRING": {
686
- "id": "TRANSFERRING",
687
- "isFinal": false,
688
- "metadata": null
689
- },
690
- "DISSOLVED": {
691
- "id": "DISSOLVED",
692
- "isFinal": true,
693
- "metadata": null
694
- }
695
- },
696
- "initialState": "ACTIVE",
697
- "transitions": [
698
- {
699
- "from": "ACTIVE",
700
- "to": "ACTIVE",
701
- "eventName": "execute",
702
- "guard": {
703
- "===": [
704
- {
705
- "var": "event.agent"
706
- },
707
- {
708
- "var": "state.owner"
709
- }
710
- ]
711
- },
712
- "effect": {
713
- "merge": [
714
- {
715
- "var": "state"
716
- },
717
- {
718
- "actions": {
719
- "cat": [
720
- {
721
- "var": "state.actions"
722
- },
723
- [
724
- {
725
- "id": {
726
- "var": "event.actionId"
727
- },
728
- "type": {
729
- "var": "event.actionType"
730
- },
731
- "payload": {
732
- "var": "event.payload"
733
- },
734
- "executedAt": {
735
- "var": "$timestamp"
736
- }
737
- }
738
- ]
739
- ]
740
- }
741
- }
742
- ]
743
- },
744
- "emits": [
745
- {
746
- "event": "action_executed",
747
- "to": "external"
748
- }
749
- ],
750
- "dependencies": []
751
- },
752
- {
753
- "from": "ACTIVE",
754
- "to": "TRANSFERRING",
755
- "eventName": "transfer_ownership",
756
- "guard": {
757
- "===": [
758
- {
759
- "var": "event.agent"
760
- },
761
- {
762
- "var": "state.owner"
763
- }
764
- ]
765
- },
766
- "effect": {
767
- "merge": [
768
- {
769
- "var": "state"
770
- },
771
- {
772
- "pendingOwner": {
773
- "var": "event.newOwner"
774
- },
775
- "transferInitiatedAt": {
776
- "var": "$timestamp"
777
- }
778
- }
779
- ]
780
- },
781
- "dependencies": []
782
- },
783
- {
784
- "from": "TRANSFERRING",
785
- "to": "ACTIVE",
786
- "eventName": "accept_ownership",
787
- "guard": {
788
- "===": [
789
- {
790
- "var": "event.agent"
791
- },
792
- {
793
- "var": "state.pendingOwner"
794
- }
795
- ]
796
- },
797
- "effect": {
798
- "merge": [
799
- {
800
- "var": "state"
801
- },
802
- {
803
- "owner": {
804
- "var": "state.pendingOwner"
805
- },
806
- "pendingOwner": null,
807
- "transferInitiatedAt": null,
808
- "ownershipHistory": {
809
- "cat": [
810
- {
811
- "var": "state.ownershipHistory"
812
- },
813
- [
814
- {
815
- "from": {
816
- "var": "state.owner"
817
- },
818
- "to": {
819
- "var": "state.pendingOwner"
820
- },
821
- "at": {
822
- "var": "$timestamp"
823
- }
824
- }
825
- ]
826
- ]
827
- }
828
- }
829
- ]
830
- },
831
- "emits": [
832
- {
833
- "event": "ownership_transferred",
834
- "to": "Identity"
835
- }
836
- ],
837
- "dependencies": []
838
- },
839
- {
840
- "from": "TRANSFERRING",
841
- "to": "ACTIVE",
842
- "eventName": "cancel_transfer",
843
- "guard": {
844
- "===": [
845
- {
846
- "var": "event.agent"
847
- },
848
- {
849
- "var": "state.owner"
850
- }
851
- ]
852
- },
853
- "effect": {
854
- "merge": [
855
- {
856
- "var": "state"
857
- },
858
- {
859
- "pendingOwner": null,
860
- "transferInitiatedAt": null
861
- }
862
- ]
863
- },
864
- "dependencies": []
865
- },
866
- {
867
- "from": "ACTIVE",
868
- "to": "DISSOLVED",
869
- "eventName": "dissolve",
870
- "guard": {
871
- "===": [
872
- {
873
- "var": "event.agent"
874
- },
875
- {
876
- "var": "state.owner"
877
- }
878
- ]
879
- },
880
- "effect": {
881
- "merge": [
882
- {
883
- "var": "state"
884
- },
885
- {
886
- "dissolvedAt": {
887
- "var": "$timestamp"
888
- },
889
- "status": "DISSOLVED"
890
- }
891
- ]
892
- },
893
- "dependencies": []
894
- }
895
- ],
896
- "crossReferences": {
897
- "Identity": "owner registration",
898
- "Contract": "action execution targets",
899
- "Treasury": "fund management"
900
- }
901
- };
902
- export const daoThresholdDef = {
672
+ export const daoReputationDef = {
903
673
  "metadata": {
904
- "name": "ThresholdDAO",
905
- "description": "Reputation-threshold governance. Minimum reputation required for participation.",
674
+ "name": "DAOReputation",
675
+ "description": "Reputation-based governance. Minimum reputation required for participation.",
906
676
  "version": "1.0.0",
907
677
  "category": "governance/dao"
908
678
  },
@@ -1523,10 +1293,10 @@ export const daoThresholdDef = {
1523
1293
  "Contract": "action execution"
1524
1294
  }
1525
1295
  };
1526
- export const daoTokenDef = {
1296
+ export const daoSingleDef = {
1527
1297
  "metadata": {
1528
- "name": "TokenDAO",
1529
- "description": "Token-weighted voting. Voting power proportional to token holdings.",
1298
+ "name": "SingleOwnerDAO",
1299
+ "description": "Single owner controls all actions. Simplest governance model.",
1530
1300
  "version": "1.0.0",
1531
1301
  "category": "governance/dao"
1532
1302
  },
@@ -1536,13 +1306,8 @@ export const daoTokenDef = {
1536
1306
  "isFinal": false,
1537
1307
  "metadata": null
1538
1308
  },
1539
- "VOTING": {
1540
- "id": "VOTING",
1541
- "isFinal": false,
1542
- "metadata": null
1543
- },
1544
- "QUEUED": {
1545
- "id": "QUEUED",
1309
+ "TRANSFERRING": {
1310
+ "id": "TRANSFERRING",
1546
1311
  "isFinal": false,
1547
1312
  "metadata": null
1548
1313
  },
@@ -1556,16 +1321,251 @@ export const daoTokenDef = {
1556
1321
  "transitions": [
1557
1322
  {
1558
1323
  "from": "ACTIVE",
1559
- "to": "VOTING",
1560
- "eventName": "propose",
1324
+ "to": "ACTIVE",
1325
+ "eventName": "execute",
1561
1326
  "guard": {
1562
- ">=": [
1327
+ "===": [
1563
1328
  {
1564
- "getKey": [
1565
- {
1566
- "var": "state.balances"
1567
- },
1568
- {
1329
+ "var": "event.agent"
1330
+ },
1331
+ {
1332
+ "var": "state.owner"
1333
+ }
1334
+ ]
1335
+ },
1336
+ "effect": {
1337
+ "merge": [
1338
+ {
1339
+ "var": "state"
1340
+ },
1341
+ {
1342
+ "actions": {
1343
+ "cat": [
1344
+ {
1345
+ "var": "state.actions"
1346
+ },
1347
+ [
1348
+ {
1349
+ "id": {
1350
+ "var": "event.actionId"
1351
+ },
1352
+ "type": {
1353
+ "var": "event.actionType"
1354
+ },
1355
+ "payload": {
1356
+ "var": "event.payload"
1357
+ },
1358
+ "executedAt": {
1359
+ "var": "$timestamp"
1360
+ }
1361
+ }
1362
+ ]
1363
+ ]
1364
+ }
1365
+ }
1366
+ ]
1367
+ },
1368
+ "emits": [
1369
+ {
1370
+ "event": "action_executed",
1371
+ "to": "external"
1372
+ }
1373
+ ],
1374
+ "dependencies": []
1375
+ },
1376
+ {
1377
+ "from": "ACTIVE",
1378
+ "to": "TRANSFERRING",
1379
+ "eventName": "transfer_ownership",
1380
+ "guard": {
1381
+ "===": [
1382
+ {
1383
+ "var": "event.agent"
1384
+ },
1385
+ {
1386
+ "var": "state.owner"
1387
+ }
1388
+ ]
1389
+ },
1390
+ "effect": {
1391
+ "merge": [
1392
+ {
1393
+ "var": "state"
1394
+ },
1395
+ {
1396
+ "pendingOwner": {
1397
+ "var": "event.newOwner"
1398
+ },
1399
+ "transferInitiatedAt": {
1400
+ "var": "$timestamp"
1401
+ }
1402
+ }
1403
+ ]
1404
+ },
1405
+ "dependencies": []
1406
+ },
1407
+ {
1408
+ "from": "TRANSFERRING",
1409
+ "to": "ACTIVE",
1410
+ "eventName": "accept_ownership",
1411
+ "guard": {
1412
+ "===": [
1413
+ {
1414
+ "var": "event.agent"
1415
+ },
1416
+ {
1417
+ "var": "state.pendingOwner"
1418
+ }
1419
+ ]
1420
+ },
1421
+ "effect": {
1422
+ "merge": [
1423
+ {
1424
+ "var": "state"
1425
+ },
1426
+ {
1427
+ "owner": {
1428
+ "var": "state.pendingOwner"
1429
+ },
1430
+ "pendingOwner": null,
1431
+ "transferInitiatedAt": null,
1432
+ "ownershipHistory": {
1433
+ "cat": [
1434
+ {
1435
+ "var": "state.ownershipHistory"
1436
+ },
1437
+ [
1438
+ {
1439
+ "from": {
1440
+ "var": "state.owner"
1441
+ },
1442
+ "to": {
1443
+ "var": "state.pendingOwner"
1444
+ },
1445
+ "at": {
1446
+ "var": "$timestamp"
1447
+ }
1448
+ }
1449
+ ]
1450
+ ]
1451
+ }
1452
+ }
1453
+ ]
1454
+ },
1455
+ "emits": [
1456
+ {
1457
+ "event": "ownership_transferred",
1458
+ "to": "Identity"
1459
+ }
1460
+ ],
1461
+ "dependencies": []
1462
+ },
1463
+ {
1464
+ "from": "TRANSFERRING",
1465
+ "to": "ACTIVE",
1466
+ "eventName": "cancel_transfer",
1467
+ "guard": {
1468
+ "===": [
1469
+ {
1470
+ "var": "event.agent"
1471
+ },
1472
+ {
1473
+ "var": "state.owner"
1474
+ }
1475
+ ]
1476
+ },
1477
+ "effect": {
1478
+ "merge": [
1479
+ {
1480
+ "var": "state"
1481
+ },
1482
+ {
1483
+ "pendingOwner": null,
1484
+ "transferInitiatedAt": null
1485
+ }
1486
+ ]
1487
+ },
1488
+ "dependencies": []
1489
+ },
1490
+ {
1491
+ "from": "ACTIVE",
1492
+ "to": "DISSOLVED",
1493
+ "eventName": "dissolve",
1494
+ "guard": {
1495
+ "===": [
1496
+ {
1497
+ "var": "event.agent"
1498
+ },
1499
+ {
1500
+ "var": "state.owner"
1501
+ }
1502
+ ]
1503
+ },
1504
+ "effect": {
1505
+ "merge": [
1506
+ {
1507
+ "var": "state"
1508
+ },
1509
+ {
1510
+ "dissolvedAt": {
1511
+ "var": "$timestamp"
1512
+ },
1513
+ "status": "DISSOLVED"
1514
+ }
1515
+ ]
1516
+ },
1517
+ "dependencies": []
1518
+ }
1519
+ ],
1520
+ "crossReferences": {
1521
+ "Identity": "owner registration",
1522
+ "Contract": "action execution targets",
1523
+ "Treasury": "fund management"
1524
+ }
1525
+ };
1526
+ export const daoTokenDef = {
1527
+ "metadata": {
1528
+ "name": "TokenDAO",
1529
+ "description": "Token-weighted voting. Voting power proportional to token holdings.",
1530
+ "version": "1.0.0",
1531
+ "category": "governance/dao"
1532
+ },
1533
+ "states": {
1534
+ "ACTIVE": {
1535
+ "id": "ACTIVE",
1536
+ "isFinal": false,
1537
+ "metadata": null
1538
+ },
1539
+ "VOTING": {
1540
+ "id": "VOTING",
1541
+ "isFinal": false,
1542
+ "metadata": null
1543
+ },
1544
+ "QUEUED": {
1545
+ "id": "QUEUED",
1546
+ "isFinal": false,
1547
+ "metadata": null
1548
+ },
1549
+ "DISSOLVED": {
1550
+ "id": "DISSOLVED",
1551
+ "isFinal": true,
1552
+ "metadata": null
1553
+ }
1554
+ },
1555
+ "initialState": "ACTIVE",
1556
+ "transitions": [
1557
+ {
1558
+ "from": "ACTIVE",
1559
+ "to": "VOTING",
1560
+ "eventName": "propose",
1561
+ "guard": {
1562
+ ">=": [
1563
+ {
1564
+ "getKey": [
1565
+ {
1566
+ "var": "state.balances"
1567
+ },
1568
+ {
1569
1569
  "var": "event.agent"
1570
1570
  }
1571
1571
  ]
@@ -1977,1950 +1977,16 @@ export const daoTokenDef = {
1977
1977
  "var": "state.votes.against"
1978
1978
  },
1979
1979
  {
1980
- "var": "state.votes.abstain"
1981
- }
1982
- ]
1983
- },
1984
- {
1985
- "var": "state.quorum"
1986
- }
1987
- ]
1988
- }
1989
- ]
1990
- }
1991
- ]
1992
- },
1993
- "effect": {
1994
- "merge": [
1995
- {
1996
- "var": "state"
1997
- },
1998
- {
1999
- "rejectedProposals": {
2000
- "cat": [
2001
- {
2002
- "var": "state.rejectedProposals"
2003
- },
2004
- [
2005
- {
2006
- "merge": [
2007
- {
2008
- "var": "state.proposal"
2009
- },
2010
- {
2011
- "votes": {
2012
- "var": "state.votes"
2013
- },
2014
- "rejectedAt": {
2015
- "var": "$timestamp"
2016
- }
2017
- }
2018
- ]
2019
- }
2020
- ]
2021
- ]
2022
- },
2023
- "proposal": null,
2024
- "votes": null
2025
- }
2026
- ]
2027
- },
2028
- "dependencies": []
2029
- },
2030
- {
2031
- "from": "QUEUED",
2032
- "to": "ACTIVE",
2033
- "eventName": "cancel",
2034
- "guard": {
2035
- "===": [
2036
- {
2037
- "var": "event.agent"
2038
- },
2039
- {
2040
- "var": "state.proposal.proposer"
2041
- }
2042
- ]
2043
- },
2044
- "effect": {
2045
- "merge": [
2046
- {
2047
- "var": "state"
2048
- },
2049
- {
2050
- "cancelledProposals": {
2051
- "cat": [
2052
- {
2053
- "var": "state.cancelledProposals"
2054
- },
2055
- [
2056
- {
2057
- "merge": [
2058
- {
2059
- "var": "state.proposal"
2060
- },
2061
- {
2062
- "cancelledAt": {
2063
- "var": "$timestamp"
2064
- }
2065
- }
2066
- ]
2067
- }
2068
- ]
2069
- ]
2070
- },
2071
- "proposal": null,
2072
- "votes": null
2073
- }
2074
- ]
2075
- },
2076
- "dependencies": []
2077
- },
2078
- {
2079
- "from": "ACTIVE",
2080
- "to": "ACTIVE",
2081
- "eventName": "delegate",
2082
- "guard": {
2083
- ">": [
2084
- {
2085
- "getKey": [
2086
- {
2087
- "var": "state.balances"
2088
- },
2089
- {
2090
- "var": "event.agent"
2091
- }
2092
- ]
2093
- },
2094
- 0
2095
- ]
2096
- },
2097
- "effect": {
2098
- "merge": [
2099
- {
2100
- "var": "state"
2101
- },
2102
- {
2103
- "delegations": {
2104
- "setKey": [
2105
- {
2106
- "var": "state.delegations"
2107
- },
2108
- {
2109
- "var": "event.agent"
2110
- },
2111
- {
2112
- "var": "event.delegateTo"
2113
- }
2114
- ]
2115
- }
2116
- }
2117
- ]
2118
- },
2119
- "dependencies": []
2120
- },
2121
- {
2122
- "from": "ACTIVE",
2123
- "to": "ACTIVE",
2124
- "eventName": "undelegate",
2125
- "guard": {
2126
- "getKey": [
2127
- {
2128
- "var": "state.delegations"
2129
- },
2130
- {
2131
- "var": "event.agent"
2132
- }
2133
- ]
2134
- },
2135
- "effect": {
2136
- "merge": [
2137
- {
2138
- "var": "state"
2139
- },
2140
- {
2141
- "delegations": {
2142
- "deleteKey": [
2143
- {
2144
- "var": "state.delegations"
2145
- },
2146
- {
2147
- "var": "event.agent"
2148
- }
2149
- ]
2150
- }
2151
- }
2152
- ]
2153
- },
2154
- "dependencies": []
2155
- }
2156
- ],
2157
- "crossReferences": {
2158
- "Identity": "voter verification",
2159
- "Token": "balance snapshots",
2160
- "Contract": "action execution",
2161
- "Treasury": "fund management"
2162
- }
2163
- };
2164
- export const govConstitutionDef = {
2165
- "metadata": {
2166
- "name": "Constitution",
2167
- "description": "Foundational charter that defines governance structure, branch powers, and amendment rules",
2168
- "version": "1.0.0"
2169
- },
2170
- "states": {
2171
- "DRAFT": {
2172
- "id": "DRAFT",
2173
- "isFinal": false,
2174
- "metadata": null
2175
- },
2176
- "RATIFIED": {
2177
- "id": "RATIFIED",
2178
- "isFinal": false,
2179
- "metadata": null
2180
- },
2181
- "AMENDING": {
2182
- "id": "AMENDING",
2183
- "isFinal": false,
2184
- "metadata": null
2185
- },
2186
- "SUSPENDED": {
2187
- "id": "SUSPENDED",
2188
- "isFinal": false,
2189
- "metadata": null
2190
- },
2191
- "DISSOLVED": {
2192
- "id": "DISSOLVED",
2193
- "isFinal": true,
2194
- "metadata": null
2195
- }
2196
- },
2197
- "initialState": "DRAFT",
2198
- "transitions": [
2199
- {
2200
- "from": "DRAFT",
2201
- "to": "RATIFIED",
2202
- "eventName": "ratify",
2203
- "guard": {
2204
- ">=": [
2205
- {
2206
- "size": {
2207
- "var": "state.ratifications"
2208
- }
2209
- },
2210
- {
2211
- "var": "state.ratificationThreshold"
2212
- }
2213
- ]
2214
- },
2215
- "effect": {
2216
- "merge": [
2217
- {
2218
- "var": "state"
2219
- },
2220
- {
2221
- "status": "RATIFIED",
2222
- "ratifiedAt": {
2223
- "var": "$timestamp"
2224
- }
2225
- }
2226
- ]
2227
- },
2228
- "dependencies": []
2229
- },
2230
- {
2231
- "from": "DRAFT",
2232
- "to": "DRAFT",
2233
- "eventName": "sign",
2234
- "guard": {
2235
- "and": [
2236
- {
2237
- "in": [
2238
- {
2239
- "var": "event.agent"
2240
- },
2241
- {
2242
- "var": "state.founders"
2243
- }
2244
- ]
2245
- },
2246
- {
2247
- "!": [
2248
- {
2249
- "in": [
2250
- {
2251
- "var": "event.agent"
2252
- },
2253
- {
2254
- "var": "state.ratifications"
2255
- }
2256
- ]
2257
- }
2258
- ]
2259
- }
2260
- ]
2261
- },
2262
- "effect": {
2263
- "merge": [
2264
- {
2265
- "var": "state"
2266
- },
2267
- {
2268
- "ratifications": {
2269
- "cat": [
2270
- {
2271
- "var": "state.ratifications"
2272
- },
2273
- [
2274
- {
2275
- "var": "event.agent"
2276
- }
2277
- ]
2278
- ]
2279
- }
2280
- }
2281
- ]
2282
- },
2283
- "dependencies": []
2284
- },
2285
- {
2286
- "from": "RATIFIED",
2287
- "to": "AMENDING",
2288
- "eventName": "propose_amendment",
2289
- "guard": {
2290
- "or": [
2291
- {
2292
- "in": [
2293
- {
2294
- "var": "event.agent"
2295
- },
2296
- {
2297
- "var": "state.branches.legislature.members"
2298
- }
2299
- ]
2300
- },
2301
- {
2302
- ">=": [
2303
- {
2304
- "var": "event.petitionSignatures"
2305
- },
2306
- {
2307
- "var": "state.amendmentPetitionThreshold"
2308
- }
2309
- ]
2310
- }
2311
- ]
2312
- },
2313
- "effect": {
2314
- "merge": [
2315
- {
2316
- "var": "state"
2317
- },
2318
- {
2319
- "status": "AMENDING",
2320
- "pendingAmendment": {
2321
- "id": {
2322
- "var": "event.amendmentId"
2323
- },
2324
- "proposer": {
2325
- "var": "event.agent"
2326
- },
2327
- "changes": {
2328
- "var": "event.changes"
2329
- },
2330
- "proposedAt": {
2331
- "var": "$timestamp"
2332
- },
2333
- "votes": {}
2334
- }
2335
- }
2336
- ]
2337
- },
2338
- "dependencies": []
2339
- },
2340
- {
2341
- "from": "AMENDING",
2342
- "to": "RATIFIED",
2343
- "eventName": "ratify_amendment",
2344
- "guard": {
2345
- ">=": [
2346
- {
2347
- "var": "state.pendingAmendment.approvalCount"
2348
- },
2349
- {
2350
- "var": "state.amendmentThreshold"
2351
- }
2352
- ]
2353
- },
2354
- "effect": {
2355
- "merge": [
2356
- {
2357
- "var": "state"
2358
- },
2359
- {
2360
- "status": "RATIFIED",
2361
- "amendments": {
2362
- "cat": [
2363
- {
2364
- "var": "state.amendments"
2365
- },
2366
- [
2367
- {
2368
- "id": {
2369
- "var": "state.pendingAmendment.id"
2370
- },
2371
- "changes": {
2372
- "var": "state.pendingAmendment.changes"
2373
- },
2374
- "ratifiedAt": {
2375
- "var": "$timestamp"
2376
- }
2377
- }
2378
- ]
2379
- ]
2380
- },
2381
- "pendingAmendment": null
2382
- }
2383
- ]
2384
- },
2385
- "dependencies": []
2386
- },
2387
- {
2388
- "from": "AMENDING",
2389
- "to": "RATIFIED",
2390
- "eventName": "reject_amendment",
2391
- "guard": {
2392
- "var": "state.pendingAmendment.rejected"
2393
- },
2394
- "effect": {
2395
- "merge": [
2396
- {
2397
- "var": "state"
2398
- },
2399
- {
2400
- "status": "RATIFIED",
2401
- "failedAmendments": {
2402
- "cat": [
2403
- {
2404
- "var": "state.failedAmendments"
2405
- },
2406
- [
2407
- {
2408
- "var": "state.pendingAmendment"
2409
- }
2410
- ]
2411
- ]
2412
- },
2413
- "pendingAmendment": null
2414
- }
2415
- ]
2416
- },
2417
- "dependencies": []
2418
- },
2419
- {
2420
- "from": "RATIFIED",
2421
- "to": "SUSPENDED",
2422
- "eventName": "suspend",
2423
- "guard": {
2424
- "and": [
2425
- {
2426
- "in": [
2427
- {
2428
- "var": "event.agent"
2429
- },
2430
- {
2431
- "var": "state.emergencyCouncil"
2432
- }
2433
- ]
2434
- },
2435
- {
2436
- "var": "event.reason"
2437
- }
2438
- ]
2439
- },
2440
- "effect": {
2441
- "merge": [
2442
- {
2443
- "var": "state"
2444
- },
2445
- {
2446
- "status": "SUSPENDED",
2447
- "suspendedBy": {
2448
- "var": "event.agent"
2449
- },
2450
- "suspensionReason": {
2451
- "var": "event.reason"
2452
- },
2453
- "suspendedAt": {
2454
- "var": "$timestamp"
2455
- }
2456
- }
2457
- ]
2458
- },
2459
- "dependencies": []
2460
- },
2461
- {
2462
- "from": "SUSPENDED",
2463
- "to": "RATIFIED",
2464
- "eventName": "restore",
2465
- "guard": {
2466
- ">=": [
2467
- {
2468
- "var": "event.restorationVotes"
2469
- },
2470
- {
2471
- "var": "state.restorationThreshold"
2472
- }
2473
- ]
2474
- },
2475
- "effect": {
2476
- "merge": [
2477
- {
2478
- "var": "state"
2479
- },
2480
- {
2481
- "status": "RATIFIED",
2482
- "restoredAt": {
2483
- "var": "$timestamp"
2484
- }
2485
- }
2486
- ]
2487
- },
2488
- "dependencies": []
2489
- },
2490
- {
2491
- "from": "RATIFIED",
2492
- "to": "DISSOLVED",
2493
- "eventName": "dissolve",
2494
- "guard": {
2495
- ">=": [
2496
- {
2497
- "var": "event.dissolutionVotes"
2498
- },
2499
- {
2500
- "var": "state.dissolutionThreshold"
2501
- }
2502
- ]
2503
- },
2504
- "effect": {
2505
- "merge": [
2506
- {
2507
- "var": "state"
2508
- },
2509
- {
2510
- "status": "DISSOLVED",
2511
- "dissolvedAt": {
2512
- "var": "$timestamp"
2513
- }
2514
- }
2515
- ]
2516
- },
2517
- "dependencies": []
2518
- }
2519
- ]
2520
- };
2521
- export const govExecutiveDef = {
2522
- "metadata": {
2523
- "name": "Executive",
2524
- "description": "Execution branch - implements mandates, manages operations, reports outcomes",
2525
- "version": "1.0.0"
2526
- },
2527
- "states": {
2528
- "RECEIVED": {
2529
- "id": "RECEIVED",
2530
- "isFinal": false,
2531
- "metadata": null
2532
- },
2533
- "PLANNING": {
2534
- "id": "PLANNING",
2535
- "isFinal": false,
2536
- "metadata": null
2537
- },
2538
- "EXECUTING": {
2539
- "id": "EXECUTING",
2540
- "isFinal": false,
2541
- "metadata": null
2542
- },
2543
- "PAUSED": {
2544
- "id": "PAUSED",
2545
- "isFinal": false,
2546
- "metadata": null
2547
- },
2548
- "COMPLETED": {
2549
- "id": "COMPLETED",
2550
- "isFinal": true,
2551
- "metadata": null
2552
- },
2553
- "FAILED": {
2554
- "id": "FAILED",
2555
- "isFinal": true,
2556
- "metadata": null
2557
- },
2558
- "BLOCKED": {
2559
- "id": "BLOCKED",
2560
- "isFinal": true,
2561
- "metadata": null
2562
- },
2563
- "VETOED": {
2564
- "id": "VETOED",
2565
- "isFinal": true,
2566
- "metadata": null
2567
- }
2568
- },
2569
- "initialState": "RECEIVED",
2570
- "transitions": [
2571
- {
2572
- "from": "RECEIVED",
2573
- "to": "PLANNING",
2574
- "eventName": "accept",
2575
- "guard": {
2576
- "in": [
2577
- {
2578
- "var": "event.agent"
2579
- },
2580
- {
2581
- "var": "state.executors"
2582
- }
2583
- ]
2584
- },
2585
- "effect": {
2586
- "merge": [
2587
- {
2588
- "var": "state"
2589
- },
2590
- {
2591
- "status": "PLANNING",
2592
- "acceptedBy": {
2593
- "var": "event.agent"
2594
- },
2595
- "acceptedAt": {
2596
- "var": "$timestamp"
2597
- },
2598
- "plan": {
2599
- "var": "event.plan"
2600
- }
2601
- }
2602
- ]
2603
- },
2604
- "dependencies": []
2605
- },
2606
- {
2607
- "from": "RECEIVED",
2608
- "to": "VETOED",
2609
- "eventName": "veto",
2610
- "guard": {
2611
- "and": [
2612
- {
2613
- "var": "state.config.executiveVeto"
2614
- },
2615
- {
2616
- "===": [
2617
- {
2618
- "var": "event.agent"
2619
- },
2620
- {
2621
- "var": "state.executiveHead"
2622
- }
2623
- ]
2624
- }
2625
- ]
2626
- },
2627
- "effect": {
2628
- "merge": [
2629
- {
2630
- "var": "state"
2631
- },
2632
- {
2633
- "status": "VETOED",
2634
- "vetoedBy": {
2635
- "var": "event.agent"
2636
- },
2637
- "vetoReason": {
2638
- "var": "event.reason"
2639
- },
2640
- "vetoedAt": {
2641
- "var": "$timestamp"
2642
- }
2643
- }
2644
- ]
2645
- },
2646
- "dependencies": []
2647
- },
2648
- {
2649
- "from": "PLANNING",
2650
- "to": "EXECUTING",
2651
- "eventName": "begin",
2652
- "guard": {
2653
- "in": [
2654
- {
2655
- "var": "event.agent"
2656
- },
2657
- {
2658
- "var": "state.executors"
2659
- }
2660
- ]
2661
- },
2662
- "effect": {
2663
- "merge": [
2664
- {
2665
- "var": "state"
2666
- },
2667
- {
2668
- "status": "EXECUTING",
2669
- "executionStartedAt": {
2670
- "var": "$timestamp"
2671
- },
2672
- "milestones": []
2673
- }
2674
- ]
2675
- },
2676
- "dependencies": []
2677
- },
2678
- {
2679
- "from": "EXECUTING",
2680
- "to": "EXECUTING",
2681
- "eventName": "report_progress",
2682
- "guard": {
2683
- "in": [
2684
- {
2685
- "var": "event.agent"
2686
- },
2687
- {
2688
- "var": "state.executors"
2689
- }
2690
- ]
2691
- },
2692
- "effect": {
2693
- "merge": [
2694
- {
2695
- "var": "state"
2696
- },
2697
- {
2698
- "milestones": {
2699
- "cat": [
2700
- {
2701
- "var": "state.milestones"
2702
- },
2703
- [
2704
- {
2705
- "description": {
2706
- "var": "event.description"
2707
- },
2708
- "completedAt": {
2709
- "var": "$timestamp"
2710
- },
2711
- "evidence": {
2712
- "var": "event.evidence"
2713
- }
2714
- }
2715
- ]
2716
- ]
2717
- },
2718
- "lastProgressAt": {
2719
- "var": "$timestamp"
2720
- }
2721
- }
2722
- ]
2723
- },
2724
- "dependencies": []
2725
- },
2726
- {
2727
- "from": "EXECUTING",
2728
- "to": "PAUSED",
2729
- "eventName": "pause",
2730
- "guard": {
2731
- "or": [
2732
- {
2733
- "in": [
2734
- {
2735
- "var": "event.agent"
2736
- },
2737
- {
2738
- "var": "state.executors"
2739
- }
2740
- ]
2741
- },
2742
- {
2743
- "var": "event.judicialOrder"
2744
- }
2745
- ]
2746
- },
2747
- "effect": {
2748
- "merge": [
2749
- {
2750
- "var": "state"
2751
- },
2752
- {
2753
- "status": "PAUSED",
2754
- "pausedBy": {
2755
- "var": "event.agent"
2756
- },
2757
- "pauseReason": {
2758
- "var": "event.reason"
2759
- },
2760
- "pausedAt": {
2761
- "var": "$timestamp"
2762
- },
2763
- "judicialHold": {
2764
- "var": "event.judicialOrder"
2765
- }
2766
- }
2767
- ]
2768
- },
2769
- "dependencies": []
2770
- },
2771
- {
2772
- "from": "PAUSED",
2773
- "to": "EXECUTING",
2774
- "eventName": "resume",
2775
- "guard": {
2776
- "and": [
2777
- {
2778
- "in": [
2779
- {
2780
- "var": "event.agent"
2781
- },
2782
- {
2783
- "var": "state.executors"
2784
- }
2785
- ]
2786
- },
2787
- {
2788
- "!": [
2789
- {
2790
- "var": "state.judicialHold"
2791
- }
2792
- ]
2793
- }
2794
- ]
2795
- },
2796
- "effect": {
2797
- "merge": [
2798
- {
2799
- "var": "state"
2800
- },
2801
- {
2802
- "status": "EXECUTING",
2803
- "resumedAt": {
2804
- "var": "$timestamp"
2805
- }
2806
- }
2807
- ]
2808
- },
2809
- "dependencies": []
2810
- },
2811
- {
2812
- "from": "PAUSED",
2813
- "to": "BLOCKED",
2814
- "eventName": "block",
2815
- "guard": {
2816
- "var": "event.judicialRuling"
2817
- },
2818
- "effect": {
2819
- "merge": [
2820
- {
2821
- "var": "state"
2822
- },
2823
- {
2824
- "status": "BLOCKED",
2825
- "blockedBy": {
2826
- "var": "event.agent"
2827
- },
2828
- "rulingId": {
2829
- "var": "event.rulingId"
2830
- },
2831
- "blockedAt": {
2832
- "var": "$timestamp"
2833
- }
2834
- }
2835
- ]
2836
- },
2837
- "dependencies": []
2838
- },
2839
- {
2840
- "from": "EXECUTING",
2841
- "to": "COMPLETED",
2842
- "eventName": "complete",
2843
- "guard": {
2844
- "in": [
2845
- {
2846
- "var": "event.agent"
2847
- },
2848
- {
2849
- "var": "state.executors"
2850
- }
2851
- ]
2852
- },
2853
- "effect": {
2854
- "merge": [
2855
- {
2856
- "var": "state"
2857
- },
2858
- {
2859
- "status": "COMPLETED",
2860
- "completedAt": {
2861
- "var": "$timestamp"
2862
- },
2863
- "outcome": {
2864
- "var": "event.outcome"
2865
- },
2866
- "finalReport": {
2867
- "var": "event.report"
2868
- }
2869
- }
2870
- ]
2871
- },
2872
- "dependencies": []
2873
- },
2874
- {
2875
- "from": "EXECUTING",
2876
- "to": "FAILED",
2877
- "eventName": "fail",
2878
- "guard": {
2879
- "in": [
2880
- {
2881
- "var": "event.agent"
2882
- },
2883
- {
2884
- "var": "state.executors"
2885
- }
2886
- ]
2887
- },
2888
- "effect": {
2889
- "merge": [
2890
- {
2891
- "var": "state"
2892
- },
2893
- {
2894
- "status": "FAILED",
2895
- "failedAt": {
2896
- "var": "$timestamp"
2897
- },
2898
- "failureReason": {
2899
- "var": "event.reason"
2900
- }
2901
- }
2902
- ]
2903
- },
2904
- "dependencies": []
2905
- }
2906
- ]
2907
- };
2908
- export const govJudiciaryDef = {
2909
- "metadata": {
2910
- "name": "Judiciary",
2911
- "description": "Judicial branch - interprets rules, reviews actions, resolves disputes, issues rulings",
2912
- "version": "1.0.0"
2913
- },
2914
- "states": {
2915
- "FILED": {
2916
- "id": "FILED",
2917
- "isFinal": false,
2918
- "metadata": null
2919
- },
2920
- "REVIEW": {
2921
- "id": "REVIEW",
2922
- "isFinal": false,
2923
- "metadata": null
2924
- },
2925
- "HEARING": {
2926
- "id": "HEARING",
2927
- "isFinal": false,
2928
- "metadata": null
2929
- },
2930
- "DELIBERATION": {
2931
- "id": "DELIBERATION",
2932
- "isFinal": false,
2933
- "metadata": null
2934
- },
2935
- "RULING": {
2936
- "id": "RULING",
2937
- "isFinal": false,
2938
- "metadata": null
2939
- },
2940
- "ENFORCING": {
2941
- "id": "ENFORCING",
2942
- "isFinal": false,
2943
- "metadata": null
2944
- },
2945
- "CLOSED": {
2946
- "id": "CLOSED",
2947
- "isFinal": true,
2948
- "metadata": null
2949
- },
2950
- "DISMISSED": {
2951
- "id": "DISMISSED",
2952
- "isFinal": true,
2953
- "metadata": null
2954
- },
2955
- "APPEALED": {
2956
- "id": "APPEALED",
2957
- "isFinal": false,
2958
- "metadata": null
2959
- }
2960
- },
2961
- "initialState": "FILED",
2962
- "transitions": [
2963
- {
2964
- "from": "FILED",
2965
- "to": "REVIEW",
2966
- "eventName": "accept",
2967
- "guard": {
2968
- "in": [
2969
- {
2970
- "var": "event.agent"
2971
- },
2972
- {
2973
- "var": "state.judges"
2974
- }
2975
- ]
2976
- },
2977
- "effect": {
2978
- "merge": [
2979
- {
2980
- "var": "state"
2981
- },
2982
- {
2983
- "status": "REVIEW",
2984
- "acceptedBy": {
2985
- "var": "event.agent"
2986
- },
2987
- "acceptedAt": {
2988
- "var": "$timestamp"
2989
- },
2990
- "assignedJudges": {
2991
- "var": "event.panel"
2992
- }
2993
- }
2994
- ]
2995
- },
2996
- "dependencies": []
2997
- },
2998
- {
2999
- "from": "FILED",
3000
- "to": "DISMISSED",
3001
- "eventName": "dismiss",
3002
- "guard": {
3003
- "in": [
3004
- {
3005
- "var": "event.agent"
3006
- },
3007
- {
3008
- "var": "state.judges"
3009
- }
3010
- ]
3011
- },
3012
- "effect": {
3013
- "merge": [
3014
- {
3015
- "var": "state"
3016
- },
3017
- {
3018
- "status": "DISMISSED",
3019
- "dismissedBy": {
3020
- "var": "event.agent"
3021
- },
3022
- "dismissReason": {
3023
- "var": "event.reason"
3024
- },
3025
- "dismissedAt": {
3026
- "var": "$timestamp"
3027
- }
3028
- }
3029
- ]
3030
- },
3031
- "dependencies": []
3032
- },
3033
- {
3034
- "from": "REVIEW",
3035
- "to": "REVIEW",
3036
- "eventName": "issue_stay",
3037
- "guard": {
3038
- "in": [
3039
- {
3040
- "var": "event.agent"
3041
- },
3042
- {
3043
- "var": "state.assignedJudges"
3044
- }
3045
- ]
3046
- },
3047
- "effect": {
3048
- "merge": [
3049
- {
3050
- "var": "state"
3051
- },
3052
- {
3053
- "emergencyStay": {
3054
- "issuedBy": {
3055
- "var": "event.agent"
3056
- },
3057
- "issuedAt": {
3058
- "var": "$timestamp"
3059
- },
3060
- "targetFiberId": {
3061
- "var": "event.targetFiberId"
3062
- },
3063
- "reason": {
3064
- "var": "event.reason"
3065
- },
3066
- "expiresAt": {
3067
- "var": "event.expiresAt"
3068
- }
3069
- }
3070
- }
3071
- ]
3072
- },
3073
- "dependencies": []
3074
- },
3075
- {
3076
- "from": "REVIEW",
3077
- "to": "HEARING",
3078
- "eventName": "schedule_hearing",
3079
- "guard": {
3080
- "in": [
3081
- {
3082
- "var": "event.agent"
3083
- },
3084
- {
3085
- "var": "state.assignedJudges"
3086
- }
3087
- ]
3088
- },
3089
- "effect": {
3090
- "merge": [
3091
- {
3092
- "var": "state"
3093
- },
3094
- {
3095
- "status": "HEARING",
3096
- "hearingScheduledAt": {
3097
- "var": "event.hearingDate"
3098
- },
3099
- "submissions": []
3100
- }
3101
- ]
3102
- },
3103
- "dependencies": []
3104
- },
3105
- {
3106
- "from": "HEARING",
3107
- "to": "HEARING",
3108
- "eventName": "submit_evidence",
3109
- "guard": {
3110
- "or": [
3111
- {
3112
- "===": [
3113
- {
3114
- "var": "event.agent"
3115
- },
3116
- {
3117
- "var": "state.plaintiff"
3118
- }
3119
- ]
3120
- },
3121
- {
3122
- "===": [
3123
- {
3124
- "var": "event.agent"
3125
- },
3126
- {
3127
- "var": "state.defendant"
3128
- }
3129
- ]
3130
- },
3131
- {
3132
- "in": [
3133
- {
3134
- "var": "event.agent"
3135
- },
3136
- {
3137
- "var": "state.interestedParties"
3138
- }
3139
- ]
3140
- }
3141
- ]
3142
- },
3143
- "effect": {
3144
- "merge": [
3145
- {
3146
- "var": "state"
3147
- },
3148
- {
3149
- "submissions": {
3150
- "cat": [
3151
- {
3152
- "var": "state.submissions"
3153
- },
3154
- [
3155
- {
3156
- "party": {
3157
- "var": "event.agent"
3158
- },
3159
- "type": {
3160
- "var": "event.type"
3161
- },
3162
- "content": {
3163
- "var": "event.content"
3164
- },
3165
- "submittedAt": {
3166
- "var": "$timestamp"
3167
- }
3168
- }
3169
- ]
3170
- ]
3171
- }
3172
- }
3173
- ]
3174
- },
3175
- "dependencies": []
3176
- },
3177
- {
3178
- "from": "HEARING",
3179
- "to": "DELIBERATION",
3180
- "eventName": "close_hearing",
3181
- "guard": {
3182
- "in": [
3183
- {
3184
- "var": "event.agent"
3185
- },
3186
- {
3187
- "var": "state.assignedJudges"
3188
- }
3189
- ]
3190
- },
3191
- "effect": {
3192
- "merge": [
3193
- {
3194
- "var": "state"
3195
- },
3196
- {
3197
- "status": "DELIBERATION",
3198
- "hearingClosedAt": {
3199
- "var": "$timestamp"
3200
- },
3201
- "votes": {}
3202
- }
3203
- ]
3204
- },
3205
- "dependencies": []
3206
- },
3207
- {
3208
- "from": "DELIBERATION",
3209
- "to": "DELIBERATION",
3210
- "eventName": "vote",
3211
- "guard": {
3212
- "and": [
3213
- {
3214
- "in": [
3215
- {
3216
- "var": "event.agent"
3217
- },
3218
- {
3219
- "var": "state.assignedJudges"
3220
- }
3221
- ]
3222
- },
3223
- {
3224
- "!": [
3225
- {
3226
- "getKey": [
3227
- {
3228
- "var": "state.votes"
3229
- },
3230
- {
3231
- "var": "event.agent"
3232
- }
3233
- ]
3234
- }
3235
- ]
3236
- }
3237
- ]
3238
- },
3239
- "effect": {
3240
- "merge": [
3241
- {
3242
- "var": "state"
3243
- },
3244
- {
3245
- "votes": {
3246
- "setKey": [
3247
- {
3248
- "var": "state.votes"
3249
- },
3250
- {
3251
- "var": "event.agent"
3252
- },
3253
- {
3254
- "position": {
3255
- "var": "event.position"
3256
- },
3257
- "opinion": {
3258
- "var": "event.opinion"
3259
- },
3260
- "votedAt": {
3261
- "var": "$timestamp"
3262
- }
3263
- }
3264
- ]
3265
- }
3266
- }
3267
- ]
3268
- },
3269
- "dependencies": []
3270
- },
3271
- {
3272
- "from": "DELIBERATION",
3273
- "to": "RULING",
3274
- "eventName": "issue_ruling",
3275
- "guard": {
3276
- ">=": [
3277
- {
3278
- "size": {
3279
- "var": "state.votes"
3280
- }
3281
- },
3282
- {
3283
- "var": "state.quorum"
3284
- }
3285
- ]
3286
- },
3287
- "effect": {
3288
- "merge": [
3289
- {
3290
- "var": "state"
3291
- },
3292
- {
3293
- "status": "RULING",
3294
- "ruling": {
3295
- "decision": {
3296
- "var": "event.decision"
3297
- },
3298
- "majority": {
3299
- "var": "event.majority"
3300
- },
3301
- "dissent": {
3302
- "var": "event.dissent"
3303
- },
3304
- "remedy": {
3305
- "var": "event.remedy"
3306
- },
3307
- "issuedAt": {
3308
- "var": "$timestamp"
3309
- }
3310
- }
3311
- }
3312
- ]
3313
- },
3314
- "dependencies": []
3315
- },
3316
- {
3317
- "from": "RULING",
3318
- "to": "ENFORCING",
3319
- "eventName": "begin_enforcement",
3320
- "guard": {
3321
- "var": "state.ruling.remedy"
3322
- },
3323
- "effect": {
3324
- "merge": [
3325
- {
3326
- "var": "state"
3327
- },
3328
- {
3329
- "status": "ENFORCING",
3330
- "enforcementStartedAt": {
3331
- "var": "$timestamp"
3332
- }
3333
- }
3334
- ]
3335
- },
3336
- "dependencies": []
3337
- },
3338
- {
3339
- "from": "RULING",
3340
- "to": "CLOSED",
3341
- "eventName": "close",
3342
- "guard": {
3343
- "!": [
3344
- {
3345
- "var": "state.ruling.remedy"
3346
- }
3347
- ]
3348
- },
3349
- "effect": {
3350
- "merge": [
3351
- {
3352
- "var": "state"
3353
- },
3354
- {
3355
- "status": "CLOSED",
3356
- "closedAt": {
3357
- "var": "$timestamp"
3358
- }
3359
- }
3360
- ]
3361
- },
3362
- "dependencies": []
3363
- },
3364
- {
3365
- "from": "ENFORCING",
3366
- "to": "CLOSED",
3367
- "eventName": "enforcement_complete",
3368
- "guard": {
3369
- "var": "event.evidence"
3370
- },
3371
- "effect": {
3372
- "merge": [
3373
- {
3374
- "var": "state"
3375
- },
3376
- {
3377
- "status": "CLOSED",
3378
- "enforcementCompletedAt": {
3379
- "var": "$timestamp"
3380
- },
3381
- "enforcementEvidence": {
3382
- "var": "event.evidence"
3383
- }
3384
- }
3385
- ]
3386
- },
3387
- "dependencies": []
3388
- },
3389
- {
3390
- "from": "RULING",
3391
- "to": "APPEALED",
3392
- "eventName": "appeal",
3393
- "guard": {
3394
- "and": [
3395
- {
3396
- "var": "state.config.allowAppeals"
3397
- },
3398
- {
3399
- "or": [
3400
- {
3401
- "===": [
3402
- {
3403
- "var": "event.agent"
3404
- },
3405
- {
3406
- "var": "state.plaintiff"
3407
- }
3408
- ]
3409
- },
3410
- {
3411
- "===": [
3412
- {
3413
- "var": "event.agent"
3414
- },
3415
- {
3416
- "var": "state.defendant"
3417
- }
3418
- ]
3419
- }
3420
- ]
3421
- },
3422
- {
3423
- "<=": [
3424
- {
3425
- "-": [
3426
- {
3427
- "var": "$timestamp"
3428
- },
3429
- {
3430
- "var": "state.ruling.issuedAt"
3431
- }
3432
- ]
3433
- },
3434
- {
3435
- "var": "state.config.appealWindowMs"
3436
- }
3437
- ]
3438
- }
3439
- ]
3440
- },
3441
- "effect": {
3442
- "merge": [
3443
- {
3444
- "var": "state"
3445
- },
3446
- {
3447
- "status": "APPEALED",
3448
- "appeal": {
3449
- "filedBy": {
3450
- "var": "event.agent"
3451
- },
3452
- "grounds": {
3453
- "var": "event.grounds"
3454
- },
3455
- "filedAt": {
3456
- "var": "$timestamp"
3457
- }
3458
- }
3459
- }
3460
- ]
3461
- },
3462
- "dependencies": []
3463
- }
3464
- ]
3465
- };
3466
- export const govLegislatureDef = {
3467
- "metadata": {
3468
- "name": "Governance",
3469
- "description": "Flexible governance for proposals, voting, delegation, and execution across relationship types",
3470
- "version": "1.0.0"
3471
- },
3472
- "states": {
3473
- "DRAFT": {
3474
- "id": "DRAFT",
3475
- "isFinal": false,
3476
- "metadata": null
3477
- },
3478
- "ACTIVE": {
3479
- "id": "ACTIVE",
3480
- "isFinal": false,
3481
- "metadata": null
3482
- },
3483
- "PENDING": {
3484
- "id": "PENDING",
3485
- "isFinal": false,
3486
- "metadata": null
3487
- },
3488
- "EXECUTING": {
3489
- "id": "EXECUTING",
3490
- "isFinal": false,
3491
- "metadata": null
3492
- },
3493
- "EXECUTED": {
3494
- "id": "EXECUTED",
3495
- "isFinal": true,
3496
- "metadata": null
3497
- },
3498
- "VETOED": {
3499
- "id": "VETOED",
3500
- "isFinal": true,
3501
- "metadata": null
3502
- },
3503
- "DEFEATED": {
3504
- "id": "DEFEATED",
3505
- "isFinal": true,
3506
- "metadata": null
3507
- },
3508
- "EXPIRED": {
3509
- "id": "EXPIRED",
3510
- "isFinal": true,
3511
- "metadata": null
3512
- },
3513
- "CANCELLED": {
3514
- "id": "CANCELLED",
3515
- "isFinal": true,
3516
- "metadata": null
3517
- }
3518
- },
3519
- "initialState": "DRAFT",
3520
- "transitions": [
3521
- {
3522
- "from": "DRAFT",
3523
- "to": "ACTIVE",
3524
- "eventName": "submit",
3525
- "guard": {
3526
- "and": [
3527
- {
3528
- "in": [
3529
- {
3530
- "var": "event.agent"
3531
- },
3532
- {
3533
- "var": "state.proposers"
3534
- }
3535
- ]
3536
- },
3537
- {
3538
- "var": "state.proposal.title"
3539
- },
3540
- {
3541
- "var": "state.proposal.actions"
3542
- }
3543
- ]
3544
- },
3545
- "effect": {
3546
- "merge": [
3547
- {
3548
- "var": "state"
3549
- },
3550
- {
3551
- "status": "ACTIVE",
3552
- "submittedAt": {
3553
- "var": "$timestamp"
3554
- },
3555
- "votingEndsAt": {
3556
- "+": [
3557
- {
3558
- "var": "$timestamp"
3559
- },
3560
- {
3561
- "var": "state.config.votingPeriodMs"
3562
- }
3563
- ]
3564
- }
3565
- }
3566
- ]
3567
- },
3568
- "dependencies": []
3569
- },
3570
- {
3571
- "from": "ACTIVE",
3572
- "to": "ACTIVE",
3573
- "eventName": "vote",
3574
- "guard": {
3575
- "and": [
3576
- {
3577
- "<=": [
3578
- {
3579
- "var": "$timestamp"
3580
- },
3581
- {
3582
- "var": "state.votingEndsAt"
3583
- }
3584
- ]
3585
- },
3586
- {
3587
- "!": [
3588
- {
3589
- "getKey": [
3590
- {
3591
- "var": "state.votes"
3592
- },
3593
- {
3594
- "var": "event.agent"
3595
- }
3596
- ]
3597
- }
3598
- ]
3599
- },
3600
- {
3601
- "or": [
3602
- {
3603
- "in": [
3604
- {
3605
- "var": "event.agent"
3606
- },
3607
- {
3608
- "var": "state.voters"
3609
- }
3610
- ]
3611
- },
3612
- {
3613
- "===": [
3614
- {
3615
- "var": "state.config.openVoting"
3616
- },
3617
- true
3618
- ]
3619
- }
3620
- ]
3621
- }
3622
- ]
3623
- },
3624
- "effect": {
3625
- "merge": [
3626
- {
3627
- "var": "state"
3628
- },
3629
- {
3630
- "votes": {
3631
- "setKey": [
3632
- {
3633
- "var": "state.votes"
3634
- },
3635
- {
3636
- "var": "event.agent"
3637
- },
3638
- {
3639
- "choice": {
3640
- "var": "event.choice"
3641
- },
3642
- "weight": {
3643
- "var": "event.weight"
3644
- },
3645
- "conviction": {
3646
- "var": "event.conviction"
3647
- },
3648
- "delegatedFrom": {
3649
- "var": "event.delegatedFrom"
3650
- },
3651
- "votedAt": {
3652
- "var": "$timestamp"
3653
- }
3654
- }
3655
- ]
3656
- }
3657
- }
3658
- ]
3659
- },
3660
- "dependencies": []
3661
- },
3662
- {
3663
- "from": "ACTIVE",
3664
- "to": "ACTIVE",
3665
- "eventName": "delegate",
3666
- "guard": {
3667
- "and": [
3668
- {
3669
- "var": "state.config.allowDelegation"
3670
- },
3671
- {
3672
- "!==": [
3673
- {
3674
- "var": "event.agent"
3675
- },
3676
- {
3677
- "var": "event.delegateTo"
3678
- }
3679
- ]
3680
- },
3681
- {
3682
- "!": [
3683
- {
3684
- "getKey": [
3685
- {
3686
- "var": "state.votes"
3687
- },
3688
- {
3689
- "var": "event.agent"
3690
- }
3691
- ]
3692
- }
3693
- ]
3694
- }
3695
- ]
3696
- },
3697
- "effect": {
3698
- "merge": [
3699
- {
3700
- "var": "state"
3701
- },
3702
- {
3703
- "delegations": {
3704
- "setKey": [
3705
- {
3706
- "var": "state.delegations"
3707
- },
3708
- {
3709
- "var": "event.agent"
3710
- },
3711
- {
3712
- "delegateTo": {
3713
- "var": "event.delegateTo"
3714
- },
3715
- "weight": {
3716
- "var": "event.weight"
3717
- },
3718
- "delegatedAt": {
3719
- "var": "$timestamp"
3720
- }
3721
- }
3722
- ]
3723
- }
3724
- }
3725
- ]
3726
- },
3727
- "dependencies": []
3728
- },
3729
- {
3730
- "from": "ACTIVE",
3731
- "to": "PENDING",
3732
- "eventName": "finalize_voting",
3733
- "guard": {
3734
- "and": [
3735
- {
3736
- ">=": [
3737
- {
3738
- "var": "$timestamp"
3739
- },
3740
- {
3741
- "var": "state.votingEndsAt"
3742
- }
3743
- ]
3744
- },
3745
- {
3746
- "var": "state.tally.passed"
3747
- }
3748
- ]
3749
- },
3750
- "effect": {
3751
- "merge": [
3752
- {
3753
- "var": "state"
3754
- },
3755
- {
3756
- "status": "PENDING",
3757
- "finalizedAt": {
3758
- "var": "$timestamp"
3759
- },
3760
- "vetoEndsAt": {
3761
- "+": [
3762
- {
3763
- "var": "$timestamp"
3764
- },
3765
- {
3766
- "var": "state.config.vetoPeriodMs"
3767
- }
3768
- ]
3769
- }
3770
- }
3771
- ]
3772
- },
3773
- "dependencies": []
3774
- },
3775
- {
3776
- "from": "ACTIVE",
3777
- "to": "DEFEATED",
3778
- "eventName": "finalize_voting",
3779
- "guard": {
3780
- "and": [
3781
- {
3782
- ">=": [
3783
- {
3784
- "var": "$timestamp"
3785
- },
3786
- {
3787
- "var": "state.votingEndsAt"
3788
- }
3789
- ]
3790
- },
3791
- {
3792
- "!": [
3793
- {
3794
- "var": "state.tally.passed"
3795
- }
3796
- ]
3797
- }
3798
- ]
3799
- },
3800
- "effect": {
3801
- "merge": [
3802
- {
3803
- "var": "state"
3804
- },
3805
- {
3806
- "status": "DEFEATED",
3807
- "finalizedAt": {
3808
- "var": "$timestamp"
3809
- },
3810
- "defeatReason": {
3811
- "var": "state.tally.reason"
3812
- }
3813
- }
3814
- ]
3815
- },
3816
- "dependencies": []
3817
- },
3818
- {
3819
- "from": "PENDING",
3820
- "to": "VETOED",
3821
- "eventName": "veto",
3822
- "guard": {
3823
- "and": [
3824
- {
3825
- "<=": [
3826
- {
3827
- "var": "$timestamp"
3828
- },
3829
- {
3830
- "var": "state.vetoEndsAt"
3831
- }
3832
- ]
3833
- },
3834
- {
3835
- "in": [
3836
- {
3837
- "var": "event.agent"
3838
- },
3839
- {
3840
- "var": "state.vetoers"
3841
- }
3842
- ]
3843
- }
3844
- ]
3845
- },
3846
- "effect": {
3847
- "merge": [
3848
- {
3849
- "var": "state"
3850
- },
3851
- {
3852
- "status": "VETOED",
3853
- "vetoedBy": {
3854
- "var": "event.agent"
3855
- },
3856
- "vetoReason": {
3857
- "var": "event.reason"
3858
- },
3859
- "vetoedAt": {
3860
- "var": "$timestamp"
3861
- }
3862
- }
3863
- ]
3864
- },
3865
- "dependencies": []
3866
- },
3867
- {
3868
- "from": "PENDING",
3869
- "to": "EXECUTING",
3870
- "eventName": "execute",
3871
- "guard": {
3872
- "and": [
3873
- {
3874
- ">=": [
3875
- {
3876
- "var": "$timestamp"
3877
- },
3878
- {
3879
- "var": "state.vetoEndsAt"
3880
- }
3881
- ]
3882
- },
3883
- {
3884
- "in": [
3885
- {
3886
- "var": "event.agent"
3887
- },
3888
- {
3889
- "var": "state.executors"
3890
- }
3891
- ]
3892
- }
3893
- ]
3894
- },
3895
- "effect": {
3896
- "merge": [
3897
- {
3898
- "var": "state"
3899
- },
3900
- {
3901
- "status": "EXECUTING",
3902
- "executedBy": {
3903
- "var": "event.agent"
3904
- },
3905
- "executionStartedAt": {
3906
- "var": "$timestamp"
3907
- }
3908
- }
3909
- ]
3910
- },
3911
- "dependencies": []
3912
- },
3913
- {
3914
- "from": "EXECUTING",
3915
- "to": "EXECUTED",
3916
- "eventName": "complete",
3917
- "guard": {
3918
- "in": [
3919
- {
3920
- "var": "event.agent"
3921
- },
3922
- {
3923
- "var": "state.executors"
1980
+ "var": "state.votes.abstain"
1981
+ }
1982
+ ]
1983
+ },
1984
+ {
1985
+ "var": "state.quorum"
1986
+ }
1987
+ ]
1988
+ }
1989
+ ]
3924
1990
  }
3925
1991
  ]
3926
1992
  },
@@ -3930,21 +1996,40 @@ export const govLegislatureDef = {
3930
1996
  "var": "state"
3931
1997
  },
3932
1998
  {
3933
- "status": "EXECUTED",
3934
- "completedAt": {
3935
- "var": "$timestamp"
1999
+ "rejectedProposals": {
2000
+ "cat": [
2001
+ {
2002
+ "var": "state.rejectedProposals"
2003
+ },
2004
+ [
2005
+ {
2006
+ "merge": [
2007
+ {
2008
+ "var": "state.proposal"
2009
+ },
2010
+ {
2011
+ "votes": {
2012
+ "var": "state.votes"
2013
+ },
2014
+ "rejectedAt": {
2015
+ "var": "$timestamp"
2016
+ }
2017
+ }
2018
+ ]
2019
+ }
2020
+ ]
2021
+ ]
3936
2022
  },
3937
- "executionProof": {
3938
- "var": "event.proof"
3939
- }
2023
+ "proposal": null,
2024
+ "votes": null
3940
2025
  }
3941
2026
  ]
3942
2027
  },
3943
2028
  "dependencies": []
3944
2029
  },
3945
2030
  {
3946
- "from": "DRAFT",
3947
- "to": "CANCELLED",
2031
+ "from": "QUEUED",
2032
+ "to": "ACTIVE",
3948
2033
  "eventName": "cancel",
3949
2034
  "guard": {
3950
2035
  "===": [
@@ -3952,7 +2037,7 @@ export const govLegislatureDef = {
3952
2037
  "var": "event.agent"
3953
2038
  },
3954
2039
  {
3955
- "var": "state.proposer"
2040
+ "var": "state.proposal.proposer"
3956
2041
  }
3957
2042
  ]
3958
2043
  },
@@ -3962,10 +2047,29 @@ export const govLegislatureDef = {
3962
2047
  "var": "state"
3963
2048
  },
3964
2049
  {
3965
- "status": "CANCELLED",
3966
- "cancelledAt": {
3967
- "var": "$timestamp"
3968
- }
2050
+ "cancelledProposals": {
2051
+ "cat": [
2052
+ {
2053
+ "var": "state.cancelledProposals"
2054
+ },
2055
+ [
2056
+ {
2057
+ "merge": [
2058
+ {
2059
+ "var": "state.proposal"
2060
+ },
2061
+ {
2062
+ "cancelledAt": {
2063
+ "var": "$timestamp"
2064
+ }
2065
+ }
2066
+ ]
2067
+ }
2068
+ ]
2069
+ ]
2070
+ },
2071
+ "proposal": null,
2072
+ "votes": null
3969
2073
  }
3970
2074
  ]
3971
2075
  },
@@ -3973,30 +2077,21 @@ export const govLegislatureDef = {
3973
2077
  },
3974
2078
  {
3975
2079
  "from": "ACTIVE",
3976
- "to": "CANCELLED",
3977
- "eventName": "cancel",
2080
+ "to": "ACTIVE",
2081
+ "eventName": "delegate",
3978
2082
  "guard": {
3979
- "or": [
2083
+ ">": [
3980
2084
  {
3981
- "===": [
2085
+ "getKey": [
3982
2086
  {
3983
- "var": "event.agent"
2087
+ "var": "state.balances"
3984
2088
  },
3985
- {
3986
- "var": "state.proposer"
3987
- }
3988
- ]
3989
- },
3990
- {
3991
- "in": [
3992
2089
  {
3993
2090
  "var": "event.agent"
3994
- },
3995
- {
3996
- "var": "state.admins"
3997
2091
  }
3998
2092
  ]
3999
- }
2093
+ },
2094
+ 0
4000
2095
  ]
4001
2096
  },
4002
2097
  "effect": {
@@ -4005,12 +2100,18 @@ export const govLegislatureDef = {
4005
2100
  "var": "state"
4006
2101
  },
4007
2102
  {
4008
- "status": "CANCELLED",
4009
- "cancelledBy": {
4010
- "var": "event.agent"
4011
- },
4012
- "cancelledAt": {
4013
- "var": "$timestamp"
2103
+ "delegations": {
2104
+ "setKey": [
2105
+ {
2106
+ "var": "state.delegations"
2107
+ },
2108
+ {
2109
+ "var": "event.agent"
2110
+ },
2111
+ {
2112
+ "var": "event.delegateTo"
2113
+ }
2114
+ ]
4014
2115
  }
4015
2116
  }
4016
2117
  ]
@@ -4019,22 +2120,15 @@ export const govLegislatureDef = {
4019
2120
  },
4020
2121
  {
4021
2122
  "from": "ACTIVE",
4022
- "to": "EXPIRED",
4023
- "eventName": "expire",
2123
+ "to": "ACTIVE",
2124
+ "eventName": "undelegate",
4024
2125
  "guard": {
4025
- ">": [
2126
+ "getKey": [
4026
2127
  {
4027
- "var": "$timestamp"
2128
+ "var": "state.delegations"
4028
2129
  },
4029
2130
  {
4030
- "+": [
4031
- {
4032
- "var": "state.votingEndsAt"
4033
- },
4034
- {
4035
- "var": "state.config.gracePeriodMs"
4036
- }
4037
- ]
2131
+ "var": "event.agent"
4038
2132
  }
4039
2133
  ]
4040
2134
  },
@@ -4044,9 +2138,15 @@ export const govLegislatureDef = {
4044
2138
  "var": "state"
4045
2139
  },
4046
2140
  {
4047
- "status": "EXPIRED",
4048
- "expiredAt": {
4049
- "var": "$timestamp"
2141
+ "delegations": {
2142
+ "deleteKey": [
2143
+ {
2144
+ "var": "state.delegations"
2145
+ },
2146
+ {
2147
+ "var": "event.agent"
2148
+ }
2149
+ ]
4050
2150
  }
4051
2151
  }
4052
2152
  ]
@@ -4054,75 +2154,11 @@ export const govLegislatureDef = {
4054
2154
  "dependencies": []
4055
2155
  }
4056
2156
  ],
4057
- "presets": {
4058
- "_comment": "Common governance configurations",
4059
- "bilateral": {
4060
- "description": "Two-party mutual consent (like a contract)",
4061
- "config": {
4062
- "votingMechanism": "simple",
4063
- "quorumType": "absolute",
4064
- "quorumValue": 2,
4065
- "passingThreshold": 1,
4066
- "allowDelegation": false,
4067
- "openVoting": false
4068
- }
4069
- },
4070
- "multisig": {
4071
- "description": "N-of-M threshold signing",
4072
- "config": {
4073
- "votingMechanism": "simple",
4074
- "quorumType": "absolute",
4075
- "passingThreshold": 0.6,
4076
- "vetoPeriodMs": 0,
4077
- "allowDelegation": false
4078
- }
4079
- },
4080
- "council": {
4081
- "description": "Small elected/appointed body",
4082
- "config": {
4083
- "votingMechanism": "simple",
4084
- "quorumType": "percentage",
4085
- "quorumValue": 0.5,
4086
- "passingThreshold": 0.5,
4087
- "openVoting": false,
4088
- "allowDelegation": true
4089
- }
4090
- },
4091
- "liquid_democracy": {
4092
- "description": "Delegatable voting power",
4093
- "config": {
4094
- "votingMechanism": "simple",
4095
- "allowDelegation": true,
4096
- "openVoting": true,
4097
- "onePersonOneVote": true
4098
- }
4099
- },
4100
- "conviction": {
4101
- "description": "Time-weighted conviction voting",
4102
- "config": {
4103
- "votingMechanism": "conviction",
4104
- "allowDelegation": true,
4105
- "convictionHalfLifeMs": 604800000
4106
- }
4107
- },
4108
- "quadratic": {
4109
- "description": "Quadratic voting to reduce whale power",
4110
- "config": {
4111
- "votingMechanism": "quadratic",
4112
- "onePersonOneVote": false
4113
- }
4114
- },
4115
- "dictator": {
4116
- "description": "Single admin with full control",
4117
- "config": {
4118
- "votingMechanism": "simple",
4119
- "quorumType": "absolute",
4120
- "quorumValue": 1,
4121
- "passingThreshold": 1,
4122
- "vetoPeriodMs": 0,
4123
- "allowDelegation": false
4124
- }
4125
- }
2157
+ "crossReferences": {
2158
+ "Identity": "voter verification",
2159
+ "Token": "balance snapshots",
2160
+ "Contract": "action execution",
2161
+ "Treasury": "fund management"
4126
2162
  }
4127
2163
  };
4128
2164
  export const govSimpleDef = {
@@ -4750,3 +2786,150 @@ export const govSimpleDef = {
4750
2786
  }
4751
2787
  ]
4752
2788
  };
2789
+ export const govUniversalDef = {
2790
+ "metadata": {
2791
+ "name": "GovernanceUniversal",
2792
+ "description": "Minimal governance state machine - extend for custom use cases",
2793
+ "version": "1.0.0"
2794
+ },
2795
+ "states": {
2796
+ "ACTIVE": {
2797
+ "id": "ACTIVE",
2798
+ "isFinal": false,
2799
+ "metadata": null
2800
+ },
2801
+ "VOTING": {
2802
+ "id": "VOTING",
2803
+ "isFinal": false,
2804
+ "metadata": null
2805
+ },
2806
+ "DISSOLVED": {
2807
+ "id": "DISSOLVED",
2808
+ "isFinal": true,
2809
+ "metadata": null
2810
+ }
2811
+ },
2812
+ "initialState": "ACTIVE",
2813
+ "transitions": [
2814
+ {
2815
+ "from": "ACTIVE",
2816
+ "to": "VOTING",
2817
+ "eventName": "propose",
2818
+ "guard": {
2819
+ "==": [
2820
+ 1,
2821
+ 1
2822
+ ]
2823
+ },
2824
+ "effect": {
2825
+ "merge": [
2826
+ {
2827
+ "var": "state"
2828
+ },
2829
+ {
2830
+ "status": "VOTING",
2831
+ "proposal": {
2832
+ "var": "event.proposal"
2833
+ },
2834
+ "proposedAt": {
2835
+ "var": "$timestamp"
2836
+ },
2837
+ "votes": {}
2838
+ }
2839
+ ]
2840
+ },
2841
+ "dependencies": []
2842
+ },
2843
+ {
2844
+ "from": "VOTING",
2845
+ "to": "VOTING",
2846
+ "eventName": "vote",
2847
+ "guard": {
2848
+ "==": [
2849
+ 1,
2850
+ 1
2851
+ ]
2852
+ },
2853
+ "effect": {
2854
+ "merge": [
2855
+ {
2856
+ "var": "state"
2857
+ },
2858
+ {
2859
+ "votes": {
2860
+ "merge": [
2861
+ {
2862
+ "var": "state.votes"
2863
+ },
2864
+ {
2865
+ "__key": {
2866
+ "var": "event.agent"
2867
+ },
2868
+ "__value": {
2869
+ "var": "event.vote"
2870
+ }
2871
+ }
2872
+ ]
2873
+ }
2874
+ }
2875
+ ]
2876
+ },
2877
+ "dependencies": []
2878
+ },
2879
+ {
2880
+ "from": "VOTING",
2881
+ "to": "ACTIVE",
2882
+ "eventName": "finalize",
2883
+ "guard": {
2884
+ "==": [
2885
+ 1,
2886
+ 1
2887
+ ]
2888
+ },
2889
+ "effect": {
2890
+ "merge": [
2891
+ {
2892
+ "var": "state"
2893
+ },
2894
+ {
2895
+ "status": "ACTIVE",
2896
+ "lastProposal": {
2897
+ "var": "state.proposal"
2898
+ },
2899
+ "lastResult": {
2900
+ "var": "event.result"
2901
+ },
2902
+ "proposal": null,
2903
+ "votes": null
2904
+ }
2905
+ ]
2906
+ },
2907
+ "dependencies": []
2908
+ },
2909
+ {
2910
+ "from": "ACTIVE",
2911
+ "to": "DISSOLVED",
2912
+ "eventName": "dissolve",
2913
+ "guard": {
2914
+ "==": [
2915
+ 1,
2916
+ 1
2917
+ ]
2918
+ },
2919
+ "effect": {
2920
+ "merge": [
2921
+ {
2922
+ "var": "state"
2923
+ },
2924
+ {
2925
+ "status": "DISSOLVED",
2926
+ "dissolvedAt": {
2927
+ "var": "$timestamp"
2928
+ }
2929
+ }
2930
+ ]
2931
+ },
2932
+ "dependencies": []
2933
+ }
2934
+ ]
2935
+ };