Moe Charm
f5ab4910e4
fix(plugins): Fix FileBox plugin I/O operations and add TLV debugging
## FileBox Plugin Fixes
### Issue Resolution
- Fixed file write operations not persisting to disk
- Fixed TLV tag mismatch preventing read operations
- Added comprehensive TLV debugging capability
### Changes Made
#### plugins/nyash-filebox-plugin/src/lib.rs
- Added file.flush() after write operations to ensure data persistence
- Modified tlv_parse_bytes to accept both String(6) and Bytes(7) tags
- Resolves compatibility issue with plugin-tester String encoding
#### tools/plugin-tester/src/main.rs
- Added `tlv-debug` subcommand with detailed TLV analysis
- Provides hex dumps, encoding/decoding verification
- Full plugin round-trip testing with file I/O validation
- Detailed error analysis for debugging TLV protocol issues
## Test Results
### Before Fix
```
INFO: WRITE 8 bytes
INFO: READ 0 bytes ← Problem: no data read
✗: Plugin round-trip failed\!
```
### After Fix
```
INFO: WRITE 8 bytes
INFO: READ 8 bytes ← Fixed: data successfully read
✓: Plugin round-trip successful\!
```
## Technical Details
- Root cause: Missing file.flush() + TLV tag type mismatch
- Plugin-tester sends String(6), plugin expected Bytes(7) only
- File buffer not flushed to disk before close/reopen
- Solution: Added flush() + dual tag support for compatibility
This completes the core BID-FFI plugin I/O functionality validation.
Nyash integration still needs method dispatch optimization.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 11:21:04 +09:00
..
2025-08-18 11:21:04 +09:00
2025-08-18 09:32:54 +09:00
2025-08-18 09:32:54 +09:00