From fc6f3a8c47a1bc2b61c61b8dd53a4215cfbb3c4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Cac=CC=A7ador?= <20863811+samuel27m@users.noreply.github.com> Date: Fri, 13 Jun 2025 15:58:45 +0100 Subject: [PATCH] IWF-836: SDK expects stateWaitUntilFailed flag instead stateStartApiSucceeded --- iwf-idl | 2 +- .../io/iworkflow/core/mapper/CommandResultsMapper.java | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/iwf-idl b/iwf-idl index 08e49fcf..5a96d629 160000 --- a/iwf-idl +++ b/iwf-idl @@ -1 +1 @@ -Subproject commit 08e49fcf69e59d1df30babc076d1f2b49f07dc82 +Subproject commit 5a96d629c6e337cdc8f363dc52a6965e02a1c0ec diff --git a/src/main/java/io/iworkflow/core/mapper/CommandResultsMapper.java b/src/main/java/io/iworkflow/core/mapper/CommandResultsMapper.java index 4bd4be38..2f98af60 100644 --- a/src/main/java/io/iworkflow/core/mapper/CommandResultsMapper.java +++ b/src/main/java/io/iworkflow/core/mapper/CommandResultsMapper.java @@ -39,8 +39,13 @@ public static CommandResults fromGenerated( objectEncoder)) .collect(Collectors.toList())); } - if(commandResults.getStateStartApiSucceeded() != null) { - builder.waitUntilApiSucceeded(commandResults.getStateStartApiSucceeded()); + + // The server will set stateWaitUntilFailed to true if the waitUntil API failed. + // Hence, flag inversion is needed here to indicate that the waitUntil API + // succeeded. + builder.waitUntilApiSucceeded(true); + if (Boolean.TRUE.equals(commandResults.getStateWaitUntilFailed())) { + builder.waitUntilApiSucceeded(false); } return builder.build(); }