According to multiple sources in the Cosmos SDK ecosystem, the ABCI function BeginBlock and EndBlock should not be allowed to panic, to prevent chain halting (there is no recover in these functions). See for example here and here.
Question
The cosmos-sdk fork that Osmosis uses contains the function BeginBlock and EndBlock that explicitly panic. Additionally, the osmosis chain panics over 60 times in these functions. Can anyone explain why it is acceptable in Osmosis; why it is not a vulnerability (or why it indeed is not safe to do so)?
Background
According to multiple sources in the Cosmos SDK ecosystem, the ABCI function
BeginBlock
andEndBlock
should not be allowed to panic, to prevent chain halting (there is no recover in these functions). See for example here and here.Question
The cosmos-sdk fork that Osmosis uses contains the function
BeginBlock
andEndBlock
that explicitly panic. Additionally, the osmosis chain panics over 60 times in these functions. Can anyone explain why it is acceptable in Osmosis; why it is not a vulnerability (or why it indeed is not safe to do so)?Thanks!