Validate release metadata object and field types before reading identity fields
メンテナーはふだん 1 日以内に返信
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 82/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- json, python
調査の方向性
tools/ci/release.py:47 の verify_metadata() から始めます。この関数ではメタデータが検証され、ID フィールドが読み取られます。.get() の呼び出しや ID 相关的処理の前に、ルートとフィールドの型チェックを追加し、既存の source、version、digest、target、revision のチェックは維持してください。有効なメタデータ、不正なルート型、不正なフィールド型で verify_metadata() fixture を実行します。無効な入力がBMSInsightFilenameやフィールドに関する明確なエラーを生成し、公開処理を進められなくなることを確認asth完了とします。
索引モデルが issue の本文から書いたものです。
説明
Problem
With all expected archive/checksum filenames present, a metadata JSON value of [] raises AttributeError: list object has no attribute get instead of a package validation error. Other malformed field types need equally direct diagnostics.
Starting point: tools/ci/release.py:47.
Validation
Audited canonical Wave 540728c2eb6cc12f5c69c3fb3fdb96e07ba059a4 (0.0.1-alpha-dev), whose tree matches the local checkout. Validation: Executed verify_metadata() fixture with all nine archive/checksum identities and non-object metadata. Executed compiler probes use the matching checkout-built compiler and std on Linux amd64 (Rust 1.89.0 / LLVM 21.1.8). Source/header or mocked checks are not native execution on another OS.
Scope
Validate the metadata object and field types before identity operations. Keep exact source/version/digest/target/revision requirements intact.
Related: #828. These links do not claim those broader or completed scopes are unfinished.
Completion criteria
- Reject array/null/scalar roots and wrongly typed identity fields with an actionable filename/field error.
- Valid metadata still satisfies every existing publication identity check.
- No malformed input can advance publication or weaken the gate.
This is a bounded, unassigned task with the starting point and focused checks above. Keep unrelated refactoring out of the change.
- 主要言語
- Rust
- スター
- 56
- フォーク
- 21
- 平均マージ
- 7時間 19分
- マージ済み PR(30日)
- 61
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
wavefnd/Wave のほかの issue
-
Validate CI command vectors before indexing Cargo subcommands対応中かも @amandeavor が今日担当しました。 オープンbug ci good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信
-
bug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
bug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
メンテナーはふだん 1 日以内に返信
-
bug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
build good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
Small glitchオープンpriority: medium
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
storytold/photocraft#9538 ·
メンテナーはふだん 1 日以内に返信
-
bug P2 rust
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
jscott3201/rusty-bacnet#2085 ·
メンテナーはふだん 1 日以内に返信
-
area:tag area:tag---json---markdown--n bug factory:dogfood factory:triaged persona:scripter platform:linux-cloud priority:p3 type:bug
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
gitbutlerapp/grit#1940 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Inconsistent case in names for Windows installation packages compared to all other assets対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンarea:ui bug in progress needs-triage
難易度 1/5 1時間未満 初心者へのやさしさ 65/100
bherbruck/solvecraft#6769 · コメント 2 件 ·