fastmind 0.2.2__tar.gz → 0.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fastmind-0.2.2 → fastmind-0.2.4}/PKG-INFO +1 -1
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/__init__.py +1 -1
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/contrib/api.py +1 -1
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/engine.py +9 -3
- {fastmind-0.2.2 → fastmind-0.2.4}/pyproject.toml +1 -1
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/README.md +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/contrib/__init__.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/app.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/event.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/graph.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/node.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/perception.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/signal.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/state.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/tool.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/core/vla.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/utils/__init__.py +0 -0
- {fastmind-0.2.2 → fastmind-0.2.4}/fastmind/utils/logging.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fastmind
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: A lightweight, event-driven multi-agent framework for embodied AI systems
|
|
5
5
|
Project-URL: Homepage, https://github.com/kandada/fastmind
|
|
6
6
|
Project-URL: Documentation, https://github.com/kandada/fastmind#readme
|
|
@@ -150,7 +150,7 @@ class FastMindAPI:
|
|
|
150
150
|
if not session.is_alive:
|
|
151
151
|
raise RuntimeError(f"Session '{session_id}' is stopped")
|
|
152
152
|
|
|
153
|
-
cursor =
|
|
153
|
+
cursor = session._event_buffer.tail_cursor
|
|
154
154
|
while self._running and session.is_alive:
|
|
155
155
|
try:
|
|
156
156
|
events = await session._event_buffer.wait(cursor, timeout=1.0)
|
|
@@ -96,11 +96,15 @@ class NotifyingQueue:
|
|
|
96
96
|
|
|
97
97
|
async def get(self):
|
|
98
98
|
while True:
|
|
99
|
+
self._event.clear()
|
|
100
|
+
events = self._buffer.read(self._cursor)
|
|
101
|
+
if events:
|
|
102
|
+
self._cursor += len(events)
|
|
103
|
+
return events[0]
|
|
99
104
|
events = self._buffer.read(self._cursor)
|
|
100
105
|
if events:
|
|
101
106
|
self._cursor += len(events)
|
|
102
107
|
return events[0]
|
|
103
|
-
self._event.clear()
|
|
104
108
|
await self._event.wait()
|
|
105
109
|
|
|
106
110
|
def get_nowait(self):
|
|
@@ -262,10 +266,12 @@ class Session:
|
|
|
262
266
|
|
|
263
267
|
async def wait_for_output(self, timeout: Optional[float] = None) -> Optional[Event]:
|
|
264
268
|
"""等待输出事件(阻塞直到有输出或超时)"""
|
|
265
|
-
|
|
269
|
+
self._output_event.clear()
|
|
270
|
+
try:
|
|
266
271
|
return self.output_queue.get_nowait()
|
|
272
|
+
except asyncio.QueueEmpty:
|
|
273
|
+
pass
|
|
267
274
|
|
|
268
|
-
self._output_event.clear()
|
|
269
275
|
try:
|
|
270
276
|
if timeout is None:
|
|
271
277
|
await self._output_event.wait()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|