Skip to content

CHASM/System Nexus: SignalWithStart doesn't validate cron schedules #11822

Description

@dplyukhin

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

  • Version:
  • Platform:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions