agenticdome-python-sdk 1.2.3__tar.gz → 1.2.5__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 (61) hide show
  1. {agenticdome_python_sdk-1.2.3/agenticdome_python_sdk.egg-info → agenticdome_python_sdk-1.2.5}/PKG-INFO +28 -29
  2. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/README.md +6 -7
  3. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5/agenticdome_python_sdk.egg-info}/PKG-INFO +28 -29
  4. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_python_sdk.egg-info/SOURCES.txt +0 -10
  5. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_python_sdk.egg-info/requires.txt +21 -21
  6. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/pyproject.toml +22 -22
  7. agenticdome_python_sdk-1.2.3/agenticdome_sdk/scenarios.py +0 -196
  8. agenticdome_python_sdk-1.2.3/examples/agno_lateral_refund.py +0 -25
  9. agenticdome_python_sdk-1.2.3/examples/ai_foundry_callback_export.py +0 -16
  10. agenticdome_python_sdk-1.2.3/examples/crewai_lateral_refund.py +0 -25
  11. agenticdome_python_sdk-1.2.3/examples/mcp_remote_patch.py +0 -14
  12. agenticdome_python_sdk-1.2.3/examples/mesh_output_redaction.py +0 -20
  13. agenticdome_python_sdk-1.2.3/examples/microsoft_metadata_exfil.py +0 -17
  14. agenticdome_python_sdk-1.2.3/examples/salesforce_hidden_bcc.py +0 -18
  15. agenticdome_python_sdk-1.2.3/examples/servicenow_delete_logs.py +0 -18
  16. agenticdome_python_sdk-1.2.3/tests/test_packaging_contract.py +0 -178
  17. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/LICENSE +0 -0
  18. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/MANIFEST.in +0 -0
  19. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_python_sdk.egg-info/dependency_links.txt +0 -0
  20. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_python_sdk.egg-info/top_level.txt +0 -0
  21. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/__init__.py +0 -0
  22. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/_framework_firewall.py +0 -0
  23. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/agno.py +0 -0
  24. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/autogen.py +0 -0
  25. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/aws_bedrock.py +0 -0
  26. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/claude.py +0 -0
  27. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/client.py +0 -0
  28. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/crewai.py +0 -0
  29. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/google_adk.py +0 -0
  30. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/identity.py +0 -0
  31. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/langgraph.py +0 -0
  32. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/llamaindex.py +0 -0
  33. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/mcp_host.py +0 -0
  34. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/microsoft_agent_framework.py +0 -0
  35. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/microsoft_ai_foundry.py +0 -0
  36. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/openai_agents.py +0 -0
  37. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/proof.py +0 -0
  38. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/pydantic.py +0 -0
  39. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/agenticdome_sdk/smolagents.py +0 -0
  40. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/examples/attack_demo.py +0 -0
  41. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/examples/crewai_agenticdome_firewall.py +0 -0
  42. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/setup.cfg +0 -0
  43. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/setup.py +0 -0
  44. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_agno_integration.py +0 -0
  45. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_attack_demo.py +0 -0
  46. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_autogen_integration.py +0 -0
  47. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_aws_bedrock_integration.py +0 -0
  48. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_claude_integration.py +0 -0
  49. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_client.py +0 -0
  50. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_crewai_integration.py +0 -0
  51. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_google_adk_integration.py +0 -0
  52. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_identity_context.py +0 -0
  53. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_langgraph_integration.py +0 -0
  54. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_live_tenant.py +0 -0
  55. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_llamaindex_integration.py +0 -0
  56. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_mcp_host_integration.py +0 -0
  57. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_microsoft_agent_framework_integration.py +0 -0
  58. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_microsoft_ai_foundry_integration.py +0 -0
  59. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_openai_agents_integration.py +0 -0
  60. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_pydanticai_integration.py +0 -0
  61. {agenticdome_python_sdk-1.2.3 → agenticdome_python_sdk-1.2.5}/tests/test_smolagents_integration.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agenticdome-python-sdk
3
- Version: 1.2.3
3
+ Version: 1.2.5
4
4
  Summary: Official Python SDK for AgenticDome security guardrails, DLP, tool authorization, and multi-agent delegation enforcement.
5
5
  Author: AgenticDome
6
6
  License: Proprietary
@@ -27,20 +27,20 @@ License-File: LICENSE
27
27
  Requires-Dist: requests>=2.31.0
28
28
  Requires-Dist: urllib3>=2.0.0
29
29
  Provides-Extra: crewai
30
- Requires-Dist: crewai<=1.15.6,>=1.15.5; extra == "crewai"
30
+ Requires-Dist: crewai<=1.15.10,>=1.15.5; extra == "crewai"
31
31
  Provides-Extra: redis
32
32
  Requires-Dist: redis>=4.5.0; extra == "redis"
33
33
  Provides-Extra: pop
34
34
  Requires-Dist: cryptography>=42.0.0; extra == "pop"
35
35
  Provides-Extra: pydanticai
36
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "pydanticai"
36
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "pydanticai"
37
37
  Requires-Dist: anyio>=4.0.0; extra == "pydanticai"
38
38
  Provides-Extra: pydantic
39
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "pydantic"
39
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "pydantic"
40
40
  Requires-Dist: anyio>=4.0.0; extra == "pydantic"
41
41
  Provides-Extra: langgraph
42
- Requires-Dist: langgraph==1.2.9; extra == "langgraph"
43
- Requires-Dist: langchain-core<=1.5.1,>=1.5.0; extra == "langgraph"
42
+ Requires-Dist: langgraph<=1.2.10,>=1.2.9; extra == "langgraph"
43
+ Requires-Dist: langchain-core<=1.5.3,>=1.5.0; extra == "langgraph"
44
44
  Requires-Dist: langchain-openai==1.3.5; extra == "langgraph"
45
45
  Requires-Dist: anyio>=4.0.0; extra == "langgraph"
46
46
  Provides-Extra: microsoft
@@ -49,26 +49,26 @@ Requires-Dist: autogen-agentchat==0.7.5; extra == "autogen"
49
49
  Provides-Extra: microsoft-autogen
50
50
  Requires-Dist: autogen-agentchat==0.7.5; extra == "microsoft-autogen"
51
51
  Provides-Extra: foundry
52
- Requires-Dist: azure-ai-projects==2.3.0; extra == "foundry"
52
+ Requires-Dist: azure-ai-projects<=2.4.0,>=2.3.0; extra == "foundry"
53
53
  Requires-Dist: azure-identity==1.25.3; extra == "foundry"
54
54
  Provides-Extra: agno
55
- Requires-Dist: agno<=2.8.3,>=2.8.0; extra == "agno"
55
+ Requires-Dist: agno<=2.8.6,>=2.8.0; extra == "agno"
56
56
  Provides-Extra: openai-agents
57
- Requires-Dist: openai-agents==0.18.3; extra == "openai-agents"
57
+ Requires-Dist: openai-agents<=0.19.2,>=0.18.3; extra == "openai-agents"
58
58
  Provides-Extra: mcp
59
59
  Requires-Dist: mcp<=1.28.1,>=1.26.0; extra == "mcp"
60
60
  Provides-Extra: bedrock
61
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "bedrock"
61
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "bedrock"
62
62
  Provides-Extra: aws-bedrock
63
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "aws-bedrock"
63
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "aws-bedrock"
64
64
  Provides-Extra: llamaindex
65
65
  Requires-Dist: llama-index==0.14.23; extra == "llamaindex"
66
66
  Provides-Extra: llama-index
67
67
  Requires-Dist: llama-index==0.14.23; extra == "llama-index"
68
68
  Provides-Extra: google-adk
69
- Requires-Dist: google-adk==2.5.0; extra == "google-adk"
69
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "google-adk"
70
70
  Provides-Extra: adk
71
- Requires-Dist: google-adk==2.5.0; extra == "adk"
71
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "adk"
72
72
  Provides-Extra: claude
73
73
  Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "claude"
74
74
  Provides-Extra: claude-agent-sdk
@@ -76,23 +76,23 @@ Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "claude-agent-sdk"
76
76
  Provides-Extra: smolagents
77
77
  Requires-Dist: smolagents==1.26.0; extra == "smolagents"
78
78
  Provides-Extra: all
79
- Requires-Dist: crewai<=1.15.6,>=1.15.5; extra == "all"
79
+ Requires-Dist: crewai<=1.15.10,>=1.15.5; extra == "all"
80
80
  Requires-Dist: redis>=4.5.0; extra == "all"
81
81
  Requires-Dist: cryptography>=42.0.0; extra == "all"
82
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "all"
82
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "all"
83
83
  Requires-Dist: anyio>=4.0.0; extra == "all"
84
- Requires-Dist: langgraph==1.2.9; extra == "all"
85
- Requires-Dist: langchain-core<=1.5.1,>=1.5.0; extra == "all"
84
+ Requires-Dist: langgraph<=1.2.10,>=1.2.9; extra == "all"
85
+ Requires-Dist: langchain-core<=1.5.3,>=1.5.0; extra == "all"
86
86
  Requires-Dist: langchain-openai==1.3.5; extra == "all"
87
87
  Requires-Dist: autogen-agentchat==0.7.5; extra == "all"
88
- Requires-Dist: agno<=2.8.3,>=2.8.0; extra == "all"
89
- Requires-Dist: azure-ai-projects==2.3.0; extra == "all"
88
+ Requires-Dist: agno<=2.8.6,>=2.8.0; extra == "all"
89
+ Requires-Dist: azure-ai-projects<=2.4.0,>=2.3.0; extra == "all"
90
90
  Requires-Dist: azure-identity==1.25.3; extra == "all"
91
- Requires-Dist: openai-agents==0.18.3; extra == "all"
91
+ Requires-Dist: openai-agents<=0.19.2,>=0.18.3; extra == "all"
92
92
  Requires-Dist: mcp<=1.28.1,>=1.26.0; extra == "all"
93
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "all"
93
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "all"
94
94
  Requires-Dist: llama-index==0.14.23; extra == "all"
