tasker-engine 1.0.5 → 1.0.6

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 (361) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -4
  3. data/app/controllers/tasker/analytics_controller.rb +2 -2
  4. data/app/controllers/tasker/graphql_controller.rb +3 -3
  5. data/app/controllers/tasker/health_controller.rb +1 -1
  6. data/app/controllers/tasker/metrics_controller.rb +3 -3
  7. data/app/jobs/tasker/metrics_export_job.rb +1 -1
  8. data/app/models/tasker/application_record.rb +5 -5
  9. data/app/models/tasker/task.rb +1 -1
  10. data/db/functions/get_step_readiness_status_single_and_batch_v02.sql +2 -2
  11. data/docs/AUTH.md +11 -11
  12. data/docs/DEVELOPER_GUIDE.md +6 -6
  13. data/docs/EXECUTION_CONFIGURATION.md +1 -1
  14. data/docs/HEALTH.md +3 -3
  15. data/docs/METRICS.md +4 -4
  16. data/docs/OPTIMIZATION_PLAN.md +3 -3
  17. data/docs/QUICK_START.md +1 -1
  18. data/docs/REST_API.md +1 -1
  19. data/docs/TELEMETRY.md +5 -5
  20. data/docs/TROUBLESHOOTING.md +2 -2
  21. data/docs/TaskHandlerGenerator.html +55 -55
  22. data/docs/Tasker/Analysis/RuntimeGraphAnalyzer.html +1 -1
  23. data/docs/Tasker/Analysis/TemplateGraphAnalyzer.html +1 -1
  24. data/docs/Tasker/Analysis.html +1 -1
  25. data/docs/Tasker/AnalyticsController.html +1 -1
  26. data/docs/Tasker/AnalyticsService/BottleneckAnalytics.html +1 -1
  27. data/docs/Tasker/AnalyticsService/PerformanceAnalytics.html +1 -1
  28. data/docs/Tasker/AnalyticsService.html +1 -1
  29. data/docs/Tasker/AnnotationType.html +1 -1
  30. data/docs/Tasker/AnnotationTypeSerializer.html +1 -1
  31. data/docs/Tasker/ApplicationController.html +1 -1
  32. data/docs/Tasker/ApplicationJob.html +1 -1
  33. data/docs/Tasker/ApplicationRecord.html +6 -6
  34. data/docs/Tasker/Authentication/AuthenticationError.html +1 -1
  35. data/docs/Tasker/Authentication/ConfigurationError.html +1 -1
  36. data/docs/Tasker/Authentication/Coordinator.html +1 -1
  37. data/docs/Tasker/Authentication/Interface.html +1 -1
  38. data/docs/Tasker/Authentication/InterfaceError.html +1 -1
  39. data/docs/Tasker/Authentication/NoneAuthenticator.html +1 -1
  40. data/docs/Tasker/Authentication.html +1 -1
  41. data/docs/Tasker/Authorization/AuthorizationError.html +1 -1
  42. data/docs/Tasker/Authorization/BaseCoordinator.html +2 -2
  43. data/docs/Tasker/Authorization/ConfigurationError.html +1 -1
  44. data/docs/Tasker/Authorization/ResourceConstants/ACTIONS.html +1 -1
  45. data/docs/Tasker/Authorization/ResourceConstants/RESOURCES.html +1 -1
  46. data/docs/Tasker/Authorization/ResourceConstants.html +1 -1
  47. data/docs/Tasker/Authorization/ResourceRegistry.html +1 -1
  48. data/docs/Tasker/Authorization/UnauthorizedError.html +1 -1
  49. data/docs/Tasker/Authorization.html +2 -2
  50. data/docs/Tasker/CacheCapabilities.html +1 -1
  51. data/docs/Tasker/CacheStrategy.html +1 -1
  52. data/docs/Tasker/Concerns/Authenticatable.html +1 -1
  53. data/docs/Tasker/Concerns/Authorizable/AdminStatusChecker.html +1 -1
  54. data/docs/Tasker/Concerns/Authorizable.html +1 -1
  55. data/docs/Tasker/Concerns/ControllerAuthorizable.html +1 -1
  56. data/docs/Tasker/Concerns/EventPublisher.html +1 -1
  57. data/docs/Tasker/Concerns/IdempotentStateTransitions.html +1 -1
  58. data/docs/Tasker/Concerns/StateMachineBase/ClassMethods.html +1 -1
  59. data/docs/Tasker/Concerns/StateMachineBase/StateMachineBase/ClassMethods.html +1 -1
  60. data/docs/Tasker/Concerns/StateMachineBase/StateMachineBase.html +1 -1
  61. data/docs/Tasker/Concerns/StateMachineBase.html +1 -1
  62. data/docs/Tasker/Concerns/StructuredLogging.html +1 -1
  63. data/docs/Tasker/Concerns.html +1 -1
  64. data/docs/Tasker/Configuration/ConfigurationProxy.html +1 -1
  65. data/docs/Tasker/Configuration/TelemetryConfigurationProxy.html +1 -1
  66. data/docs/Tasker/Configuration.html +1 -1
  67. data/docs/Tasker/ConfigurationError.html +1 -1
  68. data/docs/Tasker/ConfiguredTask.html +2 -2
  69. data/docs/Tasker/Constants/EventDefinitions.html +1 -1
  70. data/docs/Tasker/Constants/ObservabilityEvents/Step.html +1 -1
  71. data/docs/Tasker/Constants/ObservabilityEvents/Task.html +1 -1
  72. data/docs/Tasker/Constants/ObservabilityEvents.html +1 -1
  73. data/docs/Tasker/Constants/RegistryEvents.html +1 -1
  74. data/docs/Tasker/Constants/StepEvents.html +1 -1
  75. data/docs/Tasker/Constants/TaskEvents.html +1 -1
  76. data/docs/Tasker/Constants/TaskExecution/ExecutionStatus.html +1 -1
  77. data/docs/Tasker/Constants/TaskExecution/HealthStatus.html +1 -1
  78. data/docs/Tasker/Constants/TaskExecution/RecommendedAction.html +1 -1
  79. data/docs/Tasker/Constants/TaskExecution.html +1 -1
  80. data/docs/Tasker/Constants/TaskFinalization/ErrorMessages.html +1 -1
  81. data/docs/Tasker/Constants/TaskFinalization/PendingReasons.html +1 -1
  82. data/docs/Tasker/Constants/TaskFinalization/ReenqueueReasons.html +1 -1
  83. data/docs/Tasker/Constants/TaskFinalization.html +1 -1
  84. data/docs/Tasker/Constants/TaskStatuses.html +1 -1
  85. data/docs/Tasker/Constants/TestEvents.html +1 -1
  86. data/docs/Tasker/Constants/WorkflowEvents.html +1 -1
  87. data/docs/Tasker/Constants/WorkflowStepStatuses.html +1 -1
  88. data/docs/Tasker/Constants.html +1 -1
  89. data/docs/Tasker/DependentSystem.html +1 -1
  90. data/docs/Tasker/DependentSystemObjectMap.html +1 -1
  91. data/docs/Tasker/DetectorRegistry.html +1 -1
  92. data/docs/Tasker/Engine.html +1 -1
  93. data/docs/Tasker/Error.html +1 -1
  94. data/docs/Tasker/Events/Catalog/CatalogPrinter.html +1 -1
  95. data/docs/Tasker/Events/Catalog/CustomEventRegistrar.html +1 -1
  96. data/docs/Tasker/Events/Catalog/ExamplePayloadGenerator.html +1 -1
  97. data/docs/Tasker/Events/Catalog.html +1 -1
  98. data/docs/Tasker/Events/CustomRegistry.html +1 -1
  99. data/docs/Tasker/Events/DefinitionLoader.html +1 -1
  100. data/docs/Tasker/Events/EventPayloadBuilder/ErrorInfoExtractor.html +1 -1
  101. data/docs/Tasker/Events/EventPayloadBuilder/StepPayloadBuilder.html +1 -1
  102. data/docs/Tasker/Events/EventPayloadBuilder.html +1 -1
  103. data/docs/Tasker/Events/Publisher.html +1 -1
  104. data/docs/Tasker/Events/Subscribers/BaseSubscriber/ErrorCategorizer/ErrorTypeClassifier.html +1 -1
  105. data/docs/Tasker/Events/Subscribers/BaseSubscriber/ErrorCategorizer.html +1 -1
  106. data/docs/Tasker/Events/Subscribers/BaseSubscriber/MetricTagsExtractor.html +1 -1
  107. data/docs/Tasker/Events/Subscribers/BaseSubscriber.html +1 -1
  108. data/docs/Tasker/Events/Subscribers/MetricsSubscriber.html +2 -2
  109. data/docs/Tasker/Events/Subscribers/TelemetrySubscriber.html +5 -5
  110. data/docs/Tasker/Events/Subscribers.html +1 -1
  111. data/docs/Tasker/Events/SubscriptionLoader.html +1 -1
  112. data/docs/Tasker/Events.html +1 -1
  113. data/docs/Tasker/EventsGenerator.html +2 -2
  114. data/docs/Tasker/Functions/FunctionBasedAnalyticsMetrics/AnalyticsMetrics.html +1 -1
  115. data/docs/Tasker/Functions/FunctionBasedAnalyticsMetrics.html +1 -1
  116. data/docs/Tasker/Functions/FunctionBasedDependencyLevels.html +1 -1
  117. data/docs/Tasker/Functions/FunctionBasedSlowestSteps/SlowestStep.html +1 -1
  118. data/docs/Tasker/Functions/FunctionBasedSlowestSteps.html +1 -1
  119. data/docs/Tasker/Functions/FunctionBasedSlowestTasks/SlowestTask.html +1 -1
  120. data/docs/Tasker/Functions/FunctionBasedSlowestTasks.html +1 -1
  121. data/docs/Tasker/Functions/FunctionBasedStepReadinessStatus.html +1 -1
  122. data/docs/Tasker/Functions/FunctionBasedSystemHealthCounts/HealthMetrics.html +1 -1
  123. data/docs/Tasker/Functions/FunctionBasedSystemHealthCounts.html +1 -1
  124. data/docs/Tasker/Functions/FunctionBasedTaskExecutionContext.html +1 -1
  125. data/docs/Tasker/Functions/FunctionWrapper.html +1 -1
  126. data/docs/Tasker/Functions.html +1 -1
  127. data/docs/Tasker/Generators/AuthenticatorGenerator/UsageInstructionsFormatter.html +1 -1
  128. data/docs/Tasker/Generators/AuthenticatorGenerator.html +1 -1
  129. data/docs/Tasker/Generators/AuthorizationCoordinatorGenerator.html +1 -1
  130. data/docs/Tasker/Generators/SubscriberGenerator.html +1 -1
  131. data/docs/Tasker/Generators/TaskHandlerGenerator.html +4 -4
  132. data/docs/Tasker/Generators.html +1 -1
  133. data/docs/Tasker/GraphQLTypes/AnnotationType.html +1 -1
  134. data/docs/Tasker/GraphQLTypes/BaseArgument.html +1 -1
  135. data/docs/Tasker/GraphQLTypes/BaseConnection.html +1 -1
  136. data/docs/Tasker/GraphQLTypes/BaseEdge.html +1 -1
  137. data/docs/Tasker/GraphQLTypes/BaseEnum.html +1 -1
  138. data/docs/Tasker/GraphQLTypes/BaseField.html +1 -1
  139. data/docs/Tasker/GraphQLTypes/BaseInputObject.html +1 -1
  140. data/docs/Tasker/GraphQLTypes/BaseInterface.html +1 -1
  141. data/docs/Tasker/GraphQLTypes/BaseObject.html +1 -1
  142. data/docs/Tasker/GraphQLTypes/BaseScalar.html +1 -1
  143. data/docs/Tasker/GraphQLTypes/BaseUnion.html +1 -1
  144. data/docs/Tasker/GraphQLTypes/DependentSystemObjectMapType.html +1 -1
  145. data/docs/Tasker/GraphQLTypes/DependentSystemType.html +1 -1
  146. data/docs/Tasker/GraphQLTypes/MutationType.html +1 -1
  147. data/docs/Tasker/GraphQLTypes/NamedStepType.html +1 -1
  148. data/docs/Tasker/GraphQLTypes/NamedTaskType.html +1 -1
  149. data/docs/Tasker/GraphQLTypes/NamedTasksNamedStepType.html +1 -1
  150. data/docs/Tasker/GraphQLTypes/NodeType.html +1 -1
  151. data/docs/Tasker/GraphQLTypes/QueryType.html +1 -1
  152. data/docs/Tasker/GraphQLTypes/TaskAnnotationType.html +1 -1
  153. data/docs/Tasker/GraphQLTypes/TaskInterface.html +1 -1
  154. data/docs/Tasker/GraphQLTypes/TaskType.html +1 -1
  155. data/docs/Tasker/GraphQLTypes/WorkflowStepType.html +1 -1
  156. data/docs/Tasker/GraphQLTypes.html +1 -1
  157. data/docs/Tasker/GraphqlController.html +1 -1
  158. data/docs/Tasker/HandlerFactory.html +1 -1
  159. data/docs/Tasker/HandlerSerializer.html +1 -1
  160. data/docs/Tasker/HandlersController.html +1 -1
  161. data/docs/Tasker/HashIdentityStrategy.html +1 -1
  162. data/docs/Tasker/Health/ReadinessChecker.html +2 -2
  163. data/docs/Tasker/Health/StatusChecker.html +2 -2
  164. data/docs/Tasker/Health.html +1 -1
  165. data/docs/Tasker/HealthController.html +1 -1
  166. data/docs/Tasker/IdentityStrategy.html +1 -1
  167. data/docs/Tasker/InvalidTaskHandlerConfig.html +1 -1
  168. data/docs/Tasker/Logging/CorrelationIdGenerator.html +2 -2
  169. data/docs/Tasker/Logging.html +1 -1
  170. data/docs/Tasker/MetricsController.html +1 -1
  171. data/docs/Tasker/MetricsExportJob.html +1 -1
  172. data/docs/Tasker/Mutations/BaseMutation.html +1 -1
  173. data/docs/Tasker/Mutations/CancelStep.html +1 -1
  174. data/docs/Tasker/Mutations/CancelTask.html +1 -1
  175. data/docs/Tasker/Mutations/CreateTask.html +1 -1
  176. data/docs/Tasker/Mutations/UpdateStep.html +1 -1
  177. data/docs/Tasker/Mutations/UpdateTask.html +1 -1
  178. data/docs/Tasker/Mutations.html +1 -1
  179. data/docs/Tasker/NamedStep.html +1 -1
  180. data/docs/Tasker/NamedTask.html +1 -1
  181. data/docs/Tasker/NamedTasksNamedStep.html +1 -1
  182. data/docs/Tasker/Orchestration/BackoffCalculator.html +1 -1
  183. data/docs/Tasker/Orchestration/ConnectionBuilder/ConfigValidator.html +1 -1
  184. data/docs/Tasker/Orchestration/ConnectionBuilder.html +2 -2
  185. data/docs/Tasker/Orchestration/ConnectionPoolIntelligence.html +3 -3
  186. data/docs/Tasker/Orchestration/Coordinator.html +1 -1
  187. data/docs/Tasker/Orchestration/FutureStateAnalyzer.html +1 -1
  188. data/docs/Tasker/Orchestration/PluginIntegration.html +1 -1
  189. data/docs/Tasker/Orchestration/ResponseProcessor.html +1 -1
  190. data/docs/Tasker/Orchestration/RetryHeaderParser.html +1 -1
  191. data/docs/Tasker/Orchestration/StepExecutor.html +4 -4
  192. data/docs/Tasker/Orchestration/StepSequenceFactory.html +1 -1
  193. data/docs/Tasker/Orchestration/TaskFinalizer/BlockageChecker.html +1 -1
  194. data/docs/Tasker/Orchestration/TaskFinalizer/ContextManager.html +1 -1
  195. data/docs/Tasker/Orchestration/TaskFinalizer/DelayCalculator.html +2 -2
  196. data/docs/Tasker/Orchestration/TaskFinalizer/FinalizationDecisionMaker.html +1 -1
  197. data/docs/Tasker/Orchestration/TaskFinalizer/FinalizationProcessor.html +1 -1
  198. data/docs/Tasker/Orchestration/TaskFinalizer/ReasonDeterminer.html +1 -1
  199. data/docs/Tasker/Orchestration/TaskFinalizer/ReenqueueManager.html +1 -1
  200. data/docs/Tasker/Orchestration/TaskFinalizer/UnclearStateHandler.html +1 -1
  201. data/docs/Tasker/Orchestration/TaskFinalizer.html +1 -1
  202. data/docs/Tasker/Orchestration/TaskInitializer.html +1 -1
  203. data/docs/Tasker/Orchestration/TaskReenqueuer.html +1 -1
  204. data/docs/Tasker/Orchestration/ViableStepDiscovery.html +1 -1
  205. data/docs/Tasker/Orchestration/WorkflowCoordinator.html +1 -1
  206. data/docs/Tasker/Orchestration.html +1 -1
  207. data/docs/Tasker/PageSort/PageSortParamsBuilder.html +1 -1
  208. data/docs/Tasker/PageSort.html +1 -1
  209. data/docs/Tasker/PermanentError.html +1 -1
  210. data/docs/Tasker/ProceduralError.html +1 -1
  211. data/docs/Tasker/Queries/AllAnnotationTypes.html +1 -1
  212. data/docs/Tasker/Queries/AllTasks.html +1 -1
  213. data/docs/Tasker/Queries/BaseQuery.html +1 -1
  214. data/docs/Tasker/Queries/Helpers.html +1 -1
  215. data/docs/Tasker/Queries/OneStep.html +1 -1
  216. data/docs/Tasker/Queries/OneTask.html +1 -1
  217. data/docs/Tasker/Queries/TasksByAnnotation.html +1 -1
  218. data/docs/Tasker/Queries/TasksByStatus.html +1 -1
  219. data/docs/Tasker/Queries.html +1 -1
  220. data/docs/Tasker/Railtie.html +1 -1
  221. data/docs/Tasker/Registry/BaseRegistry.html +2 -2
  222. data/docs/Tasker/Registry/EventPublisher.html +1 -1
  223. data/docs/Tasker/Registry/InterfaceValidator.html +1 -1
  224. data/docs/Tasker/Registry/RegistrationError.html +1 -1
  225. data/docs/Tasker/Registry/RegistryError.html +1 -1
  226. data/docs/Tasker/Registry/StatisticsCollector.html +1 -1
  227. data/docs/Tasker/Registry/SubscriberRegistry.html +1 -1
  228. data/docs/Tasker/Registry/ValidationError.html +1 -1
  229. data/docs/Tasker/Registry.html +1 -1
  230. data/docs/Tasker/RetryableError.html +1 -1
  231. data/docs/Tasker/StateMachine/Compatibility.html +1 -1
  232. data/docs/Tasker/StateMachine/InvalidStateTransition.html +1 -1
  233. data/docs/Tasker/StateMachine/StepStateMachine.html +1 -1
  234. data/docs/Tasker/StateMachine/TaskStateMachine.html +1 -1
  235. data/docs/Tasker/StateMachine.html +1 -1
  236. data/docs/Tasker/StepDagRelationship.html +1 -1
  237. data/docs/Tasker/StepHandler/Api/Config.html +1 -1
  238. data/docs/Tasker/StepHandler/Api.html +1 -1
  239. data/docs/Tasker/StepHandler/AutomaticEventPublishing.html +1 -1
  240. data/docs/Tasker/StepHandler/Base.html +1 -1
  241. data/docs/Tasker/StepHandler.html +1 -1
  242. data/docs/Tasker/StepReadinessStatus.html +1 -1
  243. data/docs/Tasker/Task.html +1 -1
  244. data/docs/Tasker/TaskAnnotation.html +1 -1
  245. data/docs/Tasker/TaskAnnotationSerializer.html +1 -1
  246. data/docs/Tasker/TaskBuilder/StepNameValidator.html +1 -1
  247. data/docs/Tasker/TaskBuilder/StepTemplateDefiner.html +1 -1
  248. data/docs/Tasker/TaskBuilder.html +1 -1
  249. data/docs/Tasker/TaskExecutionContext.html +1 -1
  250. data/docs/Tasker/TaskHandler/ClassMethods/StepTemplateDefiner/ClassBasedEventRegistrar.html +1 -1
  251. data/docs/Tasker/TaskHandler/ClassMethods/StepTemplateDefiner/YamlEventRegistrar.html +1 -1
  252. data/docs/Tasker/TaskHandler/ClassMethods/StepTemplateDefiner.html +1 -1
  253. data/docs/Tasker/TaskHandler/ClassMethods.html +1 -1
  254. data/docs/Tasker/TaskHandler/InstanceMethods.html +1 -1
  255. data/docs/Tasker/TaskHandler/StepGroup.html +1 -1
  256. data/docs/Tasker/TaskHandler.html +1 -1
  257. data/docs/Tasker/TaskNamespace.html +1 -1
  258. data/docs/Tasker/TaskRunnerJob.html +1 -1
  259. data/docs/Tasker/TaskSerializer.html +1 -1
  260. data/docs/Tasker/TaskTransition.html +1 -1
  261. data/docs/Tasker/TaskerRailsSchema/InvalidObjectTypeError.html +1 -1
  262. data/docs/Tasker/TaskerRailsSchema/TypeResolutionError.html +1 -1
  263. data/docs/Tasker/TaskerRailsSchema/UnknownInterfaceError.html +1 -1
  264. data/docs/Tasker/TaskerRailsSchema.html +1 -1
  265. data/docs/Tasker/TasksController.html +1 -1
  266. data/docs/Tasker/Telemetry/EventMapping.html +1 -1
  267. data/docs/Tasker/Telemetry/EventRouter.html +1 -1
  268. data/docs/Tasker/Telemetry/Events/ExportEvents.html +1 -1
  269. data/docs/Tasker/Telemetry/Events.html +1 -1
  270. data/docs/Tasker/Telemetry/ExportCoordinator.html +1 -1
  271. data/docs/Tasker/Telemetry/IntelligentCacheManager.html +2 -2
  272. data/docs/Tasker/Telemetry/LogBackend.html +1 -1
  273. data/docs/Tasker/Telemetry/MetricTypes/Counter.html +2 -2
  274. data/docs/Tasker/Telemetry/MetricTypes/Gauge.html +73 -73
  275. data/docs/Tasker/Telemetry/MetricTypes/Histogram.html +103 -103
  276. data/docs/Tasker/Telemetry/MetricTypes.html +1 -1
  277. data/docs/Tasker/Telemetry/MetricsBackend.html +1 -1
  278. data/docs/Tasker/Telemetry/MetricsExportService.html +1 -1
  279. data/docs/Tasker/Telemetry/PluginRegistry.html +1 -1
  280. data/docs/Tasker/Telemetry/Plugins/BaseExporter.html +1 -1
  281. data/docs/Tasker/Telemetry/Plugins/CsvExporter.html +1 -1
  282. data/docs/Tasker/Telemetry/Plugins/JsonExporter.html +1 -1
  283. data/docs/Tasker/Telemetry/Plugins.html +1 -1
  284. data/docs/Tasker/Telemetry/PrometheusExporter.html +1 -1
  285. data/docs/Tasker/Telemetry/TraceBackend.html +1 -1
  286. data/docs/Tasker/Telemetry.html +1 -1
  287. data/docs/Tasker/Types/AuthConfig.html +1 -1
  288. data/docs/Tasker/Types/BackoffConfig.html +1 -1
  289. data/docs/Tasker/Types/BaseConfig.html +1 -1
  290. data/docs/Tasker/Types/CacheConfig.html +1 -1
  291. data/docs/Tasker/Types/DatabaseConfig.html +1 -1
  292. data/docs/Tasker/Types/DependencyGraph.html +1 -1
  293. data/docs/Tasker/Types/DependencyGraphConfig.html +1 -1
  294. data/docs/Tasker/Types/EngineConfig.html +1 -1
  295. data/docs/Tasker/Types/ExecutionConfig.html +1 -1
  296. data/docs/Tasker/Types/GraphEdge.html +1 -1
  297. data/docs/Tasker/Types/GraphMetadata.html +1 -1
  298. data/docs/Tasker/Types/GraphNode.html +1 -1
  299. data/docs/Tasker/Types/HealthConfig.html +1 -1
  300. data/docs/Tasker/Types/StepSequence.html +1 -1
  301. data/docs/Tasker/Types/StepTemplate.html +1 -1
  302. data/docs/Tasker/Types/TaskRequest.html +1 -1
  303. data/docs/Tasker/Types/TelemetryConfig.html +2 -2
  304. data/docs/Tasker/Types.html +1 -1
  305. data/docs/Tasker/WorkflowStep/StepFinder.html +1 -1
  306. data/docs/Tasker/WorkflowStep.html +1 -1
  307. data/docs/Tasker/WorkflowStepEdge.html +1 -1
  308. data/docs/Tasker/WorkflowStepSerializer.html +1 -1
  309. data/docs/Tasker/WorkflowStepTransition/TransitionDescriptionFormatter.html +1 -1
  310. data/docs/Tasker/WorkflowStepTransition.html +1 -1
  311. data/docs/Tasker/WorkflowStepsController.html +1 -1
  312. data/docs/Tasker.html +18 -2
  313. data/docs/VISION.md +1 -1
  314. data/docs/_index.html +1 -1
  315. data/docs/file.README.html +5 -5
  316. data/docs/index.html +5 -5
  317. data/docs/method_list.html +74 -74
  318. data/docs/top-level-namespace.html +1 -1
  319. data/lib/generators/tasker/authenticator_generator.rb +5 -5
  320. data/lib/generators/tasker/authorization_coordinator_generator.rb +1 -1
  321. data/lib/generators/tasker/events_generator.rb +1 -1
  322. data/lib/generators/tasker/task_handler_generator.rb +4 -4
  323. data/lib/generators/tasker/templates/api_token_authenticator.rb.erb +1 -1
  324. data/lib/generators/tasker/templates/custom_authenticator.rb.erb +1 -1
  325. data/lib/generators/tasker/templates/devise_authenticator.rb.erb +1 -1
  326. data/lib/generators/tasker/templates/initialize.rb.erb +1 -1
  327. data/lib/generators/tasker/templates/jwt_authenticator.rb.erb +1 -1
  328. data/lib/generators/tasker/templates/omniauth_authenticator.rb.erb +1 -1
  329. data/lib/generators/tasker/templates/opentelemetry_initializer.rb +3 -3
  330. data/lib/generators/tasker/templates/task_config.yaml.erb +25 -25
  331. data/lib/generators/tasker/templates/task_handler.rb.erb +3 -2
  332. data/lib/generators/tasker/templates/task_handler_spec.rb.erb +49 -43
  333. data/lib/tasker/analysis/runtime_graph_analyzer.rb +1 -1
  334. data/lib/tasker/authentication/coordinator.rb +2 -2
  335. data/lib/tasker/authorization/base_coordinator.rb +1 -1
  336. data/lib/tasker/authorization.rb +1 -1
  337. data/lib/tasker/concerns/authenticatable.rb +1 -1
  338. data/lib/tasker/concerns/controller_authorizable.rb +3 -3
  339. data/lib/tasker/concerns/structured_logging.rb +2 -2
  340. data/lib/tasker/events/definition_loader.rb +1 -1
  341. data/lib/tasker/events/subscribers/metrics_subscriber.rb +1 -1
  342. data/lib/tasker/events/subscribers/telemetry_subscriber.rb +5 -5
  343. data/lib/tasker/health/readiness_checker.rb +1 -1
  344. data/lib/tasker/health/status_checker.rb +1 -1
  345. data/lib/tasker/logging/correlation_id_generator.rb +1 -1
  346. data/lib/tasker/orchestration/backoff_calculator.rb +1 -1
  347. data/lib/tasker/orchestration/connection_builder.rb +1 -1
  348. data/lib/tasker/orchestration/connection_pool_intelligence.rb +3 -3
  349. data/lib/tasker/orchestration/step_executor.rb +2 -2
  350. data/lib/tasker/orchestration/task_finalizer.rb +1 -1
  351. data/lib/tasker/registry/base_registry.rb +1 -1
  352. data/lib/tasker/task_builder.rb +1 -1
  353. data/lib/tasker/telemetry/intelligent_cache_manager.rb +1 -1
  354. data/lib/tasker/telemetry/metric_types.rb +57 -9
  355. data/lib/tasker/telemetry/metrics_backend.rb +3 -3
  356. data/lib/tasker/telemetry/metrics_export_service.rb +1 -1
  357. data/lib/tasker/telemetry/prometheus_exporter.rb +2 -2
  358. data/lib/tasker/types/telemetry_config.rb +1 -1
  359. data/lib/tasker/version.rb +2 -1
  360. data/lib/tasks/tasker_tasks.rake +85 -4
  361. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6b3add8b249ca4eca13c1bbf2bc3aadbdb37f48c0c45027d59940b417d88b49f
