@arcium-hq/client 0.3.0 → 0.4.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.
package/build/index.d.ts CHANGED
@@ -316,10 +316,10 @@ declare class Aes256Cipher {
316
316
  * IDL can be found at `target/idl/arcium.json`.
317
317
  */
318
318
  type Arcium = {
319
- "address": "BKck65TgoKRokMjQM3datB9oRwJ8rAj2jxPXvHXUvcL6";
319
+ "address": "Bv3Fb9VjzjWGfX18QTUcVycAfeLoQ5zZN6vv2g3cTZxp";
320
320
  "metadata": {
321
321
  "name": "arcium";
322
- "version": "0.3.0";
322
+ "version": "0.4.0";
323
323
  "spec": "0.1.0";
324
324
  "description": "The Arcium program";
325
325
  };
@@ -812,20 +812,24 @@ type Arcium = {
812
812
  "name": "executionStatus";
813
813
  };
814
814
  };
815
+ },
816
+ {
817
+ "name": "callbackTransactionIndex";
818
+ "type": "u8";
815
819
  }
816
820
  ];
817
821
  },
818
822
  {
819
- "name": "deactivateArx";
823
+ "name": "claimFailureAppend";
820
824
  "discriminator": [
821
- 117,
822
- 244,
823
- 137,
824
- 148,
825
- 25,
826
- 190,
827
- 175,
828
- 164
825
+ 92,
826
+ 52,
827
+ 184,
828
+ 203,
829
+ 76,
830
+ 221,
831
+ 128,
832
+ 69
829
833
  ];
830
834
  "accounts": [
831
835
  {
@@ -834,156 +838,233 @@ type Arcium = {
834
838
  "signer": true;
835
839
  },
836
840
  {
837
- "name": "arxNodeAcc";
841
+ "name": "failureAcc";
838
842
  "writable": true;
839
843
  "pda": {
840
844
  "seeds": [
841
845
  {
842
846
  "kind": "const";
843
847
  "value": [
844
- 65,
848
+ 70,
849
+ 97,
850
+ 105,
851
+ 108,
852
+ 117,
845
853
  114,
846
- 120,
847
- 78,
854
+ 101,
855
+ 67,
856
+ 108,
857
+ 97,
858
+ 105,
859
+ 109,
860
+ 65,
861
+ 99,
862
+ 99,
848
863
  111,
864
+ 117,
865
+ 110,
866
+ 116,
867
+ 72,
868
+ 101,
869
+ 97,
849
870
  100,
850
- 101
871
+ 101,
872
+ 114
851
873
  ];
852
874
  },
853
875
  {
854
876
  "kind": "arg";
855
- "path": "nodeOffset";
877
+ "path": "mxeProgram";
878
+ },
879
+ {
880
+ "kind": "arg";
881
+ "path": "compOffset";
856
882
  }
857
883
  ];
858
884
  };
859
885
  },
860
886
  {
861
- "name": "clock";
887
+ "name": "systemProgram";
888
+ "address": "11111111111111111111111111111111";
889
+ }
890
+ ];
891
+ "args": [
892
+ {
893
+ "name": "compOffset";
894
+ "type": "u64";
895
+ },
896
+ {
897
+ "name": "nodeOffset";
898
+ "type": "u32";
899
+ },
900
+ {
901
+ "name": "mxeProgram";
902
+ "type": "pubkey";
903
+ },
904
+ {
905
+ "name": "chunk";
906
+ "type": "bytes";
907
+ },
908
+ {
909
+ "name": "failureClaimOffset";
910
+ "type": "u32";
911
+ }
912
+ ];
913
+ },
914
+ {
915
+ "name": "claimFailureFinalize";
916
+ "discriminator": [
917
+ 192,
918
+ 133,
919
+ 215,
920
+ 19,
921
+ 76,
922
+ 107,
923
+ 111,
924
+ 217
925
+ ];
926
+ "accounts": [
927
+ {
928
+ "name": "signer";
929
+ "signer": true;
930
+ },
931
+ {
932
+ "name": "failureAcc";
933
+ "writable": true;
862
934
  "pda": {
863
935
  "seeds": [
864
936
  {
865
937
  "kind": "const";
866
938
  "value": [
939
+ 70,
940
+ 97,
941
+ 105,
942
+ 108,
943
+ 117,
944
+ 114,
945
+ 101,
867
946
  67,
868
947
  108,
869
- 111,
870
- 99,
871
- 107,
948
+ 97,
949
+ 105,
950
+ 109,
872
951
  65,
873
952
  99,
874
953
  99,
875
954
  111,
876
955
  117,
877
956
  110,
878
- 116
879
- ];
880
- }
881
- ];
882
- };
883
- },
884
- {
885
- "name": "clusterAcc0";
886
- "optional": true;
887
- "pda": {
888
- "seeds": [
889
- {
890
- "kind": "const";
891
- "value": [
892
- 67,
893
- 108,
894
- 117,
895
- 115,
896
957
  116,
958
+ 72,
959
+ 101,
960
+ 97,
961
+ 100,
897
962
  101,
898
963
  114
899
964
  ];
900
965
  },
901
966
  {
902
- "kind": "account";
903
- "path": "arx_node_acc.cluster_memberships";
904
- "account": "arxNode";
967
+ "kind": "arg";
968
+ "path": "mxeProgram";
969
+ },
970
+ {
971
+ "kind": "arg";
972
+ "path": "compOffset";
905
973
  }
906
974
  ];
907
975
  };
908
976
  },
909
977
  {
910
- "name": "clusterAcc1";
911
- "optional": true;
978
+ "name": "executingPool";
979
+ "writable": true;
912
980
  "pda": {
913
981
  "seeds": [
914
982
  {
915
983
  "kind": "const";
916
984
  "value": [
917
- 67,
918
- 108,
919
- 117,
920
- 115,
921
- 116,
985
+ 69,
986
+ 120,
922
987
  101,
923
- 114
988
+ 99,
989
+ 112,
990
+ 111,
991
+ 111,
992
+ 108
924
993
  ];
925
994
  },
926
995
  {
927
- "kind": "account";
928
- "path": "arx_node_acc.cluster_memberships.get(1).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
929
- "account": "arxNode";
996
+ "kind": "arg";
997
+ "path": "mxeProgram";
930
998
  }
931
999
  ];
932
1000
  };
933
1001
  },
934
1002
  {
935
- "name": "clusterAcc2";
936
- "optional": true;
1003
+ "name": "mempool";
1004
+ "writable": true;
937
1005
  "pda": {
938
1006
  "seeds": [
939
1007
  {
940
1008
  "kind": "const";
941
1009
  "value": [
942
- 67,
943
- 108,
944
- 117,
945
- 115,
946
- 116,
1010
+ 77,
947
1011
  101,
948
- 114
1012
+ 109,
1013
+ 112,
1014
+ 111,
1015
+ 111,
1016
+ 108
949
1017
  ];
950
1018
  },
951
1019
  {
952
- "kind": "account";
953
- "path": "arx_node_acc.cluster_memberships.get(2).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
954
- "account": "arxNode";
1020
+ "kind": "arg";
1021
+ "path": "mxeProgram";
955
1022
  }
956
1023
  ];
957
1024
  };
958
1025
  },
959
1026
  {
960
- "name": "clusterAcc3";
961
- "optional": true;
1027
+ "name": "comp";
1028
+ "writable": true;
962
1029
  "pda": {
963
1030
  "seeds": [
964
1031
  {
965
1032
  "kind": "const";
966
1033
  "value": [
967
1034
  67,
968
- 108,
1035
+ 111,
1036
+ 109,
1037
+ 112,
969
1038
  117,
970
- 115,
971
1039
  116,
972
- 101,
973
- 114
1040
+ 97,
1041
+ 116,
1042
+ 105,
1043
+ 111,
1044
+ 110,
1045
+ 65,
1046
+ 99,
1047
+ 99,
1048
+ 111,
1049
+ 117,
1050
+ 110,
1051
+ 116
974
1052
  ];
975
1053
  },
976
1054
  {
977
- "kind": "account";
978
- "path": "arx_node_acc.cluster_memberships.get(3).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
979
- "account": "arxNode";
1055
+ "kind": "arg";
1056
+ "path": "mxeProgram";
1057
+ },
1058
+ {
1059
+ "kind": "arg";
1060
+ "path": "compOffset";
980
1061
  }
981
1062
  ];
982
1063
  };
983
1064
  },
984
1065
  {
985
- "name": "clusterAcc4";
986
- "optional": true;
1066
+ "name": "clusterAcc";
1067
+ "writable": true;
987
1068
  "pda": {
988
1069
  "seeds": [
989
1070
  {
@@ -1000,162 +1081,120 @@ type Arcium = {
1000
1081
  },
1001
1082
  {
1002
1083
  "kind": "account";
1003
- "path": "arx_node_acc.cluster_memberships.get(4).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1004
- "account": "arxNode";
1084
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1085
+ "account": "mxeAccount";
1005
1086
  }
1006
1087
  ];
1007
1088
  };
1008
1089
  },
1009
1090
  {
1010
- "name": "clusterAcc5";
1011
- "optional": true;
1091
+ "name": "mxe";
1012
1092
  "pda": {
1013
1093
  "seeds": [
1014
1094
  {
1015
1095
  "kind": "const";
1016
1096
  "value": [
1017
- 67,
1018
- 108,
1097
+ 77,
1098
+ 88,
1099
+ 69,
1100
+ 65,
1101
+ 99,
1102
+ 99,
1103
+ 111,
1019
1104
  117,
1020
- 115,
1021
- 116,
1022
- 101,
1023
- 114
1105
+ 110,
1106
+ 116
1024
1107
  ];
1025
1108
  },
1026
1109
  {
1027
- "kind": "account";
1028
- "path": "arx_node_acc.cluster_memberships.get(5).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1029
- "account": "arxNode";
1110
+ "kind": "arg";
1111
+ "path": "mxeProgram";
1030
1112
  }
1031
1113
  ];
1032
1114
  };
1115
+ }
1116
+ ];
1117
+ "args": [
1118
+ {
1119
+ "name": "compOffset";
1120
+ "type": "u64";
1033
1121
  },
1034
1122
  {
1035
- "name": "clusterAcc6";
1036
- "optional": true;
1037
- "pda": {
1038
- "seeds": [
1039
- {
1040
- "kind": "const";
1041
- "value": [
1042
- 67,
1043
- 108,
1044
- 117,
1045
- 115,
1046
- 116,
1047
- 101,
1048
- 114
1049
- ];
1050
- },
1051
- {
1052
- "kind": "account";
1053
- "path": "arx_node_acc.cluster_memberships.get(6).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1054
- "account": "arxNode";
1055
- }
1056
- ];
1057
- };
1123
+ "name": "nodeOffset";
1124
+ "type": "u32";
1058
1125
  },
1059
1126
  {
1060
- "name": "clusterAcc7";
1061
- "optional": true;
1062
- "pda": {
1063
- "seeds": [
1064
- {
1065
- "kind": "const";
1066
- "value": [
1067
- 67,
1068
- 108,
1069
- 117,
1070
- 115,
1071
- 116,
1072
- 101,
1073
- 114
1074
- ];
1075
- },
1076
- {
1077
- "kind": "account";
1078
- "path": "arx_node_acc.cluster_memberships.get(7).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1079
- "account": "arxNode";
1080
- }
1081
- ];
1082
- };
1127
+ "name": "mxeProgram";
1128
+ "type": "pubkey";
1129
+ }
1130
+ ];
1131
+ },
1132
+ {
1133
+ "name": "claimFailureInit";
1134
+ "discriminator": [
1135
+ 204,
1136
+ 106,
1137
+ 245,
1138
+ 73,
1139
+ 212,
1140
+ 136,
1141
+ 61,
1142
+ 99
1143
+ ];
1144
+ "accounts": [
1145
+ {
1146
+ "name": "signer";
1147
+ "writable": true;
1148
+ "signer": true;
1083
1149
  },
1084
1150
  {
1085
- "name": "clusterAcc8";
1086
- "optional": true;
1151
+ "name": "nodeAcc";
1087
1152
  "pda": {
1088
1153
  "seeds": [
1089
1154
  {
1090
1155
  "kind": "const";
1091
1156
  "value": [
1092
- 67,
1093
- 108,
1094
- 117,
1095
- 115,
1096
- 116,
1097
- 101,
1098
- 114
1157
+ 65,
1158
+ 114,
1159
+ 120,
1160
+ 78,
1161
+ 111,
1162
+ 100,
1163
+ 101
1099
1164
  ];
1100
1165
  },
1101
1166
  {
1102
- "kind": "account";
1103
- "path": "arx_node_acc.cluster_memberships.get(8).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1104
- "account": "arxNode";
1167
+ "kind": "arg";
1168
+ "path": "nodeOffset";
1105
1169
  }
1106
1170
  ];
1107
1171
  };
1108
1172
  },
1109
1173
  {
1110
- "name": "clusterAcc9";
1111
- "optional": true;
1174
+ "name": "mxe";
1112
1175
  "pda": {
1113
1176
  "seeds": [
1114
1177
  {
1115
1178
  "kind": "const";
1116
1179
  "value": [
1117
- 67,
1118
- 108,
1180
+ 77,
1181
+ 88,
1182
+ 69,
1183
+ 65,
1184
+ 99,
1185
+ 99,
1186
+ 111,
1119
1187
  117,
1120
- 115,
1121
- 116,
1122
- 101,
1123
- 114
1188
+ 110,
1189
+ 116
1124
1190
  ];
1125
1191
  },
1126
1192
  {
1127
- "kind": "account";
1128
- "path": "arx_node_acc.cluster_memberships.get(9).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1129
- "account": "arxNode";
1193
+ "kind": "arg";
1194
+ "path": "mxeProgram";
1130
1195
  }
1131
1196
  ];
1132
1197
  };
1133
- }
1134
- ];
1135
- "args": [
1136
- {
1137
- "name": "nodeOffset";
1138
- "type": "u32";
1139
- }
1140
- ];
1141
- },
1142
- {
1143
- "name": "deactivateCluster";
1144
- "discriminator": [
1145
- 13,
1146
- 42,
1147
- 182,
1148
- 159,
1149
- 184,
1150
- 10,
1151
- 212,
1152
- 178
1153
- ];
1154
- "accounts": [
1155
- {
1156
- "name": "authority";
1157
- "writable": true;
1158
- "signer": true;
1159
1198
  },
1160
1199
  {
1161
1200
  "name": "clusterAcc";
@@ -1175,24 +1214,31 @@ type Arcium = {
1175
1214
  ];
1176
1215
  },
1177
1216
  {
1178
- "kind": "arg";
1179
- "path": "id";
1217
+ "kind": "account";
1218
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1219
+ "account": "mxeAccount";
1180
1220
  }
1181
1221
  ];
1182
1222
  };
1183
1223
  },
1184
1224
  {
1185
- "name": "clock";
1225
+ "name": "compAcc";
1186
1226
  "pda": {
1187
1227
  "seeds": [
1188
1228
  {
1189
1229
  "kind": "const";
1190
1230
  "value": [
1191
1231
  67,
1192
- 108,
1193
1232
  111,
1194
- 99,
1195
- 107,
1233
+ 109,
1234
+ 112,
1235
+ 117,
1236
+ 116,
1237
+ 97,
1238
+ 116,
1239
+ 105,
1240
+ 111,
1241
+ 110,
1196
1242
  65,
1197
1243
  99,
1198
1244
  99,
@@ -1201,92 +1247,18 @@ type Arcium = {
1201
1247
  110,
1202
1248
  116
1203
1249
  ];
1250
+ },
1251
+ {
1252
+ "kind": "arg";
1253
+ "path": "mxeProgram";
1254
+ },
1255
+ {
1256
+ "kind": "arg";
1257
+ "path": "compOffset";
1204
1258
  }
1205
1259
  ];
1206
1260
  };
1207
1261
  },
1208
- {
1209
- "name": "systemProgram";
1210
- "address": "11111111111111111111111111111111";
1211
- }
1212
- ];
1213
- "args": [
1214
- {
1215
- "name": "clusterId";
1216
- "type": "u32";
1217
- },
1218
- {
1219
- "name": "deactivationEpoch";
1220
- "type": {
1221
- "defined": {
1222
- "name": "epoch";
1223
- };
1224
- };
1225
- }
1226
- ];
1227
- },
1228
- {
1229
- "name": "dummyInstruction";
1230
- "docs": [
1231
- "Only present so the mempool and execpool accounts are actually included in the idl, since we",
1232
- "don't explicitly declare them in the accounts section of the other instructions."
1233
- ];
1234
- "discriminator": [
1235
- 57,
1236
- 4,
1237
- 200,
1238
- 151,
1239
- 58,
1240
- 19,
1241
- 120,
1242
- 9
1243
- ];
1244
- "accounts": [
1245
- {
1246
- "name": "tinyMempool";
1247
- },
1248
- {
1249
- "name": "tinyExecpool";
1250
- },
1251
- {
1252
- "name": "smallMempool";
1253
- },
1254
- {
1255
- "name": "smallExecpool";
1256
- },
1257
- {
1258
- "name": "mediumMempool";
1259
- },
1260
- {
1261
- "name": "mediumExecpool";
1262
- },
1263
- {
1264
- "name": "largeMempool";
1265
- },
1266
- {
1267
- "name": "largeExecpool";
1268
- }
1269
- ];
1270
- "args": [];
1271
- },
1272
- {
1273
- "name": "embiggenRawCircuitAcc";
1274
- "discriminator": [
1275
- 92,
1276
- 195,
1277
- 192,
1278
- 21,
1279
- 193,
1280
- 242,
1281
- 135,
1282
- 194
1283
- ];
1284
- "accounts": [
1285
- {
1286
- "name": "signer";
1287
- "writable": true;
1288
- "signer": true;
1289
- },
1290
1262
  {
1291
1263
  "name": "compDefAcc";
1292
1264
  "pda": {
@@ -1329,53 +1301,55 @@ type Arcium = {
1329
1301
  "path": "mxeProgram";
1330
1302
  },
1331
1303
  {
1332
- "kind": "arg";
1333
- "path": "compOffset";
1304
+ "kind": "account";
1305
+ "path": "comp_acc.computation_definition_offset";
1306
+ "account": "computationAccount";
1334
1307
  }
1335
1308
  ];
1336
1309
  };
1337
1310
  },
1338
1311
  {
1339
- "name": "compDefRaw";
1312
+ "name": "failureAcc";
1340
1313
  "writable": true;
1341
1314
  "pda": {
1342
1315
  "seeds": [
1343
1316
  {
1344
1317
  "kind": "const";
1345
1318
  "value": [
1346
- 67,
1347
- 111,
1348
- 109,
1349
- 112,
1350
- 117,
1351
- 116,
1319
+ 70,
1352
1320
  97,
1353
- 116,
1354
1321
  105,
1355
- 111,
1356
- 110,
1357
- 68,
1322
+ 108,
1323
+ 117,
1324
+ 114,
1358
1325
  101,
1359
- 102,
1360
- 105,
1361
- 110,
1362
- 105,
1363
- 116,
1326
+ 67,
1327
+ 108,
1328
+ 97,
1364
1329
  105,
1330
+ 109,
1331
+ 65,
1332
+ 99,
1333
+ 99,
1365
1334
  111,
1335
+ 117,
1366
1336
  110,
1367
- 82,
1337
+ 116,
1338
+ 72,
1339
+ 101,
1368
1340
  97,
1369
- 119
1341
+ 100,
1342
+ 101,
1343
+ 114
1370
1344
  ];
1371
1345
  },
1372
1346
  {
1373
- "kind": "account";
1374
- "path": "compDefAcc";
1347
+ "kind": "arg";
1348
+ "path": "mxeProgram";
1375
1349
  },
1376
1350
  {
1377
1351
  "kind": "arg";
1378
- "path": "rawCircuitIndex";
1352
+ "path": "compOffset";
1379
1353
  }
1380
1354
  ];
1381
1355
  };
@@ -1388,29 +1362,29 @@ type Arcium = {
1388
1362
  "args": [
1389
1363
  {
1390
1364
  "name": "compOffset";
1365
+ "type": "u64";
1366
+ },
1367
+ {
1368
+ "name": "nodeOffset";
1391
1369
  "type": "u32";
1392
1370
  },
1393
1371
  {
1394
1372
  "name": "mxeProgram";
1395
1373
  "type": "pubkey";
1396
- },
1397
- {
1398
- "name": "rawCircuitIndex";
1399
- "type": "u8";
1400
1374
  }
1401
1375
  ];
1402
1376
  },
1403
1377
  {
1404
- "name": "finalizeComputation";
1378
+ "name": "deactivateArx";
1405
1379
  "discriminator": [
1406
- 43,
1407
- 29,
1408
- 152,
1409
- 92,
1410
- 241,
1411
- 179,
1412
- 193,
1413
- 210
1380
+ 117,
1381
+ 244,
1382
+ 137,
1383
+ 148,
1384
+ 25,
1385
+ 190,
1386
+ 175,
1387
+ 164
1414
1388
  ];
1415
1389
  "accounts": [
1416
1390
  {
@@ -1419,73 +1393,281 @@ type Arcium = {
1419
1393
  "signer": true;
1420
1394
  },
1421
1395
  {
1422
- "name": "comp";
1423
- "writable": true;
1396
+ "name": "arxNodeAcc";
1397
+ "writable": true;
1398
+ "pda": {
1399
+ "seeds": [
1400
+ {
1401
+ "kind": "const";
1402
+ "value": [
1403
+ 65,
1404
+ 114,
1405
+ 120,
1406
+ 78,
1407
+ 111,
1408
+ 100,
1409
+ 101
1410
+ ];
1411
+ },
1412
+ {
1413
+ "kind": "arg";
1414
+ "path": "nodeOffset";
1415
+ }
1416
+ ];
1417
+ };
1418
+ },
1419
+ {
1420
+ "name": "clock";
1421
+ "pda": {
1422
+ "seeds": [
1423
+ {
1424
+ "kind": "const";
1425
+ "value": [
1426
+ 67,
1427
+ 108,
1428
+ 111,
1429
+ 99,
1430
+ 107,
1431
+ 65,
1432
+ 99,
1433
+ 99,
1434
+ 111,
1435
+ 117,
1436
+ 110,
1437
+ 116
1438
+ ];
1439
+ }
1440
+ ];
1441
+ };
1442
+ },
1443
+ {
1444
+ "name": "clusterAcc0";
1445
+ "optional": true;
1446
+ "pda": {
1447
+ "seeds": [
1448
+ {
1449
+ "kind": "const";
1450
+ "value": [
1451
+ 67,
1452
+ 108,
1453
+ 117,
1454
+ 115,
1455
+ 116,
1456
+ 101,
1457
+ 114
1458
+ ];
1459
+ },
1460
+ {
1461
+ "kind": "account";
1462
+ "path": "arx_node_acc.cluster_memberships";
1463
+ "account": "arxNode";
1464
+ }
1465
+ ];
1466
+ };
1467
+ },
1468
+ {
1469
+ "name": "clusterAcc1";
1470
+ "optional": true;
1471
+ "pda": {
1472
+ "seeds": [
1473
+ {
1474
+ "kind": "const";
1475
+ "value": [
1476
+ 67,
1477
+ 108,
1478
+ 117,
1479
+ 115,
1480
+ 116,
1481
+ 101,
1482
+ 114
1483
+ ];
1484
+ },
1485
+ {
1486
+ "kind": "account";
1487
+ "path": "arx_node_acc.cluster_memberships.get(1).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1488
+ "account": "arxNode";
1489
+ }
1490
+ ];
1491
+ };
1492
+ },
1493
+ {
1494
+ "name": "clusterAcc2";
1495
+ "optional": true;
1496
+ "pda": {
1497
+ "seeds": [
1498
+ {
1499
+ "kind": "const";
1500
+ "value": [
1501
+ 67,
1502
+ 108,
1503
+ 117,
1504
+ 115,
1505
+ 116,
1506
+ 101,
1507
+ 114
1508
+ ];
1509
+ },
1510
+ {
1511
+ "kind": "account";
1512
+ "path": "arx_node_acc.cluster_memberships.get(2).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1513
+ "account": "arxNode";
1514
+ }
1515
+ ];
1516
+ };
1517
+ },
1518
+ {
1519
+ "name": "clusterAcc3";
1520
+ "optional": true;
1521
+ "pda": {
1522
+ "seeds": [
1523
+ {
1524
+ "kind": "const";
1525
+ "value": [
1526
+ 67,
1527
+ 108,
1528
+ 117,
1529
+ 115,
1530
+ 116,
1531
+ 101,
1532
+ 114
1533
+ ];
1534
+ },
1535
+ {
1536
+ "kind": "account";
1537
+ "path": "arx_node_acc.cluster_memberships.get(3).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1538
+ "account": "arxNode";
1539
+ }
1540
+ ];
1541
+ };
1542
+ },
1543
+ {
1544
+ "name": "clusterAcc4";
1545
+ "optional": true;
1546
+ "pda": {
1547
+ "seeds": [
1548
+ {
1549
+ "kind": "const";
1550
+ "value": [
1551
+ 67,
1552
+ 108,
1553
+ 117,
1554
+ 115,
1555
+ 116,
1556
+ 101,
1557
+ 114
1558
+ ];
1559
+ },
1560
+ {
1561
+ "kind": "account";
1562
+ "path": "arx_node_acc.cluster_memberships.get(4).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1563
+ "account": "arxNode";
1564
+ }
1565
+ ];
1566
+ };
1567
+ },
1568
+ {
1569
+ "name": "clusterAcc5";
1570
+ "optional": true;
1571
+ "pda": {
1572
+ "seeds": [
1573
+ {
1574
+ "kind": "const";
1575
+ "value": [
1576
+ 67,
1577
+ 108,
1578
+ 117,
1579
+ 115,
1580
+ 116,
1581
+ 101,
1582
+ 114
1583
+ ];
1584
+ },
1585
+ {
1586
+ "kind": "account";
1587
+ "path": "arx_node_acc.cluster_memberships.get(5).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1588
+ "account": "arxNode";
1589
+ }
1590
+ ];
1591
+ };
1592
+ },
1593
+ {
1594
+ "name": "clusterAcc6";
1595
+ "optional": true;
1424
1596
  "pda": {
1425
1597
  "seeds": [
1426
1598
  {
1427
1599
  "kind": "const";
1428
1600
  "value": [
1429
1601
  67,
1430
- 111,
1431
- 109,
1432
- 112,
1602
+ 108,
1433
1603
  117,
1604
+ 115,
1434
1605
  116,
1435
- 97,
1436
- 116,
1437
- 105,
1438
- 111,
1439
- 110,
1440
- 65,
1441
- 99,
1442
- 99,
1443
- 111,
1444
- 117,
1445
- 110,
1446
- 116
1606
+ 101,
1607
+ 114
1447
1608
  ];
1448
1609
  },
1449
1610
  {
1450
- "kind": "arg";
1451
- "path": "mxeProgram";
1611
+ "kind": "account";
1612
+ "path": "arx_node_acc.cluster_memberships.get(6).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1613
+ "account": "arxNode";
1614
+ }
1615
+ ];
1616
+ };
1617
+ },
1618
+ {
1619
+ "name": "clusterAcc7";
1620
+ "optional": true;
1621
+ "pda": {
1622
+ "seeds": [
1623
+ {
1624
+ "kind": "const";
1625
+ "value": [
1626
+ 67,
1627
+ 108,
1628
+ 117,
1629
+ 115,
1630
+ 116,
1631
+ 101,
1632
+ 114
1633
+ ];
1452
1634
  },
1453
1635
  {
1454
- "kind": "arg";
1455
- "path": "compOffset";
1636
+ "kind": "account";
1637
+ "path": "arx_node_acc.cluster_memberships.get(7).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1638
+ "account": "arxNode";
1456
1639
  }
1457
1640
  ];
1458
1641
  };
1459
1642
  },
1460
1643
  {
1461
- "name": "mxe";
1644
+ "name": "clusterAcc8";
1645
+ "optional": true;
1462
1646
  "pda": {
1463
1647
  "seeds": [
1464
1648
  {
1465
1649
  "kind": "const";
1466
1650
  "value": [
1467
- 77,
1468
- 88,
1469
- 69,
1470
- 65,
1471
- 99,
1472
- 99,
1473
- 111,
1651
+ 67,
1652
+ 108,
1474
1653
  117,
1475
- 110,
1476
- 116
1654
+ 115,
1655
+ 116,
1656
+ 101,
1657
+ 114
1477
1658
  ];
1478
1659
  },
1479
1660
  {
1480
- "kind": "arg";
1481
- "path": "mxeProgram";
1661
+ "kind": "account";
1662
+ "path": "arx_node_acc.cluster_memberships.get(8).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1663
+ "account": "arxNode";
1482
1664
  }
1483
1665
  ];
1484
1666
  };
1485
1667
  },
1486
1668
  {
1487
- "name": "clusterAcc";
1488
- "writable": true;
1669
+ "name": "clusterAcc9";
1670
+ "optional": true;
1489
1671
  "pda": {
1490
1672
  "seeds": [
1491
1673
  {
@@ -1502,61 +1684,168 @@ type Arcium = {
1502
1684
  },
1503
1685
  {
1504
1686
  "kind": "account";
1505
- "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1506
- "account": "mxeAccount";
1687
+ "path": "arx_node_acc.cluster_memberships.get(9).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1688
+ "account": "arxNode";
1507
1689
  }
1508
1690
  ];
1509
1691
  };
1692
+ }
1693
+ ];
1694
+ "args": [
1695
+ {
1696
+ "name": "nodeOffset";
1697
+ "type": "u32";
1698
+ }
1699
+ ];
1700
+ },
1701
+ {
1702
+ "name": "deactivateCluster";
1703
+ "discriminator": [
1704
+ 13,
1705
+ 42,
1706
+ 182,
1707
+ 159,
1708
+ 184,
1709
+ 10,
1710
+ 212,
1711
+ 178
1712
+ ];
1713
+ "accounts": [
1714
+ {
1715
+ "name": "authority";
1716
+ "writable": true;
1717
+ "signer": true;
1510
1718
  },
1511
1719
  {
1512
- "name": "executingPool";
1720
+ "name": "clusterAcc";
1513
1721
  "writable": true;
1514
1722
  "pda": {
1515
1723
  "seeds": [
1516
1724
  {
1517
1725
  "kind": "const";
1518
1726
  "value": [
1519
- 69,
1520
- 120,
1727
+ 67,
1728
+ 108,
1729
+ 117,
1730
+ 115,
1731
+ 116,
1521
1732
  101,
1522
- 99,
1523
- 112,
1524
- 111,
1525
- 111,
1526
- 108
1733
+ 114
1527
1734
  ];
1528
1735
  },
1529
1736
  {
1530
1737
  "kind": "arg";
1531
- "path": "mxeProgram";
1738
+ "path": "id";
1532
1739
  }
1533
1740
  ];
1534
1741
  };
1535
1742
  },
1536
1743
  {
1537
- "name": "mempool";
1538
- "writable": true;
1744
+ "name": "clock";
1539
1745
  "pda": {
1540
1746
  "seeds": [
1541
1747
  {
1542
1748
  "kind": "const";
1543
1749
  "value": [
1544
- 77,
1545
- 101,
1546
- 109,
1547
- 112,
1750
+ 67,
1751
+ 108,
1548
1752
  111,
1753
+ 99,
1754
+ 107,
1755
+ 65,
1756
+ 99,
1757
+ 99,
1549
1758
  111,
1550
- 108
1759
+ 117,
1760
+ 110,
1761
+ 116
1551
1762
  ];
1552
- },
1553
- {
1554
- "kind": "arg";
1555
- "path": "mxeProgram";
1556
1763
  }
1557
1764
  ];
1558
1765
  };
1559
1766
  },
1767
+ {
1768
+ "name": "systemProgram";
1769
+ "address": "11111111111111111111111111111111";
1770
+ }
1771
+ ];
1772
+ "args": [
1773
+ {
1774
+ "name": "clusterId";
1775
+ "type": "u32";
1776
+ },
1777
+ {
1778
+ "name": "deactivationEpoch";
1779
+ "type": {
1780
+ "defined": {
1781
+ "name": "epoch";
1782
+ };
1783
+ };
1784
+ }
1785
+ ];
1786
+ },
1787
+ {
1788
+ "name": "dummyInstruction";
1789
+ "docs": [
1790
+ "Only present so the mempool and execpool accounts are actually included in the idl, since we",
1791
+ "don't explicitly declare them in the accounts section of the other instructions."
1792
+ ];
1793
+ "discriminator": [
1794
+ 57,
1795
+ 4,
1796
+ 200,
1797
+ 151,
1798
+ 58,
1799
+ 19,
1800
+ 120,
1801
+ 9
1802
+ ];
1803
+ "accounts": [
1804
+ {
1805
+ "name": "tinyMempool";
1806
+ },
1807
+ {
1808
+ "name": "tinyExecpool";
1809
+ },
1810
+ {
1811
+ "name": "smallMempool";
1812
+ },
1813
+ {
1814
+ "name": "smallExecpool";
1815
+ },
1816
+ {
1817
+ "name": "mediumMempool";
1818
+ },
1819
+ {
1820
+ "name": "mediumExecpool";
1821
+ },
1822
+ {
1823
+ "name": "largeMempool";
1824
+ },
1825
+ {
1826
+ "name": "largeExecpool";
1827
+ }
1828
+ ];
1829
+ "args": [];
1830
+ },
1831
+ {
1832
+ "name": "embiggenRawCircuitAcc";
1833
+ "discriminator": [
1834
+ 92,
1835
+ 195,
1836
+ 192,
1837
+ 21,
1838
+ 193,
1839
+ 242,
1840
+ 135,
1841
+ 194
1842
+ ];
1843
+ "accounts": [
1844
+ {
1845
+ "name": "signer";
1846
+ "writable": true;
1847
+ "signer": true;
1848
+ },
1560
1849
  {
1561
1850
  "name": "compDefAcc";
1562
1851
  "pda": {
@@ -1600,31 +1889,52 @@ type Arcium = {
1600
1889
  },
1601
1890
  {
1602
1891
  "kind": "arg";
1603
- "path": "compDefOffset";
1892
+ "path": "compOffset";
1604
1893
  }
1605
1894
  ];
1606
1895
  };
1607
1896
  },
1608
1897
  {
1609
- "name": "clock";
1898
+ "name": "compDefRaw";
1899
+ "writable": true;
1610
1900
  "pda": {
1611
1901
  "seeds": [
1612
1902
  {
1613
1903
  "kind": "const";
1614
1904
  "value": [
1615
1905
  67,
1616
- 108,
1617
1906
  111,
1618
- 99,
1619
- 107,
1620
- 65,
1621
- 99,
1622
- 99,
1907
+ 109,
1908
+ 112,
1909
+ 117,
1910
+ 116,
1911
+ 97,
1912
+ 116,
1913
+ 105,
1914
+ 111,
1915
+ 110,
1916
+ 68,
1917
+ 101,
1918
+ 102,
1919
+ 105,
1920
+ 110,
1921
+ 105,
1922
+ 116,
1923
+ 105,
1623
1924
  111,
1624
- 117,
1625
1925
  110,
1626
- 116
1926
+ 82,
1927
+ 97,
1928
+ 119
1627
1929
  ];
1930
+ },
1931
+ {
1932
+ "kind": "account";
1933
+ "path": "compDefAcc";
1934
+ },
1935
+ {
1936
+ "kind": "arg";
1937
+ "path": "rawCircuitIndex";
1628
1938
  }
1629
1939
  ];
1630
1940
  };
@@ -1637,15 +1947,15 @@ type Arcium = {
1637
1947
  "args": [
1638
1948
  {
1639
1949
  "name": "compOffset";
1640
- "type": "u64";
1641
- },
1642
- {
1643
- "name": "compDefOffset";
1644
1950
  "type": "u32";
1645
1951
  },
1646
1952
  {
1647
1953
  "name": "mxeProgram";
1648
1954
  "type": "pubkey";
1955
+ },
1956
+ {
1957
+ "name": "rawCircuitIndex";
1958
+ "type": "u8";
1649
1959
  }
1650
1960
  ];
1651
1961
  },
@@ -2316,10 +2626,6 @@ type Arcium = {
2316
2626
  "type": {
2317
2627
  "option": "pubkey";
2318
2628
  };
2319
- },
2320
- {
2321
- "name": "finalizeDuringCallback";
2322
- "type": "bool";
2323
2629
  }
2324
2630
  ];
2325
2631
  },
@@ -3143,7 +3449,7 @@ type Arcium = {
3143
3449
  "name": "queueComputation";
3144
3450
  "docs": [
3145
3451
  "Queues a computation.",
3146
- "cu_price_micro: The priority price of a CU, in thousandths of a $ARX. Used",
3452
+ "cu_price_micro: The priority price of a CU, in thousandths of lamports. Used",
3147
3453
  "to calculate the priority fee and rounded down."
3148
3454
  ];
3149
3455
  "discriminator": [
@@ -3478,8 +3784,8 @@ type Arcium = {
3478
3784
  };
3479
3785
  },
3480
3786
  {
3481
- "name": "inputDeliveryFee";
3482
- "type": "u64";
3787
+ "name": "callbackTransactionsRequired";
3788
+ "type": "u8";
3483
3789
  },
3484
3790
  {
3485
3791
  "name": "outputDeliveryFee";
@@ -3491,6 +3797,90 @@ type Arcium = {
3491
3797
  }
3492
3798
  ];
3493
3799
  },
3800
+ {
3801
+ "name": "reclaimFailureRent";
3802
+ "discriminator": [
3803
+ 159,
3804
+ 99,
3805
+ 116,
3806
+ 180,
3807
+ 42,
3808
+ 9,
3809
+ 202,
3810
+ 219
3811
+ ];
3812
+ "accounts": [
3813
+ {
3814
+ "name": "signer";
3815
+ "writable": true;
3816
+ "signer": true;
3817
+ },
3818
+ {
3819
+ "name": "failureAcc";
3820
+ "writable": true;
3821
+ "pda": {
3822
+ "seeds": [
3823
+ {
3824
+ "kind": "const";
3825
+ "value": [
3826
+ 70,
3827
+ 97,
3828
+ 105,
3829
+ 108,
3830
+ 117,
3831
+ 114,
3832
+ 101,
3833
+ 67,
3834
+ 108,
3835
+ 97,
3836
+ 105,
3837
+ 109,
3838
+ 65,
3839
+ 99,
3840
+ 99,
3841
+ 111,
3842
+ 117,
3843
+ 110,
3844
+ 116,
3845
+ 72,
3846
+ 101,
3847
+ 97,
3848
+ 100,
3849
+ 101,
3850
+ 114
3851
+ ];
3852
+ },
3853
+ {
3854
+ "kind": "arg";
3855
+ "path": "mxeProgram";
3856
+ },
3857
+ {
3858
+ "kind": "arg";
3859
+ "path": "compOffset";
3860
+ }
3861
+ ];
3862
+ };
3863
+ },
3864
+ {
3865
+ "name": "clock";
3866
+ "address": "SysvarC1ock11111111111111111111111111111111";
3867
+ }
3868
+ ];
3869
+ "args": [
3870
+ {
3871
+ "name": "compOffset";
3872
+ "type": "u64";
3873
+ },
3874
+ {
3875
+ "name": "nodeOffset";
3876
+ "type": "u32";
3877
+ },
3878
+ {
3879
+ "name": "mxeProgram";
3880
+ "type": "pubkey";
3881
+ }
3882
+ ];
3883
+ },
3494
3884
  {
3495
3885
  "name": "setArxNodeConfig";
3496
3886
  "discriminator": [
@@ -3882,6 +4272,33 @@ type Arcium = {
3882
4272
  32
3883
4273
  ];
3884
4274
  };
4275
+ },
4276
+ {
4277
+ "name": "mxeEd25519VerifyingKey";
4278
+ "type": {
4279
+ "array": [
4280
+ "u8",
4281
+ 32
4282
+ ];
4283
+ };
4284
+ },
4285
+ {
4286
+ "name": "mxeElgamalPubkey";
4287
+ "type": {
4288
+ "array": [
4289
+ "u8",
4290
+ 32
4291
+ ];
4292
+ };
4293
+ },
4294
+ {
4295
+ "name": "mxePubkeyValidityProof";
4296
+ "type": {
4297
+ "array": [
4298
+ "u8",
4299
+ 64
4300
+ ];
4301
+ };
3885
4302
  }
3886
4303
  ];
3887
4304
  },
@@ -4231,6 +4648,19 @@ type Arcium = {
4231
4648
  136
4232
4649
  ];
4233
4650
  },
4651
+ {
4652
+ "name": "failureClaimAccountHeader";
4653
+ "discriminator": [
4654
+ 132,
4655
+ 11,
4656
+ 106,
4657
+ 171,
4658
+ 253,
4659
+ 138,
4660
+ 56,
4661
+ 78
4662
+ ];
4663
+ },
4234
4664
  {
4235
4665
  "name": "feePool";
4236
4666
  "discriminator": [
@@ -4389,6 +4819,19 @@ type Arcium = {
4389
4819
  19
4390
4820
  ];
4391
4821
  },
4822
+ {
4823
+ "name": "claimFailureEvent";
4824
+ "discriminator": [
4825
+ 143,
4826
+ 97,
4827
+ 229,
4828
+ 166,
4829
+ 72,
4830
+ 218,
4831
+ 87,
4832
+ 145
4833
+ ];
4834
+ },
4392
4835
  {
4393
4836
  "name": "finalizeComputationEvent";
4394
4837
  "discriminator": [
@@ -4402,6 +4845,19 @@ type Arcium = {
4402
4845
  249
4403
4846
  ];
4404
4847
  },
4848
+ {
4849
+ "name": "finalizeFailureDataEvent";
4850
+ "discriminator": [
4851
+ 132,
4852
+ 26,
4853
+ 138,
4854
+ 201,
4855
+ 214,
4856
+ 29,
4857
+ 244,
4858
+ 167
4859
+ ];
4860
+ },
4405
4861
  {
4406
4862
  "name": "initComputationEvent";
4407
4863
  "discriminator": [
@@ -4522,8 +4978,8 @@ type Arcium = {
4522
4978
  },
4523
4979
  {
4524
4980
  "code": 6205;
4525
- "name": "invalidFinalizeTx";
4526
- "msg": "Finalize tx is invalid";
4981
+ "name": "invalidCallbackTx";
4982
+ "msg": "Callback tx is invalid";
4527
4983
  },
4528
4984
  {
4529
4985
  "code": 6206;
@@ -4728,8 +5184,17 @@ type Arcium = {
4728
5184
  {
4729
5185
  "name": "primitiveError";
4730
5186
  },
5187
+ {
5188
+ "name": "invalidBatchLength";
5189
+ },
4731
5190
  {
4732
5191
  "name": "quadraticNonResidue";
5192
+ },
5193
+ {
5194
+ "name": "bitConversionError";
5195
+ },
5196
+ {
5197
+ "name": "channelClosed";
4733
5198
  }
4734
5199
  ];
4735
5200
  };
@@ -5149,6 +5614,22 @@ type Arcium = {
5149
5614
  ];
5150
5615
  };
5151
5616
  },
5617
+ {
5618
+ "name": "claimFailureEvent";
5619
+ "type": {
5620
+ "kind": "struct";
5621
+ "fields": [
5622
+ {
5623
+ "name": "computationOffset";
5624
+ "type": "u64";
5625
+ },
5626
+ {
5627
+ "name": "mxeProgramId";
5628
+ "type": "pubkey";
5629
+ }
5630
+ ];
5631
+ };
5632
+ },
5152
5633
  {
5153
5634
  "name": "clockAccount";
5154
5635
  "docs": [
@@ -5373,6 +5854,14 @@ type Arcium = {
5373
5854
  };
5374
5855
  };
5375
5856
  },
5857
+ {
5858
+ "name": "callbackTransactionsRequired";
5859
+ "type": "u8";
5860
+ },
5861
+ {
5862
+ "name": "callbackTransactionsSubmittedBm";
5863
+ "type": "u16";
5864
+ },
5376
5865
  {
5377
5866
  "name": "bump";
5378
5867
  "type": "u8";
@@ -5397,13 +5886,6 @@ type Arcium = {
5397
5886
  "option": "pubkey";
5398
5887
  };
5399
5888
  },
5400
- {
5401
- "name": "finalizeDuringCallback";
5402
- "docs": [
5403
- "Whether to we need a separate callback and finalize instruction or if we can do it in one."
5404
- ];
5405
- "type": "bool";
5406
- },
5407
5889
  {
5408
5890
  "name": "cuAmount";
5409
5891
  "docs": [
@@ -5573,9 +6055,6 @@ type Arcium = {
5573
6055
  {
5574
6056
  "name": "queued";
5575
6057
  },
5576
- {
5577
- "name": "executed";
5578
- },
5579
6058
  {
5580
6059
  "name": "finalized";
5581
6060
  }
@@ -5614,21 +6093,12 @@ type Arcium = {
5614
6093
  "name": "bump";
5615
6094
  "type": "u8";
5616
6095
  },
5617
- {
5618
- "name": "compStatus";
5619
- "type": {
5620
- "array": [
5621
- "u8",
5622
- 13
5623
- ];
5624
- };
5625
- },
5626
6096
  {
5627
6097
  "name": "padding";
5628
6098
  "type": {
5629
6099
  "array": [
5630
6100
  "u8",
5631
- 2
6101
+ 7
5632
6102
  ];
5633
6103
  };
5634
6104
  },
@@ -5720,18 +6190,10 @@ type Arcium = {
5720
6190
  ];
5721
6191
  "type": "u64";
5722
6192
  },
5723
- {
5724
- "name": "inputDeliveryFee";
5725
- "docs": [
5726
- "A fee for data relaying used with [super::mxe::DataProvisioning::Protected] data",
5727
- "provisioning."
5728
- ];
5729
- "type": "u64";
5730
- },
5731
6193
  {
5732
6194
  "name": "outputDeliveryFee";
5733
6195
  "docs": [
5734
- "A fee for relayer based (unverifiable) off-chain output delivery."
6196
+ "A fee for output delivery fees (i.e. tx fees)."
5735
6197
  ];
5736
6198
  "type": "u64";
5737
6199
  }
@@ -5766,19 +6228,72 @@ type Arcium = {
5766
6228
  };
5767
6229
  },
5768
6230
  {
5769
- "name": "feePool";
6231
+ "name": "failureClaimAccountHeader";
6232
+ "serialization": "bytemuckunsafe";
6233
+ "repr": {
6234
+ "kind": "c";
6235
+ };
6236
+ "type": {
6237
+ "kind": "struct";
6238
+ "fields": [
6239
+ {
6240
+ "name": "bump";
6241
+ "type": "u8";
6242
+ },
6243
+ {
6244
+ "name": "isComplete";
6245
+ "type": "bool";
6246
+ },
6247
+ {
6248
+ "name": "padding";
6249
+ "type": {
6250
+ "array": [
6251
+ "u8",
6252
+ 6
6253
+ ];
6254
+ };
6255
+ },
6256
+ {
6257
+ "name": "challengeEndSlot";
6258
+ "type": "u64";
6259
+ },
6260
+ {
6261
+ "name": "poster";
6262
+ "type": "pubkey";
6263
+ }
6264
+ ];
6265
+ };
6266
+ },
6267
+ {
6268
+ "name": "feePool";
6269
+ "type": {
6270
+ "kind": "struct";
6271
+ "fields": [
6272
+ {
6273
+ "name": "bump";
6274
+ "type": "u8";
6275
+ }
6276
+ ];
6277
+ };
6278
+ },
6279
+ {
6280
+ "name": "finalizeComputationEvent";
5770
6281
  "type": {
5771
6282
  "kind": "struct";
5772
6283
  "fields": [
5773
6284
  {
5774
- "name": "bump";
5775
- "type": "u8";
6285
+ "name": "computationOffset";
6286
+ "type": "u64";
6287
+ },
6288
+ {
6289
+ "name": "mxeProgramId";
6290
+ "type": "pubkey";
5776
6291
  }
5777
6292
  ];
5778
6293
  };
5779
6294
  },
5780
6295
  {
5781
- "name": "finalizeComputationEvent";
6296
+ "name": "finalizeFailureDataEvent";
5782
6297
  "type": {
5783
6298
  "kind": "struct";
5784
6299
  "fields": [
@@ -6027,13 +6542,27 @@ type Arcium = {
6027
6542
  };
6028
6543
  },
6029
6544
  {
6030
- "name": "x25519Pubkey";
6545
+ "name": "utilityPubkeys";
6031
6546
  "docs": [
6032
- "The x25519 pubkey (256 bits curve25519), used for encrypted data."
6547
+ "The utility pubkeys, consisting of",
6548
+ "- x25519 pubkey (32 bytes), used for key exchange",
6549
+ "- ed25519 verifying key (32 bytes), used for signature verification",
6550
+ "- ElGamal pubkey (32 bytes), used for c-spl",
6551
+ "- ElGamal pubkey validity proof (64 bytes), used for c-spl"
6033
6552
  ];
6034
6553
  "type": {
6035
6554
  "defined": {
6036
- "name": "x25519Pubkey";
6555
+ "name": "setUnset";
6556
+ "generics": [
6557
+ {
6558
+ "kind": "type";
6559
+ "type": {
6560
+ "defined": {
6561
+ "name": "utilityPubkeys";
6562
+ };
6563
+ };
6564
+ }
6565
+ ];
6037
6566
  };
6038
6567
  };
6039
6568
  },
@@ -6473,6 +7002,9 @@ type Arcium = {
6473
7002
  },
6474
7003
  {
6475
7004
  "name": "plaintextFloat";
7005
+ },
7006
+ {
7007
+ "name": "plaintextPoint";
6476
7008
  }
6477
7009
  ];
6478
7010
  };
@@ -6544,6 +7076,39 @@ type Arcium = {
6544
7076
  ];
6545
7077
  };
6546
7078
  },
7079
+ {
7080
+ "name": "setUnset";
7081
+ "generics": [
7082
+ {
7083
+ "kind": "type";
7084
+ "name": "t";
7085
+ }
7086
+ ];
7087
+ "type": {
7088
+ "kind": "enum";
7089
+ "variants": [
7090
+ {
7091
+ "name": "set";
7092
+ "fields": [
7093
+ {
7094
+ "generic": "t";
7095
+ }
7096
+ ];
7097
+ },
7098
+ {
7099
+ "name": "unset";
7100
+ "fields": [
7101
+ {
7102
+ "generic": "t";
7103
+ },
7104
+ {
7105
+ "vec": "bool";
7106
+ }
7107
+ ];
7108
+ }
7109
+ ];
7110
+ };
7111
+ },
6547
7112
  {
6548
7113
  "name": "smallExecPool";
6549
7114
  "serialization": "bytemuckunsafe";
@@ -6917,34 +7482,45 @@ type Arcium = {
6917
7482
  };
6918
7483
  },
6919
7484
  {
6920
- "name": "x25519Pubkey";
7485
+ "name": "utilityPubkeys";
6921
7486
  "type": {
6922
- "kind": "enum";
6923
- "variants": [
7487
+ "kind": "struct";
7488
+ "fields": [
6924
7489
  {
6925
- "name": "set";
6926
- "fields": [
6927
- {
6928
- "array": [
6929
- "u8",
6930
- 32
6931
- ];
6932
- }
6933
- ];
7490
+ "name": "x25519Pubkey";
7491
+ "type": {
7492
+ "array": [
7493
+ "u8",
7494
+ 32
7495
+ ];
7496
+ };
6934
7497
  },
6935
7498
  {
6936
- "name": "unset";
6937
- "fields": [
6938
- {
6939
- "array": [
6940
- "u8",
6941
- 32
6942
- ];
6943
- },
6944
- {
6945
- "vec": "bool";
6946
- }
6947
- ];
7499
+ "name": "ed25519VerifyingKey";
7500
+ "type": {
7501
+ "array": [
7502
+ "u8",
7503
+ 32
7504
+ ];
7505
+ };
7506
+ },
7507
+ {
7508
+ "name": "elgamalPubkey";
7509
+ "type": {
7510
+ "array": [
7511
+ "u8",
7512
+ 32
7513
+ ];
7514
+ };
7515
+ },
7516
+ {
7517
+ "name": "pubkeyValidityProof";
7518
+ "type": {
7519
+ "array": [
7520
+ "u8",
7521
+ 64
7522
+ ];
7523
+ };
6948
7524
  }
6949
7525
  ];
6950
7526
  };
@@ -7037,6 +7613,145 @@ declare let instructions: ({
7037
7613
  };
7038
7614
  })[];
7039
7615
  docs?: undefined;
7616
+ } | {
7617
+ name: string;
7618
+ discriminator: number[];
7619
+ accounts: ({
7620
+ name: string;
7621
+ signer: boolean;
7622
+ writable?: undefined;
7623
+ pda?: undefined;
7624
+ } | {
7625
+ name: string;
7626
+ writable: boolean;
7627
+ pda: {
7628
+ seeds: ({
7629
+ kind: string;
7630
+ value: number[];
7631
+ path?: undefined;
7632
+ } | {
7633
+ kind: string;
7634
+ path: string;
7635
+ value?: undefined;
7636
+ })[];
7637
+ };
7638
+ signer?: undefined;
7639
+ } | {
7640
+ name: string;
7641
+ writable: boolean;
7642
+ pda: {
7643
+ seeds: ({
7644
+ kind: string;
7645
+ value: number[];
7646
+ path?: undefined;
7647
+ account?: undefined;
7648
+ } | {
7649
+ kind: string;
7650
+ path: string;
7651
+ account: string;
7652
+ value?: undefined;
7653
+ })[];
7654
+ };
7655
+ signer?: undefined;
7656
+ } | {
7657
+ name: string;
7658
+ pda: {
7659
+ seeds: ({
7660
+ kind: string;
7661
+ value: number[];
7662
+ path?: undefined;
7663
+ } | {
7664
+ kind: string;
7665
+ path: string;
7666
+ value?: undefined;
7667
+ })[];
7668
+ };
7669
+ signer?: undefined;
7670
+ writable?: undefined;
7671
+ })[];
7672
+ args: {
7673
+ name: string;
7674
+ type: string;
7675
+ }[];
7676
+ docs?: undefined;
7677
+ } | {
7678
+ name: string;
7679
+ discriminator: number[];
7680
+ accounts: ({
7681
+ name: string;
7682
+ writable: boolean;
7683
+ signer: boolean;
7684
+ pda?: undefined;
7685
+ address?: undefined;
7686
+ } | {
7687
+ name: string;
7688
+ writable: boolean;
7689
+ pda: {
7690
+ seeds: ({
7691
+ kind: string;
7692
+ value: number[];
7693
+ path?: undefined;
7694
+ account?: undefined;
7695
+ } | {
7696
+ kind: string;
7697
+ path: string;
7698
+ account: string;
7699
+ value?: undefined;
7700
+ })[];
7701
+ };
7702
+ signer?: undefined;
7703
+ address?: undefined;
7704
+ } | {
7705
+ name: string;
7706
+ pda: {
7707
+ seeds: ({
7708
+ kind: string;
7709
+ value: number[];
7710
+ path?: undefined;
7711
+ account?: undefined;
7712
+ } | {
7713
+ kind: string;
7714
+ path: string;
7715
+ value?: undefined;
7716
+ account?: undefined;
7717
+ } | {
7718
+ kind: string;
7719
+ path: string;
7720
+ account: string;
7721
+ value?: undefined;
7722
+ })[];
7723
+ };
7724
+ writable?: undefined;
7725
+ signer?: undefined;
7726
+ address?: undefined;
7727
+ } | {
7728
+ name: string;
7729
+ writable: boolean;
7730
+ pda: {
7731
+ seeds: ({
7732
+ kind: string;
7733
+ value: number[];
7734
+ path?: undefined;
7735
+ } | {
7736
+ kind: string;
7737
+ path: string;
7738
+ value?: undefined;
7739
+ })[];
7740
+ };
7741
+ signer?: undefined;
7742
+ address?: undefined;
7743
+ } | {
7744
+ name: string;
7745
+ address: string;
7746
+ writable?: undefined;
7747
+ signer?: undefined;
7748
+ pda?: undefined;
7749
+ })[];
7750
+ args: {
7751
+ name: string;
7752
+ type: string;
7753
+ }[];
7754
+ docs?: undefined;
7040
7755
  } | {
7041
7756
  name: string;
7042
7757
  discriminator: number[];
@@ -7990,6 +8705,14 @@ declare let types: ({
7990
8705
  type: {
7991
8706
  defined: {
7992
8707
  name: string;
8708
+ generics: {
8709
+ kind: string;
8710
+ type: {
8711
+ defined: {
8712
+ name: string;
8713
+ };
8714
+ };
8715
+ }[];
7993
8716
  };
7994
8717
  option?: undefined;
7995
8718
  vec?: undefined;
@@ -8076,16 +8799,20 @@ declare let types: ({
8076
8799
  generics?: undefined;
8077
8800
  } | {
8078
8801
  name: string;
8802
+ generics: {
8803
+ kind: string;
8804
+ name: string;
8805
+ }[];
8079
8806
  type: {
8080
8807
  kind: string;
8081
8808
  variants: {
8082
8809
  name: string;
8083
8810
  fields: ({
8084
- array: (string | number)[];
8811
+ generic: string;
8085
8812
  vec?: undefined;
8086
8813
  } | {
8087
8814
  vec: string;
8088
- array?: undefined;
8815
+ generic?: undefined;
8089
8816
  })[];
8090
8817
  }[];
8091
8818
  fields?: undefined;
@@ -8093,7 +8820,6 @@ declare let types: ({
8093
8820
  docs?: undefined;
8094
8821
  serialization?: undefined;
8095
8822
  repr?: undefined;
8096
- generics?: undefined;
8097
8823
  })[];
8098
8824
 
8099
8825
  declare const arcium_accounts: typeof accounts;
@@ -8118,7 +8844,7 @@ declare namespace arcium {
8118
8844
  /**
8119
8845
  * The deployed address of the Arcium program, as specified in the IDL.
8120
8846
  */
8121
- declare const ARCIUM_ADDR: "BKck65TgoKRokMjQM3datB9oRwJ8rAj2jxPXvHXUvcL6";
8847
+ declare const ARCIUM_ADDR: "Bv3Fb9VjzjWGfX18QTUcVycAfeLoQ5zZN6vv2g3cTZxp";
8122
8848
 
8123
8849
  /**
8124
8850
  * Represents a mempool account of any size (tiny, small, medium, or large).
@@ -8168,6 +8894,13 @@ declare function getExecutingPoolAccData(provider: AnchorProvider, executingPool
8168
8894
  * @returns The MXE's x25519 public key as a Uint8Array, or null if not set.
8169
8895
  */
8170
8896
  declare function getMXEPublicKey(provider: AnchorProvider, mxeProgramID: anchor.web3.PublicKey): Promise<Uint8Array | null>;
8897
+ /**
8898
+ * Fetches and extracts the MXE arcis ed25519 verifying key from the MXE account.
8899
+ * @param provider - The Anchor provider to use for fetching accounts.
8900
+ * @param mxeProgramID - The public key of the MXE program.
8901
+ * @returns The MXE's arcis ed25519 verifying key as a Uint8Array, or null if not set.
8902
+ */
8903
+ declare function getMXEArcisEd25519VerifyingKey(provider: AnchorProvider, mxeProgramID: anchor.web3.PublicKey): Promise<Uint8Array | null>;
8171
8904
  /**
8172
8905
  * Uploads a circuit to the blockchain, splitting it into multiple accounts if necessary.
8173
8906
  * @param provider - The Anchor provider to use for transactions.
@@ -8273,10 +9006,10 @@ declare function getMempoolAccAddress(mxeProgramId: PublicKey): PublicKey;
8273
9006
  */
8274
9007
  declare function getExecutingPoolAccAddress(mxeProgramId: PublicKey): PublicKey;
8275
9008
  /**
8276
- * Derives the staking pool account address.
8277
- * @returns The derived staking pool account public key.
9009
+ * Derives the fee pool account address.
9010
+ * @returns The derived fee pool account public key.
8278
9011
  */
8279
- declare function getStakingPoolAccAddress(): PublicKey;
9012
+ declare function getFeePoolAccAddress(): PublicKey;
8280
9013
  /**
8281
9014
  * Derives the clock account address.
8282
9015
  * @returns The derived clock account public key.
@@ -8329,5 +9062,5 @@ declare function compressUint128(bytes: Uint8Array): bigint[];
8329
9062
  */
8330
9063
  declare function decompressUint128(compressed: bigint[]): Uint8Array;
8331
9064
 
8332
- export { ARCIUM_ADDR, arcium as ARCIUM_IDL, Aes128Cipher, Aes192Cipher, Aes256Cipher, CURVE25519_BASE_FIELD, CURVE25519_SCALAR_FIELD_MODULUS, Matrix, RescueCipher, RescueDesc, RescuePrimeHash, arcisEd25519, awaitComputationFinalization, buildFinalizeCompDefTx, compressUint128, decompressUint128, deserializeLE, generateRandomFieldElem, getArciumAccountBaseSeed, getArciumEnv, getArciumProgAddress, getArciumProgram, getArciumProgramId, getArciumProgramReadonly, getArxAccPDA, getArxNodeAccAddress, getClockAccAddress, getClusterAccAddress, getCompDefAccAddress, getCompDefAccOffset, getComputationAccAddress, getExecutingPoolAccAddress, getExecutingPoolAccData, getMXEAccAddress, getMXEPublicKey, getMempoolAccAddress, getMempoolAccData, getStakingPoolAccAddress, positiveModulo, randMatrix, serializeLE, sha256, toVec, uploadCircuit };
9065
+ export { ARCIUM_ADDR, arcium as ARCIUM_IDL, Aes128Cipher, Aes192Cipher, Aes256Cipher, CURVE25519_BASE_FIELD, CURVE25519_SCALAR_FIELD_MODULUS, Matrix, RescueCipher, RescueDesc, RescuePrimeHash, arcisEd25519, awaitComputationFinalization, buildFinalizeCompDefTx, compressUint128, decompressUint128, deserializeLE, generateRandomFieldElem, getArciumAccountBaseSeed, getArciumEnv, getArciumProgAddress, getArciumProgram, getArciumProgramId, getArciumProgramReadonly, getArxAccPDA, getArxNodeAccAddress, getClockAccAddress, getClusterAccAddress, getCompDefAccAddress, getCompDefAccOffset, getComputationAccAddress, getExecutingPoolAccAddress, getExecutingPoolAccData, getFeePoolAccAddress, getMXEAccAddress, getMXEArcisEd25519VerifyingKey, getMXEPublicKey, getMempoolAccAddress, getMempoolAccData, positiveModulo, randMatrix, serializeLE, sha256, toVec, uploadCircuit };
8333
9066
  export type { Arcium as ArciumIdlType, ArciumLocalEnv, ComputationErrorType, FpField };