digitalkin 0.3.2.dev30__tar.gz → 0.3.2.dev31__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 (149) hide show
  1. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/PKG-INFO +1 -1
  2. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/pyproject.toml +2 -2
  3. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/__version__.py +1 -1
  4. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/module_server.py +13 -39
  5. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/grpc_servers/models.py +4 -2
  6. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/tool_reference.py +4 -3
  7. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin.egg-info/PKG-INFO +1 -1
  8. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/LICENSE +0 -0
  9. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/README.md +0 -0
  10. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/__init__.py +0 -0
  11. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/mock/__init__.py +0 -0
  12. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/mock/mock_pb2.py +0 -0
  13. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/mock/mock_pb2_grpc.py +0 -0
  14. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/server_async_insecure.py +0 -0
  15. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/server_async_secure.py +0 -0
  16. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/server_sync_insecure.py +0 -0
  17. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/base_server/server_sync_secure.py +0 -0
  18. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/__init__.py +0 -0
  19. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/archetype_with_tools_module.py +0 -0
  20. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/cpu_intensive_module.py +0 -0
  21. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/dynamic_setup_module.py +0 -0
  22. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/minimal_llm_module.py +0 -0
  23. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/modules/text_transform_module.py +0 -0
  24. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/digitalkin_observability/__init__.py +0 -0
  25. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/digitalkin_observability/http_server.py +0 -0
  26. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/digitalkin_observability/interceptors.py +0 -0
  27. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/digitalkin_observability/metrics.py +0 -0
  28. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/digitalkin_observability/prometheus.py +0 -0
  29. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/monitoring/tests/test_metrics.py +0 -0
  30. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/services/filesystem_module.py +0 -0
  31. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/examples/services/storage_module.py +0 -0
  32. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/setup.cfg +0 -0
  33. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/__init__.py +0 -0
  34. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/__init__.py +0 -0
  35. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/common/__init__.py +0 -0
  36. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/common/factories.py +0 -0
  37. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/job_manager/__init__.py +0 -0
  38. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/job_manager/base_job_manager.py +0 -0
  39. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/job_manager/single_job_manager.py +0 -0
  40. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/job_manager/taskiq_broker.py +0 -0
  41. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/job_manager/taskiq_job_manager.py +0 -0
  42. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/__init__.py +0 -0
  43. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/base_task_manager.py +0 -0
  44. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/local_task_manager.py +0 -0
  45. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/remote_task_manager.py +0 -0
  46. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/surrealdb_repository.py +0 -0
  47. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/task_executor.py +0 -0
  48. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/core/task_manager/task_session.py +0 -0
  49. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/__init__.py +0 -0
  50. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/_base_server.py +0 -0
  51. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/module_servicer.py +0 -0
  52. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/utils/__init__.py +0 -0
  53. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/utils/exceptions.py +0 -0
  54. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/utils/grpc_client_wrapper.py +0 -0
  55. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/utils/grpc_error_handler.py +0 -0
  56. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/grpc_servers/utils/utility_schema_extender.py +0 -0
  57. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/logger.py +0 -0
  58. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/__init__.py +0 -0
  59. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/base_mixin.py +0 -0
  60. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/callback_mixin.py +0 -0
  61. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/chat_history_mixin.py +0 -0
  62. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/cost_mixin.py +0 -0
  63. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/file_history_mixin.py +0 -0
  64. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/filesystem_mixin.py +0 -0
  65. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/logger_mixin.py +0 -0
  66. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/mixins/storage_mixin.py +0 -0
  67. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/__init__.py +0 -0
  68. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/core/__init__.py +0 -0
  69. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/core/job_manager_models.py +0 -0
  70. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/core/task_monitor.py +0 -0
  71. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/grpc_servers/__init__.py +0 -0
  72. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/grpc_servers/types.py +0 -0
  73. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/__init__.py +0 -0
  74. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/base_types.py +0 -0
  75. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/module.py +0 -0
  76. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/module_context.py +0 -0
  77. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/module_types.py +0 -0
  78. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/setup_types.py +0 -0
  79. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/tool_cache.py +0 -0
  80. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/module/utility.py +0 -0
  81. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/services/__init__.py +0 -0
  82. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/services/cost.py +0 -0
  83. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/services/registry.py +0 -0
  84. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/models/services/storage.py +0 -0
  85. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/__init__.py +0 -0
  86. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/_base_module.py +0 -0
  87. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/archetype_module.py +0 -0
  88. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/tool_module.py +0 -0
  89. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/trigger_handler.py +0 -0
  90. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/triggers/__init__.py +0 -0
  91. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/triggers/healthcheck_ping_trigger.py +0 -0
  92. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/triggers/healthcheck_services_trigger.py +0 -0
  93. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/modules/triggers/healthcheck_status_trigger.py +0 -0
  94. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/py.typed +0 -0
  95. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/__init__.py +0 -0
  96. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/agent/__init__.py +0 -0
  97. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/agent/agent_strategy.py +0 -0
  98. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/agent/default_agent.py +0 -0
  99. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/base_strategy.py +0 -0
  100. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/communication/__init__.py +0 -0
  101. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/communication/communication_strategy.py +0 -0
  102. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/communication/default_communication.py +0 -0
  103. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/communication/grpc_communication.py +0 -0
  104. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/cost/__init__.py +0 -0
  105. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/cost/cost_strategy.py +0 -0
  106. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/cost/default_cost.py +0 -0
  107. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/cost/grpc_cost.py +0 -0
  108. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/filesystem/__init__.py +0 -0
  109. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/filesystem/default_filesystem.py +0 -0
  110. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/filesystem/filesystem_strategy.py +0 -0
  111. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/filesystem/grpc_filesystem.py +0 -0
  112. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/identity/__init__.py +0 -0
  113. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/identity/default_identity.py +0 -0
  114. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/identity/identity_strategy.py +0 -0
  115. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/__init__.py +0 -0
  116. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/default_registry.py +0 -0
  117. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/exceptions.py +0 -0
  118. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/grpc_registry.py +0 -0
  119. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/registry_models.py +0 -0
  120. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/registry/registry_strategy.py +0 -0
  121. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/services_config.py +0 -0
  122. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/services_models.py +0 -0
  123. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/setup/__init__.py +0 -0
  124. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/setup/default_setup.py +0 -0
  125. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/setup/grpc_setup.py +0 -0
  126. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/setup/setup_strategy.py +0 -0
  127. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/snapshot/__init__.py +0 -0
  128. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/snapshot/default_snapshot.py +0 -0
  129. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/snapshot/snapshot_strategy.py +0 -0
  130. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/storage/__init__.py +0 -0
  131. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/storage/default_storage.py +0 -0
  132. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/storage/grpc_storage.py +0 -0
  133. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/storage/storage_strategy.py +0 -0
  134. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/user_profile/__init__.py +0 -0
  135. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/user_profile/default_user_profile.py +0 -0
  136. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/user_profile/grpc_user_profile.py +0 -0
  137. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/services/user_profile/user_profile_strategy.py +0 -0
  138. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/__init__.py +0 -0
  139. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/arg_parser.py +0 -0
  140. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/conditional_schema.py +0 -0
  141. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/development_mode_action.py +0 -0
  142. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/dynamic_schema.py +0 -0
  143. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/llm_ready_schema.py +0 -0
  144. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/package_discover.py +0 -0
  145. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin/utils/schema_splitter.py +0 -0
  146. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin.egg-info/SOURCES.txt +0 -0
  147. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin.egg-info/dependency_links.txt +0 -0
  148. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin.egg-info/requires.txt +0 -0
  149. {digitalkin-0.3.2.dev30 → digitalkin-0.3.2.dev31}/src/digitalkin.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digitalkin
3
- Version: 0.3.2.dev30
3
+ Version: 0.3.2.dev31
4
4
  Summary: SDK to build kin used in DigitalKin
5
5
  Author-email: "DigitalKin.ai" <contact@digitalkin.ai>
6
6
  License: Attribution-NonCommercial-ShareAlike 4.0 International
@@ -25,7 +25,7 @@
25
25
  "Programming Language :: Python",
26
26
  "Topic :: Software Development :: Libraries",
27
27
  ]
28
- version = "0.3.2.dev30"
28
+ version = "0.3.2.dev31"
29
29
 
30
30
  dependencies = [
31
31
  "agentic-mesh-protocol==0.2.1.dev0",
@@ -61,7 +61,7 @@
61
61
  "mypy>=1.19.1",
62
62
  "pre-commit>=4.5.1",
63
63
  "pyright>=1.1.407",
64
- "ruff>=0.14.9",
64
+ "ruff>=0.14.14",
65
65
  "twine>=6.2.0",
66
66
  "typos>=1.40.0",
67
67
  ]
@@ -5,4 +5,4 @@ from importlib.metadata import PackageNotFoundError, version
5
5
  try:
6
6
  __version__ = version("digitalkin")
7
7
  except PackageNotFoundError:
8
- __version__ = "0.3.2.dev30"
8
+ __version__ = "0.3.2.dev31"
@@ -13,7 +13,6 @@ from digitalkin.logger import logger
13
13
  from digitalkin.models.grpc_servers.models import (
14
14
  ClientConfig,
15
15
  ModuleServerConfig,
16
- SecurityMode,
17
16
  )
