HermitCrab conformance: verify blocked_by labels against the trace in the dead-rule gate
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Start with CoverageReport.cs:113-114 to see how blocked_by labels enter the exercised-rule set, then read FailureRuleAttributor.cs:66 and its trace attribution behavior. Add a reviewed exemption for failures the trace cannot attribute, including zimed, and make a mutated label fail the gate. The issue points to code at #480 commit b49433d7.
索引モデルが issue の本文から書いたものです。
説明
Summary
The conformance suite's dead-rule gate credits a rule as exercised whenever an expected-failure word names it in blocked_by. It never checks that the rule actually blocked the word. A wrong or stale label therefore counts as coverage.
FailureRuleAttributor.WordLevelFailureRuleIds is documented as upgrading those labels to verified, but it has no callers.
This is a proposal. #480 is adding two weaker steps:
- the gate fails when a label is not a rule id in the fixture's grammar;
- the docs say that
blocked_byis asserted, not verified.
This issue tracks the stronger step: verify each label against the parse trace.
Who is affected: maintainers of the HermitCrab conformance suite (#480) and its PanGloss port.
Done when:
- the gate requires the trace to attribute each word's failure to the rule named in
blocked_by; - the gate keeps an explicit, reviewed exemption list for words whose failure cannot be attributed from the trace (the attributor's doc names
zimed); - a mutated label fails the gate.
Code, on #480 at b49433d7
CoverageReport.cs:113-114adds everyword.BlockedByid to the exercised set, with no check.FailureRuleAttributor.cs:66definesWordLevelFailureRuleIds. The only reference outside its own file is a string inOwnedSymbolKeyTests.cs:132.- At that head, all 108
blocked_bylabels name real rule ids in their fixture grammars, so no label is wrong today.
- 主要言語
- C#
- スター
- 29
- フォーク
- 16
- 平均マージ
- 6日 13時間
- マージ済み PR(30日)
- 12
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
sillsdev/machine のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
enhancement Hermit Crab
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
メンテナーはふだん 1 日以内に返信
-
HermitCrab analysis: ordered and anchored required-slot look-ahead (v2)対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンenhancement Hermit Crab
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
メンテナーはふだん 1 日以内に返信
-
HermitCrab analysis: measure required-slot look-ahead on the #546 shared walk対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンenhancement Hermit Crab
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
メンテナーはふだん 1 日以内に返信
-
enhancement Hermit Crab
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
sillsdev/machine#565 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
sillsdev/machine の issue をすべて見る
似ている issue
-
bug 優先: 低
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
-
area-ai bug untriaged
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
dotnet/extensions#7893 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
-
documentation good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100