codemie-sdk-python 0.1.615__tar.gz → 0.1.616__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 (72) hide show
  1. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/PKG-INFO +1 -1
  2. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/pyproject.toml +1 -1
  3. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/dynamic_config.py +28 -7
  4. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/README.md +0 -0
  5. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/__init__.py +0 -0
  6. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/auth/__init__.py +0 -0
  7. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/auth/credentials.py +0 -0
  8. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/client/__init__.py +0 -0
  9. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/client/client.py +0 -0
  10. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/exceptions.py +0 -0
  11. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/__init__.py +0 -0
  12. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/activity_event.py +0 -0
  13. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/admin.py +0 -0
  14. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/analytics.py +0 -0
  15. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/assistant.py +0 -0
  16. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/categories.py +0 -0
  17. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/common.py +0 -0
  18. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/conversation.py +0 -0
  19. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/cost_center.py +0 -0
  20. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/datasource.py +0 -0
  21. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/errors.py +0 -0
  22. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/file_operation.py +0 -0
  23. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/guardrails.py +0 -0
  24. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/integration.py +0 -0
  25. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/llm.py +0 -0
  26. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/mcp_config.py +0 -0
  27. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/mermaid.py +0 -0
  28. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/project.py +0 -0
  29. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/skill.py +0 -0
  30. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/task.py +0 -0
  31. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/user.py +0 -0
  32. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/vendor_assistant.py +0 -0
  33. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
  34. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
  35. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/vendor_runtime.py +0 -0
  36. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/vendor_workflow.py +0 -0
  37. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/workflow.py +0 -0
  38. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
  39. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/workflow_state.py +0 -0
  40. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
  41. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/models/workflow_transition.py +0 -0
  42. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/activity_event.py +0 -0
  43. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/admin.py +0 -0
  44. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/analytics.py +0 -0
  45. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/assistant.py +0 -0
  46. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/categories.py +0 -0
  47. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
  48. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/conversation.py +0 -0
  49. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/cost_center.py +0 -0
  50. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/customer_config_service.py +0 -0
  51. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/datasource.py +0 -0
  52. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/files.py +0 -0
  53. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/integration.py +0 -0
  54. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/llm.py +0 -0
  55. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/mcp_configs.py +0 -0
  56. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/mermaid.py +0 -0
  57. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/project.py +0 -0
  58. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/project_budget_groups.py +0 -0
  59. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/skill.py +0 -0
  60. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/task.py +0 -0
  61. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/user.py +0 -0
  62. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/vendor_assistant.py +0 -0
  63. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
  64. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
  65. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/vendor_runtime.py +0 -0
  66. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/vendor_workflow.py +0 -0
  67. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/webhook.py +0 -0
  68. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/workflow.py +0 -0
  69. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/workflow_execution.py +0 -0
  70. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
  71. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/utils/__init__.py +0 -0
  72. {codemie_sdk_python-0.1.615 → codemie_sdk_python-0.1.616}/src/codemie_sdk/utils/http.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codemie-sdk-python
3
- Version: 0.1.615
3
+ Version: 0.1.616
4
4
  Summary: CodeMie SDK for Python
5
5
  Author: Vadym Vlasenko
6
6
  Author-email: vadym_vlasenko@epam.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "codemie-sdk-python"
3
- version = "0.1.615"
3
+ version = "0.1.616"
4
4
  description = "CodeMie SDK for Python"
5
5
  authors = [
6
6
  "Vadym Vlasenko <vadym_vlasenko@epam.com>",
@@ -19,17 +19,29 @@ class DynamicConfigService:
19
19
  """
20
20
  self._api = ApiRequestHandler(api_domain, token, verify_ssl)
21
21
 
22
- def set(self, key: str, value: int) -> dict:
23
- """Upsert a dynamic config integer value.
22
+ def set(self, key: str, value: int | float | bool | str) -> dict:
23
+ """Upsert a dynamic config value.
24
24
 
25
25
  Tries POST /v1/dynamic-config/ to create the key. If the key already
26
26
  exists (HTTP 409), falls back to PUT /v1/dynamic-config/{key} to update.
27
- The value is serialised as a string with value_type 'int' as required by
28
- the API.
27
+ ``value_type`` is inferred from the Python type of ``value``
28
+ (``bool`` before ``int`` since ``bool`` is an ``int`` subclass) and
29
+ sent alongside the string-serialised value, as required by the API.
30
+
31
+ A string value is stored as-is — no int/float/bool coercion is
32
+ applied server-side (DynamicConfigService.convert_value passes
33
+ ConfigValueType.STRING straight through). Unlike the declared
34
+ customer-config endpoint (``PUT /v1/config/declarations/{component_id}``,
35
+ wrapped by ``CustomerConfigService.save_setting``), this generic admin
36
+ endpoint does not validate the value against any field declaration —
37
+ it is the only way to write a raw value that a declaration's own
38
+ completeness check would reject, e.g. a customer-config override
39
+ JSON blob missing one of its currently-declared fields.
29
40
 
30
41
  Args:
31
42
  key: Config key name (e.g. "SKILL_MAX_CONTENT_LENGTH")
32
- value: Integer value to set
43
+ value: Value to set — int, float, bool, or str (e.g. a
44
+ JSON-encoded override payload)
33
45
 
34
46
  Returns:
35
47
  Response dict from the admin endpoint
@@ -39,11 +51,20 @@ class DynamicConfigService:
39
51
  """
40
52
  if not key or "/" in key:
41
53
  raise ValueError(f"Invalid config key: {key!r}")
54
+ if isinstance(value, bool):
55
+ value_type = "bool"
56
+ elif isinstance(value, int):
57
+ value_type = "int"
58
+ elif isinstance(value, float):
59
+ value_type = "float"
60
+ else:
61
+ value_type = "string"
62
+ value_str = value if isinstance(value, str) else str(value)
42
63
  # Try to create first; use raw Response so we can inspect the status code
43
64
  response = self._api.post(
44
65
  "/v1/dynamic-config/",
45
66
  requests.Response,
46
- json_data={"key": key, "value": str(value), "value_type": "int"},
67
+ json_data={"key": key, "value": value_str, "value_type": value_type},
47
68
  wrap_response=False,
48
69
  raise_on_error=False,
49
70
  )
@@ -52,7 +73,7 @@ class DynamicConfigService:
52
73
  return self._api.put(
53
74
  f"/v1/dynamic-config/{key}",
54
75
  dict,
55
- json_data={"value": str(value)},
76
+ json_data={"value": value_str},
56
77
  wrap_response=False,
57
78
  )
58
79
  response.raise_for_status()