coding-client 1.21.2__py3-none-any.whl

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 (109) hide show
  1. coding_client/__init__.py +1 -0
  2. coding_client/api/__init__.py +19 -0
  3. coding_client/api/exception_handlers.py +158 -0
  4. coding_client/api/logging_setup.py +44 -0
  5. coding_client/api/metrics.py +40 -0
  6. coding_client/api/openapi_config.py +124 -0
  7. coding_client/api/request_logging.py +60 -0
  8. coding_client/api/validation.py +150 -0
  9. coding_client/auth/__init__.py +78 -0
  10. coding_client/auth/_default_tenant.py +132 -0
  11. coding_client/auth/_header_trust.py +98 -0
  12. coding_client/auth/_onbehalf.py +315 -0
  13. coding_client/auth/_trusted_networks.py +94 -0
  14. coding_client/auth/dependencies.py +61 -0
  15. coding_client/auth/middleware.py +445 -0
  16. coding_client/auth/models.py +83 -0
  17. coding_client/auth/outbound.py +137 -0
  18. coding_client/auth/rbac.py +21 -0
  19. coding_client/auth/rbac_coding.py +5 -0
  20. coding_client/auth/tenant.py +650 -0
  21. coding_client/auth/websocket.py +148 -0
  22. coding_client/clients/__init__.py +24 -0
  23. coding_client/clients/base.py +131 -0
  24. coding_client/clients/coding_ai.py +33 -0
  25. coding_client/clients/coding_analysis.py +36 -0
  26. coding_client/clients/coding_containers.py +45 -0
  27. coding_client/clients/coding_github.py +127 -0
  28. coding_client/clients/coding_realtime.py +127 -0
  29. coding_client/clients/coding_security.py +51 -0
  30. coding_client/clients/coding_testing.py +31 -0
  31. coding_client/clients/coding_workspaces.py +265 -0
  32. coding_client/config/__init__.py +12 -0
  33. coding_client/config/base_settings.py +61 -0
  34. coding_client/config/yaml_config_loader.py +172 -0
  35. coding_client/db/__init__.py +42 -0
  36. coding_client/db/db_types.py +122 -0
  37. coding_client/db/exceptions.py +59 -0
  38. coding_client/db/postgres_connection.py +572 -0
  39. coding_client/db/tenant_query_helper.py +417 -0
  40. coding_client/db_init.py +49 -0
  41. coding_client/exceptions/__init__.py +67 -0
  42. coding_client/exceptions/api_exceptions.py +395 -0
  43. coding_client/exceptions/pydantic_ai_exceptions.py +533 -0
  44. coding_client/interfaces/__init__.py +22 -0
  45. coding_client/interfaces/cache_interface.py +179 -0
  46. coding_client/interfaces/container_interface.py +49 -0
  47. coding_client/interfaces/docker_interface.py +283 -0
  48. coding_client/interfaces/graph_interface.py +28 -0
  49. coding_client/interfaces/security_interface.py +72 -0
  50. coding_client/interfaces/webhook_interface.py +67 -0
  51. coding_client/llm/__init__.py +54 -0
  52. coding_client/llm/base_agent.py +195 -0
  53. coding_client/llm/context.py +121 -0
  54. coding_client/llm/responses.py +102 -0
  55. coding_client/llm/routing.py +82 -0
  56. coding_client/llm/settings.py +102 -0
  57. coding_client/models/__init__.py +62 -0
  58. coding_client/models/agent.py +38 -0
  59. coding_client/models/ai_test_failure.py +745 -0
  60. coding_client/models/analysis.py +330 -0
  61. coding_client/models/architecture.py +685 -0
  62. coding_client/models/bug.py +128 -0
  63. coding_client/models/code_graph.py +317 -0
  64. coding_client/models/container.py +241 -0
  65. coding_client/models/core.py +878 -0
  66. coding_client/models/docker_container.py +104 -0
  67. coding_client/models/github.py +293 -0
  68. coding_client/models/logging.py +29 -0
  69. coding_client/models/package_manager.py +257 -0
  70. coding_client/models/pr_validation.py +440 -0
  71. coding_client/models/pydantic_ai.py +395 -0
  72. coding_client/models/repo_scanner.py +249 -0
  73. coding_client/models/responses.py +431 -0
  74. coding_client/models/security.py +185 -0
  75. coding_client/models/static_analysis.py +508 -0
  76. coding_client/models/system.py +48 -0
  77. coding_client/models/test_executor.py +204 -0
  78. coding_client/models/testing.py +673 -0
  79. coding_client/models/testing_config.py +200 -0
  80. coding_client/models/validation.py +127 -0
  81. coding_client/models_init.py +272 -0
  82. coding_client/telemetry.py +195 -0
  83. coding_client/testing.py +180 -0
  84. coding_client/types/__init__.py +130 -0
  85. coding_client/types/constraint_types.py +276 -0
  86. coding_client/types/core_types.py +112 -0
  87. coding_client/types/state_machine.py +443 -0
  88. coding_client/utils/__init__.py +86 -0
  89. coding_client/utils/archive_utils.py +387 -0
  90. coding_client/utils/ast_debug.py +45 -0
  91. coding_client/utils/async_timeout.py +364 -0
  92. coding_client/utils/constants.py +518 -0
  93. coding_client/utils/content_processing.py +326 -0
  94. coding_client/utils/database.py +916 -0
  95. coding_client/utils/encoding_helper.py +222 -0
  96. coding_client/utils/enum_helpers.py +166 -0
  97. coding_client/utils/file_operations.py +177 -0
  98. coding_client/utils/filesystem_ops.py +528 -0
  99. coding_client/utils/http_client.py +562 -0
  100. coding_client/utils/path_utils.py +471 -0
  101. coding_client/utils/profiling.py +421 -0
  102. coding_client/utils/response_builder.py +240 -0
  103. coding_client/utils/retry_helper.py +712 -0
  104. coding_client/utils/security_validation.py +423 -0
  105. coding_client-1.21.2.dist-info/METADATA +234 -0
  106. coding_client-1.21.2.dist-info/RECORD +109 -0
  107. coding_client-1.21.2.dist-info/WHEEL +5 -0
  108. coding_client-1.21.2.dist-info/licenses/LICENSE +201 -0
  109. coding_client-1.21.2.dist-info/top_level.txt +1 -0
