You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ByzantineAuthoritySuspicion error, for now, does not embed enough data to log or carry proof of misbehavior at the point it's raised. As such, its utility is limited. This issue aims to refactor this error variant to embed a large range of possible errors. Some hints in discussion:
#[derive(Debug, thiserror::Error)]pubenumFastPayError{
....#[error("A terrible error showed byzantine behavior {0}")]ByzantineError(#[from]EmbeddedError),}implFrom<FooError>forFastPayError{fnfrom(error:FooError) -> Self{Self::ByzantineError(EmbeddedError(error.into()))}}implFrom<BarError>forFastPayError{fnfrom(error:BarError) -> Self{Self::ByzantineError(EmbeddedError(error.into()))}}
.../// An error that occured when checking for correct behavior#[derive(Debug, thiserror::Error)]#[error(transparent)]pubstructEmbeddedError(Box<dyn std::error::Error + Send + Sync>,);
This should cover it for a start, then there's Hash + Eq + Serialize + Deserialize
The
ByzantineAuthoritySuspicion
error, for now, does not embed enough data to log or carry proof of misbehavior at the point it's raised. As such, its utility is limited. This issue aims to refactor this error variant to embed a large range of possible errors. Some hints in discussion:This should cover it for a start, then there's
Hash
+Eq
+Serialize
+Deserialize
Originally posted by @huitseeker in #285 (comment)
The text was updated successfully, but these errors were encountered: