Expected Behavior
SDK Client's SignalWithStartWorkflowExecution is usually validated by the Frontend here: service/frontend/workflow_handler.go#L2336
The SDK team is working on supporting SignalWithStartWorkflowExecution from inside a workflow, via System Nexus. The relevant system nexus validation code is here: chasm/lib/workflow/nexus_service.go#L79
I expect the server to do the same validation on signal-with-start requests in system nexus as it does in the frontend. In particular, the frontend invokes backoff.ValidateSchedule to check that cron strings are syntactically valid.
Actual Behavior
temporal-server/chasm/lib/workflow/nexus_service.go doesn't seem to invoke backoff.ValidateSchedule on cron strings. Maybe we want to move cron validation from WorkflowHandler.SignalWithStartWorkflowExecution to RequestValidator.ValidateSignalWithStartRequest?
Steps to Reproduce the Problem
Specifications
Expected Behavior
SDK Client's
SignalWithStartWorkflowExecutionis usually validated by the Frontend here:service/frontend/workflow_handler.go#L2336The SDK team is working on supporting
SignalWithStartWorkflowExecutionfrom inside a workflow, via System Nexus. The relevant system nexus validation code is here:chasm/lib/workflow/nexus_service.go#L79I expect the server to do the same validation on signal-with-start requests in system nexus as it does in the frontend. In particular, the frontend invokes
backoff.ValidateScheduleto check that cron strings are syntactically valid.Actual Behavior
temporal-server/chasm/lib/workflow/nexus_service.godoesn't seem to invokebackoff.ValidateScheduleon cron strings. Maybe we want to move cron validation fromWorkflowHandler.SignalWithStartWorkflowExecutiontoRequestValidator.ValidateSignalWithStartRequest?Steps to Reproduce the Problem
Specifications