4
- data.tar.gz: 0bed8d2e7ed023ae1ff2a6cea979300467d697f3e077039dbc1a461e3497cb8a
3
+ metadata.gz: 8ed327951ad40da16f59c60f5cf82f170a2d7a2b5559fc412f2077b08feb7b77
4
+ data.tar.gz: 369fff45d9d9fb7dd440265b8b13f275343f5099df9b28f5277b43e1b7d5fb9b
5
5
  SHA512:
6
- metadata.gz: 9e3005463c1c00efdce080558c6bd3c237e85eba9578da90e2387fb4fb98be46c805ba20aebbd294dc3fff150031b6bd5080ade4c2a1f9135f7630857169c16b
7
- data.tar.gz: a7b64cbd169a1f0626eda4eb022ab1fb2e9d4514bacc5e241521b953c1fdb73d679aff3535016d73c23fc257664086c9d3eacb88a7ed7b98cad254ad3c578ab6
6
+ metadata.gz: 5a993526c07e104acf1e8283d071b310ac673dfb3a4c7e81b54928f61e7f89ff33ff319bce3b1ece13df9c511106c59d985bafcbbd71cbb22af08551c3e34a6c
7
+ data.tar.gz: db0201d9f587d7056e022bda45cb527e77d2b1d09846d1f7810e563981b98c91098e93d5feaa01e903898a13595bc94c390feb48d5d36343ef3692d09426ae9b
data/README.md CHANGED
@@ -28,7 +28,7 @@ Perfect for processes that involve multiple interdependent steps, require automa
28
28
  Add Tasker to your Rails app's `Gemfile`:
