- FAT32 writeFile: replace hardcoded spc=4 with bootRecord^.spc for cluster allocation and per-sector write loop - FAT32 writeFile: update directory entry byteSize on disk after write - FAT32 readFile: use dir^.byteSize instead of cluster-based estimate, fix off-by-one in read loop, remove spurious +sectorSize allocation - VFS: fire VFS_OnMutation on sync/async writes (cache invalidate + watch) - VFS: invalidate all cache entries for volume on mutation (relPath mismatch) - VFS: add vfsParentDir helper, store VFSDir in file descriptors - FDTable: add VFSDir field, free on close - File browser: enable directory watch & poll timer, two-step new file creation (open + write), remove io.syslog import - Linker: add --no-warn-execstack to suppress ld exit code 1 on warning - Add core.strings.helpers unit (getFileExtension, fmtFileSize, sort)