18
17
  from digitalkin.modules._base_module import BaseModule
19
18
  from digitalkin.services.registry import GrpcRegistry
@@ -45,8 +44,8 @@ class ModuleServer(BaseServer):
45
44
 
46
45
  Args:
47
46
  module_class: The module instance to be served.
48
- server_config: Server configuration including registry address if auto-registration is desired.
49
- client_config: Client configuration used by services.
47
+ server_config: Server configuration.
48
+ client_config: Client configuration used by services and registry connection.
50
49
  """
51
50
  super().__init__(server_config)
52
51
  self.module_class = module_class
@@ -55,9 +54,6 @@ class ModuleServer(BaseServer):
55
54
  self.module_servicer: ModuleServicer | None = None
56
55
  self.registry: RegistryStrategy | None = None
57
56
 
58
- self._registry_client_config: ClientConfig | None = None
59
- if self.server_config.registry_address:
60
- self._registry_client_config = self._build_registry_client_config()
61
57
  self._prepare_registry_config()
62
58
 
63
59
  def _register_servicers(self) -> None:
@@ -85,36 +81,17 @@ class ModuleServer(BaseServer):
85
81
  This ensures ServicesConfig created by JobManager will have registry config,
86
82
  allowing spawned module instances to inherit the registry configuration.
87
83
  """
88
- if not self._registry_client_config:
84
+ if not self.client_config:
89
85
  return
90
86
 
91
- self.module_class.services_config_params["registry"] = {"client_config": self._registry_client_config}
92
-
93
- def _build_registry_client_config(self) -> ClientConfig:
94
- """Build ClientConfig for registry from server_config.registry_address.
95
-
96
- Returns:
97
- ClientConfig configured for registry connection.
98
- """
99
- host, port = self.server_config.registry_address.rsplit(":", 1)
100
- return ClientConfig(
101
- host=host,
102
- port=int(port),
103
- mode=self.server_config.mode,
104
- security=self.client_config.security if self.client_config else SecurityMode.INSECURE,
105
- credentials=self.client_config.credentials if self.client_config else None,
106
- )
87
+ self.module_class.services_config_params["registry"] = {"client_config": self.client_config}
107
88
 
108
89
  def _init_registry(self) -> None:
109
- """Initialize server-level registry client for registration.
110
-
111
- Note: services_config_params["registry"] is already set in _prepare_registry_config()
112
- which runs in __init__(). This method only creates the server-level client instance.
113
- """
114
- if not self._registry_client_config:
90
+ """Initialize server-level registry client for registration."""
91
+ if not self.client_config:
115
92
  return