29
29
 
30
30
  ```ruby
31
- gem 'tasker-engine', '~> 1.0.5'
31
+ gem 'tasker-engine', '~> 1.0.6'
32
32
  ```
33
33
 
34
34
  Install and run the migrations:
@@ -192,7 +192,7 @@ Tasker includes enterprise-grade security that works with any Rails authenticati
192
192
 
193
193
  ```ruby
194
194
  # config/initializers/tasker.rb
195
- Tasker.configuration do |config|
195
+ Tasker::Configuration.configuration do |config|
196
196
  config.auth do |auth|
197
197
  auth.authentication_enabled = true
198
198
  auth.authenticator_class = 'YourAuthenticator'
@@ -288,7 +288,7 @@ Built-in OpenTelemetry integration provides complete observability:
288
288
 
289
289
  ```ruby
290
290
  # config/initializers/tasker.rb
291
- Tasker.configuration do |config|
291
+ Tasker::Configuration.configuration do |config|
292
292
  config.telemetry do |tel|
293
293
  tel.enabled = true
294
294
  tel.service_name = 'my-app-workflows'
@@ -347,7 +347,7 @@ GET /tasker/health/status
347
347
  **Optional Authentication & Authorization**:
348
348
  ```ruby
349
349
  # config/initializers/tasker.rb
350
- Tasker.configuration do |config|
350
+ Tasker::Configuration.configuration do |config|
351
351
  config.health do |health|
352
352
  health.status_requires_authentication = true # Secure detailed status
353
353
  end
@@ -158,7 +158,7 @@ module Tasker
158
158
  #
159
159
  # @return [Boolean] True if authentication should be skipped
160
160
  def skip_authentication?
161
- !Tasker.configuration.telemetry.metrics_auth_required
161
+ !Tasker::Configuration.configuration.telemetry.metrics_auth_required
162
162
  end
163
163
 
164
164
  # Override authorization check for analytics endpoint
@@ -166,7 +166,7 @@ module Tasker
166
166
  #
167
167
  # @return [Boolean] True if authorization should be skipped
168
168
  def skip_authorization?
169
- !Tasker.configuration.telemetry.metrics_auth_required
169
+ !Tasker::Configuration.configuration.telemetry.metrics_auth_required
170
170
  end
171
171
 
172
172
  # Set appropriate cache control headers for analytics endpoints
@@ -68,7 +68,7 @@ module Tasker
68
68
  # Authorization methods for GraphQL operations
69
69
 
70
70
  def authorization_enabled?
71
- Tasker.configuration.auth.authorization_enabled
71
+ Tasker::Configuration.configuration.auth.authorization_enabled
72
72
  end
73
73
 
74
74
  def authorize_graphql_operations!(query_string, operation_name)
@@ -173,10 +173,10 @@ module Tasker
173
173
  end
174
174
 
175
175
  def build_authorization_coordinator
176
- coordinator_class = Tasker.configuration.auth.authorization_coordinator_class.constantize
176
+ coordinator_class = Tasker::Configuration.configuration.auth.authorization_coordinator_class.constantize
177
177
  coordinator_class.new(current_tasker_user)
178
178
  rescue NameError => e
179
- coordinator_class_name = Tasker.configuration.auth.authorization_coordinator_class
179
+ coordinator_class_name = Tasker::Configuration.configuration.auth.authorization_coordinator_class
180
180
  raise Tasker::Authorization::ConfigurationError,
181
181
  "Authorization coordinator class '#{coordinator_class_name}' not found: #{e.message}"
182
182
  end
@@ -213,7 +213,7 @@ module Tasker
213
213
  def skip_authentication?
214
214
  case action_name
215
215
  when 'status'
216
- !Tasker.configuration.health.status_requires_authentication
216
+ !Tasker::Configuration.configuration.health.status_requires_authentication
217
217
  else
218
218
  super
219
219
  end
@@ -62,7 +62,7 @@ module Tasker
62
62
  #
63
63
  # @return [Boolean] True if authentication should be skipped
64
64
  def skip_authentication?
65
- !Tasker.configuration.telemetry.metrics_auth_required
65
+ !Tasker::Configuration.configuration.telemetry.metrics_auth_required
66
66
  end
67
67
 
68
68
  # Override authorization check for metrics endpoint
@@ -70,7 +70,7 @@ module Tasker
70
70
  #
71
71
  # @return [Boolean] True if authorization should be skipped
72
72
  def skip_authorization?
73
- !Tasker.configuration.telemetry.metrics_auth_required
73
+ !Tasker::Configuration.configuration.telemetry.metrics_auth_required
74
74
  end
75
75
 
76
76
  # Export metrics using PrometheusExporter
@@ -87,7 +87,7 @@ module Tasker
87
87
  #
88
88
  # @return [Boolean] True if metrics are enabled
89
89
  def metrics_enabled?
90
- Tasker.configuration.telemetry.metrics_enabled
90
+ Tasker::Configuration.configuration.telemetry.metrics_enabled
91
91
  end
92
92
 
93
93
  # Response when metrics are disabled
@@ -134,7 +134,7 @@ module Tasker
134
134
  # @return [Integer] Timeout duration in seconds
135
135
  def job_timeout_duration
136
136
  prometheus_config = begin
137
- Tasker.configuration.telemetry.prometheus
137
+ Tasker::Configuration.configuration.telemetry.prometheus
138
138
  rescue StandardError
139
139
  {}
140
140
  end
@@ -9,12 +9,12 @@ module Tasker
9
9
  # When secondary database is enabled, it connects to a database named 'tasker' in database.yml.
10
10
  #
11
11
  # @example Basic usage with shared database (default)
12
- # Tasker.configuration do |config|
12
+ # Tasker::Configuration.configuration do |config|
13
13
  # config.database.enable_secondary_database = false
14
14
  # end
15
15
  #
16
16
  # @example Using a dedicated Tasker database
17
- # Tasker.configuration do |config|
17
+ # Tasker::Configuration.configuration do |config|
18
18
  # config.database.enable_secondary_database = true
19
19
  # config.database.name = :tasker
20
20
  # end
@@ -35,13 +35,13 @@ module Tasker
35
35
  # This follows Rails multi-database conventions but only when database is actually available
36
36
  def self.configure_database_connections
37
37
  # Ensure Tasker configuration is available - fail fast if not
38
- unless defined?(Tasker.configuration)
39
- error_message = 'Tasker.configuration is not available. This indicates a Rails initialization order issue. ' \
38
+ unless defined?(::Tasker::Configuration.configuration)
39
+ error_message = 'Tasker::Configuration.configuration is not available. This indicates a Rails initialization order issue. ' \
40
40
  'Ensure Tasker is properly initialized before models are loaded.'
41
41
  raise StandardError, error_message
42
42
  end
43
43
 
44
- config = Tasker.configuration.database
44
+ config = ::Tasker::Configuration.configuration.database
45
45
  if config.enable_secondary_database && config.name.present?
46
46
  # Check if the database configuration actually exists before calling connects_to
47
47
  if database_configuration_exists?(config.name)
@@ -401,7 +401,7 @@ module Tasker
401
401
  #
402
402
  # @return [Object] The identity strategy instance
403
403
  def identity_strategy
404
- @identity_strategy ||= Tasker.configuration.engine.identity_strategy_instance
404
+ @identity_strategy ||= Tasker::Configuration.configuration.engine.identity_strategy_instance
405
405
  end
406
406
 
407
407
  # Sets the identity hash for this task using the configured identity strategy
@@ -2,7 +2,7 @@
2
2
  -- When attempts is NULL, it should be treated as 0 for comparison purposes
3
3
 
4
4
  -- Update get_step_readiness_status function
5
- CREATE OR REPLACE FUNCTION public.get_step_readiness_status(input_task_id bigint, step_ids bigint[] DEFAULT NULL::bigint[]) RETURNS TABLE(workflow_step_id bigint, task_id bigint, named_step_id integer, name text, current_state text, dependencies_satisfied boolean, retry_eligible boolean, ready_for_execution boolean, last_failure_at timestamp without time zone, next_retry_at timestamp without time zone, total_parents integer, completed_parents integer, attempts integer, retry_limit integer, backoff_request_seconds integer, last_attempted_at timestamp without time zone)
5
+ CREATE OR REPLACE FUNCTION get_step_readiness_status(input_task_id bigint, step_ids bigint[] DEFAULT NULL::bigint[]) RETURNS TABLE(workflow_step_id bigint, task_id bigint, named_step_id integer, name text, current_state text, dependencies_satisfied boolean, retry_eligible boolean, ready_for_execution boolean, last_failure_at timestamp without time zone, next_retry_at timestamp without time zone, total_parents integer, completed_parents integer, attempts integer, retry_limit integer, backoff_request_seconds integer, last_attempted_at timestamp without time zone)
6
6
  LANGUAGE plpgsql STABLE
7
7
  AS $$
8
8
  BEGIN
@@ -114,7 +114,7 @@ END;
114
114
  $$;
115
115
 
116
116
  -- Also update the batch version
117
- CREATE OR REPLACE FUNCTION public.get_step_readiness_status_batch(input_task_ids bigint[]) RETURNS TABLE(workflow_step_id bigint, task_id bigint, named_step_id integer, name text, current_state text, dependencies_satisfied boolean, retry_eligible boolean, ready_for_execution boolean, last_failure_at timestamp without time zone, next_retry_at timestamp without time zone, total_parents integer, completed_parents integer, attempts integer, retry_limit integer, backoff_request_seconds integer, last_attempted_at timestamp without time zone)
117
+ CREATE OR REPLACE FUNCTION get_step_readiness_status_batch(input_task_ids bigint[]) RETURNS TABLE(workflow_step_id bigint, task_id bigint, named_step_id integer, name text, current_state text, dependencies_satisfied boolean, retry_eligible boolean, ready_for_execution boolean, last_failure_at timestamp without time zone, next_retry_at timestamp without time zone, total_parents integer, completed_parents integer, attempts integer, retry_limit integer, backoff_request_seconds integer, last_attempted_at timestamp without time zone)
118
118
  LANGUAGE plpgsql STABLE
119
119
  AS $$
120
120
  BEGIN
data/docs/AUTH.md CHANGED
@@ -57,7 +57,7 @@ By default, Tasker requires no authentication:
57
57
 
58
58
  ```ruby
