orb-py 1.2.2__tar.gz → 1.3.0__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 (1071) hide show
  1. orb_py-1.3.0/PKG-INFO +540 -0
  2. orb_py-1.3.0/README.md +419 -0
  3. orb_py-1.3.0/config/config.example.json +46 -0
  4. orb_py-1.3.0/config/default_config.json +409 -0
  5. orb_py-1.3.0/pyproject.toml +523 -0
  6. orb_py-1.3.0/src/orb/_package.py +102 -0
  7. orb_py-1.3.0/src/orb/api/dependencies.py +103 -0
  8. orb_py-1.3.0/src/orb/api/handlers/get_available_templates_handler.py +146 -0
  9. orb_py-1.3.0/src/orb/api/handlers/get_request_status_handler.py +305 -0
  10. orb_py-1.3.0/src/orb/api/handlers/get_return_requests_handler.py +370 -0
  11. orb_py-1.3.0/src/orb/api/handlers/request_machines_handler.py +160 -0
  12. orb_py-1.3.0/src/orb/api/handlers/request_return_machines_handler.py +276 -0
  13. orb_py-1.3.0/src/orb/api/models/requests.py +103 -0
  14. orb_py-1.3.0/src/orb/api/routers/machines.py +131 -0
  15. orb_py-1.3.0/src/orb/api/routers/requests.py +192 -0
  16. orb_py-1.3.0/src/orb/api/routers/templates.py +289 -0
  17. orb_py-1.3.0/src/orb/api/server.py +330 -0
  18. orb_py-1.3.0/src/orb/application/base/handlers.py +461 -0
  19. orb_py-1.3.0/src/orb/application/base/provider_handlers.py +208 -0
  20. orb_py-1.3.0/src/orb/application/commands/cleanup_handlers.py +217 -0
  21. orb_py-1.3.0/src/orb/application/commands/provider_handlers.py +231 -0
  22. orb_py-1.3.0/src/orb/application/commands/request_creation_handlers.py +507 -0
  23. orb_py-1.3.0/src/orb/application/commands/request_sync_handlers.py +192 -0
  24. orb_py-1.3.0/src/orb/application/commands/template_handlers.py +311 -0
  25. orb_py-1.3.0/src/orb/application/dto/base.py +147 -0
  26. orb_py-1.3.0/src/orb/application/dto/queries.py +169 -0
  27. orb_py-1.3.0/src/orb/application/dto/system.py +238 -0
  28. orb_py-1.3.0/src/orb/application/events/handlers/__init__.py +31 -0
  29. orb_py-1.3.0/src/orb/application/events/handlers/metrics_event_handler.py +72 -0
  30. orb_py-1.3.0/src/orb/application/ports/__init__.py +23 -0
  31. orb_py-1.3.0/src/orb/application/ports/scheduler_port.py +103 -0
  32. orb_py-1.3.0/src/orb/application/queries/cleanup_query_handlers.py +149 -0
  33. orb_py-1.3.0/src/orb/application/queries/machine_query_handlers.py +348 -0
  34. orb_py-1.3.0/src/orb/application/queries/request_query_handlers.py +411 -0
  35. orb_py-1.3.0/src/orb/application/queries/scheduler_handlers.py +252 -0
  36. orb_py-1.3.0/src/orb/application/queries/specialized_handlers.py +233 -0
  37. orb_py-1.3.0/src/orb/application/queries/system_handlers.py +444 -0
  38. orb_py-1.3.0/src/orb/application/queries/template_query_handlers.py +274 -0
  39. orb_py-1.3.0/src/orb/application/request/queries.py +40 -0
  40. orb_py-1.3.0/src/orb/application/services/deprovisioning_orchestrator.py +208 -0
  41. orb_py-1.3.0/src/orb/application/services/machine_grouping_service.py +113 -0
  42. orb_py-1.3.0/src/orb/application/services/machine_sync_service.py +286 -0
  43. orb_py-1.3.0/src/orb/application/services/provider_registry_service.py +89 -0
  44. orb_py-1.3.0/src/orb/application/services/provisioning_orchestration_service.py +340 -0
  45. orb_py-1.3.0/src/orb/application/services/request_creation_service.py +68 -0
  46. orb_py-1.3.0/src/orb/application/services/scheduler_registry_service.py +33 -0
  47. orb_py-1.3.0/src/orb/application/services/storage_registry_service.py +31 -0
  48. orb_py-1.3.0/src/orb/application/services/template_defaults_service.py +584 -0
  49. orb_py-1.3.0/src/orb/application/services/template_generation_service.py +380 -0
  50. orb_py-1.3.0/src/orb/application/template/commands.py +64 -0
  51. orb_py-1.3.0/src/orb/bootstrap.py +424 -0
  52. orb_py-1.3.0/src/orb/cli/args.py +631 -0
  53. orb_py-1.3.0/src/orb/cli/field_mapping.py +96 -0
  54. orb_py-1.3.0/src/orb/cli/main.py +278 -0
  55. orb_py-1.3.0/src/orb/cli/registry.py +253 -0
  56. orb_py-1.3.0/src/orb/cli/response_formatter.py +461 -0
  57. orb_py-1.3.0/src/orb/cli/router.py +53 -0
  58. orb_py-1.3.0/src/orb/config/default_config.json +409 -0
  59. orb_py-1.3.0/src/orb/config/installation_detector.py +171 -0
  60. orb_py-1.3.0/src/orb/config/loader.py +439 -0
  61. orb_py-1.3.0/src/orb/config/managers/cache_manager.py +74 -0
  62. orb_py-1.3.0/src/orb/config/managers/configuration_manager.py +502 -0
  63. orb_py-1.3.0/src/orb/config/managers/path_resolver.py +151 -0
  64. orb_py-1.3.0/src/orb/config/managers/provider_manager.py +136 -0
  65. orb_py-1.3.0/src/orb/config/managers/type_converter.py +200 -0
  66. orb_py-1.3.0/src/orb/config/platform_dirs.py +145 -0
  67. orb_py-1.3.0/src/orb/config/schemas/__init__.py +79 -0
  68. orb_py-1.3.0/src/orb/config/schemas/app_schema.py +130 -0
  69. orb_py-1.3.0/src/orb/config/schemas/cleanup_schema.py +28 -0
  70. orb_py-1.3.0/src/orb/config/schemas/common_schema.py +249 -0
  71. orb_py-1.3.0/src/orb/config/schemas/metrics_schema.py +44 -0
  72. orb_py-1.3.0/src/orb/config/schemas/performance_schema.py +247 -0
  73. orb_py-1.3.0/src/orb/config/schemas/provider_strategy_schema.py +346 -0
  74. orb_py-1.3.0/src/orb/config/schemas/scheduler_schema.py +33 -0
  75. orb_py-1.3.0/src/orb/config/schemas/server_schema.py +83 -0
  76. orb_py-1.3.0/src/orb/config/schemas/storage_schema.py +152 -0
  77. orb_py-1.3.0/src/orb/config/services/config_loader_service.py +203 -0
  78. orb_py-1.3.0/src/orb/config/services/path_resolution_service.py +213 -0
  79. orb_py-1.3.0/src/orb/config/validators/config_validator.py +100 -0
  80. orb_py-1.3.0/src/orb/domain/base/__init__.py +102 -0
  81. orb_py-1.3.0/src/orb/domain/base/configuration_service.py +33 -0
  82. orb_py-1.3.0/src/orb/domain/base/entity_pure.py +82 -0
  83. orb_py-1.3.0/src/orb/domain/base/error.py +67 -0
  84. orb_py-1.3.0/src/orb/domain/base/events/__init__.py +91 -0
  85. orb_py-1.3.0/src/orb/domain/base/events/domain_events.py +161 -0
  86. orb_py-1.3.0/src/orb/domain/base/ports/__init__.py +33 -0
  87. orb_py-1.3.0/src/orb/domain/base/ports/configuration_port.py +162 -0
  88. orb_py-1.3.0/src/orb/domain/base/ports/console_port.py +31 -0
  89. orb_py-1.3.0/src/orb/domain/base/ports/health_check_port.py +28 -0
  90. orb_py-1.3.0/src/orb/domain/base/ports/path_resolution_port.py +26 -0
  91. orb_py-1.3.0/src/orb/domain/base/ports/provider_cli_spec_port.py +54 -0
  92. orb_py-1.3.0/src/orb/domain/base/ports/provider_registry_port.py +85 -0
  93. orb_py-1.3.0/src/orb/domain/constants.py +55 -0
  94. orb_py-1.3.0/src/orb/domain/machine/aggregate.py +307 -0
  95. orb_py-1.3.0/src/orb/domain/request/aggregate.py +555 -0
  96. orb_py-1.3.0/src/orb/domain/request/request_identifiers.py +229 -0
  97. orb_py-1.3.0/src/orb/domain/request/request_metadata.py +473 -0
  98. orb_py-1.3.0/src/orb/domain/template/factory.py +202 -0
  99. orb_py-1.3.0/src/orb/domain/template/template_aggregate.py +259 -0
  100. orb_py-1.3.0/src/orb/infrastructure/adapters/__init__.py +20 -0
  101. orb_py-1.3.0/src/orb/infrastructure/adapters/configuration_adapter.py +377 -0
  102. orb_py-1.3.0/src/orb/infrastructure/adapters/console_adapter.py +37 -0
  103. orb_py-1.3.0/src/orb/infrastructure/adapters/null_console_adapter.py +29 -0
  104. orb_py-1.3.0/src/orb/infrastructure/adapters/path_resolution_adapter.py +22 -0
  105. orb_py-1.3.0/src/orb/infrastructure/adapters/ports/resource_provisioning_port.py +58 -0
  106. orb_py-1.3.0/src/orb/infrastructure/adapters/provider_discovery_adapter.py +81 -0
  107. orb_py-1.3.0/src/orb/infrastructure/caching/request_cache_service.py +158 -0
  108. orb_py-1.3.0/src/orb/infrastructure/di/components/cqrs_registry.py +103 -0
  109. orb_py-1.3.0/src/orb/infrastructure/di/components/dependency_resolver.py +413 -0
  110. orb_py-1.3.0/src/orb/infrastructure/di/components/service_registry.py +181 -0
  111. orb_py-1.3.0/src/orb/infrastructure/di/container.py +368 -0
  112. orb_py-1.3.0/src/orb/infrastructure/di/core_services.py +138 -0
  113. orb_py-1.3.0/src/orb/infrastructure/di/decorators.py +302 -0
  114. orb_py-1.3.0/src/orb/infrastructure/di/domain_services.py +91 -0
  115. orb_py-1.3.0/src/orb/infrastructure/di/infrastructure_services.py +224 -0
  116. orb_py-1.3.0/src/orb/infrastructure/di/monitoring_services.py +25 -0
  117. orb_py-1.3.0/src/orb/infrastructure/di/port_registrations.py +117 -0
  118. orb_py-1.3.0/src/orb/infrastructure/di/provider_services.py +87 -0
  119. orb_py-1.3.0/src/orb/infrastructure/di/registry_services.py +30 -0
  120. orb_py-1.3.0/src/orb/infrastructure/di/server_services.py +189 -0
  121. orb_py-1.3.0/src/orb/infrastructure/di/services.py +198 -0
  122. orb_py-1.3.0/src/orb/infrastructure/di/storage_services.py +112 -0
  123. orb_py-1.3.0/src/orb/infrastructure/error/context.py +29 -0
  124. orb_py-1.3.0/src/orb/infrastructure/error/exception_handler.py +921 -0
  125. orb_py-1.3.0/src/orb/infrastructure/error/responses.py +173 -0
  126. orb_py-1.3.0/src/orb/infrastructure/events/__init__.py +150 -0
  127. orb_py-1.3.0/src/orb/infrastructure/events/infrastructure_events.py +89 -0
  128. orb_py-1.3.0/src/orb/infrastructure/events/system_events.py +129 -0
  129. orb_py-1.3.0/src/orb/infrastructure/handlers/__init__.py +11 -0
  130. orb_py-1.3.0/src/orb/infrastructure/handlers/base/__init__.py +9 -0
  131. orb_py-1.3.0/src/orb/infrastructure/logging/logger.py +402 -0
  132. orb_py-1.3.0/src/orb/infrastructure/resilience/__init__.py +35 -0
  133. orb_py-1.3.0/src/orb/infrastructure/resilience/config.py +13 -0
  134. orb_py-1.3.0/src/orb/infrastructure/resilience/retry_decorator.py +142 -0
  135. orb_py-1.3.0/src/orb/infrastructure/resilience/strategy/circuit_breaker.py +396 -0
  136. orb_py-1.3.0/src/orb/infrastructure/resilience/strategy/exponential.py +86 -0
  137. orb_py-1.3.0/src/orb/infrastructure/scheduler/base/strategy.py +361 -0
  138. orb_py-1.3.0/src/orb/infrastructure/scheduler/default/default_strategy.py +304 -0
  139. orb_py-1.3.0/src/orb/infrastructure/scheduler/hostfactory/field_mapper.py +154 -0
  140. orb_py-1.3.0/src/orb/infrastructure/scheduler/hostfactory/field_mappings.py +112 -0
  141. orb_py-1.3.0/src/orb/infrastructure/scheduler/hostfactory/hostfactory_strategy.py +954 -0
  142. orb_py-1.3.0/src/orb/infrastructure/scheduler/hostfactory/transformations.py +182 -0
  143. orb_py-1.3.0/src/orb/infrastructure/scheduler/registration.py +192 -0
  144. orb_py-1.3.0/src/orb/infrastructure/scheduler/registry.py +129 -0
  145. orb_py-1.3.0/src/orb/infrastructure/storage/base/repository.py +493 -0
  146. orb_py-1.3.0/src/orb/infrastructure/storage/components/__init__.py +61 -0
  147. orb_py-1.3.0/src/orb/infrastructure/storage/components/sql_serializer.py +279 -0
  148. orb_py-1.3.0/src/orb/infrastructure/storage/constants.py +6 -0
  149. orb_py-1.3.0/src/orb/infrastructure/storage/json/strategy.py +405 -0
  150. orb_py-1.3.0/src/orb/infrastructure/storage/registration.py +76 -0
  151. orb_py-1.3.0/src/orb/infrastructure/storage/registry.py +210 -0
  152. orb_py-1.3.0/src/orb/infrastructure/storage/repositories/machine_repository.py +359 -0
  153. orb_py-1.3.0/src/orb/infrastructure/storage/repositories/request_repository.py +444 -0
  154. orb_py-1.3.0/src/orb/infrastructure/storage/repositories/template_repository.py +333 -0
  155. orb_py-1.3.0/src/orb/infrastructure/storage/repository_migrator.py +411 -0
  156. orb_py-1.3.0/src/orb/infrastructure/storage/sql/models.py +142 -0
  157. orb_py-1.3.0/src/orb/infrastructure/storage/sql/registration.py +145 -0
  158. orb_py-1.3.0/src/orb/infrastructure/template/configuration_manager.py +684 -0
  159. orb_py-1.3.0/src/orb/infrastructure/template/dtos.py +200 -0
  160. orb_py-1.3.0/src/orb/infrastructure/template/services/template_storage_service.py +207 -0
  161. orb_py-1.3.0/src/orb/infrastructure/template/template_cache_service.py +320 -0
  162. orb_py-1.3.0/src/orb/infrastructure/template/template_repository_impl.py +117 -0
  163. orb_py-1.3.0/src/orb/infrastructure/utilities/__init__.py +66 -0
  164. orb_py-1.3.0/src/orb/infrastructure/utilities/common/string_utils.py +25 -0
  165. orb_py-1.3.0/src/orb/infrastructure/utilities/factories/repository_factory.py +194 -0
  166. orb_py-1.3.0/src/orb/infrastructure/utilities/factories/sql_engine_factory.py +178 -0
  167. orb_py-1.3.0/src/orb/infrastructure/utilities/json_utils.py +175 -0
  168. orb_py-1.3.0/src/orb/infrastructure/utilities/network_utils.py +100 -0
  169. orb_py-1.3.0/src/orb/infrastructure/validation/__init__.py +23 -0
  170. orb_py-1.3.0/src/orb/infrastructure/validation/input_validator.py +193 -0
  171. orb_py-1.3.0/src/orb/infrastructure/validation/startup_validator.py +195 -0
  172. orb_py-1.3.0/src/orb/interface/health_command_handler.py +210 -0
  173. orb_py-1.3.0/src/orb/interface/infrastructure_command_handler.py +260 -0
  174. orb_py-1.3.0/src/orb/interface/init_command_handler.py +722 -0
  175. orb_py-1.3.0/src/orb/interface/machine_command_handlers.py +318 -0
  176. orb_py-1.3.0/src/orb/interface/mcp/server/core.py +483 -0
  177. orb_py-1.3.0/src/orb/interface/mcp/server/handler.py +143 -0
  178. orb_py-1.3.0/src/orb/interface/provider_config_handler.py +374 -0
  179. orb_py-1.3.0/src/orb/interface/request_command_handlers.py +535 -0
  180. orb_py-1.3.0/src/orb/interface/scheduler_command_handlers.py +87 -0
  181. orb_py-1.3.0/src/orb/interface/storage_command_handlers.py +145 -0
  182. orb_py-1.3.0/src/orb/interface/system_command_handlers.py +222 -0
  183. orb_py-1.3.0/src/orb/interface/template_command_handlers.py +571 -0
  184. orb_py-1.3.0/src/orb/interface/templates_generate_handler.py +93 -0
  185. orb_py-1.3.0/src/orb/monitoring/health.py +296 -0
  186. orb_py-1.3.0/src/orb/monitoring/metrics.py +422 -0
  187. orb_py-1.3.0/src/orb/providers/__init__.py +1 -0
  188. orb_py-1.3.0/src/orb/providers/aws/application/events/aws_handlers.py +76 -0
  189. orb_py-1.3.0/src/orb/providers/aws/auth/iam_strategy.py +292 -0
  190. orb_py-1.3.0/src/orb/providers/aws/cli/aws_cli_spec.py +57 -0
  191. orb_py-1.3.0/src/orb/providers/aws/configuration/config.py +234 -0
  192. orb_py-1.3.0/src/orb/providers/aws/configuration/template_extension.py +132 -0
  193. orb_py-1.3.0/src/orb/providers/aws/domain/template/aws_template_aggregate.py +512 -0
  194. orb_py-1.3.0/src/orb/providers/aws/health.py +88 -0
  195. orb_py-1.3.0/src/orb/providers/aws/infrastructure/adapters/aws_provisioning_adapter.py +448 -0
  196. orb_py-1.3.0/src/orb/providers/aws/infrastructure/aws_client.py +420 -0
  197. orb_py-1.3.0/src/orb/providers/aws/infrastructure/aws_handler_factory.py +245 -0
  198. orb_py-1.3.0/src/orb/providers/aws/infrastructure/dry_run_adapter.py +114 -0
  199. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/__init__.py +16 -0
  200. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/asg/capacity_manager.py +233 -0
  201. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/asg/config_builder.py +312 -0
  202. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/asg/handler.py +596 -0
  203. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/base_handler.py +952 -0
  204. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/config_builder.py +312 -0
  205. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/handler.py +885 -0
  206. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/release_manager.py +253 -0
  207. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/run_instances/handler.py +682 -0
  208. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/shared/base_context_mixin.py +114 -0
  209. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/shared/fleet_grouping_mixin.py +236 -0
  210. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/spot_fleet/config_builder.py +316 -0
  211. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/spot_fleet/handler.py +612 -0
  212. orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/spot_fleet/release_manager.py +217 -0
  213. orb_py-1.3.0/src/orb/providers/aws/infrastructure/instrumentation/botocore_metrics.py +433 -0
  214. orb_py-1.3.0/src/orb/providers/aws/infrastructure/launch_template/manager.py +617 -0
  215. orb_py-1.3.0/src/orb/providers/aws/infrastructure/services/aws_native_spec_service.py +177 -0
  216. orb_py-1.3.0/src/orb/providers/aws/infrastructure/template/ami_cache.py +236 -0
  217. orb_py-1.3.0/src/orb/providers/aws/registration.py +518 -0
  218. orb_py-1.3.0/src/orb/providers/aws/services/health_check_service.py +94 -0
  219. orb_py-1.3.0/src/orb/providers/aws/services/infrastructure_discovery_service.py +535 -0
  220. orb_py-1.3.0/src/orb/providers/aws/services/instance_operation_service.py +269 -0
  221. orb_py-1.3.0/src/orb/providers/aws/storage/__init__.py +1 -0
  222. orb_py-1.3.0/src/orb/providers/aws/storage/components/__init__.py +11 -0
  223. orb_py-1.3.0/src/orb/providers/aws/storage/components/dynamodb_client_manager.py +360 -0
  224. orb_py-1.3.0/src/orb/providers/aws/storage/components/dynamodb_converter.py +324 -0
  225. orb_py-1.3.0/src/orb/providers/aws/storage/components/dynamodb_transaction_manager.py +288 -0
  226. orb_py-1.3.0/src/orb/providers/aws/storage/config.py +53 -0
  227. orb_py-1.3.0/src/orb/providers/aws/storage/registration.py +312 -0
  228. orb_py-1.3.0/src/orb/providers/aws/storage/strategy.py +352 -0
  229. orb_py-1.3.0/src/orb/providers/aws/storage/unit_of_work.py +145 -0
  230. orb_py-1.3.0/src/orb/providers/aws/strategy/aws_provider_strategy.py +690 -0
  231. orb_py-1.3.0/src/orb/providers/aws/utilities/aws_operations.py +588 -0
  232. orb_py-1.3.0/src/orb/providers/aws/utilities/ec2/instances.py +419 -0
  233. orb_py-1.3.0/src/orb/providers/aws/utilities/ssm_utils.py +208 -0
  234. orb_py-1.3.0/src/orb/providers/aws/validation/__init__.py +1 -0
  235. orb_py-1.3.0/src/orb/providers/aws/validation/region_validator.py +25 -0
  236. orb_py-1.3.0/src/orb/providers/base/strategy/fallback_strategy.py +751 -0
  237. orb_py-1.3.0/src/orb/providers/base/strategy/load_balancing/strategy.py +396 -0
  238. orb_py-1.3.0/src/orb/providers/base/strategy/provider_strategy.py +404 -0
  239. orb_py-1.3.0/src/orb/providers/config_builder.py +56 -0
  240. orb_py-1.3.0/src/orb/providers/config_validator.py +133 -0
  241. orb_py-1.3.0/src/orb/providers/py.typed +0 -0
  242. orb_py-1.3.0/src/orb/providers/registration.py +48 -0
  243. orb_py-1.3.0/src/orb/providers/registry/provider_registry.py +870 -0
  244. orb_py-1.3.0/src/orb/providers/services/provider_execution_service.py +180 -0
  245. orb_py-1.3.0/src/orb/run.py +68 -0
  246. orb_py-1.3.0/src/orb/sdk/client.py +691 -0
  247. orb_py-1.3.0/src/orb/sdk/discovery.py +527 -0
  248. orb_py-1.3.0/src/orb/sdk/protocols.py +242 -0
  249. orb_py-1.3.0/src/orb/sdk/py.typed +0 -0
  250. orb_py-1.3.0/src/orb_py.egg-info/PKG-INFO +540 -0
  251. orb_py-1.3.0/src/orb_py.egg-info/SOURCES.txt +808 -0
  252. orb_py-1.3.0/src/orb_py.egg-info/requires.txt +97 -0
  253. orb_py-1.2.2/PKG-INFO +0 -536
  254. orb_py-1.2.2/README.md +0 -415
  255. orb_py-1.2.2/config/config.example.json +0 -165
  256. orb_py-1.2.2/config/default_config.json +0 -408
  257. orb_py-1.2.2/pyproject.toml +0 -498
  258. orb_py-1.2.2/src/orb/_package.py +0 -101
  259. orb_py-1.2.2/src/orb/api/dependencies.py +0 -96
  260. orb_py-1.2.2/src/orb/api/handlers/get_available_templates_handler.py +0 -146
  261. orb_py-1.2.2/src/orb/api/handlers/get_request_status_handler.py +0 -331
  262. orb_py-1.2.2/src/orb/api/handlers/get_return_requests_handler.py +0 -370
  263. orb_py-1.2.2/src/orb/api/handlers/request_machines_handler.py +0 -160
  264. orb_py-1.2.2/src/orb/api/handlers/request_return_machines_handler.py +0 -314
  265. orb_py-1.2.2/src/orb/api/models/requests.py +0 -102
  266. orb_py-1.2.2/src/orb/api/routers/machines.py +0 -148
  267. orb_py-1.2.2/src/orb/api/routers/requests.py +0 -202
  268. orb_py-1.2.2/src/orb/api/routers/templates.py +0 -347
  269. orb_py-1.2.2/src/orb/api/server.py +0 -307
  270. orb_py-1.2.2/src/orb/api/utils/request_id_generator.py +0 -21
  271. orb_py-1.2.2/src/orb/application/base/handlers.py +0 -461
  272. orb_py-1.2.2/src/orb/application/base/provider_handlers.py +0 -350
  273. orb_py-1.2.2/src/orb/application/commands/cleanup_handlers.py +0 -217
  274. orb_py-1.2.2/src/orb/application/commands/provider_handlers.py +0 -230
  275. orb_py-1.2.2/src/orb/application/commands/request_creation_handlers.py +0 -507
  276. orb_py-1.2.2/src/orb/application/commands/request_sync_handlers.py +0 -203
  277. orb_py-1.2.2/src/orb/application/commands/template_handlers.py +0 -296
  278. orb_py-1.2.2/src/orb/application/dto/base.py +0 -147
  279. orb_py-1.2.2/src/orb/application/dto/queries.py +0 -169
  280. orb_py-1.2.2/src/orb/application/dto/system.py +0 -233
  281. orb_py-1.2.2/src/orb/application/dto/template_dto.py +0 -195
  282. orb_py-1.2.2/src/orb/application/events/handlers/__init__.py +0 -27
  283. orb_py-1.2.2/src/orb/application/ports/__init__.py +0 -25
  284. orb_py-1.2.2/src/orb/application/ports/scheduler_registry_port.py +0 -46
  285. orb_py-1.2.2/src/orb/application/ports/storage_registry_port.py +0 -46
  286. orb_py-1.2.2/src/orb/application/queries/cleanup_query_handlers.py +0 -147
  287. orb_py-1.2.2/src/orb/application/queries/machine_query_handlers.py +0 -349
  288. orb_py-1.2.2/src/orb/application/queries/request_query_handlers.py +0 -404
  289. orb_py-1.2.2/src/orb/application/queries/scheduler_handlers.py +0 -258
  290. orb_py-1.2.2/src/orb/application/queries/specialized_handlers.py +0 -234
  291. orb_py-1.2.2/src/orb/application/queries/system_handlers.py +0 -443
  292. orb_py-1.2.2/src/orb/application/queries/template_query_handlers.py +0 -274
  293. orb_py-1.2.2/src/orb/application/request/queries.py +0 -39
  294. orb_py-1.2.2/src/orb/application/services/asg_metadata_service.py +0 -133
  295. orb_py-1.2.2/src/orb/application/services/container_service.py +0 -24
  296. orb_py-1.2.2/src/orb/application/services/deprovisioning_orchestrator.py +0 -208
  297. orb_py-1.2.2/src/orb/application/services/machine_grouping_service.py +0 -107
  298. orb_py-1.2.2/src/orb/application/services/machine_sync_service.py +0 -288
  299. orb_py-1.2.2/src/orb/application/services/provider_registry_service.py +0 -67
  300. orb_py-1.2.2/src/orb/application/services/provisioning_orchestration_service.py +0 -366
  301. orb_py-1.2.2/src/orb/application/services/request_creation_service.py +0 -66
  302. orb_py-1.2.2/src/orb/application/services/scheduler_registry_service.py +0 -34
  303. orb_py-1.2.2/src/orb/application/services/storage_registry_service.py +0 -32
  304. orb_py-1.2.2/src/orb/application/services/template_defaults_service.py +0 -583
  305. orb_py-1.2.2/src/orb/application/services/template_generation_service.py +0 -376
  306. orb_py-1.2.2/src/orb/application/template/commands.py +0 -62
  307. orb_py-1.2.2/src/orb/bootstrap.py +0 -423
  308. orb_py-1.2.2/src/orb/cli/args.py +0 -623
  309. orb_py-1.2.2/src/orb/cli/command_factory.py +0 -18
  310. orb_py-1.2.2/src/orb/cli/field_mapping.py +0 -124
  311. orb_py-1.2.2/src/orb/cli/main.py +0 -272
  312. orb_py-1.2.2/src/orb/cli/registry.py +0 -244
  313. orb_py-1.2.2/src/orb/cli/response_formatter.py +0 -460
  314. orb_py-1.2.2/src/orb/cli/router.py +0 -53
  315. orb_py-1.2.2/src/orb/config/installation_detector.py +0 -146
  316. orb_py-1.2.2/src/orb/config/loader.py +0 -519
  317. orb_py-1.2.2/src/orb/config/managers/cache_manager.py +0 -73
  318. orb_py-1.2.2/src/orb/config/managers/configuration_manager.py +0 -487
  319. orb_py-1.2.2/src/orb/config/managers/path_resolver.py +0 -130
  320. orb_py-1.2.2/src/orb/config/managers/provider_manager.py +0 -139
  321. orb_py-1.2.2/src/orb/config/managers/type_converter.py +0 -184
  322. orb_py-1.2.2/src/orb/config/platform_dirs.py +0 -100
  323. orb_py-1.2.2/src/orb/config/schemas/__init__.py +0 -81
  324. orb_py-1.2.2/src/orb/config/schemas/app_schema.py +0 -132
  325. orb_py-1.2.2/src/orb/config/schemas/cleanup_schema.py +0 -21
  326. orb_py-1.2.2/src/orb/config/schemas/common_schema.py +0 -254
  327. orb_py-1.2.2/src/orb/config/schemas/metrics_schema.py +0 -32
  328. orb_py-1.2.2/src/orb/config/schemas/performance_schema.py +0 -284
  329. orb_py-1.2.2/src/orb/config/schemas/provider_strategy_schema.py +0 -343
  330. orb_py-1.2.2/src/orb/config/schemas/scheduler_schema.py +0 -29
  331. orb_py-1.2.2/src/orb/config/schemas/server_schema.py +0 -91
  332. orb_py-1.2.2/src/orb/config/schemas/storage_schema.py +0 -188
  333. orb_py-1.2.2/src/orb/config/services/config_loader_service.py +0 -203
  334. orb_py-1.2.2/src/orb/config/services/path_resolution_service.py +0 -186
  335. orb_py-1.2.2/src/orb/config/validators/config_validator.py +0 -119
  336. orb_py-1.2.2/src/orb/domain/base/__init__.py +0 -119
  337. orb_py-1.2.2/src/orb/domain/base/configuration_service.py +0 -78
  338. orb_py-1.2.2/src/orb/domain/base/entity_pure.py +0 -82
  339. orb_py-1.2.2/src/orb/domain/base/error.py +0 -67
  340. orb_py-1.2.2/src/orb/domain/base/events/__init__.py +0 -136
  341. orb_py-1.2.2/src/orb/domain/base/events/domain_events.py +0 -145
  342. orb_py-1.2.2/src/orb/domain/base/events/infrastructure_events.py +0 -82
  343. orb_py-1.2.2/src/orb/domain/base/events/system_events.py +0 -124
  344. orb_py-1.2.2/src/orb/domain/base/ports/__init__.py +0 -27
  345. orb_py-1.2.2/src/orb/domain/base/ports/asg_query_port.py +0 -12
  346. orb_py-1.2.2/src/orb/domain/base/ports/configuration_port.py +0 -152
  347. orb_py-1.2.2/src/orb/domain/base/ports/provider_strategy_resolver_port.py +0 -34
  348. orb_py-1.2.2/src/orb/domain/base/ports/scheduler_port.py +0 -118
  349. orb_py-1.2.2/src/orb/domain/constants.py +0 -51
  350. orb_py-1.2.2/src/orb/domain/machine/aggregate.py +0 -291
  351. orb_py-1.2.2/src/orb/domain/request/aggregate.py +0 -542
  352. orb_py-1.2.2/src/orb/domain/request/request_identifiers.py +0 -230
  353. orb_py-1.2.2/src/orb/domain/request/request_metadata.py +0 -504
  354. orb_py-1.2.2/src/orb/domain/template/factory.py +0 -284
  355. orb_py-1.2.2/src/orb/domain/template/template_aggregate.py +0 -242
  356. orb_py-1.2.2/src/orb/infrastructure/adapters/__init__.py +0 -22
  357. orb_py-1.2.2/src/orb/infrastructure/adapters/asg_query_adapter.py +0 -23
  358. orb_py-1.2.2/src/orb/infrastructure/adapters/configuration_adapter.py +0 -417
  359. orb_py-1.2.2/src/orb/infrastructure/adapters/ports/resource_provisioning_port.py +0 -57
  360. orb_py-1.2.2/src/orb/infrastructure/adapters/provider_registry_adapter.py +0 -135
  361. orb_py-1.2.2/src/orb/infrastructure/adapters/provider_strategy_adapter.py +0 -32
  362. orb_py-1.2.2/src/orb/infrastructure/caching/request_cache_service.py +0 -158
  363. orb_py-1.2.2/src/orb/infrastructure/di/command_handler_services.py +0 -167
  364. orb_py-1.2.2/src/orb/infrastructure/di/components/cqrs_registry.py +0 -102
  365. orb_py-1.2.2/src/orb/infrastructure/di/components/dependency_resolver.py +0 -413
  366. orb_py-1.2.2/src/orb/infrastructure/di/components/service_registry.py +0 -181
  367. orb_py-1.2.2/src/orb/infrastructure/di/container.py +0 -341
  368. orb_py-1.2.2/src/orb/infrastructure/di/core_services.py +0 -122
  369. orb_py-1.2.2/src/orb/infrastructure/di/decorators.py +0 -301
  370. orb_py-1.2.2/src/orb/infrastructure/di/domain_services.py +0 -97
  371. orb_py-1.2.2/src/orb/infrastructure/di/infrastructure_services.py +0 -156
  372. orb_py-1.2.2/src/orb/infrastructure/di/port_registrations.py +0 -124
  373. orb_py-1.2.2/src/orb/infrastructure/di/provider_services.py +0 -68
  374. orb_py-1.2.2/src/orb/infrastructure/di/query_handler_services.py +0 -201
  375. orb_py-1.2.2/src/orb/infrastructure/di/registry_services.py +0 -35
  376. orb_py-1.2.2/src/orb/infrastructure/di/scheduler_services.py +0 -31
  377. orb_py-1.2.2/src/orb/infrastructure/di/server_services.py +0 -181
  378. orb_py-1.2.2/src/orb/infrastructure/di/services.py +0 -220
  379. orb_py-1.2.2/src/orb/infrastructure/di/storage_services.py +0 -111
  380. orb_py-1.2.2/src/orb/infrastructure/error/context.py +0 -29
  381. orb_py-1.2.2/src/orb/infrastructure/error/exception_handler.py +0 -921
  382. orb_py-1.2.2/src/orb/infrastructure/error/responses.py +0 -173
  383. orb_py-1.2.2/src/orb/infrastructure/events/__init__.py +0 -95
  384. orb_py-1.2.2/src/orb/infrastructure/handlers/__init__.py +0 -15
  385. orb_py-1.2.2/src/orb/infrastructure/handlers/base/__init__.py +0 -12
  386. orb_py-1.2.2/src/orb/infrastructure/handlers/base/api_handler.py +0 -367
  387. orb_py-1.2.2/src/orb/infrastructure/logging/logger.py +0 -402
  388. orb_py-1.2.2/src/orb/infrastructure/resilience/__init__.py +0 -36
  389. orb_py-1.2.2/src/orb/infrastructure/resilience/config.py +0 -37
  390. orb_py-1.2.2/src/orb/infrastructure/resilience/retry_decorator.py +0 -175
  391. orb_py-1.2.2/src/orb/infrastructure/resilience/strategy/circuit_breaker.py +0 -409
  392. orb_py-1.2.2/src/orb/infrastructure/resilience/strategy/exponential.py +0 -107
  393. orb_py-1.2.2/src/orb/infrastructure/scheduler/base/strategy.py +0 -381
  394. orb_py-1.2.2/src/orb/infrastructure/scheduler/default/default_strategy.py +0 -302
  395. orb_py-1.2.2/src/orb/infrastructure/scheduler/hostfactory/field_mapper.py +0 -154
  396. orb_py-1.2.2/src/orb/infrastructure/scheduler/hostfactory/field_mappings.py +0 -111
  397. orb_py-1.2.2/src/orb/infrastructure/scheduler/hostfactory/hostfactory_strategy.py +0 -935
  398. orb_py-1.2.2/src/orb/infrastructure/scheduler/hostfactory/transformations.py +0 -173
  399. orb_py-1.2.2/src/orb/infrastructure/scheduler/registration.py +0 -176
  400. orb_py-1.2.2/src/orb/infrastructure/scheduler/registry.py +0 -104
  401. orb_py-1.2.2/src/orb/infrastructure/services/provider_strategy_resolver.py +0 -47
  402. orb_py-1.2.2/src/orb/infrastructure/storage/base/repository.py +0 -494
  403. orb_py-1.2.2/src/orb/infrastructure/storage/components/__init__.py +0 -70
  404. orb_py-1.2.2/src/orb/infrastructure/storage/components/dynamodb_client_manager.py +0 -358
  405. orb_py-1.2.2/src/orb/infrastructure/storage/components/dynamodb_converter.py +0 -324
  406. orb_py-1.2.2/src/orb/infrastructure/storage/components/dynamodb_transaction_manager.py +0 -285
  407. orb_py-1.2.2/src/orb/infrastructure/storage/components/sql_serializer.py +0 -279
  408. orb_py-1.2.2/src/orb/infrastructure/storage/dynamodb/__init__.py +0 -5
  409. orb_py-1.2.2/src/orb/infrastructure/storage/dynamodb/registration.py +0 -174
  410. orb_py-1.2.2/src/orb/infrastructure/storage/dynamodb/strategy.py +0 -352
  411. orb_py-1.2.2/src/orb/infrastructure/storage/dynamodb/unit_of_work.py +0 -145
  412. orb_py-1.2.2/src/orb/infrastructure/storage/json/strategy.py +0 -401
  413. orb_py-1.2.2/src/orb/infrastructure/storage/registration.py +0 -76
  414. orb_py-1.2.2/src/orb/infrastructure/storage/registry.py +0 -203
  415. orb_py-1.2.2/src/orb/infrastructure/storage/repositories/machine_repository.py +0 -356
  416. orb_py-1.2.2/src/orb/infrastructure/storage/repositories/request_repository.py +0 -441
  417. orb_py-1.2.2/src/orb/infrastructure/storage/repositories/template_repository.py +0 -332
  418. orb_py-1.2.2/src/orb/infrastructure/storage/repository_migrator.py +0 -446
  419. orb_py-1.2.2/src/orb/infrastructure/storage/sql/models.py +0 -130
  420. orb_py-1.2.2/src/orb/infrastructure/storage/sql/registration.py +0 -151
  421. orb_py-1.2.2/src/orb/infrastructure/template/configuration_manager.py +0 -689
  422. orb_py-1.2.2/src/orb/infrastructure/template/dtos.py +0 -195
  423. orb_py-1.2.2/src/orb/infrastructure/template/services/template_storage_service.py +0 -207
  424. orb_py-1.2.2/src/orb/infrastructure/template/template_cache_service.py +0 -327
  425. orb_py-1.2.2/src/orb/infrastructure/template/template_repository_impl.py +0 -119
  426. orb_py-1.2.2/src/orb/infrastructure/utilities/__init__.py +0 -79
  427. orb_py-1.2.2/src/orb/infrastructure/utilities/common/string_utils.py +0 -259
  428. orb_py-1.2.2/src/orb/infrastructure/utilities/factories/repository_factory.py +0 -187
  429. orb_py-1.2.2/src/orb/infrastructure/utilities/factories/sql_engine_factory.py +0 -213
  430. orb_py-1.2.2/src/orb/infrastructure/utilities/json_utils.py +0 -174
  431. orb_py-1.2.2/src/orb/infrastructure/utilities/network_utils.py +0 -100
  432. orb_py-1.2.2/src/orb/infrastructure/validation/__init__.py +0 -25
  433. orb_py-1.2.2/src/orb/infrastructure/validation/input_validator.py +0 -220
  434. orb_py-1.2.2/src/orb/infrastructure/validation/startup_validator.py +0 -209
  435. orb_py-1.2.2/src/orb/interface/health_command_handler.py +0 -187
  436. orb_py-1.2.2/src/orb/interface/infrastructure_command_handler.py +0 -254
  437. orb_py-1.2.2/src/orb/interface/init_command_handler.py +0 -721
  438. orb_py-1.2.2/src/orb/interface/machine_command_handlers.py +0 -292
  439. orb_py-1.2.2/src/orb/interface/mcp/server/core.py +0 -478
  440. orb_py-1.2.2/src/orb/interface/mcp/server/handler.py +0 -143
  441. orb_py-1.2.2/src/orb/interface/provider_config_handler.py +0 -399
  442. orb_py-1.2.2/src/orb/interface/request_command_handlers.py +0 -447
  443. orb_py-1.2.2/src/orb/interface/scheduler_command_handlers.py +0 -87
  444. orb_py-1.2.2/src/orb/interface/storage_command_handlers.py +0 -147
  445. orb_py-1.2.2/src/orb/interface/system_command_handlers.py +0 -221
  446. orb_py-1.2.2/src/orb/interface/template_command_handlers.py +0 -543
  447. orb_py-1.2.2/src/orb/interface/templates_generate_handler.py +0 -94
  448. orb_py-1.2.2/src/orb/monitoring/health.py +0 -509
  449. orb_py-1.2.2/src/orb/monitoring/metrics.py +0 -351
  450. orb_py-1.2.2/src/orb/providers/__init__.py +0 -10
  451. orb_py-1.2.2/src/orb/providers/aws/application/events/aws_handlers.py +0 -91
  452. orb_py-1.2.2/src/orb/providers/aws/auth/iam_strategy.py +0 -290
  453. orb_py-1.2.2/src/orb/providers/aws/configuration/config.py +0 -220
  454. orb_py-1.2.2/src/orb/providers/aws/configuration/template_extension.py +0 -135
  455. orb_py-1.2.2/src/orb/providers/aws/domain/template/aws_template_aggregate.py +0 -493
  456. orb_py-1.2.2/src/orb/providers/aws/infrastructure/adapters/aws_provisioning_adapter.py +0 -460
  457. orb_py-1.2.2/src/orb/providers/aws/infrastructure/aws_client.py +0 -417
  458. orb_py-1.2.2/src/orb/providers/aws/infrastructure/aws_handler_factory.py +0 -214
  459. orb_py-1.2.2/src/orb/providers/aws/infrastructure/dry_run_adapter.py +0 -114
  460. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/__init__.py +0 -15
  461. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/asg/capacity_manager.py +0 -214
  462. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/asg/config_builder.py +0 -308
  463. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/asg/handler.py +0 -589
  464. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/base_handler.py +0 -816
  465. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/config_builder.py +0 -306
  466. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/handler.py +0 -861
  467. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/ec2_fleet/release_manager.py +0 -228
  468. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/run_instances/handler.py +0 -673
  469. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/shared/base_context_mixin.py +0 -111
  470. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/shared/fleet_grouping_mixin.py +0 -235
  471. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/spot_fleet/config_builder.py +0 -311
  472. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/spot_fleet/handler.py +0 -609
  473. orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/spot_fleet/release_manager.py +0 -199
  474. orb_py-1.2.2/src/orb/providers/aws/infrastructure/instrumentation/botocore_metrics.py +0 -431
  475. orb_py-1.2.2/src/orb/providers/aws/infrastructure/launch_template/manager.py +0 -604
  476. orb_py-1.2.2/src/orb/providers/aws/infrastructure/services/aws_native_spec_service.py +0 -158
  477. orb_py-1.2.2/src/orb/providers/aws/infrastructure/template/ami_cache.py +0 -235
  478. orb_py-1.2.2/src/orb/providers/aws/managers/__init__.py +0 -5
  479. orb_py-1.2.2/src/orb/providers/aws/managers/aws_instance_manager.py +0 -183
  480. orb_py-1.2.2/src/orb/providers/aws/registration.py +0 -493
  481. orb_py-1.2.2/src/orb/providers/aws/services/health_check_service.py +0 -90
  482. orb_py-1.2.2/src/orb/providers/aws/services/infrastructure_discovery_service.py +0 -537
  483. orb_py-1.2.2/src/orb/providers/aws/services/instance_operation_service.py +0 -213
  484. orb_py-1.2.2/src/orb/providers/aws/strategy/aws_provider_strategy.py +0 -614
  485. orb_py-1.2.2/src/orb/providers/aws/utilities/aws_operations.py +0 -588
  486. orb_py-1.2.2/src/orb/providers/aws/utilities/ec2/instances.py +0 -279
  487. orb_py-1.2.2/src/orb/providers/aws/utilities/ssm_utils.py +0 -288
  488. orb_py-1.2.2/src/orb/providers/base/strategy/fallback_strategy.py +0 -722
  489. orb_py-1.2.2/src/orb/providers/base/strategy/load_balancing/strategy.py +0 -396
  490. orb_py-1.2.2/src/orb/providers/base/strategy/provider_strategy.py +0 -334
  491. orb_py-1.2.2/src/orb/providers/config_builder.py +0 -145
  492. orb_py-1.2.2/src/orb/providers/config_validator.py +0 -130
  493. orb_py-1.2.2/src/orb/providers/factory.py +0 -235
  494. orb_py-1.2.2/src/orb/providers/registration.py +0 -46
  495. orb_py-1.2.2/src/orb/providers/registry/provider_registry.py +0 -852
  496. orb_py-1.2.2/src/orb/providers/services/provider_execution_service.py +0 -179
  497. orb_py-1.2.2/src/orb/run.py +0 -68
  498. orb_py-1.2.2/src/orb/sdk/client.py +0 -520
  499. orb_py-1.2.2/src/orb/sdk/discovery.py +0 -449
  500. orb_py-1.2.2/src/orb/sdk/protocols.py +0 -113
  501. orb_py-1.2.2/src/orb_py.egg-info/PKG-INFO +0 -536
  502. orb_py-1.2.2/src/orb_py.egg-info/SOURCES.txt +0 -817
  503. orb_py-1.2.2/src/orb_py.egg-info/requires.txt +0 -97
  504. orb_py-1.2.2/tests/test_basic_functionality.py +0 -99
  505. orb_py-1.2.2/tests/test_end_to_end.py +0 -154
  506. orb_py-1.2.2/tests/test_field_mapping_integration.py +0 -230
  507. orb_py-1.2.2/tests/test_import_guards.py +0 -397
  508. orb_py-1.2.2/tests/test_import_validation.py +0 -184
  509. orb_py-1.2.2/tests/test_injectable_migration.py +0 -247
  510. orb_py-1.2.2/tests/test_logging_integration.py +0 -250
  511. orb_py-1.2.2/tests/test_machines_start.py +0 -117
  512. orb_py-1.2.2/tests/test_platform_dirs.py +0 -487
  513. orb_py-1.2.2/tests/test_setup.py +0 -79
  514. {orb_py-1.2.2 → orb_py-1.3.0}/LICENSE +0 -0
  515. {orb_py-1.2.2 → orb_py-1.3.0}/MANIFEST.in +0 -0
  516. {orb_py-1.2.2 → orb_py-1.3.0}/config/aws_templates.json +0 -0
  517. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/asg-basic.json +0 -0
  518. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/complete-default.json +0 -0
  519. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/ec2fleet-attribute-based.json +0 -0
  520. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/ec2fleet-capacity-optimized-prioritized.json +0 -0
  521. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/ec2fleet-hpc-spot-diversified.json +0 -0
  522. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/ec2fleet-price-capacity-optimized.json +0 -0
  523. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/gpu-compute-cluster.json +0 -0
  524. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/launch-template-advanced.json +0 -0
  525. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/launch-template-basic.json +0 -0
  526. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/launch-template-complete-default.json +0 -0
  527. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/multi-tier-architecture.json +0 -0
  528. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/runinstances-basic.json +0 -0
  529. {orb_py-1.2.2 → orb_py-1.3.0}/config/specs/aws/examples/spotfleet-price-capacity-optimized.json +0 -0
  530. {orb_py-1.2.2 → orb_py-1.3.0}/setup.cfg +0 -0
  531. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/__init__.py +0 -0
  532. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/__main__.py +0 -0
  533. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/__init__.py +0 -0
  534. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/documentation/__init__.py +0 -0
  535. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/documentation/examples.py +0 -0
  536. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/documentation/openapi_config.py +0 -0
  537. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/documentation/py.typed +0 -0
  538. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/documentation/security_schemes.py +0 -0
  539. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/handlers/__init__.py +0 -0
  540. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/handlers/py.typed +0 -0
  541. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/middleware/__init__.py +0 -0
  542. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/middleware/auth_middleware.py +0 -0
  543. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/middleware/logging_middleware.py +0 -0
  544. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/middleware/py.typed +0 -0
  545. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/models/__init__.py +0 -0
  546. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/models/base.py +0 -0
  547. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/models/py.typed +0 -0
  548. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/models/responses.py +0 -0
  549. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/models/templates.py +0 -0
  550. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/py.typed +0 -0
  551. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/routers/__init__.py +0 -0
  552. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/routers/py.typed +0 -0
  553. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/api/validation.py +0 -0
  554. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/__init__.py +0 -0
  555. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/__init__.py +0 -0
  556. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/command_handler.py +0 -0
  557. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/commands.py +0 -0
  558. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/event_handlers.py +0 -0
  559. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/infrastructure_handlers.py +0 -0
  560. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/py.typed +0 -0
  561. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/base/queries.py +0 -0
  562. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/__init__.py +0 -0
  563. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/machine_handlers.py +0 -0
  564. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/py.typed +0 -0
  565. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/request_handlers.py +0 -0
  566. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/request_lifecycle_handlers.py +0 -0
  567. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/system.py +0 -0
  568. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/commands/system_handlers.py +0 -0
  569. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/decorators.py +0 -0
  570. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/__init__.py +0 -0
  571. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/bulk_queries.py +0 -0
  572. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/bulk_responses.py +0 -0
  573. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/commands.py +0 -0
  574. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/paginated_responses.py +0 -0
  575. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/py.typed +0 -0
  576. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/responses.py +0 -0
  577. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/dto/template_generation_dto.py +0 -0
  578. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/__init__.py +0 -0
  579. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/base/__init__.py +0 -0
  580. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/base/action_event_handler.py +0 -0
  581. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/base/event_handler.py +0 -0
  582. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/base/logging_event_handler.py +0 -0
  583. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/base/py.typed +0 -0
  584. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/bus/__init__.py +0 -0
  585. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/bus/event_bus.py +0 -0
  586. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/bus/py.typed +0 -0
  587. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/decorators.py +0 -0
  588. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/infrastructure_handlers.py +0 -0
  589. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/machine_handlers.py +0 -0
  590. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/py.typed +0 -0
  591. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/request_handlers.py +0 -0
  592. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/system_handlers.py +0 -0
  593. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/handlers/template_handlers.py +0 -0
  594. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/events/py.typed +0 -0
  595. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/factories/__init__.py +0 -0
  596. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/factories/request_dto_factory.py +0 -0
  597. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/__init__.py +0 -0
  598. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/command_handler.py +0 -0
  599. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/command_query.py +0 -0
  600. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/event_handler.py +0 -0
  601. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/infrastructure_handler.py +0 -0
  602. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/provider_handler.py +0 -0
  603. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/interfaces/py.typed +0 -0
  604. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/machine/__init__.py +0 -0
  605. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/machine/commands.py +0 -0
  606. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/machine/dto.py +0 -0
  607. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/machine/py.typed +0 -0
  608. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/machine/queries.py +0 -0
  609. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/cache_service_port.py +0 -0
  610. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/command_bus_port.py +0 -0
  611. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/error_response_port.py +0 -0
  612. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/query_bus_port.py +0 -0
  613. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/registry_port.py +0 -0
  614. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/ports/template_dto_port.py +0 -0
  615. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/provider/__init__.py +0 -0
  616. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/provider/commands.py +0 -0
  617. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/provider/py.typed +0 -0
  618. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/provider/queries.py +0 -0
  619. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/py.typed +0 -0
  620. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/__init__.py +0 -0
  621. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/bulk_handlers.py +0 -0
  622. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/provider_handlers.py +0 -0
  623. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/py.typed +0 -0
  624. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/scheduler.py +0 -0
  625. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/storage.py +0 -0
  626. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/storage_handlers.py +0 -0
  627. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/queries/system.py +0 -0
  628. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/request/__init__.py +0 -0
  629. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/request/dto.py +0 -0
  630. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/request/py.typed +0 -0
  631. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/base_query_service.py +0 -0
  632. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/event_publishing_service.py +0 -0
  633. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/native_spec_service.py +0 -0
  634. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/provider_name_service.py +0 -0
  635. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/provider_validation_service.py +0 -0
  636. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/request_query_service.py +0 -0
  637. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/request_status_management_service.py +0 -0
  638. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/request_status_service.py +0 -0
  639. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/services/template_validation_service.py +0 -0
  640. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/template/__init__.py +0 -0
  641. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/template/py.typed +0 -0
  642. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/value_objects/__init__.py +0 -0
  643. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/application/value_objects/batching_policy.py +0 -0
  644. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/__init__.py +0 -0
  645. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/args_extractor.py +0 -0
  646. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/completion.py +0 -0
  647. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/console.py +0 -0
  648. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/__init__.py +0 -0
  649. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/cli_command_factory_orchestrator.py +0 -0
  650. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/machine_command_factory.py +0 -0
  651. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/provider_command_factory.py +0 -0
  652. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/request_command_factory.py +0 -0
  653. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/scheduler_command_factory.py +0 -0
  654. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/storage_command_factory.py +0 -0
  655. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/system_command_factory.py +0 -0
  656. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/template_command_factory.py +0 -0
  657. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/factories/utility_command_factory.py +0 -0
  658. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/formatters.py +0 -0
  659. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/help_utils.py +0 -0
  660. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/cli/py.typed +0 -0
  661. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/__init__.py +0 -0
  662. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/constants.py +0 -0
  663. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/manager.py +0 -0
  664. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/managers/__init__.py +0 -0
  665. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/managers/py.typed +0 -0
  666. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/py.typed +0 -0
  667. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/base_config.py +0 -0
  668. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/logging_schema.py +0 -0
  669. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/native_spec_schema.py +0 -0
  670. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/provider_settings_registry.py +0 -0
  671. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/py.typed +0 -0
  672. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/schemas/template_schema.py +0 -0
  673. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/services/__init__.py +0 -0
  674. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/utils/__init__.py +0 -0
  675. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/utils/env_expansion.py +0 -0
  676. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/utils/py.typed +0 -0
  677. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/validators/__init__.py +0 -0
  678. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/config/validators/py.typed +0 -0
  679. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/__init__.py +0 -0
  680. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/contracts/template_contract.py +0 -0
  681. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/decorators.py +0 -0
  682. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/dependency_injection.py +0 -0
  683. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/di_contracts.py +0 -0
  684. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/domain_exceptions.py +0 -0
  685. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/domain_interfaces.py +0 -0
  686. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/entity.py +0 -0
  687. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/events/base_events.py +0 -0
  688. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/events/base_events_pure.py +0 -0
  689. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/events/provider_events.py +0 -0
  690. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/events/py.typed +0 -0
  691. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/exceptions.py +0 -0
  692. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/operations.py +0 -0
  693. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/container_port.py +0 -0
  694. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/error_handling_port.py +0 -0
  695. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/event_publisher_port.py +0 -0
  696. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/logging_port.py +0 -0
  697. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_config_port.py +0 -0
  698. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_discovery_port.py +0 -0
  699. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_monitoring_port.py +0 -0
  700. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_name_port.py +0 -0
  701. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_port.py +0 -0
  702. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_provisioning_port.py +0 -0
  703. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_selection_port.py +0 -0
  704. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_template_port.py +0 -0
  705. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provider_validation_port.py +0 -0
  706. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/provisioning_orchestration_port.py +0 -0
  707. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/py.typed +0 -0
  708. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/request_creation_port.py +0 -0
  709. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/request_status_management_port.py +0 -0
  710. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/spec_rendering_port.py +0 -0
  711. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/storage_lifecycle_port.py +0 -0
  712. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/storage_port.py +0 -0
  713. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/storage_reader_port.py +0 -0
  714. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/storage_writer_port.py +0 -0
  715. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/template_adapter_port.py +0 -0
  716. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/template_configuration_port.py +0 -0
  717. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/ports/template_example_generator_port.py +0 -0
  718. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/provider_interfaces.py +0 -0
  719. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/py.typed +0 -0
  720. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/results.py +0 -0
  721. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/utils.py +0 -0
  722. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/value_objects.py +0 -0
  723. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/base/value_objects_pure.py +0 -0
  724. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/exceptions/image_resolution_error.py +0 -0
  725. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/__init__.py +0 -0
  726. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/exceptions.py +0 -0
  727. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/machine_identifiers.py +0 -0
  728. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/machine_metadata.py +0 -0
  729. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/machine_status.py +0 -0
  730. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/py.typed +0 -0
  731. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/repository.py +0 -0
  732. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/machine/value_objects.py +0 -0
  733. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/py.typed +0 -0
  734. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/__init__.py +0 -0
  735. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/exceptions.py +0 -0
  736. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/py.typed +0 -0
  737. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/repository.py +0 -0
  738. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/request_types.py +0 -0
  739. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/request/value_objects.py +0 -0
  740. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/filter_service.py +0 -0
  741. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/generic_filter_service.py +0 -0
  742. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/image_cache.py +0 -0
  743. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/image_resolution_service.py +0 -0
  744. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/template_validation_domain_service.py +0 -0
  745. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/services/timestamp_service.py +0 -0
  746. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/__init__.py +0 -0
  747. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/exceptions.py +0 -0
  748. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/extensions.py +0 -0
  749. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/image_resolver.py +0 -0
  750. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/ports/template_defaults_port.py +0 -0
  751. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/py.typed +0 -0
  752. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/repository.py +0 -0
  753. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/domain/template/value_objects.py +0 -0
  754. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/__init__.py +0 -0
  755. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/cache_adapter.py +0 -0
  756. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/container_adapter.py +0 -0
  757. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/error_handling_adapter.py +0 -0
  758. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/factories/__init__.py +0 -0
  759. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/factories/container_adapter_factory.py +0 -0
  760. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/factories/py.typed +0 -0
  761. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/logging_adapter.py +0 -0
  762. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/__init__.py +0 -0
  763. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/auth/__init__.py +0 -0
  764. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/auth/auth_port.py +0 -0
  765. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/auth/py.typed +0 -0
  766. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/auth/token_port.py +0 -0
  767. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/auth/user_port.py +0 -0
  768. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/py.typed +0 -0
  769. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/ports/request_adapter_port.py +0 -0
  770. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/provider_selection_adapter.py +0 -0
  771. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/py.typed +0 -0
  772. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/storage_adapter.py +0 -0
  773. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/adapters/template_configuration_adapter.py +0 -0
  774. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/__init__.py +0 -0
  775. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/py.typed +0 -0
  776. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/registry.py +0 -0
  777. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/strategy/__init__.py +0 -0
  778. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/strategy/bearer_token_strategy.py +0 -0
  779. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/strategy/bearer_token_strategy_enhanced.py +0 -0
  780. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/strategy/no_auth_strategy.py +0 -0
  781. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/strategy/py.typed +0 -0
  782. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/token_blacklist/__init__.py +0 -0
  783. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/token_blacklist/blacklist_port.py +0 -0
  784. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/token_blacklist/in_memory_blacklist.py +0 -0
  785. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/auth/token_blacklist/redis_blacklist.py +0 -0
  786. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/caching/__init__.py +0 -0
  787. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/caching/ami_cache_service.py +0 -0
  788. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/caching/in_memory_cache_service.py +0 -0
  789. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/caching/py.typed +0 -0
  790. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/constants.py +0 -0
  791. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/__init__.py +0 -0
  792. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/buses.py +0 -0
  793. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/components/__init__.py +0 -0
  794. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/components/py.typed +0 -0
  795. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/exceptions.py +0 -0
  796. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/handler_discovery.py +0 -0
  797. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/lazy_config.py +0 -0
  798. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/di/py.typed +0 -0
  799. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/__init__.py +0 -0
  800. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/categories.py +0 -0
  801. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/decorators.py +0 -0
  802. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/error_middleware.py +0 -0
  803. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/exception_type_mapper.py +0 -0
  804. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/http_response_handler.py +0 -0
  805. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/py.typed +0 -0
  806. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/error/utilities.py +0 -0
  807. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/events/publisher.py +0 -0
  808. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/events/py.typed +0 -0
  809. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/events/storage_events.py +0 -0
  810. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/handlers/base/base_handler.py +0 -0
  811. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/handlers/base/py.typed +0 -0
  812. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/handlers/py.typed +0 -0
  813. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/interfaces/__init__.py +0 -0
  814. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/interfaces/provider.py +0 -0
  815. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/interfaces/py.typed +0 -0
  816. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/lifecycle.py +0 -0
  817. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/logging/__init__.py +0 -0
  818. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/logging/logger_singleton.py +0 -0
  819. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/logging/py.typed +0 -0
  820. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/mocking/__init__.py +0 -0
  821. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/mocking/dry_run_context.py +0 -0
  822. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/mocking/py.typed +0 -0
  823. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/patterns/__init__.py +0 -0
  824. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/patterns/lazy_import.py +0 -0
  825. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/patterns/py.typed +0 -0
  826. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/patterns/singleton_access.py +0 -0
  827. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/patterns/singleton_registry.py +0 -0
  828. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/performance/performance_monitor.py +0 -0
  829. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/py.typed +0 -0
  830. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/registry/__init__.py +0 -0
  831. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/registry/base_registry.py +0 -0
  832. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/registry/py.typed +0 -0
  833. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/registry/registry_factory.py +0 -0
  834. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/resilience/exceptions.py +0 -0
  835. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/resilience/py.typed +0 -0
  836. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/resilience/strategy/__init__.py +0 -0
  837. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/resilience/strategy/base.py +0 -0
  838. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/resilience/strategy/py.typed +0 -0
  839. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/__init__.py +0 -0
  840. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/base/__init__.py +0 -0
  841. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/base/field_mapper.py +0 -0
  842. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/base/py.typed +0 -0
  843. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/default/__init__.py +0 -0
  844. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/default/field_mapper.py +0 -0
  845. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/default/py.typed +0 -0
  846. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/factory.py +0 -0
  847. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/__init__.py +0 -0
  848. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/py.typed +0 -0
  849. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/response_formatter.py +0 -0
  850. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getAvailableTemplates.bat +0 -0
  851. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getAvailableTemplates.sh +0 -0
  852. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getRequestStatus.bat +0 -0
  853. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getRequestStatus.sh +0 -0
  854. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getReturnRequests.bat +0 -0
  855. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/getReturnRequests.sh +0 -0
  856. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/invoke_provider.bat +0 -0
  857. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/invoke_provider.sh +0 -0
  858. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/requestMachines.bat +0 -0
  859. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/requestMachines.sh +0 -0
  860. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/requestReturnMachines.bat +0 -0
  861. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/requestReturnMachines.sh +0 -0
  862. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/templateWizard.bat +0 -0
  863. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/hostfactory/scripts/templateWizard.sh +0 -0
  864. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/scheduler/py.typed +0 -0
  865. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/serialization/__init__.py +0 -0
  866. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/serialization/encoders.py +0 -0
  867. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/serialization/py.typed +0 -0
  868. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/services/iso_timestamp_service.py +0 -0
  869. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/services/machine_filter_service.py +0 -0
  870. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/__init__.py +0 -0
  871. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/adapters/strategy_adapter.py +0 -0
  872. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/base/__init__.py +0 -0
  873. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/base/py.typed +0 -0
  874. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/base/repository_mixin.py +0 -0
  875. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/base/strategy.py +0 -0
  876. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/base/unit_of_work.py +0 -0
  877. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/entity_cache.py +0 -0
  878. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/entity_serializer.py +0 -0
  879. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/event_publisher.py +0 -0
  880. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/file_manager.py +0 -0
  881. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/generic_serializer.py +0 -0
  882. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/lock_manager.py +0 -0
  883. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/py.typed +0 -0
  884. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/resource_manager.py +0 -0
  885. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/serialization_manager.py +0 -0
  886. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/sql_connection_manager.py +0 -0
  887. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/sql_query_builder.py +0 -0
  888. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/transaction_manager.py +0 -0
  889. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/components/version_manager.py +0 -0
  890. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/concurrency.py +0 -0
  891. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/exceptions.py +0 -0
  892. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factories/__init__.py +0 -0
  893. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factories/machine_storage_factory.py +0 -0
  894. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factories/request_storage_factory.py +0 -0
  895. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factories/storage_factory_orchestrator.py +0 -0
  896. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factories/template_storage_factory.py +0 -0
  897. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/factory.py +0 -0
  898. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/interfaces/__init__.py +0 -0
  899. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/interfaces/batch_storage.py +0 -0
  900. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/interfaces/storage_reader.py +0 -0
  901. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/interfaces/storage_writer.py +0 -0
  902. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/interfaces/transactional_storage.py +0 -0
  903. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/json/__init__.py +0 -0
  904. {orb_py-1.2.2/src/orb/infrastructure/storage/dynamodb → orb_py-1.3.0/src/orb/infrastructure/storage/json}/py.typed +0 -0
  905. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/json/registration.py +0 -0
  906. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/json/template.py +0 -0
  907. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/json/unit_of_work.py +0 -0
  908. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/metrics_decorators.py +0 -0
  909. {orb_py-1.2.2/src/orb/infrastructure/storage/json → orb_py-1.3.0/src/orb/infrastructure/storage}/py.typed +0 -0
  910. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/repositories/__init__.py +0 -0
  911. {orb_py-1.2.2/src/orb/infrastructure/storage → orb_py-1.3.0/src/orb/infrastructure/storage/repositories}/py.typed +0 -0
  912. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/sql/__init__.py +0 -0
  913. {orb_py-1.2.2/src/orb/infrastructure/storage/repositories → orb_py-1.3.0/src/orb/infrastructure/storage/sql}/py.typed +0 -0
  914. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/sql/strategy.py +0 -0
  915. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/storage/sql/unit_of_work.py +0 -0
  916. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/template/__init__.py +0 -0
  917. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/template/jinja_spec_renderer.py +0 -0
  918. {orb_py-1.2.2/src/orb/infrastructure/storage/sql → orb_py-1.3.0/src/orb/infrastructure/template}/py.typed +0 -0
  919. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/__init__.py +0 -0
  920. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/collections/__init__.py +0 -0
  921. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/collections/filtering.py +0 -0
  922. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/collections/grouping.py +0 -0
  923. {orb_py-1.2.2/src/orb/infrastructure/template → orb_py-1.3.0/src/orb/infrastructure/utilities/common/collections}/py.typed +0 -0
  924. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/collections/transforming.py +0 -0
  925. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/collections/validation.py +0 -0
  926. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/date_utils.py +0 -0
  927. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/deep_merge.py +0 -0
  928. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/file_operations.py +0 -0
  929. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/file_utils.py +0 -0
  930. {orb_py-1.2.2/src/orb/infrastructure/utilities/common/collections → orb_py-1.3.0/src/orb/infrastructure/utilities/common}/py.typed +0 -0
  931. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/resource_naming.py +0 -0
  932. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/common/serialization.py +0 -0
  933. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/config_utils.py +0 -0
  934. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/factories/__init__.py +0 -0
  935. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/factories/api_handler_factory.py +0 -0
  936. {orb_py-1.2.2/src/orb/infrastructure/utilities/common → orb_py-1.3.0/src/orb/infrastructure/utilities/factories}/py.typed +0 -0
  937. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/__init__.py +0 -0
  938. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/binary_utils.py +0 -0
  939. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/directory_utils.py +0 -0
  940. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/file_operations.py +0 -0
  941. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/json_utils.py +0 -0
  942. {orb_py-1.2.2/src/orb/infrastructure/utilities/factories → orb_py-1.3.0/src/orb/infrastructure/utilities/file}/py.typed +0 -0
  943. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/text_utils.py +0 -0
  944. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/utilities/file/yaml_utils.py +0 -0
  945. {orb_py-1.2.2/src/orb/infrastructure/utilities/file → orb_py-1.3.0/src/orb/infrastructure/utilities}/py.typed +0 -0
  946. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/infrastructure/validation/secure_input.py +0 -0
  947. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/interface/__init__.py +0 -0
  948. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/interface/command_handlers.py +0 -0
  949. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/interface/mcp_command_handlers.py +0 -0
  950. {orb_py-1.2.2/src/orb/infrastructure/utilities → orb_py-1.3.0/src/orb/interface}/py.typed +0 -0
  951. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/interface/serve_command_handler.py +0 -0
  952. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/mcp/__init__.py +0 -0
  953. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/mcp/discovery.py +0 -0
  954. {orb_py-1.2.2/src/orb/interface → orb_py-1.3.0/src/orb/mcp}/py.typed +0 -0
  955. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/mcp/tools.py +0 -0
  956. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/monitoring/__init__.py +0 -0
  957. {orb_py-1.2.2/src/orb/mcp → orb_py-1.3.0/src/orb/monitoring}/py.typed +0 -0
  958. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/__init__.py +0 -0
  959. {orb_py-1.2.2/src/orb/providers/aws/application → orb_py-1.3.0/src/orb/providers/aws/adapters}/__init__.py +0 -0
  960. {orb_py-1.2.2/src/orb/infrastructure → orb_py-1.3.0/src/orb/providers/aws}/adapters/template_example_generator_adapter.py +0 -0
  961. {orb_py-1.2.2/src/orb/providers/aws/application/machine → orb_py-1.3.0/src/orb/providers/aws/application}/__init__.py +0 -0
  962. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/application/events/__init__.py +0 -0
  963. {orb_py-1.2.2/src/orb/monitoring → orb_py-1.3.0/src/orb/providers/aws/application/events}/py.typed +0 -0
  964. {orb_py-1.2.2/src/orb/providers/aws/application/request → orb_py-1.3.0/src/orb/providers/aws/application/machine}/__init__.py +0 -0
  965. {orb_py-1.2.2/src/orb/providers/aws/application/events → orb_py-1.3.0/src/orb/providers/aws/application/machine}/py.typed +0 -0
  966. {orb_py-1.2.2/src/orb/providers/aws/application/machine → orb_py-1.3.0/src/orb/providers/aws/application}/py.typed +0 -0
  967. {orb_py-1.2.2/src/orb/providers/aws/domain/machine → orb_py-1.3.0/src/orb/providers/aws/application/request}/__init__.py +0 -0
  968. {orb_py-1.2.2/src/orb/providers/aws/application → orb_py-1.3.0/src/orb/providers/aws/application/request}/py.typed +0 -0
  969. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/application/template/__init__.py +0 -0
  970. {orb_py-1.2.2/src/orb/providers/aws/application/request → orb_py-1.3.0/src/orb/providers/aws/application/template}/py.typed +0 -0
  971. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/auth/__init__.py +0 -0
  972. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/auth/cognito_strategy.py +0 -0
  973. {orb_py-1.2.2/src/orb/providers/aws/application/template → orb_py-1.3.0/src/orb/providers/aws/auth}/py.typed +0 -0
  974. {orb_py-1.2.2/src/orb/providers/aws/domain/request → orb_py-1.3.0/src/orb/providers/aws/cli}/__init__.py +0 -0
  975. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/configuration/__init__.py +0 -0
  976. {orb_py-1.2.2/src/orb/providers/aws/auth → orb_py-1.3.0/src/orb/providers/aws/configuration}/py.typed +0 -0
  977. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/configuration/validator.py +0 -0
  978. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/domain/__init__.py +0 -0
  979. {orb_py-1.2.2/src/orb/providers/aws/domain/template → orb_py-1.3.0/src/orb/providers/aws/domain/machine}/__init__.py +0 -0
  980. {orb_py-1.2.2/src/orb/providers/aws/configuration → orb_py-1.3.0/src/orb/providers/aws/domain/machine}/py.typed +0 -0
  981. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/domain/machine/value_objects.py +0 -0
  982. {orb_py-1.2.2/src/orb/providers/aws/domain/machine → orb_py-1.3.0/src/orb/providers/aws/domain}/py.typed +0 -0
  983. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/asg → orb_py-1.3.0/src/orb/providers/aws/domain/request}/__init__.py +0 -0
  984. {orb_py-1.2.2/src/orb/providers/aws/domain → orb_py-1.3.0/src/orb/providers/aws/domain/request}/py.typed +0 -0
  985. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/domain/request/value_objects.py +0 -0
  986. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/domain/services/ami_resolver.py +0 -0
  987. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/ec2_fleet → orb_py-1.3.0/src/orb/providers/aws/domain/template}/__init__.py +0 -0
  988. {orb_py-1.2.2/src/orb/providers/aws/domain/request → orb_py-1.3.0/src/orb/providers/aws/domain/template}/py.typed +0 -0
  989. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/domain/template/value_objects.py +0 -0
  990. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/exceptions/__init__.py +0 -0
  991. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/exceptions/aws_exceptions.py +0 -0
  992. {orb_py-1.2.2/src/orb/providers/aws/domain/template → orb_py-1.3.0/src/orb/providers/aws/exceptions}/py.typed +0 -0
  993. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/__init__.py +0 -0
  994. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/adapters/__init__.py +0 -0
  995. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/adapters/aws_validation_adapter.py +0 -0
  996. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/adapters/machine_adapter.py +0 -0
  997. {orb_py-1.2.2/src/orb/providers/aws/exceptions → orb_py-1.3.0/src/orb/providers/aws/infrastructure/adapters}/py.typed +0 -0
  998. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/adapters/request_adapter.py +0 -0
  999. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/adapters/template_adapter.py +0 -0
  1000. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/aws_client_factory.py +0 -0
  1001. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/caching/aws_image_cache.py +0 -0
  1002. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/run_instances → orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/asg}/__init__.py +0 -0
  1003. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/components/__init__.py +0 -0
  1004. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/adapters → orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/components}/py.typed +0 -0
  1005. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/shared → orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/ec2_fleet}/__init__.py +0 -0
  1006. {orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/components → orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers}/py.typed +0 -0
  1007. {orb_py-1.2.2/src/orb/providers/aws/persistence → orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/run_instances}/__init__.py +0 -0
  1008. /orb_py-1.2.2/src/orb/providers/aws/infrastructure/handlers/py.typed → /orb_py-1.3.0/src/orb/providers/aws/infrastructure/handlers/shared/__init__.py +0 -0
  1009. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/shared/base_config_builder.py +0 -0
  1010. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/shared/fleet_override_builder.py +0 -0
  1011. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/shared/instance_override_builder.py +0 -0
  1012. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/spot_fleet/__init__.py +0 -0
  1013. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/handlers/spot_fleet/validator.py +0 -0
  1014. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/instrumentation/__init__.py +0 -0
  1015. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/launch_template/__init__.py +0 -0
  1016. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/launch_template/py.typed +0 -0
  1017. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/py.typed +0 -0
  1018. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/services/aws_image_resolution_service.py +0 -0
  1019. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/tags.py +0 -0
  1020. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/template/__init__.py +0 -0
  1021. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/template/py.typed +0 -0
  1022. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/infrastructure/utils.py +0 -0
  1023. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/models/infrastructure_models.py +0 -0
  1024. /orb_py-1.2.2/src/orb/providers/aws/managers/py.typed → /orb_py-1.3.0/src/orb/providers/aws/persistence/__init__.py +0 -0
  1025. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/persistence/py.typed +0 -0
  1026. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/profile_discovery.py +0 -0
  1027. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/py.typed +0 -0
  1028. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/resilience/__init__.py +0 -0
  1029. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/resilience/aws_retry_config.py +0 -0
  1030. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/resilience/aws_retry_errors.py +0 -0
  1031. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/resilience/aws_retry_strategy.py +0 -0
  1032. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/resilience/py.typed +0 -0
  1033. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/services/capability_service.py +0 -0
  1034. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/services/ec2_fleet_management_service.py +0 -0
  1035. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/services/handler_registry.py +0 -0
  1036. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/services/template_validation_service.py +0 -0
  1037. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/session_factory.py +0 -0
  1038. {orb_py-1.2.2/src/orb/providers/aws/strategy → orb_py-1.3.0/src/orb/providers/aws/storage/components}/py.typed +0 -0
  1039. {orb_py-1.2.2/src/orb/providers/aws/utilities/ec2 → orb_py-1.3.0/src/orb/providers/aws/storage}/py.typed +0 -0
  1040. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/strategy/__init__.py +0 -0
  1041. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/strategy/aws_provider_adapter.py +0 -0
  1042. {orb_py-1.2.2/src/orb/providers/aws/utilities → orb_py-1.3.0/src/orb/providers/aws/strategy}/py.typed +0 -0
  1043. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/utilities/__init__.py +0 -0
  1044. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/aws/utilities/ec2/__init__.py +0 -0
  1045. {orb_py-1.2.2/src/orb/providers/base → orb_py-1.3.0/src/orb/providers/aws/utilities/ec2}/py.typed +0 -0
  1046. {orb_py-1.2.2/src/orb/providers/base/strategy/load_balancing → orb_py-1.3.0/src/orb/providers/aws/utilities}/py.typed +0 -0
  1047. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/__init__.py +0 -0
  1048. {orb_py-1.2.2/src/orb/providers/base/strategy → orb_py-1.3.0/src/orb/providers/base}/py.typed +0 -0
  1049. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/__init__.py +0 -0
  1050. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/base_provider_strategy.py +0 -0
  1051. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/composite_strategy.py +0 -0
  1052. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/load_balancing/__init__.py +0 -0
  1053. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/load_balancing/algorithms.py +0 -0
  1054. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/load_balancing/config.py +0 -0
  1055. {orb_py-1.2.2/src/orb/providers → orb_py-1.3.0/src/orb/providers/base/strategy/load_balancing}/py.typed +0 -0
  1056. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/load_balancing/stats.py +0 -0
  1057. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/load_balancing_strategy.py +0 -0
  1058. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/provider_selector.py +0 -0
  1059. {orb_py-1.2.2/src/orb/sdk → orb_py-1.3.0/src/orb/providers/base/strategy}/py.typed +0 -0
  1060. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/base/strategy/selector_utils.py +0 -0
  1061. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/registry/__init__.py +0 -0
  1062. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/registry/types.py +0 -0
  1063. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/providers/results.py +0 -0
  1064. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/sdk/__init__.py +0 -0
  1065. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/sdk/config.py +0 -0
  1066. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/sdk/exceptions.py +0 -0
  1067. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/sdk/middleware.py +0 -0
  1068. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb/sdk/parameter_mapping.py +0 -0
  1069. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb_py.egg-info/dependency_links.txt +0 -0
  1070. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb_py.egg-info/entry_points.txt +0 -0
  1071. {orb_py-1.2.2 → orb_py-1.3.0}/src/orb_py.egg-info/top_level.txt +0 -0
