import type { ForkExecutionOverride as _memoflow_v1_ForkExecutionOverride, ForkExecutionOverride__Output as _memoflow_v1_ForkExecutionOverride__Output } from '../../memoflow/v1/ForkExecutionOverride.js'; import type { ForkEffectMode as _memoflow_v1_ForkEffectMode, ForkEffectMode__Output as _memoflow_v1_ForkEffectMode__Output } from '../../memoflow/v1/ForkEffectMode.js'; export interface ForkWorkflowRequest { 'namespace'?: (string); 'workflow_id'?: (string); /** * required — the source run to fork from */ 'run_id'?: (string); /** * Checkpoints with step_seq <= this value are copied verbatim into the * new run; the workflow re-executes from step_seq+1 onward. Must * reference an existing step_seq on the source run (validated * server-side); the new run's step identity (Design Law 1) is otherwise * untouched — post-fork code divergence at a copied step_key is caught * exactly like any other memoization mismatch, never silently ignored. */ 'step_seq'?: (number); /** * Intended post-boundary identity changes, persisted atomically with the * fork. They are lineage evidence only while policy mode is REPLAY_ONLY. */ 'overrides'?: (_memoflow_v1_ForkExecutionOverride)[]; /** * Unspecified preserves the backwards-compatible REPLAY_ONLY default. * MODEL_ONLY additionally requires workflow.fork_effects authorization. */ 'effect_mode'?: (_memoflow_v1_ForkEffectMode); } export interface ForkWorkflowRequest__Output { 'namespace': (string); 'workflow_id': (string); /** * required — the source run to fork from */ 'run_id': (string); /** * Checkpoints with step_seq <= this value are copied verbatim into the * new run; the workflow re-executes from step_seq+1 onward. Must * reference an existing step_seq on the source run (validated * server-side); the new run's step identity (Design Law 1) is otherwise * untouched — post-fork code divergence at a copied step_key is caught * exactly like any other memoization mismatch, never silently ignored. */ 'step_seq': (number); /** * Intended post-boundary identity changes, persisted atomically with the * fork. They are lineage evidence only while policy mode is REPLAY_ONLY. */ 'overrides': (_memoflow_v1_ForkExecutionOverride__Output)[]; /** * Unspecified preserves the backwards-compatible REPLAY_ONLY default. * MODEL_ONLY additionally requires workflow.fork_effects authorization. */ 'effect_mode': (_memoflow_v1_ForkEffectMode__Output); }