@@ -0,0 +1,62 @@
1
+ """Pydantic models for the coding-client shared library.
2
+
3
+ Re-exports submodules for convenient access. Import specific classes from
4
+ their submodules to avoid circular imports:
5
+
6
+ from coding_client.models.core import CoreCodeEntity, EntityType
7
+ from coding_client.models.testing import TestRequest, TestResult
8
+ from coding_client.models.container import ContainerInfo, ContainerStatus
9
+ """
10
+
11
+ # Submodule re-exports (safe - no circular import risk)
12
+ from . import (
13
+ agent,
14
+ ai_test_failure,
15
+ analysis,
16
+ architecture,
17
+ bug,
18
+ code_graph,
19
+ container,
20
+ core,
21
+ docker_container,
22
+ github,
23
+ logging,
24
+ package_manager,
25
+ pr_validation,
26
+ pydantic_ai,
27
+ repo_scanner,
28
+ responses,
29
+ security,
30
+ static_analysis,
31
+ system,
32
+ test_executor,
33
+ testing,
34
+ testing_config,
35
+ validation,
36
+ )
37
+
38
+ __all__ = [
39
+ "agent",
40
+ "ai_test_failure",
41
+ "analysis",
42
+ "architecture",
43
+ "bug",
44
+ "code_graph",
45
+ "container",
46
+ "core",
47
+ "docker_container",
48
+ "github",
49
+ "logging",
50
+ "package_manager",
51
+ "pr_validation",
52
+ "pydantic_ai",
53
+ "repo_scanner",
54
+ "responses",
55
+ "security",
56
+ "static_analysis",
57
+ "system",
58
+ "test_executor",
59
+ "testing",
60
+ "testing_config",
61
+ "validation",
62
+ ]
@@ -0,0 +1,38 @@
1
+ """Agent execution models for code_graph_helper.
2
+
3
+ Models for executing CLI agents (Claude Code, Codex) in repository containers
4
+ via delegated execution from worker_management.
5
+ """
6
+
7
+ from pydantic import BaseModel, Field
8
+
9
+
10
+ class AgentExecutionRequest(BaseModel):
11
+ """Request to execute CLI agent in a container."""
12
+
13
+ cli: str = Field(..., description="CLI to use: 'claude' or 'codex'")
14
+ prompt: str = Field(..., description="Task prompt for the agent")
15
+ system_prompt: str | None = Field(default=None, description="System prompt for the agent")
16
+ model: str | None = Field(default=None, description="Model to use (e.g., 'sonnet', 'opus')")
17
+ workspace: str = Field(default="/workspace", description="Working directory in container")
18
+ timeout: int = Field(default=300, description="Execution timeout in seconds")
19
+
20
+
21
+ class AgentExecutionResponse(BaseModel):
22
+ """Response from agent execution."""
23
+
24
+ success: bool
25
+ output: str
26
+ error: str | None = None
27
+ exit_code: int
28
+ execution_time: float
29
+ container_name: str
30
+ # Claude Code JSON output fields (from --output-format json)
31
+ session_id: str | None = Field(
32
+ default=None, description="Session ID for conversation continuity"
33
+ )
34
+ cost_usd: float | None = Field(default=None, description="Total cost in USD for this execution")
35
+ duration_ms: int | None = Field(
36
+ default=None, description="Execution duration in milliseconds (from CLI)"
37
+ )
38
+ usage: dict | None = Field(default=None, description="Token usage metrics")