dominus-sdk-python 4.0.2__tar.gz → 4.0.3__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.
Files changed (58) hide show
  1. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/PKG-INFO +10 -3
  2. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/README.md +9 -2
  3. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/logs.py +30 -0
  4. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus_sdk_python.egg-info/PKG-INFO +10 -3
  5. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/pyproject.toml +1 -1
  6. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_logs.py +17 -0
  7. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/__init__.py +0 -0
  8. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/config/__init__.py +0 -0
  9. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/config/endpoints.py +0 -0
  10. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/errors.py +0 -0
  11. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/__init__.py +0 -0
  12. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/auth.py +0 -0
  13. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/cache.py +0 -0
  14. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/console_capture.py +0 -0
  15. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/core.py +0 -0
  16. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/crypto.py +0 -0
  17. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/sse.py +0 -0
  18. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/helpers/trace.py +0 -0
  19. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/__init__.py +0 -0
  20. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/admin.py +0 -0
  21. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/ai.py +0 -0
  22. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/artifacts.py +0 -0
  23. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/auth.py +0 -0
  24. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/authority.py +0 -0
  25. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/courier.py +0 -0
  26. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/db.py +0 -0
  27. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/ddl.py +0 -0
  28. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/deployer.py +0 -0
  29. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/fastapi.py +0 -0
  30. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/files.py +0 -0
  31. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/health.py +0 -0
  32. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/jobs.py +0 -0
  33. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/portal.py +0 -0
  34. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/processor.py +0 -0
  35. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/redis.py +0 -0
  36. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/secrets.py +0 -0
  37. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/secure.py +0 -0
  38. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/sync.py +0 -0
  39. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/warden.py +0 -0
  40. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/namespaces/workflow.py +0 -0
  41. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/services/__init__.py +0 -0
  42. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus/start.py +0 -0
  43. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus_sdk_python.egg-info/SOURCES.txt +0 -0
  44. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus_sdk_python.egg-info/dependency_links.txt +0 -0
  45. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus_sdk_python.egg-info/requires.txt +0 -0
  46. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/dominus_sdk_python.egg-info/top_level.txt +0 -0
  47. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/setup.cfg +0 -0
  48. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_auth.py +0 -0
  49. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_authority_public_vocabulary.py +0 -0
  50. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_control_plane_namespaces.py +0 -0
  51. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_errors.py +0 -0
  52. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_flat_commands.py +0 -0
  53. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_health.py +0 -0
  54. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_provisioning_parity.py +0 -0
  55. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_public_exports.py +0 -0
  56. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_transport_compat.py +0 -0
  57. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_workflow_lifecycle.py +0 -0
  58. {dominus_sdk_python-4.0.2 → dominus_sdk_python-4.0.3}/tests/test_workflow_refs.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dominus-sdk-python
3
- Version: 4.0.2
3
+ Version: 4.0.3
4
4
  Summary: Python SDK for the Dominus gateway-first platform
5
5
  Author-email: CareBridge Systems <dev@carebridge.io>
6
6
  License: Proprietary
@@ -42,7 +42,7 @@ Async Python SDK for the Dominus gateway-first service plane.
42
42
  - Gateway-scoped client mode for MCP and other user-JWT sessions
43
43
  - Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
44
44
  - Local helpers for JWT verification, trace propagation, retries, and console capture
45
- - Current package version: `4.0.2`
45
+ - Current package version: `4.0.3`
46
46
 
47
47
  ## Install
48
48
 
@@ -80,7 +80,11 @@ timeline_archive = await dominus.authority.get_timeline_archive_status(
80
80
  app_slug="carebridge-summit",
81
81
  env="production",
82
82
  )
83
- logs_archive = await dominus.logs.get_archive_status(all_scopes=True, limit=5)
83
+ logs_archive = await dominus.logs.get_archive_status(
84
+ all_scopes=True,
85
+ include_buffer=True,
86
+ limit=5,
87
+ )
84
88
 
85
89
  # Archive maintenance is explicit and dry-run first.
86
90
  verify = await dominus.authority.verify_timeline_archive_manifests(
@@ -91,6 +95,9 @@ prune = await dominus.logs.prune_archive_retention(
91
95
  retention_days=90,
92
96
  dry_run=True,
93
97
  )
98
+ buffer_proof = await dominus.logs.dry_run_archive_buffer_maintenance(
99
+ sample_limit=100,
100
+ )
94
101
  ```
95
102
 
96
103
  ## Session-Scoped Clients
@@ -9,7 +9,7 @@ Async Python SDK for the Dominus gateway-first service plane.
9
9
  - Gateway-scoped client mode for MCP and other user-JWT sessions
10
10
  - Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
11
11
  - Local helpers for JWT verification, trace propagation, retries, and console capture
12
- - Current package version: `4.0.2`
12
+ - Current package version: `4.0.3`
13
13
 
14
14
  ## Install
15
15
 
@@ -47,7 +47,11 @@ timeline_archive = await dominus.authority.get_timeline_archive_status(
47
47
  app_slug="carebridge-summit",
48
48
  env="production",
49
49
  )
50
- logs_archive = await dominus.logs.get_archive_status(all_scopes=True, limit=5)
50
+ logs_archive = await dominus.logs.get_archive_status(
51
+ all_scopes=True,
52
+ include_buffer=True,
53
+ limit=5,
54
+ )
51
55
 
52
56
  # Archive maintenance is explicit and dry-run first.
53
57
  verify = await dominus.authority.verify_timeline_archive_manifests(
@@ -58,6 +62,9 @@ prune = await dominus.logs.prune_archive_retention(
58
62
  retention_days=90,
59
63
  dry_run=True,
60
64
  )
65
+ buffer_proof = await dominus.logs.dry_run_archive_buffer_maintenance(
66
+ sample_limit=100,
67
+ )
61
68
  ```
62
69
 
63
70
  ## Session-Scoped Clients
@@ -513,6 +513,36 @@ class LogsNamespace:
513
513
  use_gateway=True,
514
514
  )
