From b0c36e3ef0ef9a599e2b881c0015f4ac64d41847 Mon Sep 17 00:00:00 2001 From: Matt Klein Date: Tue, 24 Feb 2026 15:53:24 -0700 Subject: [PATCH 1/2] workflows: bring back parallel execution mode Also add regex field/message extraction. Signed-off-by: Matt Klein --- .../protobuf/workflow/v1/workflow.proto | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/bitdrift_public/protobuf/workflow/v1/workflow.proto b/src/bitdrift_public/protobuf/workflow/v1/workflow.proto index 2a515fc..24d15f0 100644 --- a/src/bitdrift_public/protobuf/workflow/v1/workflow.proto +++ b/src/bitdrift_public/protobuf/workflow/v1/workflow.proto @@ -114,7 +114,21 @@ message Workflow { // This can be looked up by ID by further transitions. message SaveField { string id = 1; - string field_name = 2; + + oneof save_field_type { + // Save's the value of a specified field from the log. If the field is not present, nothing + // is saved. + string field_name = 2; + + // Save's the message of the log. + bool message = 3; + } + + // If provided, this must specify a regex with a single capture group. The value of the + // captured group will be saved instead of the whole field value. If not provided, the whole + // field value will be saved. If the regex doesn't match the field value, nothing will be + // saved. + optional string regex_capture = 4; } // The configuration of a value extraction for a Sankey diagram. @@ -416,8 +430,15 @@ message Workflow { // state can be started only if there are no other active runs of a given workflow. message ExecutionExclusive {} + message ExecutionParallel { + // The maximum number of active workflow runs for this workflow. If not specified uses an + // implementation defined default value. + optional uint32 max_active_runs = 1; + } + oneof execution_type { ExecutionExclusive execution_exclusive = 1; + ExecutionParallel execution_parallel = 3; } reserved 2; From 0fb5c633e0b520590dfddd3df43333f93d745459 Mon Sep 17 00:00:00 2001 From: Matt Klein Date: Fri, 27 Feb 2026 14:54:24 -0700 Subject: [PATCH 2/2] fix Signed-off-by: Matt Klein --- src/bitdrift_public/protobuf/workflow/v1/workflow.proto | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bitdrift_public/protobuf/workflow/v1/workflow.proto b/src/bitdrift_public/protobuf/workflow/v1/workflow.proto index 24d15f0..3b4f41d 100644 --- a/src/bitdrift_public/protobuf/workflow/v1/workflow.proto +++ b/src/bitdrift_public/protobuf/workflow/v1/workflow.proto @@ -116,11 +116,11 @@ message Workflow { string id = 1; oneof save_field_type { - // Save's the value of a specified field from the log. If the field is not present, nothing + // Saves the value of a specified field from the log. If the field is not present, nothing // is saved. string field_name = 2; - // Save's the message of the log. + // Saves the message of the log. bool message = 3; }