Extension resolution assumes JS/TS candidates; a .vue/.svelte sibling can still diverge from the bundler
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 52/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 静か
- 技術スタック
- typescript, vite
- 領域
- testing-qa, tooling
調査の方向性
Start by locating resolveFileAtPath and the code that reads project configuration; the issue does not name file paths or tests. Check how resolve.extensions is parsed and how candidate paths are selected, then run the relevant resolver tests. Done means a base with a matching non-JS extension such as .vue or .svelte is treated as ambiguous and disclosed rather than attributed to a JS/TS candidate.
索引モデルが issue の本文から書いたものです。
説明
Follow-up to #226.
What is wrong
resolveFileAtPath discloses when more than one JS/TS candidate file exists, which closes the common false-coverage case. But it only probes JS/TS suffixes (.mjs .js .mts .ts .jsx .tsx and index variants). If a project's resolve.extensions includes a non-JS framework extension (for example .vue or .svelte) and both Widget.vue and Widget.tsx exist, Vite may load Widget.vue while usabl sees a single JS candidate (Widget.tsx) and attributes it.
Why it matters
Low in practice for usabl's current React/PatternFly domain: the mis-picked .tsx would be a file the bundler does not render, so no real barrier is missed, and usabl scans .tsx/.jsx UI files anyway. Tracked so it is not forgotten if usabl targets multi-framework apps.
Fix
Parse the project's resolve.extensions and treat a base with any extra candidate (including non-JS) as ambiguous, disclosing rather than picking a JS/TS file.
- 主要言語
- TypeScript
- スター
- 0
- フォーク
- 0
- 平均マージ
- 2時間 48分
- マージ済み PR(30日)
- 8
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
usabl-dev/usabl のほかの issue
-
area: engine bug
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
-
Stop hook allows a stop on an unknown verdict, and the self-check prints IDLE for a null verdictオープンarea: assistants bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
area: engine bug security
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
Overlay: browser context failures are counted per plugin, not per browser, and close is not sharedオープンarea: overlay bug
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
-
area: engine enhancement performance
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
usabl-dev/usabl の issue をすべて見る
似ている issue
-
bug hacktoberfest help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
libredb/libredb-studio#1941 ·
メンテナーはふだん 1 日以内に返信
-
chore other
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
alastair-smith/card-games#308 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 86/100
paperclipai/paperclip#17379 ·
メンテナーはふだん 1 日以内に返信
-
[good first issue, hacktoberfest] 🏯 Hacktoberfest Task - Add new Anime Quote 626 (good-first-issue)オープンcommunity first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 1/5 1時間未満 初心者へのやさしさ 76/100
lingdojo/kana-dojo#33040 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信
-
bug mobile ui
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信