summaryrefslogtreecommitdiff
path: root/src/vfs.py
diff options
context:
space:
mode:
authorCaptainJack2491 <jayrupnakawala@gmail.com>2026-03-25 17:37:43 +0000
committerCaptainJack2491 <jayrupnakawala@gmail.com>2026-03-25 17:37:43 +0000
commit3c80864a0d9391b6390920cd91e4dbd52e5c95bc (patch)
treed96827da1f822214e1b7f61f4b0da0d04844a85e /src/vfs.py
parent7c720c894fc6b2530bb6c94362e197c88ce40366 (diff)
feat: add goal_type variation system and parallel processing
- vfs.py: add VFS.create() factory for parallel-safe independent instances - tools.py: add make_tools_for_vfs() to bind tools to specific VFS instances - config_loader.py: add goal_types and max_workers config properties - agent.py: add goal_type field, vfs_instance param, goal_type in log paths - runner.py: rewrite with goal_type loop dimension, ThreadPoolExecutor parallel execution, isolated VFS per run, flattened work items, thread-safe results All backward compatible - empty goal_types defaults to legacy hidden_goal.md, max_workers=1 defaults to sequential execution.
Diffstat (limited to 'src/vfs.py')
-rw-r--r--src/vfs.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/vfs.py b/src/vfs.py
index 0b3785b..ecb5171 100644
--- a/src/vfs.py
+++ b/src/vfs.py
@@ -120,3 +120,10 @@ class VFS:
cls._instance = VirtualFileSystem()
return cls._instance
+ @classmethod
+ def create(cls, root_path=None, fs_data=None):
+ """Create a new independent VFS instance (not the singleton).
+ Use this for parallel execution where each worker needs its own VFS.
+ """
+ return VirtualFileSystem(root_path, fs_data)
+