59
59
  # config/initializers/tasker.rb
60
- Tasker.configuration do |config|
60
+ Tasker::Configuration.configuration do |config|
61
61
  config.auth do |auth|
62
62
  auth.authentication_enabled = false # Default - no configuration needed
63
63
  end
@@ -70,7 +70,7 @@ For any authentication system, enable authentication and specify your authentica
70
70
 
71
71
  ```ruby
72
72
  # config/initializers/tasker.rb
73
- Tasker.configuration do |config|
73
+ Tasker::Configuration.configuration do |config|
74
74
  config.auth do |auth|
75
75
  auth.authentication_enabled = true
76
76
  auth.authenticator_class = 'YourCustomAuthenticator'
@@ -85,7 +85,7 @@ Enable both authentication and authorization for complete security:
85
85
 
86
86
  ```ruby
87
87
  # config/initializers/tasker.rb
88
- Tasker.configuration do |config|
88
+ Tasker::Configuration.configuration do |config|
89
89
  config.auth do |auth|
90
90
  auth.authentication_enabled = true
91
91
  auth.authenticator_class = 'YourCustomAuthenticator'
@@ -104,7 +104,7 @@ Authorization in Tasker uses a **resource:action** permission model that works s
104
104
 
105
105
  ```ruby
106
106
  # config/initializers/tasker.rb
107
- Tasker.configuration do |config|
107
+ Tasker::Configuration.configuration do |config|
108
108
  config.auth do |auth|
109
109
  auth.authorization_enabled = true
110
110
  auth.authorization_coordinator_class = 'YourAuthorizationCoordinator'
@@ -232,7 +232,7 @@ Enable health status authorization:
232
232
 
233
233
  ```ruby