515
515
 
516
+ async def dry_run_archive_buffer_maintenance(
517
+ self,
518
+ *,
519
+ sample_limit: Optional[int] = None,
520
+ max_archive_buckets: Optional[int] = None,
521
+ target_org_id: Optional[str] = None,
522
+ target_env: Optional[str] = None,
523
+ use_shared: Optional[bool] = None,
524
+ ) -> Dict[str, Any]:
525
+ """Dry-run Redis archive buffer/payload residue cleanup proof. ``POST /api/logs/archive-buffer-maintenance``.
526
+
527
+ This is intentionally read-only. The Logs Worker rejects destructive
528
+ cleanup attempts on this route.
529
+ """
530
+ body = {
531
+ "dry_run": True,
532
+ "sample_limit": sample_limit,
533
+ "max_archive_buckets": max_archive_buckets,
534
+ "target_org_id": target_org_id,
535
+ "target_env": target_env,
536
+ }
537
+ if use_shared is not None:
538
+ body["use_shared"] = use_shared
539
+ return await self._client._request(
540
+ endpoint="/api/logs/archive-buffer-maintenance",
541
+ method="POST",
542
+ body={k: v for k, v in body.items() if v is not None and v != ""},
543
+ use_gateway=True,
544
+ )
545
+
516
546
  async def query(
517
547
  self,
518
548
  minutes: int = 10,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dominus-sdk-python
3
- Version: 4.0.2
3
+ Version: 4.0.3
4
4
  Summary: Python SDK for the Dominus gateway-first platform
5
5
  Author-email: CareBridge Systems <dev@carebridge.io>
6
6
  License: Proprietary
@@ -42,7 +42,7 @@ Async Python SDK for the Dominus gateway-first service plane.
42
42
  - Gateway-scoped client mode for MCP and other user-JWT sessions
43
43
  - Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
44
44
  - Local helpers for JWT verification, trace propagation, retries, and console capture
45
- - Current package version: `4.0.2`
45
+ - Current package version: `4.0.3`
46
46
 
47
47
  ## Install
48
48
 
@@ -80,7 +80,11 @@ timeline_archive = await dominus.authority.get_timeline_archive_status(
80
80
  app_slug="carebridge-summit",
81
81
  env="production",
82
82
  )
83
- logs_archive = await dominus.logs.get_archive_status(all_scopes=True, limit=5)
83
+ logs_archive = await dominus.logs.get_archive_status(
84
+ all_scopes=True,
85
+ include_buffer=True,
86
+ limit=5,
87
+ )
84
88
 
85
89
  # Archive maintenance is explicit and dry-run first.
86
90
  verify = await dominus.authority.verify_timeline_archive_manifests(
@@ -91,6 +95,9 @@ prune = await dominus.logs.prune_archive_retention(
91
95
  retention_days=90,
92
96
  dry_run=True,
93
97
  )
98
+ buffer_proof = await dominus.logs.dry_run_archive_buffer_maintenance(
99
+ sample_limit=100,
100
+ )
94
101
  ```
95
102
 
96
103
  ## Session-Scoped Clients
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "dominus-sdk-python"
7
- version = "4.0.2"
7
+ version = "4.0.3"
8
8
  description = "Python SDK for the Dominus gateway-first platform"
9
9
  readme = "README.md"
10
10
  license = {text = "Proprietary"}
@@ -123,6 +123,13 @@ async def test_logs_archive_maintenance_helpers_forward_canonical_body():
123
123
  target_env="production",
124
124
  use_shared=True,
125
125
  )
126
+ await namespace.dry_run_archive_buffer_maintenance(
127
+ sample_limit=25,
128
+ max_archive_buckets=3,
129
+ target_org_id="org-123",
130
+ target_env="production",
131
+ use_shared=True,
132
+ )
126
133
 
127
134
  assert client.calls[0]["endpoint"] == "/api/logs/archive-repair"
128
135
  assert client.calls[0]["method"] == "POST"
@@ -147,3 +154,13 @@ async def test_logs_archive_maintenance_helpers_forward_canonical_body():
147
154
  "target_env": "production",
148
155
  "use_shared": True,
149
156
  }
157
+ assert client.calls[3]["endpoint"] == "/api/logs/archive-buffer-maintenance"
158
+ assert client.calls[3]["method"] == "POST"
159
+ assert client.calls[3]["body"] == {
160
+ "dry_run": True,
161
+ "sample_limit": 25,
162
+ "max_archive_buckets": 3,
163
+ "target_org_id": "org-123",
164
+ "target_env": "production",
165
+ "use_shared": True,
166
+ }