Skip to content

feat: Workflow Message Queue (WMQ) support#389

Merged
mp-orkes merged 2 commits intomainfrom
feature/wmq-support
Apr 6, 2026
Merged

feat: Workflow Message Queue (WMQ) support#389
mp-orkes merged 2 commits intomainfrom
feature/wmq-support

Conversation

@mp-orkes
Copy link
Copy Markdown
Contributor

@mp-orkes mp-orkes commented Mar 25, 2026

Summary

Implements the Workflow Message Queue (WMQ) feature, allowing external callers to push messages into a running workflow and consume them inside the workflow via a system task.

  • executor.send_message(workflow_id, payload) / workflow_client.send_message(...)POST /workflow/{workflowId}/message
  • New PullWorkflowMessagesTask for consuming messages inside workflow definitions
  • New TaskType.PULL_WORKFLOW_MESSAGES enum value
  • New WorkflowMessage model (id, workflow_id, payload, received_at)
  • Usage guide at docs/workflow-message-queue.md

Server requirement

conductor.workflow-message-queue.enabled=true must be set on the Conductor server.

Test plan

  • Start a workflow that contains a PullWorkflowMessagesTask
  • Call executor.send_message(workflow_id, {...}) and verify a UUID is returned
  • Verify the workflow task receives the message in its output (messages, count)
  • Verify 404 when workflow ID is unknown
  • Verify 409 when workflow is not in RUNNING state
  • Verify 429 when queue is at capacity

Related

🤖 Generated with Claude Code

@mp-orkes mp-orkes requested a review from v1r3n March 25, 2026 00:31
mp-orkes and others added 2 commits April 6, 2026 15:37
Implements the WMQ feature from conductor-oss/conductor#917:
- POST /workflow/{workflowId}/message via WorkflowResourceApi.send_workflow_message
- executor.send_message / workflow_client.send_message convenience methods
- PullWorkflowMessagesTask for consuming messages inside workflow definitions
- TaskType.PULL_WORKFLOW_MESSAGES enum value
- WorkflowMessage model (id, workflow_id, payload, received_at)
- docs/workflow-message-queue.md usage guide with examples

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mp-orkes mp-orkes force-pushed the feature/wmq-support branch from c8941a3 to 417a4f6 Compare April 6, 2026 18:38
@mp-orkes mp-orkes self-assigned this Apr 6, 2026
@mp-orkes mp-orkes marked this pull request as ready for review April 6, 2026 18:39
@mp-orkes mp-orkes merged commit 8cff357 into main Apr 6, 2026
1 check passed
@mp-orkes mp-orkes deleted the feature/wmq-support branch April 6, 2026 19:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants