Skip to content

Feature/1794 workflow list history rerun - #1798

Open
siri-varma wants to merge 14 commits into
dapr:masterfrom
siri-varma:feature/1794-workflow-list-history-rerun
Open

Feature/1794 workflow list history rerun#1798
siri-varma wants to merge 14 commits into
dapr:masterfrom
siri-varma:feature/1794-workflow-list-history-rerun

Conversation

@siri-varma

@siri-varma siri-varma commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Description

Please explain the changes you've made

Issue reference

We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.

Please reference the issue this PR will close: #1794

Checklist

Please make sure you've completed the relevant tasks for this PR, out of the following list:

  • Code compiles correctly
  • Created/updated tests
  • Extended the documentation

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
…1794)

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
…apr#1794)

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
…r#1794)

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
…nt (dapr#1794)

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
…apr#1794)

The management example ran the client as a separate dapr app
(demoworkflowclient), so its DaprWorkflowClient scheduled workflows
against demoworkflowclient workflow actors that no worker hosts. The
sidecar looped on DaprBuiltInActorNotFoundRetries until the mm.py step
timed out, failing the validate job.

Pin the worker sidecar to --dapr-grpc-port 50003 and run the client as a
plain java -jar that connects to that port, then dapr stop the worker.
This matches the working chaining/faninout patterns and also stops the
leftover worker sidecar that broke the CI retry attempt. Port 50003 is a
free daprd gRPC port; 50005 is reserved by the dapr placement service.

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
dapr#1794)

The build-durabletask job is capped at 7 min (5 min per test step) and
runs against the durabletask-go sidecar. The four added ITs used the
class-level 100s waitForInstanceCompletion ceiling; the two rerun tests
waited on rerun-from-eventID-0 instances that never complete on that
sidecar, blocking ~100s each and pushing the suite from ~5 min to over
7 min, so the job was killed. The listInstanceIds pagination loop was a
second hang risk (no iteration cap).

Remove the four ITs. The feature stays covered by DaprWorkflowClientTest
unit tests; user-facing integration coverage belongs in sdk-tests
against a full Dapr runtime (which supports rerun), not the minimal
durabletask-go sidecar. Keeps the null-input guard from cfdfff6.

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
@siri-varma
siri-varma force-pushed the feature/1794-workflow-list-history-rerun branch from f44c0b7 to ac9b8f6 Compare September 8, 2026 14:26
@siri-varma
siri-varma marked this pull request as ready for review September 8, 2026 14:27
@siri-varma
siri-varma requested review from a team as code owners September 8, 2026 14:27
…dapr#1794)

The client reran from history.get(0), the WorkflowStarted lifecycle event,
whose event ID is -1. daprd rejects it: 'target event HistoryEvent_WorkflowStarted
with ID -1 is not an event that can be rerun'. Lifecycle/result events carry
event ID -1; only scheduling events (e.g. the activity's TASK_SCHEDULED) have a
non-negative ID and are valid rerun targets.

Select the first history event with a non-negative event ID as the rerun target,
which matches the overwriteInput semantics (rerun that activity with new input).

Signed-off-by: Siri Varma Vegiraju <siri.varma@outlook.com>
@codecov

codecov Bot commented Sep 8, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 95.83333% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 77.41%. Comparing base (2edf16c) to head (08053c2).
⚠️ Report is 3 commits behind head on master.

Files with missing lines Patch % Lines
...a/io/dapr/workflows/client/DaprWorkflowClient.java 78.94% 1 Missing and 3 partials ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #1798      +/-   ##
============================================
+ Coverage     77.10%   77.41%   +0.31%     
- Complexity     2317     2376      +59     
============================================
  Files           245      250       +5     
  Lines          7186     7294     +108     
  Branches        750      754       +4     
============================================
+ Hits           5541     5647     +106     
  Misses         1284     1284              
- Partials        361      363       +2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

Feature [1.19]: Expose advanced workflow management APIs

1 participant