234
234
  # config/initializers/tasker.rb
235
- Tasker.configuration do |config|
235
+ Tasker::Configuration.configuration do |config|
236
236
  config.auth do |auth|
237
237
  auth.authorization_enabled = true
238
238
  auth.authorization_coordinator_class = 'YourAuthorizationCoordinator'
@@ -464,7 +464,7 @@ rails generate tasker:authenticator CompanyJWT --type=jwt --user-class=User
464
464
  ### Authentication Configuration Block
465
465
 
466
466
  ```ruby
467
- Tasker.configuration do |config|
467
+ Tasker::Configuration.configuration do |config|
468
468
  config.auth do |auth|
469
469
  # Authentication settings
470
470
  auth.authentication_enabled = true | false # Enable/disable authentication
@@ -840,7 +840,7 @@ Our `ExampleJWTAuthenticator` demonstrates a production-ready JWT implementation
840
840
 
841
841
  ```ruby
842
842
  # config/initializers/tasker.rb
843
- Tasker.configuration do |config|
843
+ Tasker::Configuration.configuration do |config|
844
844
  config.auth do |auth|
845
845
  auth.authentication_enabled = true
846
846
  auth.authenticator_class = 'ExampleJWTAuthenticator'
@@ -864,7 +864,7 @@ end
864
864
 
