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

[enhancement]: `proveAncestor` in the WebAssembly package

クローズ
#26 コメント 2 件 リアクション 0 件 担当者 1 名 GitHub で見る

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

@khoap1220-hue がすでに取り組んでいます。

2026年10月29日 から。

  • #30 @khoap1220-hue による — マージされずにクローズ

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
機能追加
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
rust, wasm

調査の方向性

Start with crates/externalize-wasm and read verify to follow its never-throws contract; check tests/node.cjs and the fixture bundle and header files named by the issue. Read CONTRIBUTING.md for the repository checks, then verify the wasm remains under the 1 MB CI limit. Done when Node proves ledger 64791250 with both header files, rejects with only the newer file, and the .d.ts declares the typed result.

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

説明

area/wasm complexity:medium enhancement Stellar Wave
Context

prove_ancestor (behind externalize ancestry) proves an older ledger from a certified one and archived headers. Browsers and Node can't do this yet, so a wallet holding one fresh proof can't check a ledger from last week.

Scope
  • Export proveAncestor(bundleJson, headerFiles, ledger) from crates/externalize-wasm. headerFiles is an array of Uint8Arrays, the gzipped ledger-*.xdr.gz contents.
  • Return report::ancestry ({ verified: true, ledger, via, links }) or { verified: false, error }, the same never-throws contract as verify, and add its TypeScript type next to VerifyReport.
  • Decode with archive::read_gz_frames. Check that the wasm stays under CI's 1 MB size limit.
Done when
  • tests/node.cjs proves 64791250 from the fixture bundle and both fixture header files, and rejects with only the newer file.
  • The .d.ts declares the function with its typed result.

Comment to be assigned before starting. Read CONTRIBUTING.md for the checks this repository runs.

主要言語
Rust
スター
1
フォーク
1
平均マージ
1日 14時間
マージ済み PR(30日)
11

環境構築

はじめの一歩

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

Externalize-Labs/externalize のほかの issue

Externalize-Labs/externalize の issue をすべて見る

似ている issue

Rust の issue をもっと見る

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

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