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

P3 dispute: decentralize adjudication — owner-adjudicator trust assumption must be removed before mainnet

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

メンテナーはふだん 1 日以内に返信

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

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
solidity

調査の方向性

Read the S4 slashing taxonomy and adversarial threat model referenced in the issue, then inspect DINTaskCoordinator.resolveDispute and settleRecomputation. Compare the candidate adjudication paths and their dependencies, including #23 for the DAO option. Done means a dispute can be decided without relying solely on the model owner; the issue does not select a design.

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

説明

Approved enhancement

Summary

resolveDispute and settleRecomputation in DINTaskCoordinator are onlyOwner. The model owner is therefore both the party who can benefit from suppressing a valid dispute and the sole adjudicator who decides whether to uphold it.

This is called out explicitly in the slashing taxonomy (S4 section) and in the adversarial threat model as a KNOWN GAP: a challenger who opens a valid dispute and posts a bond has no recourse if the owner simply calls settleRecomputation(confirmed=false) — the bond is forfeited and no aggregators are slashed.

Impact

An owner-colluding-aggregator attack is undetectable and uncostly for the owner. Any honest challenger loses their bond. The S4 dispute mechanism provides no protection against a colluding owner.

Candidate paths

  • On-chain fraud-proof with model-output verification (not feasible for large tensor models)
  • Multi-sig or timelock on settleRecomputation
  • DAO committee vote on dispute outcomes (requires #23 DIN-DAO)
  • Optimistic challenge-response with a neutral arbitrator contract

Tracking

Surfaced in the adversarial threat-model doc (task_240926_17, PR 1). Blocks full DEFENDED rating for S4.

主要言語
Python
スター
4
フォーク
7
平均マージ
3日 58分
マージ済み PR(30日)
39

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

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

InfiniteZeroFoundation/DevNet のほかの issue

InfiniteZeroFoundation/DevNet の issue をすべて見る

似ている issue

Python の issue をもっと見る

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

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