devops-bot-sdk 1.4.88__tar.gz → 1.4.90__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.88 → devops_bot_sdk-1.4.90}/PKG-INFO +1 -1
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/PKG-INFO +1 -1
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/pyproject.toml +1 -1
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/__init__.py +2 -2
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/client.py +5 -2
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/ipc/handlers.py +7 -5
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/README.md +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/SOURCES.txt +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/dependency_links.txt +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/entry_points.txt +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/requires.txt +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/devops_bot_sdk.egg-info/top_level.txt +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/collectors/__init__.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/collectors/files.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/collectors/process.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/collectors/screenshot.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/config.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/crucial.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/exceptions.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/git_ops.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/graphify.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/hooks/__init__.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/hooks/crucial_guard.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/ipc/__init__.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/ipc/electron_bridge.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/local_exec.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/models/__init__.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/models/envelope.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/models/requests.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/models/responses.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/models/snapshots.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/py.typed +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/run_auto.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/sse.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/test.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/test_pipeline.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/sdk/updater.py +0 -0
- {devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/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.90"
|
|
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.90
|
|
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.90"
|
|
34
34
|
__author__ = "AgentOS"
|
|
35
35
|
|
|
36
36
|
from sdk.client import BackendClient
|
|
@@ -58,7 +58,7 @@ def _notify_status(task_id: str, status: str) -> None:
|
|
|
58
58
|
pass
|
|
59
59
|
|
|
60
60
|
|
|
61
|
-
SDK_VERSION = "1.4.
|
|
61
|
+
SDK_VERSION = "1.4.90"
|
|
62
62
|
_POLL_INTERVAL = 3.0
|
|
63
63
|
_POLL_TIMEOUT = 600.0
|
|
64
64
|
_ORCHESTRATE_TIMEOUT = 2700.0 # 45 min — covers approval wait + VPS execution time
|
|
@@ -848,7 +848,10 @@ class BackendClient:
|
|
|
848
848
|
url = f"{BE_DEFAULT_URL.rstrip('/')}/tasks-ml"
|
|
849
849
|
headers = {k: v for k, v in self._headers.items() if k.lower() != "content-type"}
|
|
850
850
|
headers.update({"accept": "*/*", "developer-name": "null", "product": ""})
|
|
851
|
-
|
|
851
|
+
# POST /tasks-ml must never carry an SLA target — the backend validator
|
|
852
|
+
# rejects any value not shaped like "8h", and SLA is not ours to set.
|
|
853
|
+
files = [(k, (None, str(v))) for k, v in fields.items()
|
|
854
|
+
if v is not None and k not in ("slaTarget", "slaTargets")]
|
|
852
855
|
for m in (model_used or []):
|
|
853
856
|
files.append(("modelUsed[]", (None, str(m)))) # [] → backend parses as array
|
|
854
857
|
try:
|
|
@@ -648,18 +648,20 @@ def _extract_email(text: str | None) -> str | None:
|
|
|
648
648
|
return m.group(0).strip().lower() if m else None
|
|
649
649
|
|
|
650
650
|
|
|
651
|
-
# Time
|
|
651
|
+
# Time fields inherited from the parent Epic onto each generated child.
|
|
652
652
|
# Passed through VERBATIM (exactly as the backend returned them on GET) so the
|
|
653
653
|
# POST never carries a reformatted-and-wrong date; absent/empty ones are dropped.
|
|
654
|
-
|
|
654
|
+
# slaTarget[s] are deliberately excluded: POST /tasks-ml must never receive an
|
|
655
|
+
# SLA target (its validator rejects anything not shaped like "8h").
|
|
656
|
+
_EPIC_TIME_FIELDS = ("startDate", "endDate", "dueDate")
|
|
655
657
|
|
|
656
658
|
|
|
657
659
|
def _epic_inherited_fields(task: dict) -> dict:
|
|
658
660
|
"""Parent-Epic fields a child Task should inherit (drops empties).
|
|
659
661
|
|
|
660
|
-
Includes the Epic's time
|
|
661
|
-
|
|
662
|
-
|
|
662
|
+
Includes the Epic's time targets (startDate, endDate, dueDate) when
|
|
663
|
+
present, so generated stories/tasks carry the same deadlines instead of
|
|
664
|
+
being created without any.
|
|
663
665
|
"""
|
|
664
666
|
fields = {
|
|
665
667
|
"projectKey": task.get("projectKey"),
|
|
File without changes
|
|
File without changes
|
{devops_bot_sdk-1.4.88 → devops_bot_sdk-1.4.90}/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
|