mirror of
https://github.com/rojo-rbx/rojo.git
synced 2026-10-22 21:41:37 +00:00
Enhance tree synchronization and testing capabilities
- Fixed tree drift issues caused by echo suppression, ensuring new-instance file writes do not suppress watcher events. - Implemented periodic tree reconciliation in the ChangeProcessor to recover from lost OS file notifications. - Added a new API endpoint `/api/validate-tree` for verifying tree-filesystem consistency. - Introduced `assert_tree_fresh()` test helper and enhanced tree freshness assertions in watcher tests. - Added VFS staleness tests and a chaos fuzzer stress test to improve robustness. - Tightened echo suppression test assertions for more precise validation. - Exposed `WatcherCriticalError` channel for better event handling in the ChangeProcessor. These changes significantly improve the reliability of the VFS and enhance testing coverage for tree synchronization scenarios.
This commit is contained in:
parent
8462c06b82
commit
7f89d4ce29
1 changed files with 8 additions and 0 deletions
|
|
@ -31,6 +31,14 @@ Making a new release? Simply add the new header with the version and date undern
|
|||
|
||||
## Unreleased
|
||||
|
||||
* Fix tree drift caused by echo suppression eating VFS events for newly added instances. New-instance file writes no longer suppress watcher events, allowing the tree to pick them up correctly.
|
||||
* Add periodic tree reconciliation in the ChangeProcessor to recover from lost OS file notification events (Windows `ReadDirectoryChangesW` buffer overflow). Runs automatically after event bursts settle.
|
||||
* Add `GET /api/validate-tree` endpoint for test infrastructure to verify tree-filesystem consistency.
|
||||
* Add `assert_tree_fresh()` test helper and tree freshness assertions to all watcher and echo suppression tests.
|
||||
* Add VFS staleness tests (bulk changes, post-API external edit, rapid delete/recreate, directory restructure) and a chaos fuzzer stress test.
|
||||
* Tighten echo suppression test assertions from lenient bounds to precise expected values.
|
||||
* Expose `WatcherCriticalError` channel from VFS to ChangeProcessor for `RescanRequired` event handling.
|
||||
|
||||
## [8.1.0] (February 11th, 2026)
|
||||
|
||||
* Overhaul filename handling: replace path encoding system with a slugify approach for robust round-trip fidelity between Roblox instances and the filesystem.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue