codex-agent-framework 0.1.57__tar.gz → 0.1.58__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.
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/CHANGELOG.md +8 -0
- {codex_agent_framework-0.1.57/codex_agent_framework.egg-info → codex_agent_framework-0.1.58}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/server/core.py +7 -4
- codex_agent_framework-0.1.58/codex_agent/version.py +1 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58/codex_agent_framework.egg-info}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/pyproject.toml +1 -1
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_server.py +21 -9
- codex_agent_framework-0.1.57/codex_agent/version.py +0 -1
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/LICENSE +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/MANIFEST.in +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/README.md +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/__main__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/agent.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/agent_runtime.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/ai.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/browser.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_commands.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/bash/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/bash/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/browser/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/browser/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/content/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/content/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/content/system.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/content/vision.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/context/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/desktop/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/desktop/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/environment/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/environment/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/files/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/files/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/files/tools.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/image_generation/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/image_generation/image_generation_system_prompt.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/image_generation/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/interface/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/interface/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/memory/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/memory/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/planner/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/planner/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/python/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/python/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/audio.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/bridge.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/manager.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/realtime/session.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/scheduler/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/scheduler/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/subagents/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/subagents/profiles/explorer.json +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/subagents/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/tts/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/tts/requirements.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_plugins/web_search/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/headless.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/main.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/output.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/root.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/cli/runner.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/client.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/command.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/config.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/context.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/desktop.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/event.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/default_gitignore +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/get_text.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/simpler_get_text.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/hooks.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/image.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/latex.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/mainloop.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/message.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/plugin.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/prompts/system_prompt.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/provider.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/runtime.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/scheduler.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/scripts/install-system-dependencies.sh +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/server/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/server/app.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/service.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/sessions.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/status.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/stream.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/stream_utils.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tool.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tray.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/__init__.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/app.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/chat.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/lifecycle.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/log.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/perf.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/state.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/status_bar.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/stream_debug.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/style.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/transcript.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/widgets.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/utils.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/worker.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent_framework.egg-info/SOURCES.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent_framework.egg-info/dependency_links.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent_framework.egg-info/entry_points.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent_framework.egg-info/requires.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent_framework.egg-info/top_level.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/dependencies.txt +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/setup.cfg +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_audio_hooks.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_commands.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_context.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_desktop.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_environment.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_image_generation.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_observe.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_plugins.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_providers_config.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_realtime.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_response.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_runtime.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_sessions.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_subagents.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_tools.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_turns.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_ai.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_browser.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_builtin_config.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_chat.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_cli.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_cli_headless.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_cli_root.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_client.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_events.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_get_text_browser.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_hooks.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_image_message.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_local_desktop.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_memory.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_messages.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_planner.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_scheduler.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_service.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_tui.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_utils.py +0 -0
- {codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_worker.py +0 -0
|
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
This project loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and uses semantic versioning where practical.
|
|
6
6
|
|
|
7
|
+
## [0.1.58] - 2026-05-17
|
|
8
|
+
### Fixed
|
|
9
|
+
- Keep active SSE event subscribers attached even when the FastAPI request handler thread that opened the `StreamingResponse` has ended, preventing TUI streams from degrading into ping-only connections that miss real assistant/tool events.
|
|
10
|
+
- Stop an SSE stream promptly if its subscriber has been removed from the active subscriber registry, forcing clients to reconnect and replay instead of staying apparently healthy while receiving only `server_ping` events.
|
|
11
|
+
|
|
12
|
+
### Tests
|
|
13
|
+
- Add server regressions covering registered subscribers independent of request-thread liveness and removed subscribers stopping instead of pinging forever; validate with targeted server/client/chat tests and the full offline CI suite (581 passed).
|
|
14
|
+
|
|
7
15
|
## [0.1.57] - 2026-05-17
|
|
8
16
|
### Fixed
|
|
9
17
|
- Fix stream helper fan-out edge cases so `Tee`, `Splitter`, and `MappingStreamSplitter` readers keep their own queues and reusable mapping splitters do not redirect old readers to new streams.
|
|
@@ -273,9 +273,12 @@ class AgentServer:
|
|
|
273
273
|
return False
|
|
274
274
|
|
|
275
275
|
def prune_subscribers(self):
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
276
|
+
"""Return active subscribers without pruning by request-thread liveness.
|
|
277
|
+
|
|
278
|
+
FastAPI may continue consuming a ``StreamingResponse`` after the
|
|
279
|
+
request handler thread that opened it is gone, so thread liveness is not
|
|
280
|
+
a reliable signal that an SSE subscriber is stale.
|
|
281
|
+
"""
|
|
279
282
|
return len(self.subscribers)
|
|
280
283
|
|
|
281
284
|
def subscriber_count(self):
|
|
@@ -367,7 +370,7 @@ class AgentServer:
|
|
|
367
370
|
try:
|
|
368
371
|
payload = subscriber.get(timeout=0.25)
|
|
369
372
|
except queue.Empty:
|
|
370
|
-
if self.shutdown_requested.is_set():
|
|
373
|
+
if self.shutdown_requested.is_set() or subscriber not in self.subscribers:
|
|
371
374
|
break
|
|
372
375
|
payload = modict(type="server_ping")
|
|
373
376
|
yield payload
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.1.58"
|
|
@@ -513,22 +513,34 @@ def test_create_app_refuses_second_sse_client(monkeypatch):
|
|
|
513
513
|
service.subscribers.clear()
|
|
514
514
|
|
|
515
515
|
|
|
516
|
-
def
|
|
516
|
+
def test_agent_server_keeps_registered_event_subscribers_independent_of_request_thread():
|
|
517
517
|
agent = Agent(session="new")
|
|
518
518
|
service = AgentServer(InProcessAgentRuntime(agent))
|
|
519
|
+
stream = service.subscribe()
|
|
520
|
+
|
|
521
|
+
assert next(stream).type == "server_subscribed"
|
|
522
|
+
service.prune_subscribers()
|
|
523
|
+
service.publish(modict(type="response_content_delta_event", delta="still attached"))
|
|
519
524
|
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
525
|
+
assert next(stream).delta == "still attached"
|
|
526
|
+
stream.close()
|
|
527
|
+
assert len(service.subscribers) == 0
|
|
523
528
|
|
|
524
|
-
service.subscribers[queue.Queue()] = modict(thread=DeadThread())
|
|
525
529
|
|
|
530
|
+
def test_agent_server_stops_stream_removed_from_subscribers():
|
|
531
|
+
agent = Agent(session="new")
|
|
532
|
+
service = AgentServer(InProcessAgentRuntime(agent))
|
|
526
533
|
stream = service.subscribe()
|
|
534
|
+
|
|
535
|
+
assert next(stream).type == "server_subscribed"
|
|
536
|
+
service.subscribers.clear()
|
|
537
|
+
|
|
527
538
|
try:
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
539
|
+
next(stream)
|
|
540
|
+
except StopIteration:
|
|
541
|
+
pass
|
|
542
|
+
else:
|
|
543
|
+
raise AssertionError("Expected removed subscriber stream to stop instead of pinging forever")
|
|
532
544
|
|
|
533
545
|
|
|
534
546
|
def test_agent_server_stop_closes_event_streams(monkeypatch):
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.1.57"
|
|
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
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/builtin_commands.py
RENAMED
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/__init__.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/default_gitignore
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/get_text/get_text.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/prompts/system_prompt.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/server/__init__.py
RENAMED
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/codex_agent/tui/stream_debug.py
RENAMED
|
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
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_audio_hooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_environment.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_image_generation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_agent_providers_config.py
RENAMED
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.57 → codex_agent_framework-0.1.58}/tests/test_get_text_browser.py
RENAMED
|
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
|