picatz / picatz/flowstate

engine: preserve caller async outcomes across callee Continue-As-New

Open
#1,935 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
9
Forks
0
Avg merge
3h 3m
Merged PRs (30d)
509

Description

Origin: aardvark PR #1930 exact-head independent review.

Evidence

At head 19065c4f6fda74d4511aa3514bd4066c6c2beea9, Continue-As-New initiated inside a callee can replace workflow execution while the caller still owns outstanding async outcomes. Those outcomes can be lost or suppressed across the continuation boundary. This blocks the otherwise useful CEL control-expression/slice-budget work in #1930.

Acceptance criteria

  • Define ownership and persistence of caller async outcomes when a descendant requests Continue-As-New.
  • No outstanding result is silently lost, duplicated, or reported complete.
  • Both local and Temporal drivers agree, with shared conformance cases covering outstanding success, failure, cancellation, and replay.
  • Bound carried state/history and preserve deterministic workflow behavior.
  • Reapply independently valid #1930 work only after this invariant is proved.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the exact-head evidence at 19065c4f6fda74d4511aa3514bd4066c6c2beea9 and the independently reviewed aardvark PR #1930. Compare how the local and Temporal drivers handle caller async outcomes across a callee Continue-As-New, then define shared conformance cases for success, failure, cancellation, and replay; done means outcomes are neither lost, duplicated, nor falsely completed.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.