e1b148051b
feat: nyash.toml v2完全対応とinit関数オプション化
...
主な変更:
- nyash.toml v2形式(マルチBox型プラグイン)に完全対応
- plugin-testerをv2対応に全面更新
- Host VTable完全廃止でシンプル化
- init関数をオプション化(グローバル初期化用)
- FileBoxプラグインを新設計に移行(once_cell使用)
仕様更新:
- nyash_plugin_invoke(必須)とnyash_plugin_init(オプション)の2関数体制
- すべてのメタ情報はnyash.tomlから取得
- プラグインは自己完結でログ出力
テスト確認:
- plugin-testerでFileBoxの動作確認済み
- birth/finiライフサイクル正常動作
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-08-19 04:48:25 +09:00
5f6f946179
feat: 汎用プラグインBox生成システム実装とnyash.toml v2対応準備
...
- GenericPluginBoxを実装し、任意のプラグインBoxを動的に生成可能に
- FileBox決め打ちコードを削除(設計思想違反の解消)
- CURRENT_TASK.mdを更新し、nyash.toml v2対応の必要性を明確化
- 問題: プラグインテスターとNyash本体が古い単一Box型形式のまま
次のステップ:
1. nyash.tomlをv2形式(マルチBox型)に更新
2. プラグインテスターをv2対応に
3. Nyash本体のレジストリをv2対応に
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-08-19 03:48:44 +09:00
c6c3c8e2f9
fix(bid-ffi): Fix HostVtable lifetime issue causing segfault
...
🚨 Critical memory safety fix:
- HostVtable was created on stack and destroyed after init
- Plugin stored reference to destroyed memory → NULL pointer access
- Changed to static LazyLock storage for lifetime safety
✅ Results:
- Segfault completely eliminated
- Plugin logging now works properly
- Type info system confirmed working
- Full E2E FileBox plugin operation successful
🔧 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-08-18 14:10:41 +09:00
2efdd0ac0c
feat: BID-FFIプラグインシステム基盤実装(Step 1-3完了)
...
- FileBoxプラグイン単体実装
- birth/finiライフサイクル対応
- 6つのメソッド定義(birth/open/read/write/close/fini)
- プラグインが自らBox名「FileBox」を宣言
- nyash.toml設定ファイル作成
- FileBox = "nyash-filebox-plugin" マッピング定義
- プラグイン検索パス設定
- プラグインテスター作成(tools/plugin-tester)
- Box名を決め打ちしない汎用設計
- プラグインから型情報を動的取得
- メソッド一覧表示機能
- 診断機能付きチェックコマンド
重要な設計原則:
- プラグインが自分のBox名を宣言(ローダーは知らない)
- 汎用的で拡張可能な設計
- メモリ管理の明確な責任分担
次のステップ:Nyashとの統合(Step 4)
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-08-18 09:32:54 +09:00