fix(koshien): プロジェクトロード時の Ruby バージョン強制切替(v1)と警告を廃止する (#1037)#1039
Conversation
koshien プロジェクトのロード時に rubyVersion=2 だと alert を出して v1 に強制切替して いたが、v1/v2 とも動作し v2 が正しいため不要になった。loadProjectWithChecks の koshien 分岐を削除し、未使用になった currentRubyVersion/onSetRubyVersion 引数と、 各呼び出し元 (url-loader / sb-file-uploader / google-drive / use-student-assignment) の配線、未使用 locale メッセージ changedRubyVersionByKoshien を除去した。 Mesh V1 自動移行と失敗時復元 (#972) は維持している。 Closes #1037 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
🤖 autopilot status
Linked issue #1037. Maintained by autopilot (single writer); do not edit. |
|
🚀 Preview deployed: https://smalruby.jp/smalruby3-editor/topic/autopilot-1037/ |
|
[FYI] koshien の強制切替削除により、VM 側の 本 issue #1037 の指示どおり「他用途があれば残す/無理に消さない」に沿って据え置きが正解です。将来 cross-package の整理を行う際の候補として記録するのみで、本 PR での対応は不要(コードは変更しません)。 |
|
🤖 敵対的レビュー完了。指摘 1 件(Must 0 / Question 0 / FYI 1)。Must なし。実装は issue #1037 の要求(全ロード経路での koshien 強制切替・alert 廃止、未使用引数/props/import/locale の整理、ja/ja-Hira 対削除、Mesh V1 自動移行と #972 復元の維持)を過不足なく満たし、lint(--max-warnings 0 + prettier)と関連 unit test(project-loader-utils / url-loader-hoc / google-drive-state-management 計 14 件)が pass。全 4 呼び出し元(url-loader-hoc / sb-file-uploader-hoc / google-drive-loader-hoc / use-student-assignment)が更新済み、project-state.js はコメント参照のみで変更不要も正しく判断されています。人間レビューへ。 |
|
🤖 差し戻し(🙋 解除)を受けてレビューを再確認しました。 指摘 1 件(対応 0 / 返信 0 / 対応不要 1):
人間からの変更要求・質問コメントは無く、未対応の Must / Question もありません。コードに変更はありません。人間のマージ判断待ちです。 |
Summary
甲子園(koshien)拡張を含むプロジェクトをロードすると、Ruby バージョンが 2 のとき alert が表示され強制的に v1 に切り替わっていた。v1/v2 とも動作し v2 が正しいため、この警告と強制切り替えは不要。これを削除する。
Changes Made
src/lib/project-loader-utils.js:loadProjectWithChecksの koshien 検出分岐(vm.hasKoshienProject→ alert +onSetRubyVersion('1'))を削除。未使用になったcurrentRubyVersion/onSetRubyVersion引数をシグネチャ・JSDoc から除去。Mesh V1 自動移行と失敗時復元(fix(url-loader): 特定 Scratch プロジェクト URL が読み込めず初期画面に戻る #972)はそのまま維持。rubyVersion/onSetRubyVersionの props / mapStateToProps / mapDispatchToProps / propTypes / 未使用 import を除去):src/lib/url-loader-hoc.jsxsrc/lib/sb-file-uploader-hoc.jsxsrc/containers/google-drive-loader-hoc.jsxsrc/containers/use-student-assignment.js(+ 呼び出し側src/containers/classroom-modal.jsxのdispatch受け渡し)src/lib/shared-messages.tsのchangedRubyVersionByKoshienとsrc/locales/{ja,ja-Hira,en}.jsの該当エントリ(ja / ja-Hira は対で削除)。vm.hasKoshienProject/serialization/smalruby-migration.jsのdetectKoshienは他用途があるため据え置き(本 issue は GUI 側の強制切替・警告の除去が目的)。Test Coverage
test/unit/lib/project-loader-utils.test.js: 「koshien プロジェクト + rubyVersion=2 で alert せず・バージョンを変えない(hasKoshienProjectを呼ばない)」を pin。旧「forces ruby version 1」テストを置換。cd packages/scratch-gui && npm run lint(--max-warnings 0+ prettier)通過。Related Issues
Closes #1037