95
- Requires-Dist: google-adk==2.5.0; extra == "all"
95
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "all"
96
96
  Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "all"
97
97
  Requires-Dist: smolagents==1.26.0; extra == "all"
98
98
  Provides-Extra: dev
@@ -2491,7 +2491,7 @@ python -m build
2491
2491
  python -m twine check dist/*
2492
2492
  ```
2493
2493
 
2494
- `python -m pytest -q` runs the core SDK tests, package metadata contract tests, and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services.
2494
+ `python -m pytest -q` runs the core SDK tests and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services. Private release automation separately validates package metadata and rejects internal-only files from both wheel and source-distribution artifacts.
2495
2495
 
2496
2496
  ### Framework Test Matrix
2497
2497
 
@@ -2505,7 +2505,6 @@ python -m pytest -q tests/test_langgraph_integration.py
2505
2505
  | Runtime / integration | Test command | Coverage focus |
2506
2506
  | :--- | :--- | :--- |
2507
2507
  | Core SDK client | `python -m pytest -q tests/test_client.py` | Request validation, headers, guardrail calls, A2A/MCP JSON-RPC calls, Mesh DLP, HTTP errors, JSON handling |
2508
- | Package contract | `python -m pytest -q tests/test_packaging_contract.py` | `pyproject.toml` metadata, legacy `setup.py` shim, public exports, manifest hygiene, ignored build artifacts, documented extras |
2509
2508
  | Attack demos | `python -m pytest -q tests/test_attack_demo.py` | Offline vulnerable-vs-protected CLI coverage, including AutoGen, Claude Agent SDK, and Hugging Face smolagents |
2510
2509
  | CrewAI | `python -m pytest -q tests/test_crewai_integration.py` | Prompt/tool hooks, handoff token injection, specialist verification, output redaction, schema checks, rate limits, retries, streaming DLP |
2511
2510
  | PydanticAI | `python -m pytest -q tests/test_pydanticai_integration.py` | Agent hooks, secure tools, sanitized arguments, token-store fallback, production session enforcement, rate limits, retries, streaming output |
@@ -2524,15 +2523,16 @@ python -m pytest -q tests/test_langgraph_integration.py
2524
2523
 
2525
2524
  ### Release gates
2526
2525
 
2527
- **Metadata and artifact validation only:**
2526
+ **Metadata and artifact validation:**
2528
2527
 
2529
2528
  ```bash
2530
- python -m pytest -q tests/test_packaging_contract.py
2531
2529
  rm -rf build dist *.egg-info agenticdome_sdk.egg-info agenticdome_python_sdk.egg-info
2532
2530
  python -m build
2533
2531
  python -m twine check dist/*
2534
2532
  ```
2535
2533
 
2534
+ The private release pipeline performs additional package-contract and forbidden-file checks before upload.
2535
+
2536
2536
  **Full offline release gate** across all supported Python integrations:
2537
2537
 
2538
2538
  ```bash
@@ -2543,17 +2543,16 @@ python -m build
2543
2543
  python -m twine check dist/*
2544
2544
  ```
2545
2545
 
2546
- **Focused verification** — packaging checks plus optional live tenant smoke tests:
2546
+ **Focused verification** — optional live tenant smoke tests:
2547
2547
 
2548
2548
  ```bash
2549
- python -m pytest -q tests/test_packaging_contract.py tests/test_live_tenant.py
2549
+ python -m pytest -q tests/test_live_tenant.py
2550
2550
  ```
2551
2551
 
2552
2552
  | Part | Meaning |
2553
2553
  | :--- | :--- |
2554
2554
  | `python -m pytest` | Runs `pytest` using the current Python environment |
2555
2555
  | `-q` | Quiet mode — compact results instead of verbose test names |
2556
- | `tests/test_packaging_contract.py` | Packaging and release-quality checks: `pyproject.toml` metadata, minimal `setup.py` shim, public imports, `.gitignore`, `MANIFEST.in`, README verification coverage |
2557
2556
  | `tests/test_live_tenant.py` | Live AgenticDome tenant smoke tests — skipped by default, only runs when explicitly enabled |
2558
2557
 
2559
2558
  **Live tenant release gate** — against a real AgenticDome tenant:
@@ -2385,7 +2385,7 @@ python -m build
2385
2385
  python -m twine check dist/*
2386
2386
  ```
2387
2387
 
2388
- `python -m pytest -q` runs the core SDK tests, package metadata contract tests, and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services.
2388
+ `python -m pytest -q` runs the core SDK tests and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services. Private release automation separately validates package metadata and rejects internal-only files from both wheel and source-distribution artifacts.
2389
2389
 
2390
2390
  ### Framework Test Matrix
2391
2391
 
@@ -2399,7 +2399,6 @@ python -m pytest -q tests/test_langgraph_integration.py
2399
2399
  | Runtime / integration | Test command | Coverage focus |
2400
2400
  | :--- | :--- | :--- |
2401
2401
  | Core SDK client | `python -m pytest -q tests/test_client.py` | Request validation, headers, guardrail calls, A2A/MCP JSON-RPC calls, Mesh DLP, HTTP errors, JSON handling |
2402
- | Package contract | `python -m pytest -q tests/test_packaging_contract.py` | `pyproject.toml` metadata, legacy `setup.py` shim, public exports, manifest hygiene, ignored build artifacts, documented extras |
2403
2402
  | Attack demos | `python -m pytest -q tests/test_attack_demo.py` | Offline vulnerable-vs-protected CLI coverage, including AutoGen, Claude Agent SDK, and Hugging Face smolagents |
2404
2403
  | CrewAI | `python -m pytest -q tests/test_crewai_integration.py` | Prompt/tool hooks, handoff token injection, specialist verification, output redaction, schema checks, rate limits, retries, streaming DLP |
2405
2404
  | PydanticAI | `python -m pytest -q tests/test_pydanticai_integration.py` | Agent hooks, secure tools, sanitized arguments, token-store fallback, production session enforcement, rate limits, retries, streaming output |
@@ -2418,15 +2417,16 @@ python -m pytest -q tests/test_langgraph_integration.py
2418
2417
 
2419
2418
  ### Release gates
2420
2419
 
2421
- **Metadata and artifact validation only:**
2420
+ **Metadata and artifact validation:**
2422
2421
 
2423
2422
  ```bash
2424
- python -m pytest -q tests/test_packaging_contract.py
2425
2423
  rm -rf build dist *.egg-info agenticdome_sdk.egg-info agenticdome_python_sdk.egg-info
2426
2424
  python -m build
2427
2425
  python -m twine check dist/*
2428
2426
  ```
2429
2427
 
2428
+ The private release pipeline performs additional package-contract and forbidden-file checks before upload.
2429
+
2430
2430
  **Full offline release gate** across all supported Python integrations:
2431
2431
 
2432
2432
  ```bash
@@ -2437,17 +2437,16 @@ python -m build
2437
2437
  python -m twine check dist/*
2438
2438
  ```
2439
2439
 
2440
- **Focused verification** — packaging checks plus optional live tenant smoke tests:
2440
+ **Focused verification** — optional live tenant smoke tests:
2441
2441
 
2442
2442
  ```bash
2443
- python -m pytest -q tests/test_packaging_contract.py tests/test_live_tenant.py
2443
+ python -m pytest -q tests/test_live_tenant.py
2444
2444
  ```
2445
2445
 
2446
2446
  | Part | Meaning |
2447
2447
  | :--- | :--- |
2448
2448
  | `python -m pytest` | Runs `pytest` using the current Python environment |
2449
2449
  | `-q` | Quiet mode — compact results instead of verbose test names |
2450
- | `tests/test_packaging_contract.py` | Packaging and release-quality checks: `pyproject.toml` metadata, minimal `setup.py` shim, public imports, `.gitignore`, `MANIFEST.in`, README verification coverage |
2451
2450
  | `tests/test_live_tenant.py` | Live AgenticDome tenant smoke tests — skipped by default, only runs when explicitly enabled |
2452
2451
 
2453
2452
  **Live tenant release gate** — against a real AgenticDome tenant:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agenticdome-python-sdk
3
- Version: 1.2.3
3
+ Version: 1.2.5
4
4
  Summary: Official Python SDK for AgenticDome security guardrails, DLP, tool authorization, and multi-agent delegation enforcement.
5
5
  Author: AgenticDome
6
6
  License: Proprietary
@@ -27,20 +27,20 @@ License-File: LICENSE
27
27
  Requires-Dist: requests>=2.31.0
28
28
  Requires-Dist: urllib3>=2.0.0
29
29
  Provides-Extra: crewai
30
- Requires-Dist: crewai<=1.15.6,>=1.15.5; extra == "crewai"
30
+ Requires-Dist: crewai<=1.15.10,>=1.15.5; extra == "crewai"
31
31
  Provides-Extra: redis
32
32
  Requires-Dist: redis>=4.5.0; extra == "redis"
33
33
  Provides-Extra: pop
34
34
  Requires-Dist: cryptography>=42.0.0; extra == "pop"
35
35
  Provides-Extra: pydanticai
36
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "pydanticai"
36
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "pydanticai"
37
37
  Requires-Dist: anyio>=4.0.0; extra == "pydanticai"
38
38
  Provides-Extra: pydantic
39
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "pydantic"
39
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "pydantic"
40
40
  Requires-Dist: anyio>=4.0.0; extra == "pydantic"
41
41
  Provides-Extra: langgraph
42
- Requires-Dist: langgraph==1.2.9; extra == "langgraph"
43
- Requires-Dist: langchain-core<=1.5.1,>=1.5.0; extra == "langgraph"
42
+ Requires-Dist: langgraph<=1.2.10,>=1.2.9; extra == "langgraph"
43
+ Requires-Dist: langchain-core<=1.5.3,>=1.5.0; extra == "langgraph"
44
44
  Requires-Dist: langchain-openai==1.3.5; extra == "langgraph"
45
45
  Requires-Dist: anyio>=4.0.0; extra == "langgraph"
46
46
  Provides-Extra: microsoft
@@ -49,26 +49,26 @@ Requires-Dist: autogen-agentchat==0.7.5; extra == "autogen"
49
49
  Provides-Extra: microsoft-autogen
50
50
  Requires-Dist: autogen-agentchat==0.7.5; extra == "microsoft-autogen"
51
51
  Provides-Extra: foundry
52
- Requires-Dist: azure-ai-projects==2.3.0; extra == "foundry"
52
+ Requires-Dist: azure-ai-projects<=2.4.0,>=2.3.0; extra == "foundry"
53
53
  Requires-Dist: azure-identity==1.25.3; extra == "foundry"
54
54
  Provides-Extra: agno
55
- Requires-Dist: agno<=2.8.3,>=2.8.0; extra == "agno"
55
+ Requires-Dist: agno<=2.8.6,>=2.8.0; extra == "agno"
56
56
  Provides-Extra: openai-agents
57
- Requires-Dist: openai-agents==0.18.3; extra == "openai-agents"
57
+ Requires-Dist: openai-agents<=0.19.2,>=0.18.3; extra == "openai-agents"
58
58
  Provides-Extra: mcp
59
59
  Requires-Dist: mcp<=1.28.1,>=1.26.0; extra == "mcp"
60
60
  Provides-Extra: bedrock
61
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "bedrock"
61
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "bedrock"
62
62
  Provides-Extra: aws-bedrock
63
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "aws-bedrock"
63
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "aws-bedrock"
64
64
  Provides-Extra: llamaindex
65
65
  Requires-Dist: llama-index==0.14.23; extra == "llamaindex"
66
66
  Provides-Extra: llama-index
67
67
  Requires-Dist: llama-index==0.14.23; extra == "llama-index"
68
68
  Provides-Extra: google-adk
69
- Requires-Dist: google-adk==2.5.0; extra == "google-adk"
69
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "google-adk"
70
70
  Provides-Extra: adk
71
- Requires-Dist: google-adk==2.5.0; extra == "adk"
71
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "adk"
72
72
  Provides-Extra: claude
73
73
  Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "claude"
74
74
  Provides-Extra: claude-agent-sdk
@@ -76,23 +76,23 @@ Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "claude-agent-sdk"
76
76
  Provides-Extra: smolagents
77
77
  Requires-Dist: smolagents==1.26.0; extra == "smolagents"
78
78
  Provides-Extra: all
79
- Requires-Dist: crewai<=1.15.6,>=1.15.5; extra == "all"
79
+ Requires-Dist: crewai<=1.15.10,>=1.15.5; extra == "all"
80
80
  Requires-Dist: redis>=4.5.0; extra == "all"
81
81
  Requires-Dist: cryptography>=42.0.0; extra == "all"
82
- Requires-Dist: pydantic-ai<=2.18.0,>=2.16.0; extra == "all"
82
+ Requires-Dist: pydantic-ai<=2.22.0,>=2.16.0; extra == "all"
83
83
  Requires-Dist: anyio>=4.0.0; extra == "all"
84
- Requires-Dist: langgraph==1.2.9; extra == "all"
85
- Requires-Dist: langchain-core<=1.5.1,>=1.5.0; extra == "all"
84
+ Requires-Dist: langgraph<=1.2.10,>=1.2.9; extra == "all"
85
+ Requires-Dist: langchain-core<=1.5.3,>=1.5.0; extra == "all"
86
86
  Requires-Dist: langchain-openai==1.3.5; extra == "all"
87
87
  Requires-Dist: autogen-agentchat==0.7.5; extra == "all"
88
- Requires-Dist: agno<=2.8.3,>=2.8.0; extra == "all"
89
- Requires-Dist: azure-ai-projects==2.3.0; extra == "all"
88
+ Requires-Dist: agno<=2.8.6,>=2.8.0; extra == "all"
89
+ Requires-Dist: azure-ai-projects<=2.4.0,>=2.3.0; extra == "all"
90
90
  Requires-Dist: azure-identity==1.25.3; extra == "all"
91
- Requires-Dist: openai-agents==0.18.3; extra == "all"
91
+ Requires-Dist: openai-agents<=0.19.2,>=0.18.3; extra == "all"
92
92
  Requires-Dist: mcp<=1.28.1,>=1.26.0; extra == "all"
93
- Requires-Dist: boto3<=1.43.56,>=1.43.54; extra == "all"
93
+ Requires-Dist: boto3<=1.43.62,>=1.43.54; extra == "all"
94
94
  Requires-Dist: llama-index==0.14.23; extra == "all"
95
- Requires-Dist: google-adk==2.5.0; extra == "all"
95
+ Requires-Dist: google-adk<=2.6.1,>=2.5.0; extra == "all"
96
96
  Requires-Dist: claude-agent-sdk<=0.2.128,>=0.2.126; extra == "all"
97
97
  Requires-Dist: smolagents==1.26.0; extra == "all"
98
98
  Provides-Extra: dev
@@ -2491,7 +2491,7 @@ python -m build
2491
2491
  python -m twine check dist/*
2492
2492
  ```
2493
2493
 
2494
- `python -m pytest -q` runs the core SDK tests, package metadata contract tests, and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services.
2494
+ `python -m pytest -q` runs the core SDK tests and every dependency-light framework adapter test in one pass — the normal offline full-suite command. Adapter tests use fake framework/client boundaries where possible, so CI verifies authorization, delegation-token handling, sanitized tool arguments, output DLP, streaming sanitization, rate limits, and fail-open/fail-closed behavior without live third-party services. Private release automation separately validates package metadata and rejects internal-only files from both wheel and source-distribution artifacts.
2495
2495
 
2496
2496
  ### Framework Test Matrix
2497
2497
 
@@ -2505,7 +2505,6 @@ python -m pytest -q tests/test_langgraph_integration.py
2505
2505
  | Runtime / integration | Test command | Coverage focus |
2506
2506
  | :--- | :--- | :--- |
2507
2507
  | Core SDK client | `python -m pytest -q tests/test_client.py` | Request validation, headers, guardrail calls, A2A/MCP JSON-RPC calls, Mesh DLP, HTTP errors, JSON handling |
2508
- | Package contract | `python -m pytest -q tests/test_packaging_contract.py` | `pyproject.toml` metadata, legacy `setup.py` shim, public exports, manifest hygiene, ignored build artifacts, documented extras |
2509
2508
  | Attack demos | `python -m pytest -q tests/test_attack_demo.py` | Offline vulnerable-vs-protected CLI coverage, including AutoGen, Claude Agent SDK, and Hugging Face smolagents |
2510
2509
  | CrewAI | `python -m pytest -q tests/test_crewai_integration.py` | Prompt/tool hooks, handoff token injection, specialist verification, output redaction, schema checks, rate limits, retries, streaming DLP |
2511
2510
  | PydanticAI | `python -m pytest -q tests/test_pydanticai_integration.py` | Agent hooks, secure tools, sanitized arguments, token-store fallback, production session enforcement, rate limits, retries, streaming output |
@@ -2524,15 +2523,16 @@ python -m pytest -q tests/test_langgraph_integration.py
2524
2523
 
2525
2524
  ### Release gates
2526
2525
 
2527
- **Metadata and artifact validation only:**
2526
+ **Metadata and artifact validation:**
2528
2527
 
2529
2528
  ```bash
2530
- python -m pytest -q tests/test_packaging_contract.py
2531
2529
  rm -rf build dist *.egg-info agenticdome_sdk.egg-info agenticdome_python_sdk.egg-info
2532
2530
  python -m build
2533
2531
  python -m twine check dist/*
2534
2532
  ```
2535
2533
 
2534
+ The private release pipeline performs additional package-contract and forbidden-file checks before upload.
2535
+
2536
2536
  **Full offline release gate** across all supported Python integrations:
2537
2537
 
2538
2538
  ```bash
@@ -2543,17 +2543,16 @@ python -m build
2543
2543
  python -m twine check dist/*
2544
2544
  ```
2545
2545
 
2546
- **Focused verification** — packaging checks plus optional live tenant smoke tests:
2546
+ **Focused verification** — optional live tenant smoke tests:
2547
2547
 
2548
2548
  ```bash
2549
- python -m pytest -q tests/test_packaging_contract.py tests/test_live_tenant.py
2549
+ python -m pytest -q tests/test_live_tenant.py
2550
2550
  ```
2551
2551
 
2552
2552
  | Part | Meaning |
2553
2553
  | :--- | :--- |
2554
2554
  | `python -m pytest` | Runs `pytest` using the current Python environment |
2555
2555
  | `-q` | Quiet mode — compact results instead of verbose test names |
2556
- | `tests/test_packaging_contract.py` | Packaging and release-quality checks: `pyproject.toml` metadata, minimal `setup.py` shim, public imports, `.gitignore`, `MANIFEST.in`, README verification coverage |
2557
2556
  | `tests/test_live_tenant.py` | Live AgenticDome tenant smoke tests — skipped by default, only runs when explicitly enabled |
2558
2557
 
2559
2558
  **Live tenant release gate** — against a real AgenticDome tenant:
@@ -26,18 +26,9 @@ agenticdome_sdk/microsoft_ai_foundry.py
26
26
  agenticdome_sdk/openai_agents.py
27
27
  agenticdome_sdk/proof.py
28
28
  agenticdome_sdk/pydantic.py
29
- agenticdome_sdk/scenarios.py
30
29
  agenticdome_sdk/smolagents.py
31
- examples/agno_lateral_refund.py
32
- examples/ai_foundry_callback_export.py
33
30
  examples/attack_demo.py
34
31
  examples/crewai_agenticdome_firewall.py
35
- examples/crewai_lateral_refund.py
36
- examples/mcp_remote_patch.py
37
- examples/mesh_output_redaction.py
38
- examples/microsoft_metadata_exfil.py
39
- examples/salesforce_hidden_bcc.py
40
- examples/servicenow_delete_logs.py
41
32
  tests/test_agno_integration.py
42
33
  tests/test_attack_demo.py
43
34
  tests/test_autogen_integration.py
@@ -54,6 +45,5 @@ tests/test_mcp_host_integration.py
54
45
  tests/test_microsoft_agent_framework_integration.py
55
46
  tests/test_microsoft_ai_foundry_integration.py
56
47
  tests/test_openai_agents_integration.py
57
- tests/test_packaging_contract.py
58
48
  tests/test_pydanticai_integration.py
59
49
  tests/test_smolagents_integration.py
@@ -2,29 +2,29 @@ requests>=2.31.0
2
2
  urllib3>=2.0.0
3
3
 
4
4
  [adk]
5
- google-adk==2.5.0
5
+ google-adk<=2.6.1,>=2.5.0
6
6
 
7
7
  [agno]
8
- agno<=2.8.3,>=2.8.0
8
+ agno<=2.8.6,>=2.8.0
9
9
 
10
10
  [all]
11
- crewai<=1.15.6,>=1.15.5
11
+ crewai<=1.15.10,>=1.15.5
12
12
  redis>=4.5.0
13
13
  cryptography>=42.0.0
14
- pydantic-ai<=2.18.0,>=2.16.0
14
+ pydantic-ai<=2.22.0,>=2.16.0
15
15
  anyio>=4.0.0
16
- langgraph==1.2.9
17
- langchain-core<=1.5.1,>=1.5.0
16
+ langgraph<=1.2.10,>=1.2.9
17
+ langchain-core<=1.5.3,>=1.5.0
18
18
  langchain-openai==1.3.5
19
19
  autogen-agentchat==0.7.5
20
- agno<=2.8.3,>=2.8.0
21
- azure-ai-projects==2.3.0
20
+ agno<=2.8.6,>=2.8.0
21
+ azure-ai-projects<=2.4.0,>=2.3.0
22
22
  azure-identity==1.25.3
23
- openai-agents==0.18.3
23
+ openai-agents<=0.19.2,>=0.18.3
24
24
  mcp<=1.28.1,>=1.26.0
25
- boto3<=1.43.56,>=1.43.54
25
+ boto3<=1.43.62,>=1.43.54
26
26
  llama-index==0.14.23
27
- google-adk==2.5.0
27
+ google-adk<=2.6.1,>=2.5.0
28
28
  claude-agent-sdk<=0.2.128,>=0.2.126
29
29
  smolagents==1.26.0
30
30
 
@@ -32,10 +32,10 @@ smolagents==1.26.0
32
32
  autogen-agentchat==0.7.5
33
33
 
34
34
  [aws-bedrock]
35
- boto3<=1.43.56,>=1.43.54
35
+ boto3<=1.43.62,>=1.43.54
36
36
 
37
37
  [bedrock]
38
- boto3<=1.43.56,>=1.43.54
38
+ boto3<=1.43.62,>=1.43.54
39
39
 
40
40
  [claude]
41
41
  claude-agent-sdk<=0.2.128,>=0.2.126
@@ -44,7 +44,7 @@ claude-agent-sdk<=0.2.128,>=0.2.126
44
44
  claude-agent-sdk<=0.2.128,>=0.2.126
45
45
 
46
46
  [crewai]
47
- crewai<=1.15.6,>=1.15.5
47
+ crewai<=1.15.10,>=1.15.5
48
48
 
49
49
  [dev]
50
50
  pytest>=8.0.0
@@ -57,15 +57,15 @@ twine>=5.0.0
57
57
  tomli>=2.0.0
58
58
 
59
59
  [foundry]
60
- azure-ai-projects==2.3.0
60
+ azure-ai-projects<=2.4.0,>=2.3.0
61
61
  azure-identity==1.25.3
62
62
 
63
63
  [google-adk]
64
- google-adk==2.5.0
64
+ google-adk<=2.6.1,>=2.5.0
65
65
 
66
66
  [langgraph]
67
- langgraph==1.2.9
68
- langchain-core<=1.5.1,>=1.5.0
67
+ langgraph<=1.2.10,>=1.2.9
68
+ langchain-core<=1.5.3,>=1.5.0
69
69
  langchain-openai==1.3.5
70
70
  anyio>=4.0.0
71
71
 
@@ -84,17 +84,17 @@ mcp<=1.28.1,>=1.26.0
84
84
  autogen-agentchat==0.7.5
85
85
 
86
86
  [openai-agents]
87
- openai-agents==0.18.3
87
+ openai-agents<=0.19.2,>=0.18.3
88
88
 
89
89
  [pop]
90
90
  cryptography>=42.0.0
91
91
 
92
92
  [pydantic]
93
- pydantic-ai<=2.18.0,>=2.16.0
93
+ pydantic-ai<=2.22.0,>=2.16.0
94
94
  anyio>=4.0.0
95
95
 
96
96
  [pydanticai]
97
- pydantic-ai<=2.18.0,>=2.16.0
97
+ pydantic-ai<=2.22.0,>=2.16.0
98
98
  anyio>=4.0.0
99
99
 
100
100
  [redis]
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "agenticdome-python-sdk"
7
- version = "1.2.3"
7
+ version = "1.2.5"
8
8
  description = "Official Python SDK for AgenticDome security guardrails, DLP, tool authorization, and multi-agent delegation enforcement."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -48,7 +48,7 @@ dependencies = [
48
48
 
49
49
  [project.optional-dependencies]
50
50
  crewai = [
51
- "crewai>=1.15.5,<=1.15.6"
51
+ "crewai>=1.15.5,<=1.15.10"
52
52
  ]
53
53
  redis = [
54
54
  "redis>=4.5.0"
@@ -57,16 +57,16 @@ pop = [
57
57
  "cryptography>=42.0.0"
58
58
  ]
59
59
  pydanticai = [
60
- "pydantic-ai>=2.16.0,<=2.18.0",
60
+ "pydantic-ai>=2.16.0,<=2.22.0",
61
61
  "anyio>=4.0.0"
62
62
  ]
63
63
  pydantic = [
64
- "pydantic-ai>=2.16.0,<=2.18.0",
64
+ "pydantic-ai>=2.16.0,<=2.22.0",
65
65
  "anyio>=4.0.0"
66
66
  ]
67
67
  langgraph = [
68
- "langgraph==1.2.9",
69
- "langchain-core>=1.5.0,<=1.5.1",
68
+ "langgraph>=1.2.9,<=1.2.10",
69
+ "langchain-core>=1.5.0,<=1.5.3",
70
70
  "langchain-openai==1.3.5",
71
71
  "anyio>=4.0.0"
72
72
  ]
@@ -78,23 +78,23 @@ microsoft-autogen = [
78
78
  "autogen-agentchat==0.7.5"
79
79
  ]
80
80
  foundry = [
81
- "azure-ai-projects==2.3.0",
81
+ "azure-ai-projects>=2.3.0,<=2.4.0",
82
82
  "azure-identity==1.25.3"
83
83
  ]
84
84
  agno = [
85
- "agno>=2.8.0,<=2.8.3"
85
+ "agno>=2.8.0,<=2.8.6"
86
86
  ]
87
87
  openai-agents = [
88
- "openai-agents==0.18.3"
88
+ "openai-agents>=0.18.3,<=0.19.2"
89
89
  ]
90
90
  mcp = [
91
91
  "mcp>=1.26.0,<=1.28.1"
92
92
  ]
93
93
  bedrock = [
94
- "boto3>=1.43.54,<=1.43.56"
94
+ "boto3>=1.43.54,<=1.43.62"
95
95
  ]
96
96
  aws-bedrock = [
97
- "boto3>=1.43.54,<=1.43.56"
97
+ "boto3>=1.43.54,<=1.43.62"
98
98
  ]
99
99
  llamaindex = [
100
100
  "llama-index==0.14.23"
@@ -103,10 +103,10 @@ llama-index = [
103
103
  "llama-index==0.14.23"
104
104
  ]
105
105
  google-adk = [
106
- "google-adk==2.5.0"
106
+ "google-adk>=2.5.0,<=2.6.1"
107
107
  ]
108
108
  adk = [
109
- "google-adk==2.5.0"
109
+ "google-adk>=2.5.0,<=2.6.1"
110
110
  ]
111
111
  claude = [
112
112
  "claude-agent-sdk>=0.2.126,<=0.2.128"
@@ -118,23 +118,23 @@ smolagents = [
118
118
  "smolagents==1.26.0"
119
119
  ]
120
120
  all = [
121
- "crewai>=1.15.5,<=1.15.6",
121
+ "crewai>=1.15.5,<=1.15.10",
122
122
  "redis>=4.5.0",
123
123
  "cryptography>=42.0.0",
124
- "pydantic-ai>=2.16.0,<=2.18.0",
124
+ "pydantic-ai>=2.16.0,<=2.22.0",
125
125
  "anyio>=4.0.0",
126
- "langgraph==1.2.9",
127
- "langchain-core>=1.5.0,<=1.5.1",
126
+ "langgraph>=1.2.9,<=1.2.10",
127
+ "langchain-core>=1.5.0,<=1.5.3",
128
128
  "langchain-openai==1.3.5",
129
129
  "autogen-agentchat==0.7.5",
130
- "agno>=2.8.0,<=2.8.3",
131
- "azure-ai-projects==2.3.0",
130
+ "agno>=2.8.0,<=2.8.6",
131
+ "azure-ai-projects>=2.3.0,<=2.4.0",
132
132
  "azure-identity==1.25.3",
133
- "openai-agents==0.18.3",
133
+ "openai-agents>=0.18.3,<=0.19.2",
134
134
  "mcp>=1.26.0,<=1.28.1",
135
- "boto3>=1.43.54,<=1.43.56",
135
+ "boto3>=1.43.54,<=1.43.62",
136
136
  "llama-index==0.14.23",
137
- "google-adk==2.5.0",
137
+ "google-adk>=2.5.0,<=2.6.1",
138
138
  "claude-agent-sdk>=0.2.126,<=0.2.128",
139
139
  "smolagents==1.26.0"
140
140
  ]