Conversation
Co-authored-by: ujiro99 <677231+ujiro99@users.noreply.github.com>
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #327 +/- ##
==========================================
+ Coverage 23.25% 25.17% +1.91%
==========================================
Files 322 323 +1
Lines 31366 31727 +361
Branches 1557 1535 -22
==========================================
+ Hits 7295 7986 +691
+ Misses 24071 23741 -330 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
PRレビュー: デフォルトコマンドへのAIプロンプトコマンド追加全体的に機能の実装は適切で、全13ロケールへの対応・リファクタリング・テスト追加も良い方針です。ただし、いくつか確認・修正が必要な点があります。 重大な問題1. vite-node が devDependencies に未追加package.json のスクリプトで vite-node を使用していますが、devDependencies に宣言されていません。 ファイル: packages/extension/package.json (L11, L19) vite のサブパッケージとして自動インストールされる場合もありますが、明示的に devDependencies へ追加してください。未宣言のままだと CI 環境や別マシンでのビルド失敗リスクがあります。 中程度の問題2. type: module 追加による破壊的変更の懸念packages/extension/package.json (L7) への type: module 追加は大きな変更です。postcss.config.js から postcss.config.cjs へのリネームは対応済みですが、eslint.config.js など他の .js 設定ファイルも同様の影響を受ける可能性があります。全ビルド・テストが正常に通ることを確認してください。 3. DefaultCommands 新規エントリでハードコード UUID を使用ロケール固有コマンドでは FOLDER_ACTION 定数を使っているのに、DefaultCommands の新規エントリでは UUID 文字列を直接記述しています。 ファイル: packages/extension/src/services/option/defaultSettings.ts (L361~411 付近) parentFolderId: FOLDER_ACTION を使用してください。値は同じですが(FOLDER_ACTION = 0f2167ab-2e1b-4972-954c-71eec058ab14)、定数を使う方がメンテナビリティが向上します。 4. check-command-ids.ts が DefaultCommands の ID を検証しないpackages/extension/scripts/check-command-ids.ts (L18-L29) は LOCALE_COMMANDS のみをイテレートしており、DefaultCommands に追加された4つの AI プロンプトコマンドの ID が検証されません。DefaultCommands のコマンドも検証対象に含めることを検討してください。 軽微な問題・改善提案5. テストでの as any キャストと魔法文字列packages/extension/src/services/option/defaultSettings.test.ts (DS-21: L268, DS-22: L313) で型安全性を損なう as any と文字列リテラル aiPrompt が使われています。OPEN_MODE.AI_PROMPT 定数を使うことを推奨します。 6. ロケールリストの重複定義DS-21 (L238-L254) と DS-22 (L293-L309) で同一のロケールリストが重複定義されています。定数として抽出することでメンテナンス性が向上します。 7. インドネシア語(id)とマレー語(ms)でコマンドタイトルが重複以下のタイトルが重複しています(機能的な問題ではありませんが、将来的に両言語が混在表示されると区別できません):
意図的であれば問題ありませんが、確認をお願いします。 良い点
|
PR レビューフィードバック概要全13ロケールへの AIプロンプトコマンド追加と、スクリプトの 🔴 重要な問題1. 既存コマンドIDの変更(破壊的変更)
- id: "723ee9f1-150b-54ad-aeac-5fbfd0ae3650",
+ id: "0cb9dbbc-c0cf-53c6-93e5-016363705216",これらのIDはユーザーのChrome拡張機能設定に保存されている可能性があります。IDが変更されると、既存ユーザーの設定が壊れたり、コマンドが重複インストールされる恐れがあります。 確認事項: これらのID変更は意図的なものですか? 🟡 中程度の問題2.
|
コードレビューPR #327「デフォルトコマンドにAIプロンプトコマンドを追加」のレビューです。 ✅ 良い点1. リファクタリングの質が高い
2. スクリプトのTypeScript化
3. テストの追加(DS-21, DS-22)
|
各ロケールのデフォルトコマンドに AI プロンプトコマンドが1つ(解説)しか含まれていなかった。ページ概要・YouTube概要・相互翻訳の3コマンドを全ロケールに追加する。
変更内容
新規 AI プロンプトコマンド(全13ロケール対応)
{{Url}}を使用してページ内容を要約{{Url}}を使用してYouTube動画を要約{{SelectedText}}を使用して母国語↔英語翻訳英語デフォルト(
DefaultCommands)Page Summary/YouTube Summary/Translation/Gemini(AI_PROMPT)を追加テスト追加
{{Url}}のみ使用し{{SelectedText}}を含まないことを検証Original prompt
💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.