From 496015fdff2377a2e365ef1c4b46fe494cc32b50 Mon Sep 17 00:00:00 2001 From: bchamagne Date: Mon, 27 Nov 2023 16:33:22 +0100 Subject: [PATCH] v1.4.0 appup --- rel/appups/archethic/1.3.3_to_1.4.0.appup | 804 ++++++++++++++++++++++ 1 file changed, 804 insertions(+) create mode 100644 rel/appups/archethic/1.3.3_to_1.4.0.appup diff --git a/rel/appups/archethic/1.3.3_to_1.4.0.appup b/rel/appups/archethic/1.3.3_to_1.4.0.appup new file mode 100644 index 000000000..83066f52b --- /dev/null +++ b/rel/appups/archethic/1.3.3_to_1.4.0.appup @@ -0,0 +1,804 @@ +{"1.4.0", + [{"1.3.3", + [{add_module,'Elixir.Archethic.Account.MemTables.StateLedger'}, + {add_module,'Elixir.Archethic.Contracts.Contract.ActionWithTransaction'}, + {add_module,'Elixir.Archethic.Contracts.Contract.ActionWithoutTransaction'}, + {add_module,'Elixir.Archethic.Contracts.Contract.Failure'}, + {add_module,'Elixir.Archethic.Contracts.Contract.State'}, + {add_module,'Elixir.Archethic.Contracts.Interpreter.Library.Common.State'}, + {update,'Elixir.Archethic.Account.MemTables.TokenLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Account.MemTables.UCOLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Account.Supervisor',supervisor}, + {update,'Elixir.Archethic.BeaconChain.Subset.StatsCollector', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.SummaryTimer', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.Update', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Cldr.Currency',brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Cldr.Number.Transliterate',brutal_purge, + soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.ActionInterpreter', + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.ConditionInterpreter', + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.FunctionInterpreter', + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Contracts.TransactionLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.Origin.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.SharedSecretsKeystore.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.BootstrapInfo', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.InputsWriter', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.P2PView', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.StatsInfo', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Election.Constraints', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Election.HypergeometricDistribution', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Governance.Pools.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Metrics.ETSFlush', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Metrics.Poller', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.OracleChain.MemTable', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.OracleChain.Services.HydratingCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.BootstrappingSeeds', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.Client.Connection', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.GeoPatch.GeoIP.MaxMindDB', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.Listener', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.MemTable', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Replication.TransactionPool', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Reward.MemTables.RewardTokens', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.NetworkView', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.RepairWorker', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SharedSecrets.MemTables.NetworkLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SharedSecrets.MemTables.OriginKeyLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.TransactionChain.MemTables.KOLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.TransactionChain.MemTables.PendingLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput', + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.JobCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.JobConductor', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.PortHandler', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.Regression.Benchmark.SeedHolder', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.ExplorerLive.TopTransactionsCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.FaucetRateLimiter', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.TransactionCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.ArchethicWeb.ExplorerRouter',brutal_purge,soft_purge, + []}, + {update,'Elixir.ArchethicWeb.TransactionSubscriber', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.ArchethicWeb.WebUtils',brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.SlotTimer', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SummaryTimer']}, + {update,'Elixir.Archethic.BeaconChain.Subset.SummaryCache', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SummaryTimer']}, + {update,'Elixir.Archethic.Crypto.Ed25519.LibSodiumPort', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.PortHandler']}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.Origin.TPMImpl', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.PortHandler']}, + {load_module,'Elixir.Archethic.Mining.Fee',brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.OracleChain.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.OracleChain.MemTable']}, + {update,'Elixir.Archethic.P2P.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.P2P.MemTable']}, + {load_module,'Elixir.Archethic.P2P.Message.ReplicationError',brutal_purge, + soft_purge, + ['Elixir.Archethic.Mining']}, + {load_module,'Elixir.Archethic.P2P.Message.UnspentOutputList', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput']}, + {update,'Elixir.Archethic.Reward.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Reward.MemTables.RewardTokens']}, + {update,'Elixir.Archethic.Utils.DetectNodeResponsiveness', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining']}, + {update,'Elixir.Archethic.Reward.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {update,'Elixir.Archethic.SharedSecrets.NodeRenewalScheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {update,'Elixir.Archethic.SelfRepair.Notifier', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.Explorer.TransactionDetailsLive', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.Account.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Account.MemTables.TokenLedger', + 'Elixir.Archethic.Account.MemTables.UCOLedger']}, + {load_module,'Elixir.Archethic.Contracts.Contract',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Interpreter', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.Legacy',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter']}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.ChainIndex', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.DB.EmbeddedImpl.ChainWriter', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.DB.EmbeddedImpl.Encoding',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.ChainWriter', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.DB.EmbeddedImpl.ChainIndex', + 'Elixir.Archethic.DB.EmbeddedImpl.Encoding']}, + {update,'Elixir.Archethic.Networking.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.OracleChain.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.Account',brutal_purge,soft_purge, + ['Elixir.Archethic.Account.MemTables.TokenLedger', + 'Elixir.Archethic.Account.MemTables.UCOLedger', + 'Elixir.Archethic.Account.MemTablesLoader']}, + {load_module,'Elixir.Archethic.P2P.Message.GetUnspentOutputs', + brutal_purge,soft_purge, + ['Elixir.Archethic.Account', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput']}, + {update,'Elixir.Archethic.TransactionChain.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.MemTables.PendingLedger']}, + {load_module,'Elixir.ArchethicWeb.API.GraphQL.Schema.Resolver', + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.API.JsonRPC.Method.EstimateTransactionFee', + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation']}, + {update,'Elixir.Archethic.Mining.DistributedWorkflow', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.ValidationContext', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}, + {load_module,'Elixir.Archethic.P2P.Message.ReplicateTransaction', + brutal_purge,soft_purge, + ['Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {update,'Elixir.Archethic.SharedSecrets.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.SharedSecrets.MemTables.NetworkLookup', + 'Elixir.Archethic.SharedSecrets.MemTables.OriginKeyLookup', + 'Elixir.Archethic.SharedSecrets.NodeRenewalScheduler']}, + {load_module,'Elixir.Archethic.TransactionChain.TransactionSummary', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.Contracts',brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter', + 'Elixir.Archethic.Contracts.Loader', + 'Elixir.Archethic.Contracts.TransactionLookup']}, + {load_module,'Elixir.Archethic.Mining.SmartContractValidation', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.API.JsonRPC.Method.SimulateContractExecution', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {load_module,'Elixir.ArchethicWeb.Explorer.ExplorerView',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + 'Elixir.ArchethicWeb.Explorer.TransactionDetailsLive', + 'Elixir.ArchethicWeb.WebUtils']}, + {update,'Elixir.Archethic.Contracts.Worker', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.P2P.Message.ValidateSmartContractCall', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {load_module,'Elixir.ArchethicWeb.API.REST.TransactionController', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts','Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.ArchethicWeb.TransactionSubscriber']}, + {load_module,'Elixir.Archethic.Replication.TransactionValidator', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.Replication',brutal_purge,soft_purge, + ['Elixir.Archethic.Account','Elixir.Archethic.Contracts', + 'Elixir.Archethic.Replication.TransactionPool', + 'Elixir.Archethic.Replication.TransactionValidator', + 'Elixir.Archethic.SelfRepair.NetworkView', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Mining.ValidationContext',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation', + 'Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {update,'Elixir.Archethic.Mining.StandaloneWorkflow', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.ValidationContext', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}, + {load_module,'Elixir.Archethic.Mining',brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.DistributedWorkflow', + 'Elixir.Archethic.Mining.Fee', + 'Elixir.Archethic.Mining.StandaloneWorkflow']}, + {update,'Elixir.Archethic.BeaconChain.Subset', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SlotTimer', + 'Elixir.Archethic.BeaconChain.Subset.StatsCollector', + 'Elixir.Archethic.BeaconChain.Subset.SummaryCache', + 'Elixir.Archethic.BeaconChain.SummaryTimer']}, + {load_module,'Elixir.Archethic.Contracts.Interpreter',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter.ActionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.ConditionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.FunctionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.Legacy']}, + {update,'Elixir.Archethic.Contracts.Loader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.TransactionLookup', + 'Elixir.Archethic.Contracts.Worker', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Bootstrap.NetworkInit',brutal_purge, + soft_purge, + ['Elixir.Archethic.Mining','Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}, + {apply,{supervisor,terminate_child, + ['Elixir.Archethic.Telemetry',prometheus_metrics]}}, + {apply,{supervisor,restart_child, + ['Elixir.Archethic.Telemetry',prometheus_metrics]}}, + {apply,{supervisor,restart_child, + ['Elixir.Archethic.AccountSupervisor', 'Elixir.Archethic.Account.MemTables.StateLedger']}}, + {apply,{'Elixir.Mix.Tasks.Archethic.Migrate',run,["1.4.0",true]}}]}], + [{"1.3.3", + [{delete_module,'Elixir.Archethic.Account.MemTables.StateLedger'}, + {delete_module,'Elixir.Archethic.Contracts.Contract.ActionWithTransaction'}, + {delete_module,'Elixir.Archethic.Contracts.Contract.ActionWithoutTransaction'}, + {delete_module,'Elixir.Archethic.Contracts.Contract.Failure'}, + {delete_module,'Elixir.Archethic.Contracts.Contract.State'}, + {delete_module,'Elixir.Archethic.Contracts.Interpreter.Library.Common.State'}, + {update,'Elixir.Archethic.Account.MemTables.TokenLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Account.MemTables.UCOLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Account.Supervisor',supervisor}, + {update,'Elixir.Archethic.BeaconChain.Subset.StatsCollector', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.SummaryTimer', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.Update', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Cldr.Currency',brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Cldr.Number.Transliterate',brutal_purge, + soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.ActionInterpreter', + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.ConditionInterpreter', + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.FunctionInterpreter', + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Contracts.TransactionLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.Origin.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Crypto.SharedSecretsKeystore.SoftwareImpl', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.BootstrapInfo', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.InputsWriter', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.P2PView', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.StatsInfo', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Election.Constraints', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Election.HypergeometricDistribution', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Governance.Pools.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Metrics.ETSFlush', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Metrics.Poller', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.OracleChain.MemTable', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.OracleChain.Services.HydratingCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.BootstrappingSeeds', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.Client.Connection', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.GeoPatch.GeoIP.MaxMindDB', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.Listener', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.P2P.MemTable', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Replication.TransactionPool', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Reward.MemTables.RewardTokens', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.NetworkView', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.RepairWorker', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SelfRepair.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SharedSecrets.MemTables.NetworkLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.SharedSecrets.MemTables.OriginKeyLookup', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.TransactionChain.MemTables.KOLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.TransactionChain.MemTables.PendingLedger', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput', + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.JobCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.JobConductor', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.PortHandler', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.Utils.Regression.Benchmark.SeedHolder', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.ExplorerLive.TopTransactionsCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.FaucetRateLimiter', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {update,'Elixir.ArchethicWeb.Explorer.TransactionCache', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.ArchethicWeb.ExplorerRouter',brutal_purge,soft_purge, + []}, + {update,'Elixir.ArchethicWeb.TransactionSubscriber', + {advanced,[]}, + brutal_purge,soft_purge,[]}, + {load_module,'Elixir.ArchethicWeb.WebUtils',brutal_purge,soft_purge,[]}, + {update,'Elixir.Archethic.BeaconChain.SlotTimer', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SummaryTimer']}, + {update,'Elixir.Archethic.BeaconChain.Subset.SummaryCache', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SummaryTimer']}, + {update,'Elixir.Archethic.Crypto.Ed25519.LibSodiumPort', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.PortHandler']}, + {update,'Elixir.Archethic.Crypto.NodeKeystore.Origin.TPMImpl', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.PortHandler']}, + {load_module,'Elixir.Archethic.Mining.Fee',brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.OracleChain.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.OracleChain.MemTable']}, + {update,'Elixir.Archethic.P2P.MemTableLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.P2P.MemTable']}, + {load_module,'Elixir.Archethic.P2P.Message.ReplicationError',brutal_purge, + soft_purge, + ['Elixir.Archethic.Mining']}, + {load_module,'Elixir.Archethic.P2P.Message.UnspentOutputList', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput']}, + {update,'Elixir.Archethic.Reward.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Reward.MemTables.RewardTokens']}, + {update,'Elixir.Archethic.Utils.DetectNodeResponsiveness', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining']}, + {update,'Elixir.Archethic.Reward.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {update,'Elixir.Archethic.SharedSecrets.NodeRenewalScheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.TransactionChain.Transaction',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {update,'Elixir.Archethic.SelfRepair.Notifier', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.Explorer.TransactionDetailsLive', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.Account.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Account.MemTables.TokenLedger', + 'Elixir.Archethic.Account.MemTables.UCOLedger']}, + {load_module,'Elixir.Archethic.Contracts.Contract',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Interpreter', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Contracts.Interpreter.Legacy',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter']}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.ChainIndex', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.DB.EmbeddedImpl.ChainWriter', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.DB.EmbeddedImpl.Encoding',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.UnspentOutput']}, + {update,'Elixir.Archethic.DB.EmbeddedImpl.ChainWriter', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.DB.EmbeddedImpl.ChainIndex', + 'Elixir.Archethic.DB.EmbeddedImpl.Encoding']}, + {update,'Elixir.Archethic.Networking.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {update,'Elixir.Archethic.OracleChain.Scheduler', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.Account',brutal_purge,soft_purge, + ['Elixir.Archethic.Account.MemTables.TokenLedger', + 'Elixir.Archethic.Account.MemTables.UCOLedger', + 'Elixir.Archethic.Account.MemTablesLoader']}, + {load_module,'Elixir.Archethic.P2P.Message.GetUnspentOutputs', + brutal_purge,soft_purge, + ['Elixir.Archethic.Account', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations.VersionedUnspentOutput']}, + {update,'Elixir.Archethic.TransactionChain.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.MemTables.PendingLedger']}, + {load_module,'Elixir.ArchethicWeb.API.GraphQL.Schema.Resolver', + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.API.JsonRPC.Method.EstimateTransactionFee', + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation']}, + {update,'Elixir.Archethic.Mining.DistributedWorkflow', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.ValidationContext', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}, + {load_module,'Elixir.Archethic.P2P.Message.ReplicateTransaction', + brutal_purge,soft_purge, + ['Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {update,'Elixir.Archethic.SharedSecrets.MemTablesLoader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.SharedSecrets.MemTables.NetworkLookup', + 'Elixir.Archethic.SharedSecrets.MemTables.OriginKeyLookup', + 'Elixir.Archethic.SharedSecrets.NodeRenewalScheduler']}, + {load_module,'Elixir.Archethic.TransactionChain.TransactionSummary', + brutal_purge,soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.Contracts',brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter', + 'Elixir.Archethic.Contracts.Loader', + 'Elixir.Archethic.Contracts.TransactionLookup']}, + {load_module,'Elixir.Archethic.Mining.SmartContractValidation', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.ArchethicWeb.API.JsonRPC.Method.SimulateContractExecution', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {load_module,'Elixir.ArchethicWeb.Explorer.ExplorerView',brutal_purge, + soft_purge, + ['Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + 'Elixir.ArchethicWeb.Explorer.TransactionDetailsLive', + 'Elixir.ArchethicWeb.WebUtils']}, + {update,'Elixir.Archethic.Contracts.Worker', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.Utils.DetectNodeResponsiveness']}, + {load_module,'Elixir.Archethic.P2P.Message.ValidateSmartContractCall', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp']}, + {load_module,'Elixir.ArchethicWeb.API.REST.TransactionController', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts','Elixir.Archethic.Mining', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.ArchethicWeb.TransactionSubscriber']}, + {load_module,'Elixir.Archethic.Replication.TransactionValidator', + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {load_module,'Elixir.Archethic.Replication',brutal_purge,soft_purge, + ['Elixir.Archethic.Account','Elixir.Archethic.Contracts', + 'Elixir.Archethic.Replication.TransactionPool', + 'Elixir.Archethic.Replication.TransactionValidator', + 'Elixir.Archethic.SelfRepair.NetworkView', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Mining.ValidationContext',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Mining', + 'Elixir.Archethic.Mining.SmartContractValidation', + 'Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations']}, + {update,'Elixir.Archethic.Mining.StandaloneWorkflow', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.ValidationContext', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}, + {load_module,'Elixir.Archethic.Mining',brutal_purge,soft_purge, + ['Elixir.Archethic.Mining.DistributedWorkflow', + 'Elixir.Archethic.Mining.Fee', + 'Elixir.Archethic.Mining.StandaloneWorkflow']}, + {update,'Elixir.Archethic.BeaconChain.Subset', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.BeaconChain.SlotTimer', + 'Elixir.Archethic.BeaconChain.Subset.StatsCollector', + 'Elixir.Archethic.BeaconChain.Subset.SummaryCache', + 'Elixir.Archethic.BeaconChain.SummaryTimer']}, + {load_module,'Elixir.Archethic.Contracts.Interpreter',brutal_purge, + soft_purge, + ['Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.Interpreter.ActionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.ConditionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.FunctionInterpreter', + 'Elixir.Archethic.Contracts.Interpreter.Legacy']}, + {update,'Elixir.Archethic.Contracts.Loader', + {advanced,[]}, + brutal_purge,soft_purge, + ['Elixir.Archethic.Contracts', + 'Elixir.Archethic.Contracts.Contract', + 'Elixir.Archethic.Contracts.TransactionLookup', + 'Elixir.Archethic.Contracts.Worker', + 'Elixir.Archethic.TransactionChain.Transaction']}, + {load_module,'Elixir.Archethic.Bootstrap.NetworkInit',brutal_purge, + soft_purge, + ['Elixir.Archethic.Mining','Elixir.Archethic.Replication', + 'Elixir.Archethic.TransactionChain.Transaction', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp', + 'Elixir.Archethic.TransactionChain.Transaction.ValidationStamp.LedgerOperations', + 'Elixir.Archethic.TransactionChain.TransactionSummary']}]}]}.