Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Implement an order watcher deamon

オープン
#13 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
typescript
領域
backend

調査の方向性

まず、issue の OrderWatcher API とリンクされている 0x OrderWatcher のリファレンスを読んでください。invalidWatcher、expirationWatcher、注文の削除、状態変更イベント、リスト管理、expiration min-heap がどのように動作すべきかを定義してください。完了の条件は、注文の fillability が変化したときに注文が一度だけイベントを発行し、その後 order book から削除されることです。

索引モデルが issue の本文から書いたものです。

説明

Matcher :m: orderwatcher :eyes:

CODEX order watcher is similar to 0x order watcher

  • The OrderWatcher is a daemon. You can start and stop it from subscribing to order state changes, add orders you would like to track and remove orders that are no longer relevant. Just can add order and get an event if the status of the order is changed.
  • Once the OrderWatcher is started and an order has been added to it, it will emit events once, if there is a change in the state backing an order's fillability. If orderWatcher gets an event than it removes an order from the order book.
  • There are two kinds of watchers in the order watcher. One is invalidWatcher which check the validity of orders except for expiration time. Another one is expirationWatcher which check an expiration time of order. The difference between them is the length of the checking time interval. The expirationWatcher's time interval will be much shorter than the orderWatcher.
  • The orderWatcher will be managed by just list and the expirationWatcher will be managed by a min-heap. Therefore the expirationWatcher only need to monitor one order, which has a minimum expiration time.

API

// orderWatcher
addOrder(order):  void
// expirationWatcher
addOrder(order, expiration): void
主要言語
TypeScript
スター
17
フォーク
4
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

CodeChain-io/codechain-exchange のほかの issue

CodeChain-io/codechain-exchange の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。