CodeChain-io / CodeChain-io/remote-trait-object
Make errors handleable
- 主要言語
- Rust
- スター
- 13
- フォーク
- 5
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Most of errors that caused by unexpected behavior of the other side's RTO port will just lead to panic.
However, especially in Foundry context, the other port might have been implemented by 3rd party and could be unreliable.
In this kind of cases, user will just want to handle the error, not panic.
One trivial solution is adding a `Failed` state for the RTO context. The context will be on `Failed` state when it encounters unexpected protocol error, and will be stopped. Users can notice this, and can handle with theirs means.
One drawback of supporting such error handling is the interface of service object; it might be mandatory to all methods to have `Result<>` as return types.
Depends on #76
Depends on #83
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
まず依存する issue #76 と #83 を確認し、次にこの issue で説明されている service object interface と RTO context lifecycle を調査します。予期しないプロトコルエラーによって context がどのように遷移するか、またユーザーがその失敗をどのように観測して処理するかを決定します。interface と失敗時の動作が定義され、panics なしで実装された時点で作業は完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- rust
- 領域
- api, distributed-systems
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100