orb_py-1.3.0/PKG-INFO ADDED
@@ -0,0 +1,540 @@
1
+ Metadata-Version: 2.4
2
+ Name: orb-py
3
+ Version: 1.3.0
4
+ Summary: Open Resource Broker (ORB) — dynamic cloud resource provisioning via CLI and REST API
5
+ Author-email: AWS Professional Services <aws-proserve@amazon.com>
6
+ Maintainer-email: AWS Professional Services <aws-proserve@amazon.com>
7
+ License-Expression: Apache-2.0
8
+ Project-URL: Homepage, https://github.com/awslabs/open-resource-broker
9
+ Project-URL: Documentation, https://awslabs.github.io/open-resource-broker/
10
+ Project-URL: Repository, https://github.com/awslabs/open-resource-broker
11
+ Project-URL: Bug Reports, https://github.com/awslabs/open-resource-broker/issues
12
+ Keywords: aws,ec2,hostfactory,symphony,hpc,cluster,cloud,infrastructure
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Natural Language :: English
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
23
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
+ Classifier: Topic :: System :: Clustering
25
+ Classifier: Topic :: System :: Distributed Computing
26
+ Requires-Python: >=3.10
27
+ Description-Content-Type: text/markdown
28
+ License-File: LICENSE
29
+ Requires-Dist: boto3>=1.42.21
30
+ Requires-Dist: botocore>=1.42.21
31
+ Requires-Dist: pydantic>=2.0.0
32
+ Requires-Dist: pydantic-settings>=2.0.0
33
+ Requires-Dist: sqlalchemy>=2.0.0
34
+ Requires-Dist: urllib3>=2.6.3
35
+ Requires-Dist: PyJWT>=2.8.0
36
+ Requires-Dist: cryptography>=46.0.5
37
+ Requires-Dist: filelock>=3.20.1
38
+ Requires-Dist: requests>=2.31.0
39
+ Requires-Dist: PyYAML>=6.0.0
40
+ Requires-Dist: jsonschema>=4.17.0
41
+ Provides-Extra: cli
42
+ Requires-Dist: rich>=13.3.0; extra == "cli"
43
+ Requires-Dist: rich-argparse>=1.0.0; extra == "cli"
44
+ Provides-Extra: api
45
+ Requires-Dist: fastapi>=0.128.0; extra == "api"
46
+ Requires-Dist: starlette>=0.49.1; extra == "api"
47
+ Requires-Dist: uvicorn>=0.24.0; extra == "api"
48
+ Requires-Dist: jinja2>=3.1.0; extra == "api"
49
+ Provides-Extra: monitoring
50
+ Requires-Dist: opentelemetry-api>=1.20.0; extra == "monitoring"
51
+ Requires-Dist: opentelemetry-sdk>=1.20.0; extra == "monitoring"
52
+ Requires-Dist: opentelemetry-instrumentation-fastapi>=0.41b0; extra == "monitoring"
53
+ Requires-Dist: opentelemetry-instrumentation-boto>=0.41b0; extra == "monitoring"
54
+ Requires-Dist: opentelemetry-instrumentation-sqlalchemy>=0.41b0; extra == "monitoring"
55
+ Requires-Dist: prometheus-client>=0.17.0; extra == "monitoring"
56
+ Requires-Dist: psutil>=5.9.0; extra == "monitoring"
57
+ Provides-Extra: all
58
+ Requires-Dist: orb-py[api,cli,monitoring]; extra == "all"
59
+ Provides-Extra: ci
60
+ Requires-Dist: ruff>=0.1.0; extra == "ci"
61
+ Requires-Dist: pathspec>=0.11.0; extra == "ci"
62
+ Requires-Dist: pyright<2.0.0,>=1.1.408; extra == "ci"
63
+ Requires-Dist: mypy<2.0.0,>=1.6.1; extra == "ci"
64
+ Requires-Dist: bandit<2.0.0,>=1.7.5; extra == "ci"
65
+ Requires-Dist: bandit-sarif-formatter<2.0.0,>=1.1.1; extra == "ci"
66
+ Requires-Dist: pytest<10.0.0,>=7.4.3; extra == "ci"
67
+ Requires-Dist: pytest-cov<8.0.0,>=4.1.0; extra == "ci"
68
+ Requires-Dist: pytest-env<2.0.0,>=1.1.1; extra == "ci"
69
+ Requires-Dist: pytest-mock<4.0.0,>=3.12.0; extra == "ci"
70
+ Requires-Dist: pytest-asyncio<2.0.0,>=0.21.1; extra == "ci"
71
+ Requires-Dist: pytest-timeout<3.0.0,>=2.2.0; extra == "ci"
72
+ Requires-Dist: pytest-xdist<4.0.0,>=3.3.1; extra == "ci"
73
+ Requires-Dist: pytest-html<5.0.0,>=4.1.1; extra == "ci"
74
+ Requires-Dist: pytest-benchmark<6.0.0,>=5.1.0; extra == "ci"
75
+ Requires-Dist: coverage<8.0.0,>=7.3.2; extra == "ci"
76
+ Requires-Dist: fastapi>=0.128.0; extra == "ci"
77
+ Requires-Dist: httpx>=0.27.0; extra == "ci"
78
+ Requires-Dist: jinja2>=3.1.0; extra == "ci"
79
+ Requires-Dist: moto[all]<6.0.0,>=5.1.19; extra == "ci"
80
+ Requires-Dist: responses<1.0.0,>=0.24.0; extra == "ci"
81
+ Requires-Dist: requests-mock<2.0.0,>=1.11.0; extra == "ci"
82
+ Requires-Dist: joserfc>=1.6.1; extra == "ci"
83
+ Requires-Dist: werkzeug>=3.1.6; extra == "ci"
84
+ Requires-Dist: nltk>=3.9.3; extra == "ci"
85
+ Requires-Dist: types-PyYAML<7.0.0,>=6.0.12.12; extra == "ci"
86
+ Requires-Dist: types-python-dateutil<3.0.0,>=2.8.19.14; extra == "ci"
87
+ Requires-Dist: tomli<3.0.0,>=2.0.0; extra == "ci"
88
+ Requires-Dist: safety<4.0.0,>=3.7.0; extra == "ci"
89
+ Requires-Dist: pip-audit<3.0.0,>=2.6.1; extra == "ci"
90
+ Requires-Dist: semgrep<2.0.0,>=1.45.0; extra == "ci"
91
+ Requires-Dist: cyclonedx-bom<8.0.0,>=4.0.0; extra == "ci"
92
+ Requires-Dist: peewee>=3.18.3; extra == "ci"
93
+ Requires-Dist: marshmallow>=4.1.2; extra == "ci"
94
+ Requires-Dist: mkdocs<2.0.0,>=1.5.0; extra == "ci"
95
+ Requires-Dist: mkdocs-material<10.0.0,>=9.1.0; extra == "ci"
96
+ Requires-Dist: mkdocstrings<2.0.0,>=0.22.0; extra == "ci"
97
+ Requires-Dist: mkdocstrings-python<3.0.0,>=1.1.0; extra == "ci"
98
+ Requires-Dist: mkdocs-gen-files<1.0.0,>=0.5.0; extra == "ci"
99
+ Requires-Dist: mkdocs-literate-nav<1.0.0,>=0.6.0; extra == "ci"
100
+ Requires-Dist: mkdocs-section-index<1.0.0,>=0.3.0; extra == "ci"
101
+ Requires-Dist: mike<3.0.0,>=1.1.0; extra == "ci"
102
+ Requires-Dist: build<2.0.0,>=1.0.3; extra == "ci"
103
+ Requires-Dist: wheel<1.0.0,>=0.41.3; extra == "ci"
104
+ Provides-Extra: dev
105
+ Requires-Dist: orb-py[ci]; extra == "dev"
106
+ Requires-Dist: virtualenv>=20.26.6; extra == "dev"
107
+ Requires-Dist: pre-commit<5.0.0,>=3.5.0; extra == "dev"
108
+ Requires-Dist: bump2version<2.0.0,>=1.0.1; extra == "dev"
109
+ Requires-Dist: python-semantic-release<11.0.0,>=10.0.0; extra == "dev"
110
+ Requires-Dist: line-profiler<6.0.0,>=4.1.1; extra == "dev"
111
+ Requires-Dist: memory-profiler<1.0.0,>=0.61.0; extra == "dev"
112
+ Requires-Dist: py-spy<1.0.0,>=0.3.14; extra == "dev"
113
+ Requires-Dist: py-cpuinfo<10.0.0,>=9.0.0; extra == "dev"
114
+ Requires-Dist: ipdb<1.0.0,>=0.13.13; extra == "dev"
115
+ Requires-Dist: ipython<9.0.0,>=8.16.1; extra == "dev"
116
+ Requires-Dist: radon<7.0.0,>=6.0.1; extra == "dev"
117
+ Requires-Dist: pip-tools<8.0.0,>=7.3.0; extra == "dev"
118
+ Requires-Dist: twine>=4.0.0; extra == "dev"
119
+ Requires-Dist: git-changelog<3.0.0,>=2.6.0; extra == "dev"
120
+ Dynamic: license-file
121
+
122
+ <p align="center">
123
+ <picture>
124
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/awslabs/open-resource-broker/main/docs/assets/orb-logo-horizontal-dark.svg">
125
+ <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/awslabs/open-resource-broker/main/docs/assets/orb-logo-horizontal.svg">
126
+ <img alt="Open Resource Broker" src="https://raw.githubusercontent.com/awslabs/open-resource-broker/main/docs/assets/orb-logo-horizontal.svg" width="520">
127
+ </picture>
128
+ </p>
129
+
130
+ <p align="center">
131
+ <strong>Unified API for orchestrating and provisioning compute capacity</strong>
132
+ </p>
133
+
134
+ <p align="center">
135
+ <a href="https://pypi.org/project/orb-py/"><img src="https://img.shields.io/pypi/v/orb-py" alt="PyPI Version"></a>
136
+ <a href="https://pypi.org/project/orb-py/"><img src="https://img.shields.io/pypi/pyversions/orb-py" alt="Python Versions"></a>
137
+ <a href="LICENSE"><img src="https://img.shields.io/github/license/awslabs/open-resource-broker" alt="License"></a>
138
+ <a href="https://github.com/awslabs/open-resource-broker/releases"><img src="https://img.shields.io/github/v/release/awslabs/open-resource-broker" alt="Latest Release"></a>
139
+ <a href="https://deepwiki.com/awslabs/open-resource-broker"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
140
+ </p>
141
+
142
+ ---
143
+
144
+ ORB is a unified API for orchestrating and provisioning compute capacity programmatically. Define what you need in a template, request it, track it, return it — through a CLI, REST API, Python SDK, or MCP server.
145
+
146
+ Built for AWS today (EC2, Auto Scaling Groups, SpotFleet, EC2Fleet), with an extensible provider system for adding new cloud backends.
147
+
148
+ **Provider support:**
149
+ - **AWS** — EC2 RunInstances, EC2Fleet, SpotFleet, Auto Scaling Groups
150
+ - **Custom** — extensible via [provider registry](docs/root/developer_guide/architecture.md)
151
+
152
+ **Scheduler support:**
153
+ - **HostFactory** — runs as an [IBM Spectrum Symphony provider plugin](#hostfactory-integration)
154
+ - **Standalone** — direct usage without an external scheduler
155
+
156
+ ## Quick Start
157
+
158
+ ```bash
159
+ pip install orb-py
160
+ orb init
161
+ orb templates generate
162
+ ```
163
+
164
+ ### 1. Pick a template
165
+
166
+ ```bash
167
+ orb templates list
168
+ ```
169
+
170
+ ### 2. Request machines
171
+
172
+ ```bash
173
+ orb machines request <template-id> 3
174
+ ```
175
+
176
+ ### 3. Check status
177
+
178
+ ```bash
179
+ orb requests status <request-id>
180
+ ```
181
+
182
+ ### 4. Return machines when done
183
+
184
+ ```bash
185
+ orb machines return <machine-id-1> <machine-id-2> ...
186
+ ```
187
+
188
+ ## Setup
189
+
190
+ Get ORB installed and configured for your environment.
191
+
192
+ <details>
193
+ <summary>Installation</summary>
194
+
195
+ ### Standard install
196
+
197
+ ```bash
198
+ pip install orb-py
199
+ ```
200
+
201
+ ### With colored CLI output
202
+
203
+ ```bash
204
+ pip install "orb-py[cli]"
205
+ ```
206
+
207
+ ### With REST API server
208
+
209
+ ```bash
210
+ pip install "orb-py[api]"
211
+ ```
212
+
213
+ ### With monitoring and observability
214
+
215
+ ```bash
216
+ pip install "orb-py[monitoring]"
217
+ ```
218
+
219
+ ### Full install (all extras)
220
+
221
+ ```bash
222
+ pip install "orb-py[all]"
223
+ ```
224
+
225
+ Requires Python 3.10+.
226
+
227
+ </details>
228
+
229
+ <details>
230
+ <summary>Configuration</summary>
231
+
232
+ `orb init` creates a `config.json` in a location based on your install type (virtualenv, user install, system install, or development checkout). Override with:
233
+
234
+ ```bash
235
+ export ORB_CONFIG_DIR=/path/to/config
236
+ ```
237
+
238
+ | Variable | Description |
239
+ |---|---|
240
+ | `ORB_ROOT_DIR` | Set base directory for all subdirs (config, work, logs, health, scripts) |
241
+ | `ORB_CONFIG_DIR` | Override config directory path (takes precedence over `ORB_ROOT_DIR`) |
242
+ | `ORB_WORK_DIR` | Override work directory path (takes precedence over `ORB_ROOT_DIR`) |
243
+ | `ORB_LOG_DIR` | Override logs directory path (takes precedence over `ORB_ROOT_DIR`) |
244
+ | `ORB_HEALTH_DIR` | Override health directory path (takes precedence over `ORB_ROOT_DIR`) |
245
+ | `ORB_LOG_LEVEL` | Logging level: `DEBUG`, `INFO`, `WARNING`, `ERROR` |
246
+
247
+ See the [Configuration Guide](docs/root/user_guide/configuration.md) for path resolution details, environment variables, and REST API server setup.
248
+
249
+ </details>
250
+
251
+ <details>
252
+ <summary>AWS Provider Setup</summary>
253
+
254
+ ORB uses boto3's standard credential chain — any method that works with the AWS CLI works with ORB.
255
+
256
+ ```bash
257
+ # Verify your credentials are active
258
+ aws sts get-caller-identity
259
+ ```
260
+
261
+ **Supported credential methods:** AWS CLI profiles, environment variables (`AWS_ACCESS_KEY_ID`/`AWS_SECRET_ACCESS_KEY`), IAM instance profiles, SSO (`aws sso login`), and credential process.
262
+
263
+ ### Supported resource types
264
+
265
+ | Type | Description |
266
+ |---|---|
267
+ | `RunInstances` | Direct EC2 instance provisioning |
268
+ | `EC2Fleet` | Fleet provisioning with mixed instance types |
269
+ | `SpotFleet` | Cost-optimized spot instance fleets |
270
+ | `AutoScalingGroup` | Managed scaling groups |
271
+
272
+ See the [AWS Provider Guide](docs/root/user_guide/configuration.md) for required IAM permissions and SpotFleet service-linked role setup.
273
+
274
+ </details>
275
+
276
+ ## Interfaces
277
+
278
+ ORB provides four ways to interact with your infrastructure.
279
+
280
+ <details>
281
+ <summary>CLI Reference</summary>
282
+
283
+ All available commands and flags.
284
+
285
+ | Command | Description |
286
+ |---|---|
287
+ | `orb init` | Initialize config and discover AWS infrastructure |
288
+ | `orb init --non-interactive` | Initialize without interactive prompts |
289
+ | `orb templates generate` | Generate example templates for your provider |
290
+ | `orb templates list` | List available templates |
291
+ | `orb templates list --format table` | Table view |
292
+ | `orb templates show <template-id>` | Show a single template |
293
+ | `orb templates validate --file <file>` | Validate a template file |
294
+ | `orb machines request <template-id> <n>` | Request n machines |
295
+ | `orb machines list` | List active machines |
296
+ | `orb machines return <machine-id> [...]` | Return one or more machines |
297
+ | `orb requests status <request-id>` | Check request status |
298
+ | `orb requests list` | List all requests |
299
+ | `orb infrastructure show` | Show configured infrastructure |
300
+ | `orb infrastructure discover` | Scan AWS for VPCs, subnets, security groups |
301
+ | `orb infrastructure validate` | Verify infrastructure still exists in AWS |
302
+ | `orb config show` | Show current configuration |
303
+ | `orb config validate` | Validate configuration |
304
+ | `orb providers list` | List configured providers |
305
+ | `orb system health` | System health check |
306
+ | `orb system health --detailed` | Detailed health check |
307
+
308
+ Request status values: `pending`, `in_progress`, `completed`, `failed`, `cancelled`, `partial`, `timeout`.
309
+
310
+ See the [CLI Reference](docs/root/cli/cli-reference.md) for the full flag reference.
311
+
312
+ </details>
313
+
314
+ <details>
315
+ <summary>REST API</summary>
316
+
317
+ Example API calls. Requires `pip install "orb-py[api]"` and `orb system serve`.
318
+
319
+ ```bash
320
+ # Get available templates
321
+ curl -X GET "http://localhost:8000/api/v1/templates"
322
+
323
+ # Create machine request
324
+ curl -X POST "http://localhost:8000/api/v1/requests" \
325
+ -H "Content-Type: application/json" \
326
+ -d '{"templateId": "my-template", "maxNumber": 5}'
327
+
328
+ # Check request status
329
+ curl -X GET "http://localhost:8000/api/v1/requests/req-12345"
330
+ ```
331
+
332
+ </details>
333
+
334
+ <details>
335
+ <summary>Python SDK</summary>
336
+
337
+ Async-first programmatic access via `ORBClient`.
338
+
339
+ ```python
340
+ from orb import ORBClient as orb
341
+
342
+ async with orb(provider="aws") as sdk:
343
+ # List templates
344
+ templates = await sdk.list_templates(active_only=True)
345
+
346
+ # Request machines
347
+ request = await sdk.request_machines(
348
+ template_id=templates[0]["template_id"],
349
+ count=3
350
+ )
351
+
352
+ # Check status
353
+ status = await sdk.get_request_status(request_id=request["created_request_id"])
354
+ ```
355
+
356
+ See the [SDK Quickstart](docs/root/sdk/quickstart.md) for the full guide.
357
+
358
+ </details>
359
+
360
+ <details>
361
+ <summary>MCP Server (AI Assistant Integration)</summary>
362
+
363
+ ORB provides a Model Context Protocol (MCP) server for AI assistant integration:
364
+
365
+ ```bash
366
+ # Start MCP server in stdio mode (for AI assistants)
367
+ orb mcp serve --stdio
368
+
369
+ # Start as TCP server (for development/testing)
370
+ orb mcp serve --port 3000 --host localhost
371
+ ```
372
+
373
+ **Available MCP Tools:**
374
+ - Provider Management: `check_provider_health`, `list_providers`, `get_provider_config`
375
+ - Template Operations: `list_templates`, `get_template`, `validate_template`
376
+ - Infrastructure Requests: `request_machines`, `get_request_status`, `return_machines`
377
+
378
+ **Available MCP Resources:**
379
+ - `templates://` — Available compute templates
380
+ - `requests://` — Provisioning requests
381
+ - `machines://` — Compute instances
382
+ - `providers://` — Cloud providers
383
+
384
+ **Claude Desktop Configuration:**
385
+ ```json
386
+ {
387
+ "mcpServers": {
388
+ "open-resource-broker": {
389
+ "command": "orb",
390
+ "args": ["mcp", "serve", "--stdio"]
391
+ }
392
+ }
393
+ }
394
+ ```
395
+
396
+ </details>
397
+
398
+ ## Integrations
399
+
400
+ Connect ORB to schedulers and container platforms.
401
+
402
+ <details>
403
+ <summary>HostFactory Integration</summary>
404
+
405
+ ORB integrates with IBM Spectrum Symphony as a HostFactory provider plugin, providing full API compatibility through shell scripts:
406
+
407
+ | Script | Description |
408
+ |---|---|
409
+ | `getAvailableTemplates.sh` | List available compute templates |
410
+ | `requestMachines.sh` | Request new compute instances |
411
+ | `getRequestStatus.sh` | Poll request status |
412
+ | `requestReturnMachines.sh` | Return instances |
413
+ | `getReturnRequests.sh` | Check return request status |
414
+
415
+ Scripts are available for both Linux (bash) and Windows (bat). They are generated automatically by `orb init` and placed in your config directory.
416
+
417
+ **Key features:**
418
+ - Full HostFactory API compatibility
419
+ - Automatic CPU and RAM attribute generation from AWS instance types
420
+ - Native HostFactory output format (camelCase JSON)
421
+ - Drop-in replacement for existing provider plugins
422
+
423
+ Example template output:
424
+
425
+ ```json
426
+ {
427
+ "templates": [
428
+ {
429
+ "templateId": "t3-medium-template",
430
+ "maxNumber": 5,
431
+ "attributes": {
432
+ "type": ["String", "X86_64"],
433
+ "ncpus": ["Numeric", "2"],
434
+ "nram": ["Numeric", "4096"]
435
+ }
436
+ }
437
+ ]
438
+ }
439
+ ```
440
+
441
+ See the [HostFactory Guide](docs/root/hostfactory/integration_guide.md) for full integration details.
442
+
443
+ </details>
444
+
445
+ <details>
446
+ <summary>Docker Deployment</summary>
447
+
448
+ Run ORB as a containerized service.
449
+
450
+ ```bash
451
+ git clone https://github.com/awslabs/open-resource-broker.git
452
+ cd open-resource-broker
453
+ cp .env.example .env
454
+ # Edit .env with your configuration
455
+ docker-compose up -d
456
+ curl http://localhost:8000/health
457
+ ```
458
+
459
+ </details>
460
+
461
+ ## Project
462
+
463
+ Architecture, development, and documentation.
464
+
465
+ <details>
466
+ <summary>Architecture</summary>
467
+
468
+ ORB is built on Clean Architecture with Domain-Driven Design (DDD) and CQRS:
469
+
470
+ - **Domain layer** — pure business logic, no infrastructure dependencies
471
+ - **Application layer** — command/query handlers using abstract ports
472
+ - **Infrastructure layer** — AWS adapters, DI container, storage strategies
473
+ - **Interface layer** — CLI, REST API, MCP server
474
+
475
+ The **provider system** uses a Strategy/Registry pattern — each cloud provider (AWS, future providers) registers its own strategy, handlers, and template format. The **scheduler system** uses the same pattern — HostFactory and Default schedulers are interchangeable strategies behind a common port.
476
+
477
+ See the [Architecture Guide](docs/root/developer_guide/architecture.md) for details.
478
+
479
+ </details>
480
+
481
+ <details>
482
+ <summary>Development</summary>
483
+
484
+ Set up a local development environment.
485
+
486
+ ```bash
487
+ git clone https://github.com/awslabs/open-resource-broker.git
488
+ cd open-resource-broker
489
+ python -m venv .venv
490
+ source .venv/bin/activate
491
+ pip install -e ".[dev]"
492
+ ```
493
+
494
+ Run the test suite:
495
+
496
+ ```bash
497
+ make test
498
+ ```
499
+
500
+ Lint and format:
501
+
502
+ ```bash
503
+ make lint
504
+ make format
505
+ ```
506
+
507
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for the full development guide.
508
+
509
+ </details>
510
+
511
+ <details>
512
+ <summary>Documentation & CI</summary>
513
+
514
+ [![Test Matrix](https://github.com/awslabs/open-resource-broker/workflows/Test%20Matrix/badge.svg)](https://github.com/awslabs/open-resource-broker/actions/workflows/test-matrix.yml)
515
+ [![Quality Checks](https://github.com/awslabs/open-resource-broker/workflows/Quality%20Checks/badge.svg)](https://github.com/awslabs/open-resource-broker/actions/workflows/ci-quality.yml)
516
+ [![Security Scanning](https://github.com/awslabs/open-resource-broker/workflows/Security%20Scanning/badge.svg)](https://github.com/awslabs/open-resource-broker/actions/workflows/security-code.yml)
517
+
518
+ - [Quick Start](docs/root/getting_started/quick_start.md)
519
+ - [CLI Reference](docs/root/cli/cli-reference.md)
520
+ - [Configuration Guide](docs/root/user_guide/configuration.md)
521
+ - [Template Management](docs/root/user_guide/templates.md)
522
+ - [Troubleshooting](docs/root/user_guide/troubleshooting.md)
523
+ - [Architecture](docs/root/developer_guide/architecture.md)
524
+ - [API Reference](docs/root/api/readme.md)
525
+ - [Deployment](docs/root/deployment/readme.md)
526
+ - [DeepWiki](https://deepwiki.com/awslabs/open-resource-broker) — AI-generated codebase documentation
527
+
528
+ Full docs: [awslabs.github.io/open-resource-broker](https://awslabs.github.io/open-resource-broker/)
529
+
530
+ </details>
531
+
532
+ ---
533
+
534
+ ## License
535
+
536
+ Apache License 2.0 — see [LICENSE](LICENSE).
537
+
538
+ ## Security
539
+
540
+ See [SECURITY.md](SECURITY.md) for responsible disclosure procedures.