devops-bot-sdk 1.4.20__tar.gz → 1.4.22__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.
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/PKG-INFO +1 -1
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/PKG-INFO +1 -1
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/pyproject.toml +1 -1
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/__init__.py +2 -2
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/client.py +1 -1
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/ipc/handlers.py +10 -3
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/README.md +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/SOURCES.txt +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/dependency_links.txt +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/entry_points.txt +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/requires.txt +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/top_level.txt +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/collectors/__init__.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/collectors/files.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/collectors/process.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/collectors/screenshot.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/config.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/crucial.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/exceptions.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/git_ops.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/graphify.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/hooks/__init__.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/hooks/crucial_guard.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/ipc/__init__.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/ipc/electron_bridge.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/local_exec.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/models/__init__.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/models/envelope.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/models/requests.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/models/responses.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/models/snapshots.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/py.typed +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/run_auto.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/sse.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/test.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/test_pipeline.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/sdk/updater.py +0 -0
- {devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/setup.cfg +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "devops-bot-sdk"
|
|
7
|
-
version = "1.4.
|
|
7
|
+
version = "1.4.22"
|
|
8
8
|
description = "DevOps Bot Desktop SDK — thin client for the AgentOS Electron desktop app"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "LicenseRef-Proprietary"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""AgentOS Desktop SDK — thin HTTPS/SSE client for the Electron app.
|
|
2
2
|
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.22
|
|
4
4
|
|
|
5
5
|
Public surface:
|
|
6
6
|
BackendClient.from_config() — create client from ~/.agentos/config.toml
|
|
@@ -30,7 +30,7 @@ Rules:
|
|
|
30
30
|
- All data egress through submit_webhook only
|
|
31
31
|
"""
|
|
32
32
|
|
|
33
|
-
__version__ = "1.4.
|
|
33
|
+
__version__ = "1.4.22"
|
|
34
34
|
__author__ = "AgentOS"
|
|
35
35
|
|
|
36
36
|
from sdk.client import BackendClient
|
|
@@ -36,7 +36,7 @@ from sdk.sse import _check_status, stream_with_reconnect
|
|
|
36
36
|
|
|
37
37
|
logger = logging.getLogger(__name__)
|
|
38
38
|
|
|
39
|
-
SDK_VERSION = "1.4.
|
|
39
|
+
SDK_VERSION = "1.4.22"
|
|
40
40
|
_POLL_INTERVAL = 3.0
|
|
41
41
|
_POLL_TIMEOUT = 600.0
|
|
42
42
|
_ORCHESTRATE_TIMEOUT = 2700.0 # 45 min — covers approval wait + VPS execution time
|
|
@@ -1843,12 +1843,19 @@ async def handle_orchestrate_auto_local_run(
|
|
|
1843
1843
|
processed += 1
|
|
1844
1844
|
break
|
|
1845
1845
|
except Exception as exc: # noqa: BLE001 — isolate per-ticket failures
|
|
1846
|
-
|
|
1847
|
-
|
|
1846
|
+
# str(exc) is EMPTY for some exceptions (notably TimeoutError /
|
|
1847
|
+
# asyncio.TimeoutError / CancelledError), which used to render as a
|
|
1848
|
+
# blank "failed — (continuing)" with no clue to the cause. Always
|
|
1849
|
+
# prefix the exception type so the real reason is visible; log the
|
|
1850
|
+
# full repr for after-the-fact debugging.
|
|
1851
|
+
detail = f"{type(exc).__name__}: {exc}".rstrip(": ")
|
|
1852
|
+
logger.warning("orchestrate_auto.task_failed",
|
|
1853
|
+
extra={"task_id": tid, "error": repr(exc)})
|
|
1854
|
+
await client.log_activity(f"Task {tid}: unexpected error — {detail[:200]}")
|
|
1848
1855
|
await client.move_to_backlog(tid)
|
|
1849
1856
|
await send(Envelope(
|
|
1850
1857
|
type="step_update", thread_id=thread_id,
|
|
1851
|
-
data={"current_step": f"{jira_key or tid}: failed — {
|
|
1858
|
+
data={"current_step": f"{jira_key or tid}: failed — {detail[:160]} (continuing)"},
|
|
1852
1859
|
).model_dump())
|
|
1853
1860
|
continue
|
|
1854
1861
|
|
|
File without changes
|
|
File without changes
|
{devops_bot_sdk-1.4.20 → devops_bot_sdk-1.4.22}/devops_bot_sdk.egg-info/dependency_links.txt
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
|