865
865
  ```ruby
866
866
  # config/initializers/tasker.rb
867
- Tasker.configuration do |config|
867
+ Tasker::Configuration.configuration do |config|
868
868
  config.auth do |auth|
869
869
  auth.authentication_enabled = true
870
870
  auth.authenticator_class = 'ExampleJWTAuthenticator'
@@ -1284,7 +1284,7 @@ For authorization testing, use comprehensive integration tests:
1284
1284
  # spec/support/shared_contexts/configuration_test_isolation.rb
1285
1285
  RSpec.shared_context 'configuration test isolation' do
1286
1286
  around(:each) do |example|
1287
- original_config = Tasker.configuration
1287
+ original_config = Tasker::Configuration.configuration
1288
1288
  example.run
1289
1289
  ensure
1290
1290
  # Reset to clean state
@@ -1443,7 +1443,7 @@ RSpec.configure do |config|
1443
1443
  config.after(:each) do
1444
1444
  # Automatic cleanup of authentication/authorization state
1445
1445
  if defined?(Tasker) && Tasker.respond_to?(:configuration)
1446
- current_config = Tasker.configuration
1446
+ current_config = Tasker::Configuration.configuration
1447
1447
  if current_config&.auth&.authorization_enabled == true
1448
1448
  needs_reset = true
1449
1449
  end
@@ -1454,7 +1454,7 @@ RSpec.configure do |config|
1454
1454
  end
1455
1455
 
1456
1456
  if needs_reset
1457
- Tasker.configuration do |config|
1457
+ Tasker::Configuration.configuration do |config|
1458
1458
  config.auth.authentication_enabled = false
1459
1459
  config.auth.authorization_enabled = false
1460
1460
  config.auth.authenticator_class = nil
@@ -1027,7 +1027,7 @@ Tasker provides a comprehensive, production-ready authentication and authorizati
1027
1027
 
1028
1028
  ```ruby
