Due to the nature of the blockchain, if there is a panic, the chain will stop. As such, panic should only be for non-recoverable errors, and if it is reversible like msg_server level or can fall into an exceptional case due to other module dependencies, I think it is better to process and errors with revert rather than panic.
It was also mentioned in the Cosmos-cash team's review, and all panic and error handling needs to be reconsidered.
Summary
Due to the nature of the blockchain, if there is a panic, the chain will stop. As such, panic should only be for non-recoverable errors, and if it is reversible like msg_server level or can fall into an exceptional case due to other module dependencies, I think it is better to process and errors with revert rather than panic.
It was also mentioned in the Cosmos-cash team's review, and all panic and error handling needs to be reconsidered.
Tasks
References
-
For Admin Use