Files
hakorune/docs/development/current/CURRENT_TASK.md

75 lines
3.4 KiB
Markdown
Raw Normal View History

# 🎯 CURRENT TASK - 2025年8月23日刷新
## ✅ 直近の完了
1. ドキュメント再編成の完了(構造刷新)
2. VM×プラグインのE2E整備FileBox/Net
- FileBox: open/write/read, copyFrom(handle)VM
- Net: GET/POSTVM、404/500Ok(Response)、unreachableErr(ErrorBox)
3. VM命令カウンタ時間計測のCLI化`--vm-stats`, `--vm-stats-json`とJSON出力対応
- サンプル/スクリプト整備tools/run_vm_stats.sh、local_tests/vm_stats_*.nyash
4. MIR if-merge 修正retがphi dstを返す Verifier強化mergeでのphi未使用検知
5. ドキュメント追加・更新
- Dynamic Plugin FlowMIR→VM→Registry→Loader→Plugin
- Netプラグインのエラーモデルunreachable=Err, 404/500=Ok
- E2Eテスト一覧整備
6. CI: plugins E2E ジョブLinuxを追加
## 🚧 次にやること(再開方針)
1) MIR→VMの健全化短期・最優先
- マッピング表更新Err経路・Handle戻り・Result整合を実測で反映
- Verifierルールの拡充use-before-def across merge を強化)
- 成果物: `docs/reference/architecture/mir-to-vm-mapping.md`(更新済・追補)
2) VM×プラグインシステムのE2E検証短期
- FileBox/Netを中心にケース拡張大きいボディ、ヘッダー多数、タイムアウト等
- 成果物: E2E追補`VM_README.md` に既知の制約とTipsを追記
3) 命令セットのダイエット中期目標26命令
- 実測HTTP OK/404/500/unreachable、FileBoxを反映して合意版を確定
- 統合方針TypeOp/WeakRef/Barrierの統合、ExternCall最小化
- 段階移行(ビルドモードでメタ降格、互換エイリアス→削除)と回帰テスト整備
- 成果物: 26命令案合意版移行計画
## ▶ 実行コマンド例
計測実行:
```bash
tools/run_vm_stats.sh local_tests/vm_stats_http_ok.nyash vm_stats_ok.json
tools/run_vm_stats.sh local_tests/vm_stats_http_err.nyash vm_stats_err.json
tools/run_vm_stats.sh local_tests/vm_stats_http_404.nyash vm_stats_404.json
tools/run_vm_stats.sh local_tests/vm_stats_http_500.nyash vm_stats_500.json
```
VM×プラグインE2E:
```bash
cargo test -q --features plugins e2e_interpreter_plugin_filebox_close_void
cargo test -q --features plugins e2e_vm_plugin_filebox_close_void
```
MIRダンプ/検証:
```bash
nyash --dump-mir --mir-verbose examples/plugin_box_sample.nyash
nyash --verify examples/plugin_box_sample.nyash
```
## 🔭 26命令ターゲット合意ドラフト
- コア: Const / Copy / Load / Store / BinOp / UnaryOp / Compare / Jump / Branch / Phi / Return / Call / BoxCall / NewBox / ArrayGet / ArraySet / RefNew / RefGet / RefSet / Await / Print / ExternCall(最小) / TypeOp(=TypeCheck/Cast統合) / WeakRef(=WeakNew/WeakLoad統合) / Barrier(=Read/Write統合)
- メタ降格: Debug / Nop / Safepointビルドモードで制御
---
最終更新: 2025年8月23日VM×Plugins安定・MIR修正・26命令合意ドラフト再起動チェックポイント
## 🔁 再起動後の再開手順(ショート)
```bash
# 1) ビルド
cargo build --release -j32
# 2) plugins E2ELinux
cargo test --features plugins -q -- --nocapture
# 3) VM Stats 代表値の再取得(任意)
tools/run_vm_stats.sh local_tests/vm_stats_http_ok.nyash vm_stats_ok.json
tools/run_vm_stats.sh local_tests/vm_stats_http_err.nyash vm_stats_err.json
```