milestones::set_treasury has no test proving it requires the admin's authorization
メンテナーはふだん 1 日以内に返信
@sladeoj がすでに取り組んでいます。
2026年10月21日 から。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 停滞
- 技術スタック
- rust
- 領域
- blockchain, testing
調査の方向性
Read contracts/milestones/src/test.rs and inspect the existing set_treasury tests and authorization mocks. Add a positive test mocking only the admin and a negative test using another address, then run the milestones contract tests and verify the unauthorized call fails with the host auth error. A linked open pull request (#582) indicates this work may already be underway.
索引モデルが issue の本文から書いたものです。
説明
Problem
Every milestones test that calls set_treasury runs under env.mock_all_auths(), which authorises every address. No test uses targeted env.mock_auths(&[MockAuth { address: <admin>, invoke: … fn_name: "set_treasury" … }]) or checks that a call signed by a different address fails. (In contracts/milestones/src/test.rs, targeted mocks exist only for no function at all.) If the require_auth() call were deleted or pointed at the wrong address, the suite would still pass. Escrow's equivalent test exists (though it currently fails, see the separate issue).
Suggested fix
Add a positive test that mocks only the admin's auth for set_treasury, and a negative test that mocks another address's auth and asserts the host auth error.
Related: #50
- 主要言語
- Rust
- スター
- 1
- フォーク
- 102
- 平均マージ
- 4時間 12分
- マージ済み PR(30日)
- 30
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
MergeFi/contracts のほかの issue
-
allocations map retains released issues — phantom ledger drift再び着手できるかも @PINYOPATTANAWASANPORN が 12 日前に担当しましたが、オープン中のプルリクエストはありません。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 25/100
MergeFi/contracts#608 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
escrow::contribute and milestones::contribute accept new funds after deadline + GRACE_PERIOD, when anyone can already refund or cancel対応中かも @urielit1313-creator が 29 日前に担当しました。 オープンbug
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
MergeFi/contracts#568 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
Makefile deploy targets deploy the unoptimised .wasm — `stellar contract optimize` writes *.optimized.wasm対応中かも @urielit1313-creator が 29 日前に担当しました。 オープンbug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 25/100
MergeFi/contracts#567 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
keep_alive never refreshes instance storage, so a contract kept alive only via keep_alive can still archive Admin/Oracle/Treasury対応中かも @urielit1313-creator が 29 日前に担当しました。 オープンbug
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
MergeFi/contracts#566 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
[Regression on closed #254] milestones::deallocate still has no test asserting admin authorization対応中かも @urielit1313-creator が 29 日前に担当しました。 オープンsecurity testing
難易度 2/5 1〜3時間 初心者へのやさしさ 25/100
MergeFi/contracts#565 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
MergeFi/contracts の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
aws/aws-emulator#30 · コメント 1 件 ·
-
tormach-plasma refusal text with no machine reads "no machine is not declared a plasma machine"オープンarea:post bug effort:low P2 source:agent
難易度 1/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
Chat images never show without ImageMagick: ffprobe fallback uses an option string ffprobe 9 rejectsオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 79/100
eliasstravik/herdr-projects#1011 ·
-
design-data-spec
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
adobe/spectrum-design-data#1744 ·
メンテナーはふだん 1 日以内に返信