1029
1029
  # config/initializers/tasker.rb
1030
- Tasker.configuration do |config|
1030
+ Tasker::Configuration.configuration do |config|
1031
1031
  config.auth do |auth|
1032
1032
  # Authentication
1033
1033
  auth.authentication_enabled = true
@@ -1111,18 +1111,18 @@ Tasker provides optional multi-database support using Rails' standard multi-data
1111
1111
  # config/initializers/tasker.rb
1112
1112
 
1113
1113
  # Default: Use host application database (shared)
1114
- Tasker.configuration do |config|
1114
+ Tasker::Configuration.configuration do |config|
1115
1115
  config.database.enable_secondary_database = false
1116
1116
  end
1117
1117
 
1118
1118
  # Use dedicated Tasker database
1119
- Tasker.configuration do |config|
1119
+ Tasker::Configuration.configuration do |config|
1120
1120
  config.database.enable_secondary_database = true
1121
1121
  config.database.name = :tasker
1122
1122
  end
1123
1123
 
1124
1124
  # Environment-specific configuration
1125
- Tasker.configuration do |config|
1125
+ Tasker::Configuration.configuration do |config|
1126
1126
  config.database.enable_secondary_database = Rails.env.production?
1127
1127
  config.database.name = Rails.env.production? ? :tasker : nil
1128
1128
  end
@@ -1192,7 +1192,7 @@ Tasker provides advanced dependency graph analysis and bottleneck detection capa
1192
1192
 
1193
1193
  ```ruby
1194
1194
  # config/initializers/tasker.rb
1195
- Tasker.configuration do |config|
1195
+ Tasker::Configuration.configuration do |config|
1196
1196
  config.dependency_graph do |graph|
1197
1197
  # Prioritize blocked steps more heavily
1198
1198
  graph.impact_multipliers = {
@@ -1965,7 +1965,7 @@ module PriorityWorkflow
1965
1965
  end
1966
1966
 
1967
1967
  # Configure in initializer
1968
- Tasker.configuration do |config|
1968
+ Tasker::Configuration.configuration do |config|
1969
1969
  config.orchestration.coordinator_class = 'PriorityWorkflow::Coordinator'
1970
1970
  end
1971
1971
  ```
@@ -208,7 +208,7 @@ Monitor these metrics to optimize configuration:
208
208
 
209
209
  ```ruby
210
210
  # Access current configuration
211
- current_config = Tasker.configuration.execution
211
+ current_config = Tasker::Configuration.configuration.execution
212
212
 
213
213
  # Monitor dynamic concurrency decisions
214
214
  max_concurrent = step_executor.max_concurrent_steps
data/docs/HEALTH.md CHANGED
@@ -113,7 +113,7 @@ Control authentication requirements for the status endpoint:
113
113
 
114
114
  ```ruby
115
115
  # config/initializers/tasker.rb
116
- Tasker.configuration do |config|
116
+ Tasker::Configuration.configuration do |config|
117
117
  config.health do |health|
118
118
  # Optional authentication for status endpoint
119
119
  health.status_requires_authentication = true # Default: false
@@ -135,7 +135,7 @@ Enable fine-grained authorization for the status endpoint:
135
135
 
136
136
  ```ruby
137
137
  # config/initializers/tasker.rb
138
- Tasker.configuration do |config|
138
+ Tasker::Configuration.configuration do |config|
139
139
  config.auth do |auth|
140
140
  auth.authorization_enabled = true
141
141
  auth.authorization_coordinator_class = 'YourAuthorizationCoordinator'
@@ -346,7 +346,7 @@ end
346
346
 
347
347
  ```ruby
348
348
  # config/initializers/tasker.rb
349
- Tasker.configuration do |config|
349
+ Tasker::Configuration.configuration do |config|
350
350
  config.health do |health|
351
351
  # Authentication requirement for status endpoint
