feat: スモークテストv2実装&Phase 15.5後のプラグイン対応
Phase 15.5 Core Box削除後の新テストシステム構築: ## 実装内容 - スモークテストv2システム完全実装(3段階プロファイル) - 共通ライブラリ(test_runner/plugin_manager/result_checker/preflight) - インタープリター層完全削除(約350行) - PyVM重要インフラ特化保持戦略(JSON v0ブリッジ専用) - nyash.tomlパス修正(13箇所、プラグイン正常ロード確認) ## 動作確認済み - 基本算術演算(+, -, *, /) - 制御構文(if, loop, break, continue) - 変数代入とスコープ - プラグインロード(20個の.soファイル) ## 既知の問題 - StringBox/IntegerBoxメソッドが動作しない - オブジェクト生成は成功するがメソッド呼び出しでエラー - Phase 15.5影響でプラグイン実装が不完全な可能性 ## ドキュメント - docs/development/testing/smoke-tests-v2.md 作成 - docs/reference/pyvm-usage-guidelines.md 作成 - CODEX_QUESTION.md(Codex相談用)作成 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -403,25 +403,10 @@ impl MirBuilder {
|
||||
box_type: class.clone(),
|
||||
args: arg_values.clone(),
|
||||
})?;
|
||||
// Annotate primitive boxes
|
||||
match class.as_str() {
|
||||
"IntegerBox" => {
|
||||
self.value_types.insert(dst, super::MirType::Integer);
|
||||
}
|
||||
"FloatBox" => {
|
||||
self.value_types.insert(dst, super::MirType::Float);
|
||||
}
|
||||
"BoolBox" => {
|
||||
self.value_types.insert(dst, super::MirType::Bool);
|
||||
}
|
||||
"StringBox" => {
|
||||
self.value_types.insert(dst, super::MirType::String);
|
||||
}
|
||||
other => {
|
||||
self.value_types
|
||||
.insert(dst, super::MirType::Box(other.to_string()));
|
||||
}
|
||||
}
|
||||
// Phase 15.5: Unified box type handling
|
||||
// All boxes (including former core boxes) are treated uniformly as Box types
|
||||
self.value_types
|
||||
.insert(dst, super::MirType::Box(class.clone()));
|
||||
|
||||
// Record origin for optimization: dst was created by NewBox of class
|
||||
self.value_origin_newbox.insert(dst, class.clone());
|
||||
|
||||
Reference in New Issue
Block a user