To make AI sandbox really useful, we need to add persistence for it, e.g. for to the /sandbox directory. On actor run migration, the newly started container would always re-run the installation scripts, and then restore the /sandbox directory to previous state.
I saw this project and had an idea we could use it (or something similar). It could use FUSE to map a filesystem directly to an SQLite database, which is a single file that can be stored to key-value store (periodically and on migration). The disadvantage is that on even a small file change, it needs to resync the entire sandbox, so maybe it's better to sync the files individually to key-value store and just keep a JSON index file with file info, permissions, etc.
See also https://docs.google.com/document/d/1M59xOCfv3quAJMCRMQAnxrC3bAabTy1UYPb1muuPdVs/edit?tab=t.0#heading=h.k4u5eovl4ih
To make AI sandbox really useful, we need to add persistence for it, e.g. for to the
/sandboxdirectory. On actor run migration, the newly started container would always re-run the installation scripts, and then restore the/sandboxdirectory to previous state.I saw this project and had an idea we could use it (or something similar). It could use FUSE to map a filesystem directly to an SQLite database, which is a single file that can be stored to key-value store (periodically and on migration). The disadvantage is that on even a small file change, it needs to resync the entire sandbox, so maybe it's better to sync the files individually to key-value store and just keep a JSON index file with file info, permissions, etc.
See also https://docs.google.com/document/d/1M59xOCfv3quAJMCRMQAnxrC3bAabTy1UYPb1muuPdVs/edit?tab=t.0#heading=h.k4u5eovl4ih