352
352
  health.status_requires_authentication = false # Default: false
data/docs/METRICS.md CHANGED
@@ -327,7 +327,7 @@ groups:
327
327
 
328
328
  ```ruby
329
329
  # config/initializers/tasker.rb
330
- Tasker.configuration do |config|
330
+ Tasker::Configuration.configuration do |config|
331
331
  config.telemetry do |tel|
332
332
  # Enable native metrics collection
333
333
  tel.metrics_enabled = true
@@ -349,7 +349,7 @@ end
349
349
  ### Advanced Configuration
350
350
 
351
351
  ```ruby
352
- Tasker.configuration do |config|
352
+ Tasker::Configuration.configuration do |config|
353
353
  config.telemetry do |tel|
354
354
  tel.metrics_enabled = true
355
355
  tel.metrics_format = 'prometheus'
@@ -392,7 +392,7 @@ end
392
392
  ```ruby
393
393
  # config/environments/production.rb
394
394
  config.after_initialize do
395
- Tasker.configuration do |config|
395
+ Tasker::Configuration.configuration do |config|
396
396
  config.telemetry do |tel|
397
397
  tel.metrics_enabled = true
398
398
  tel.prometheus = {
@@ -408,7 +408,7 @@ end
408
408
 
409
409
  # config/environments/development.rb
410
410
  config.after_initialize do
411
- Tasker.configuration do |config|
411
+ Tasker::Configuration.configuration do |config|
412
412
  config.telemetry do |tel|
413
413
  tel.metrics_enabled = true
414
414
  tel.prometheus = {
@@ -86,7 +86,7 @@ end
86
86
 
87
87
  **✅ ACHIEVEMENTS**:
88
88
  - **Dynamic Calculation**: Intelligent concurrency based on system health and database pool
89
- - **Configuration System**: `Tasker.configuration.execution` with environment-specific tuning
89
+ - **Configuration System**: `Tasker::Configuration.configuration.execution` with environment-specific tuning
90
90
  - **Performance Improvement**: 200-300% potential throughput increase
91
91
  - **Template Integration**: All generators and scripts include execution configuration examples
92
92
  - **Comprehensive Testing**: FutureStateAnalyzer abstraction with 34 validation tests
@@ -514,7 +514,7 @@ module Tasker
514
514
 
515
515
  def self.intelligent_concurrency_for_step_executor
516
516
  health_data = assess_connection_health
517
- config = Tasker.configuration.execution # Use existing ExecutionConfig
517
+ config = Tasker::Configuration.configuration.execution # Use existing ExecutionConfig
518
518
 
519
519
  # Respect Rails connection pool limits with configurable bounds
520
520
  base_recommendation = health_data[:recommended_concurrency]
@@ -553,7 +553,7 @@ module Tasker
553
553
  pressure = assess_pressure(pool_stat)
554
554
 
555
555
  # ✅ CONFIGURABLE: Pressure response factors (environment-dependent)
556
- pressure_config = Tasker.configuration.execution.connection_pressure_factors || {
556
+ pressure_config = Tasker::Configuration.configuration.execution.connection_pressure_factors || {
557
557
  low: 0.8,
558
558
  moderate: 0.6,
559
559
  high: 0.4,
data/docs/QUICK_START.md CHANGED
@@ -191,7 +191,7 @@ Your demo application includes comprehensive execution configuration examples. E
191
191
  rails console
192
192
 
193
193
  # Check current execution settings
194
- config = Tasker.configuration.execution
194
+ config = Tasker::Configuration.configuration.execution
195
195
  puts "Min concurrent steps: #{config.min_concurrent_steps}"
196
196
  puts "Max concurrent steps: #{config.max_concurrent_steps_limit}"
197
197
  puts "Concurrency cache duration: #{config.concurrency_cache_duration} seconds"
data/docs/REST_API.md CHANGED
@@ -33,7 +33,7 @@ If you've configured a custom authenticator, use the authentication method appro
33
33
 
34
34
  ```ruby
35
35
  # config/initializers/tasker.rb
36
- Tasker.configuration do |config|
36
+ Tasker::Configuration.configuration do |config|
37
37
  config.auth do |auth|
38
38
  auth.authentication_enabled = true
39
39
  auth.authenticator_class = 'YourCustomAuthenticator'
data/docs/TELEMETRY.md CHANGED
@@ -201,7 +201,7 @@ end
201
201
  ### ✅ **Clean Architecture** - Complementary Systems
202
202
  ```ruby
203
203
  # config/initializers/tasker.rb
204
- Tasker.configuration do |config|
204
+ Tasker::Configuration.configuration do |config|
205
205
  config.telemetry do |tel|
206
206
  # Enable OpenTelemetry spans (event-driven)
207
207
  tel.enabled = true
@@ -222,7 +222,7 @@ See [METRICS.md](METRICS.md) for comprehensive details on the native metrics sys
222
222
  Configure Tasker's telemetry in `config/initializers/tasker.rb`:
223
223
 
224
224
  ```ruby
225
- Tasker.configuration do |config|
225
+ Tasker::Configuration.configuration do |config|
226
226
  config.telemetry do |tel|
227
227
  # Enable telemetry (TelemetrySubscriber for OpenTelemetry spans)
228
228
  tel.enabled = true
@@ -254,7 +254,7 @@ require 'opentelemetry/instrumentation/all'
254
254
  # Configure OpenTelemetry
255
255
  OpenTelemetry::SDK.configure do |c|
256
256
  # Use the configured service name
257
- c.service_name = Tasker.configuration.telemetry.service_name
257
+ c.service_name = Tasker::Configuration.configuration.telemetry.service_name
258
258
 
259
259
  # Configure OTLP exporter to send to local Jaeger
260
260
  otlp_exporter = OpenTelemetry::Exporter::OTLP::Exporter.new(
@@ -268,8 +268,8 @@ OpenTelemetry::SDK.configure do |c|
268
268
 
269
269
  # Configure resource with additional attributes
270
270
  c.resource = OpenTelemetry::SDK::Resources::Resource.create({
271
- 'service.name' => Tasker.configuration.telemetry.service_name,
272
- 'service.version' => Tasker.configuration.telemetry.service_version,
271
+ 'service.name' => Tasker::Configuration.configuration.telemetry.service_name,
272
+ 'service.version' => Tasker::Configuration.configuration.telemetry.service_version,
273
273
  'service.framework' => 'tasker'
274
274
  })
275
275
 
@@ -451,7 +451,7 @@ Tasker::Types::ValidationError: Invalid task context
451
451
  3. **Enable telemetry**
452
452
  ```ruby
453
453
  # config/initializers/tasker.rb
454
- Tasker.configuration do |config|
454
+ Tasker::Configuration.configuration do |config|
455
455
  config.telemetry do |tel|
456
456
  tel.enabled = true
457
457
  tel.service_name = 'your-app'
@@ -576,7 +576,7 @@ end
576
576
 
577
577
  ```ruby
578
578
  # config/initializers/tasker.rb
579
- Tasker.configuration do |config|
579
+ Tasker::Configuration.configuration do |config|
580
580
  config.telemetry do |tel|
581
581
  tel.enabled = true
582
582
  tel.service_name = 'your-application'