116
93
 
117
- self.registry = GrpcRegistry("", "", "", self._registry_client_config)
94
+ self.registry = GrpcRegistry("", "", "", self.client_config)
118
95
 
119
96
  def start(self) -> None:
120
97
  """Start the module server and register with the registry if configured."""
@@ -170,20 +147,21 @@ class ModuleServer(BaseServer):
170
147
  )
171
148
  return
172
149
 
150
+ advertise_address = self.server_config.advertise_host or self.server_config.host
151
+
173
152
  logger.info(
174
153
  "Attempting to register module with registry",
175
154
  extra={
176
155
  "module_id": module_id,
177
- "address": self.server_config.host,
156
+ "address": advertise_address,
178
157
  "port": self.server_config.port,
179
158
  "version": version,
180
- "registry_address": self.server_config.registry_address,
181
159
  },
182
160
  )
183
161
 
184
162
  result = self.registry.register(
185
163
  module_id=module_id,
186
- address=self.server_config.host,
164
+ address=advertise_address,
187
165
  port=self.server_config.port,
188
166
  version=version,
189
167
  )
@@ -193,16 +171,12 @@ class ModuleServer(BaseServer):
193
171
  "Module registered successfully",
194
172
  extra={
195
173
  "module_id": result.module_id,
196
- "address": self.server_config.host,
174
+ "address": advertise_address,
197
175
  "port": self.server_config.port,
198
- "registry_address": self.server_config.registry_address,
199
176
  },
200
177
  )
201
178
  else:
202
179
  logger.warning(
203
180
  "Module registration returned None (module may not exist in registry)",
204
- extra={
205
- "module_id": module_id,
206
- "registry_address": self.server_config.registry_address,
207
- },
181
+ extra={"module_id": module_id, "address": advertise_address},
208
182
  )
@@ -344,10 +344,12 @@ class ModuleServerConfig(ServerConfig):
344
344
  """Configuration for Module gRPC server.
345
345
 
346
346
  Attributes:
347
- registry_address: Address of the registry server
347
+ advertise_host: Public hostname/IP sent to registry for discovery. Falls back to host if not set.
348
348
  """
349
349
 
350
- registry_address: str = Field(..., description="Address of the registry server")
350
+ advertise_host: str | None = Field(
351
+ None, description="Public hostname/IP sent to registry for discovery. Falls back to host if not set."
352
+ )
351
353
 
352
354
 
353
355
  class RegistryServerConfig(ServerConfig):
@@ -43,7 +43,7 @@ class _ToolReferenceInputSchema:
43
43
  def __init__(
44
44
  self,
45
45
  setup_ids: list[str],
46
- module_ids: list[str],
46
+ module_ids: list[str] | None,
47
47
  tag_ids: list[str],
48
48
  categories: list[str],
49
49
  max_tools: int = 0,
@@ -77,16 +77,17 @@ class _ToolReferenceInputSchema:
77
77
  json_schema["ui:widget"] = "toolSelect"
78
78
  json_schema["ui:options"] = {
79
79
  "setupIds": self.setup_ids,
80
- "moduleIds": self.module_ids,
81
80
  "tagIds": self.tag_ids,
82
81
  "categories": self.categories,
82
+ "moduleIds": self.module_ids or [],
83
+ "showModules": self.module_ids is not None,
83
84
  }
84
85
  return json_schema
85
86
 
86
87
 
87
88
  def tool_reference_input(
88
89
  setup_ids: list[str] = [],
89
- module_ids: list[str] = [],
90
+ module_ids: list[str] | None = [],
90
91
  tag_ids: list[str] = [],
91
92
  categories: list[str] = [],
92
93
  max_tools: int = 0,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digitalkin
3
- Version: 0.3.2.dev30
3
+ Version: 0.3.2.dev31
4
4
  Summary: SDK to build kin used in DigitalKin
5
5
  Author-email: "DigitalKin.ai" <contact@digitalkin.ai>
6
6
  License: Attribution-NonCommercial-ShareAlike 4.0 International