What happened
During benchmark runs (#89), the OS cleaned up the temp directory a dev server was using as its storage data_dir. From that moment:
- server.log filled with
[wal] ERROR ensure_writer: path=.../persist/wal/current.wal, parent_exists=false
+claim[...] inserts over the WS API kept returning success to the client
?claim(C, E, A, V) immediately after those inserts returned zero rows
So every insert silently became a no-op while reporting success. For a reasoning engine this is the same failure class as #91: no error, wrong results - a client has no way to know its facts never landed.
Repro
- Start the server with
--config pointing data_dir at some directory
rm -rf that directory (or its persist/wal subtree) while the server runs
- Insert facts over WS - observe success responses
- Query them back - observe empty results, and WAL errors in the server log
Expected
Either of these would be fine; silently acking is not:
- Insert returns an error to the client when the write-ahead path is unavailable
- Server recreates missing storage directories on demand (it creates them at startup already)
Found on the verified-completions-plan branch during #89 benchmark work; hit us as an engine pass scoring 0/60 with no error anywhere client-side.
What happened
During benchmark runs (#89), the OS cleaned up the temp directory a dev server was using as its storage data_dir. From that moment:
[wal] ERROR ensure_writer: path=.../persist/wal/current.wal, parent_exists=false+claim[...]inserts over the WS API kept returning success to the client?claim(C, E, A, V)immediately after those inserts returned zero rowsSo every insert silently became a no-op while reporting success. For a reasoning engine this is the same failure class as #91: no error, wrong results - a client has no way to know its facts never landed.
Repro
--configpointing data_dir at some directoryrm -rfthat directory (or itspersist/walsubtree) while the server runsExpected
Either of these would be fine; silently acking is not:
Found on the verified-completions-plan branch during #89 benchmark work; hit us as an engine pass scoring 0/60 with no error anywhere client-side.