dominus-sdk-python 9.0.14__tar.gz → 9.0.15__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.
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/PKG-INFO +2 -2
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/README.md +1 -1
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/__init__.py +1 -1
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/secrets.py +16 -6
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/PKG-INFO +2 -2
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/pyproject.toml +1 -1
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_secrets_presence_contract.py +36 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/config/__init__.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/config/endpoints.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/contract/__init__.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/contract/envelope.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/contract/projections.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/errors.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/__init__.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/auth.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/cache.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/console_capture.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/core.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/crypto.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/sse.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/helpers/trace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/__init__.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/admin.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/ai.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/artifacts.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/auth.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/authority.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/browser.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/coder.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/courier.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/db.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/ddl.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/deployer.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/fastapi.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/files.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/health.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/jobs.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/logs.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/platform.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/portal.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/processor.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/publisher.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/recipes.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/redis.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/secure.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/stash.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/sync.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/usage.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/warden.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/namespaces/workflow.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/py.typed +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/services/__init__.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus/start.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/SOURCES.txt +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/dependency_links.txt +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/requires.txt +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/top_level.txt +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/setup.cfg +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_ai_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_artifacts_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_auth.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_authority_public_vocabulary.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_browser_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_contract.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_control_plane_namespaces.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_error_recovery_action.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_errors.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_errors_aliases.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_flat_commands.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_health.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_logs.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_namespace_barrel_exports.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_platform_coder_namespaces.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_provisioning_parity.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_public_exports.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_publisher_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_readme_quickstart_catalog.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_recipes_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_recipes_stash_routing.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_stash_artifact_facade.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_stash_tables_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_token_precedence.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_transport_compat.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_usage_namespace.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_version_consistency.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_workflow_lifecycle.py +0 -0
- {dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/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: 9.0.
|
|
3
|
+
Version: 9.0.15
|
|
4
4
|
Summary: Python SDK for the Dominus gateway-first platform
|
|
5
5
|
Author-email: CareBridge Systems <dev@carebridge.io>
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
@@ -48,7 +48,7 @@ cleanup audit is `docs/janitor/2026-09-19-1300-sdk-python-cleanup-audit.md`.
|
|
|
48
48
|
- Gateway-scoped client mode for MCP and other user-JWT sessions
|
|
49
49
|
- Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
|
|
50
50
|
- Local helpers for JWT verification, trace propagation, retries, and console capture
|
|
51
|
-
- Current package version: `9.0.
|
|
51
|
+
- Current package version: `9.0.15`
|
|
52
52
|
|
|
53
53
|
## Install
|
|
54
54
|
|
|
@@ -15,7 +15,7 @@ cleanup audit is `docs/janitor/2026-09-19-1300-sdk-python-cleanup-audit.md`.
|
|
|
15
15
|
- Gateway-scoped client mode for MCP and other user-JWT sessions
|
|
16
16
|
- Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
|
|
17
17
|
- Local helpers for JWT verification, trace propagation, retries, and console capture
|
|
18
|
-
- Current package version: `9.0.
|
|
18
|
+
- Current package version: `9.0.15`
|
|
19
19
|
|
|
20
20
|
## Install
|
|
21
21
|
|
|
@@ -262,15 +262,22 @@ class SecretsNamespace:
|
|
|
262
262
|
environment: str,
|
|
263
263
|
project_id: str,
|
|
264
264
|
) -> Dict[str, Any]:
|
|
265
|
-
"""Set one Infisical secret for an environment (``POST /api/secrets/set``).
|
|
265
|
+
"""Set one Infisical secret for an environment (``POST /api/secrets/set``).
|
|
266
|
+
|
|
267
|
+
The wire keys are the canonical ``target_org_id`` / ``target_env``
|
|
268
|
+
(PLAN T6 / board T7); secrets-core rejects the retired
|
|
269
|
+
``target_project_id`` / ``environment`` aliases with a typed
|
|
270
|
+
``invalid_wire_key`` validation error. The Python parameter names are
|
|
271
|
+
unchanged — only the request body vocabulary is canonical.
|
|
272
|
+
"""
|
|
266
273
|
return await self._client._request(
|
|
267
274
|
endpoint="/api/secrets/set",
|
|
268
275
|
method="POST",
|
|
269
276
|
body={
|
|
270
277
|
"key": key,
|
|
271
278
|
"value": value,
|
|
272
|
-
"
|
|
273
|
-
"
|
|
279
|
+
"target_env": environment,
|
|
280
|
+
"target_org_id": project_id,
|
|
274
281
|
},
|
|
275
282
|
use_gateway=True,
|
|
276
283
|
)
|
|
@@ -282,14 +289,17 @@ class SecretsNamespace:
|
|
|
282
289
|
environment: str,
|
|
283
290
|
project_id: str,
|
|
284
291
|
) -> Dict[str, Any]:
|
|
285
|
-
"""Delete one Infisical secret for an environment (``POST /api/secrets/delete``).
|
|
292
|
+
"""Delete one Infisical secret for an environment (``POST /api/secrets/delete``).
|
|
293
|
+
|
|
294
|
+
Canonical wire keys only — see :meth:`set_project_secret`.
|
|
295
|
+
"""
|
|
286
296
|
return await self._client._request(
|
|
287
297
|
endpoint="/api/secrets/delete",
|
|
288
298
|
method="POST",
|
|
289
299
|
body={
|
|
290
300
|
"key": key,
|
|
291
|
-
"
|
|
292
|
-
"
|
|
301
|
+
"target_env": environment,
|
|
302
|
+
"target_org_id": project_id,
|
|
293
303
|
},
|
|
294
304
|
use_gateway=True,
|
|
295
305
|
)
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dominus-sdk-python
|
|
3
|
-
Version: 9.0.
|
|
3
|
+
Version: 9.0.15
|
|
4
4
|
Summary: Python SDK for the Dominus gateway-first platform
|
|
5
5
|
Author-email: CareBridge Systems <dev@carebridge.io>
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
@@ -48,7 +48,7 @@ cleanup audit is `docs/janitor/2026-09-19-1300-sdk-python-cleanup-audit.md`.
|
|
|
48
48
|
- Gateway-scoped client mode for MCP and other user-JWT sessions
|
|
49
49
|
- Transport compatibility for wrapped `{success,data}` responses and unwrapped Warden/control-plane success objects
|
|
50
50
|
- Local helpers for JWT verification, trace propagation, retries, and console capture
|
|
51
|
-
- Current package version: `9.0.
|
|
51
|
+
- Current package version: `9.0.15`
|
|
52
52
|
|
|
53
53
|
## Install
|
|
54
54
|
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_secrets_presence_contract.py
RENAMED
|
@@ -120,6 +120,42 @@ async def test_malformed_responses_fail_without_raw_cell_in_error_or_logs(caplog
|
|
|
120
120
|
assert RAW_SENTINEL not in caplog.text
|
|
121
121
|
|
|
122
122
|
|
|
123
|
+
@pytest.mark.asyncio
|
|
124
|
+
async def test_project_secret_mutations_speak_the_canonical_wire_vocabulary():
|
|
125
|
+
"""T7 contracts the secrets request surface onto target_org_id/target_env.
|
|
126
|
+
|
|
127
|
+
dominus-secrets-core rejects the retired `target_project_id` / `environment`
|
|
128
|
+
aliases with a typed `invalid_wire_key` validation error instead of
|
|
129
|
+
silently ignoring them, so emitting either key here would 400 the call.
|
|
130
|
+
The Python method signatures keep their own parameter names; only the wire
|
|
131
|
+
body keys are canonical.
|
|
132
|
+
"""
|
|
133
|
+
client = Client({"ok": True})
|
|
134
|
+
ns = SecretsNamespace(client)
|
|
135
|
+
|
|
136
|
+
await ns.set_project_secret(key="K", value="V", environment="production", project_id="org-1")
|
|
137
|
+
await ns.delete_project_secret(key="K", environment="production", project_id="org-1")
|
|
138
|
+
|
|
139
|
+
assert client.calls == [
|
|
140
|
+
{
|
|
141
|
+
"endpoint": "/api/secrets/set",
|
|
142
|
+
"method": "POST",
|
|
143
|
+
"body": {"key": "K", "value": "V", "target_env": "production", "target_org_id": "org-1"},
|
|
144
|
+
"use_gateway": True,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"endpoint": "/api/secrets/delete",
|
|
148
|
+
"method": "POST",
|
|
149
|
+
"body": {"key": "K", "target_env": "production", "target_org_id": "org-1"},
|
|
150
|
+
"use_gateway": True,
|
|
151
|
+
},
|
|
152
|
+
]
|
|
153
|
+
|
|
154
|
+
for call in client.calls:
|
|
155
|
+
assert "target_project_id" not in call["body"]
|
|
156
|
+
assert "environment" not in call["body"]
|
|
157
|
+
|
|
158
|
+
|
|
123
159
|
def test_public_types_and_return_annotation_are_exact():
|
|
124
160
|
from dominus import SecretEnvironment, SecretPresenceCell, SecretPresenceGrid
|
|
125
161
|
from dominus.namespaces import (
|
|
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
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/requires.txt
RENAMED
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/dominus_sdk_python.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_authority_public_vocabulary.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_control_plane_namespaces.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_namespace_barrel_exports.py
RENAMED
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_platform_coder_namespaces.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_readme_quickstart_catalog.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dominus_sdk_python-9.0.14 → dominus_sdk_python-9.0.15}/tests/test_stash_tables_namespace.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|