From 31c7167c7556df4fa4846553ac642f0fb852d73a Mon Sep 17 00:00:00 2001 From: s2quake Date: Thu, 21 Nov 2024 10:57:24 +0900 Subject: [PATCH 1/2] Fix: Collection was modified issue when slash executes --- Lib9c/ValidatorDelegation/AbstainHistory.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib9c/ValidatorDelegation/AbstainHistory.cs b/Lib9c/ValidatorDelegation/AbstainHistory.cs index c90a987361..430d2c78cd 100644 --- a/Lib9c/ValidatorDelegation/AbstainHistory.cs +++ b/Lib9c/ValidatorDelegation/AbstainHistory.cs @@ -78,7 +78,7 @@ public List FindToSlashAndAdd(IEnumerable abstainList, lon } } - foreach (var history in History) + foreach (var history in History.ToArray()) { history.Value.RemoveAll(abstainHeight => abstainHeight < lowerBound); if (history.Value.Count == 0) From 8650fc71e1dc736b2d5ce45c8ad8dd391090cdc2 Mon Sep 17 00:00:00 2001 From: ilgyu Date: Tue, 26 Nov 2024 12:47:30 +0900 Subject: [PATCH 2/2] chore: Minor fixes and add docstrings for new actions --- Lib9c/Action/Guild/Migration/GuildMigrationFailedException.cs | 3 +++ Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuild.cs | 3 +++ .../Guild/Migration/LegacyModels/LegacyGuildParticipant.cs | 3 +++ Lib9c/Action/Guild/Migration/LegacyModels/MigrationModule.cs | 4 ++++ Lib9c/Action/Guild/Migration/MigrateDelegation.cs | 2 ++ Lib9c/Action/Guild/Migration/MigrateDelegationHeight.cs | 1 + Lib9c/Action/Guild/Migration/MigratePlanetariumGuild.cs | 1 + Lib9c/Action/Guild/Migration/MigratePlanetariumValidator.cs | 4 +++- 8 files changed, 20 insertions(+), 1 deletion(-) diff --git a/Lib9c/Action/Guild/Migration/GuildMigrationFailedException.cs b/Lib9c/Action/Guild/Migration/GuildMigrationFailedException.cs index 322ce9213c..118fd7e7f9 100644 --- a/Lib9c/Action/Guild/Migration/GuildMigrationFailedException.cs +++ b/Lib9c/Action/Guild/Migration/GuildMigrationFailedException.cs @@ -2,6 +2,9 @@ namespace Nekoyume.Action.Guild.Migration { + /// + /// An exception to be thrown when guild migration failed. + /// public class GuildMigrationFailedException : InvalidOperationException { public GuildMigrationFailedException(string message) : base(message) diff --git a/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuild.cs b/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuild.cs index b494b3d33e..da7e83b982 100644 --- a/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuild.cs +++ b/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuild.cs @@ -6,6 +6,9 @@ namespace Nekoyume.Action.Guild.Migration.LegacyModels { // TODO: [GuildMigration] Remove this class when the migration is done. + /// + /// The legacy model for Guild. + /// public class LegacyGuild : IEquatable, IBencodable { private const string StateTypeName = "guild"; diff --git a/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuildParticipant.cs b/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuildParticipant.cs index e69b6297aa..f3724c86a6 100644 --- a/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuildParticipant.cs +++ b/Lib9c/Action/Guild/Migration/LegacyModels/LegacyGuildParticipant.cs @@ -6,6 +6,9 @@ namespace Nekoyume.Action.Guild.Migration.LegacyModels { // TODO: [GuildMigration] Remove this class when the migration is done. + /// + /// The legacy model for GuildParticipant. + /// public class LegacyGuildParticipant : IBencodable, IEquatable { private const string StateTypeName = "guild_participant"; diff --git a/Lib9c/Action/Guild/Migration/LegacyModels/MigrationModule.cs b/Lib9c/Action/Guild/Migration/LegacyModels/MigrationModule.cs index 493282e363..ce4d807185 100644 --- a/Lib9c/Action/Guild/Migration/LegacyModels/MigrationModule.cs +++ b/Lib9c/Action/Guild/Migration/LegacyModels/MigrationModule.cs @@ -5,6 +5,10 @@ namespace Nekoyume.Action.Guild.Migration.LegacyModels { + // TODO: [GuildMigration] Remove this class when the migration is done. + /// + /// The module for delegation height for migration. + /// public static class MigrationModule { /// diff --git a/Lib9c/Action/Guild/Migration/MigrateDelegation.cs b/Lib9c/Action/Guild/Migration/MigrateDelegation.cs index 14e77621ac..1f383fd908 100644 --- a/Lib9c/Action/Guild/Migration/MigrateDelegation.cs +++ b/Lib9c/Action/Guild/Migration/MigrateDelegation.cs @@ -17,6 +17,8 @@ namespace Nekoyume.Action.Guild.Migration // TODO: [GuildMigration] Remove this class when the migration is done. /// /// An action to migrate guild delegation. + /// After migration is done, guild participant now have delegation with + /// validator. /// [ActionType(TypeIdentifier)] public class MigrateDelegation : ActionBase diff --git a/Lib9c/Action/Guild/Migration/MigrateDelegationHeight.cs b/Lib9c/Action/Guild/Migration/MigrateDelegationHeight.cs index dfd5aaa531..2574b9e2a4 100644 --- a/Lib9c/Action/Guild/Migration/MigrateDelegationHeight.cs +++ b/Lib9c/Action/Guild/Migration/MigrateDelegationHeight.cs @@ -10,6 +10,7 @@ namespace Nekoyume.Action.Guild.Migration // TODO: [GuildMigration] Remove this class when the migration is done. /// /// An action to migrate the delegation height. + /// This action triggers the migration of the delegation height. /// [ActionType(TypeIdentifier)] public class MigrateDelegationHeight : ActionBase diff --git a/Lib9c/Action/Guild/Migration/MigratePlanetariumGuild.cs b/Lib9c/Action/Guild/Migration/MigratePlanetariumGuild.cs index 216a39ded5..57e1b72de0 100644 --- a/Lib9c/Action/Guild/Migration/MigratePlanetariumGuild.cs +++ b/Lib9c/Action/Guild/Migration/MigratePlanetariumGuild.cs @@ -12,6 +12,7 @@ namespace Nekoyume.Action.Guild.Migration // TODO: [GuildMigration] Remove this class when the migration is done. /// /// An action to migrate the planetarium guild. + /// After migration, the planetarium guild now has a validator to delegate. /// [ActionType(TypeIdentifier)] public class MigratePlanetariumGuild : ActionBase diff --git a/Lib9c/Action/Guild/Migration/MigratePlanetariumValidator.cs b/Lib9c/Action/Guild/Migration/MigratePlanetariumValidator.cs index 0a91936bf2..98ef4ee0f4 100644 --- a/Lib9c/Action/Guild/Migration/MigratePlanetariumValidator.cs +++ b/Lib9c/Action/Guild/Migration/MigratePlanetariumValidator.cs @@ -10,7 +10,9 @@ namespace Nekoyume.Action.Guild.Migration { // TODO: [GuildMigration] Remove this class when the migration is done. /// - /// An action to migrate the planetarium guild. + /// An action to migrate the planetarium validator. + /// With this migration, planetarium validator is now active, + /// and bonded FAVs are moved to active address. /// [ActionType(TypeIdentifier)] public class MigratePlanetariumValidator : ActionBase