Skip to content

Commit edaff32

Browse files
committed
docs(workflows): document dry_run parameter on WorkflowEngine.execute
Addresses remaining Copilot review feedback on PR #2704 (comment 3303752236). The execute() signature gained dry_run in earlier commits but the docstring's Parameters section still listed only the original three. Documented: - skip-vs-side-effect semantics for step implementations - propagation into StepContext - persistence on RunState so resume() keeps preview mode across restarts - deterministic gate coercion so dry-run doesn't fall into default switch/do-while branches All 224 test_workflows tests pass.
1 parent df398b0 commit edaff32

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

‎src/specify_cli/workflows/engine.py‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -509,6 +509,16 @@ def execute(
509509
User-provided input values.
510510
run_id:
511511
Optional run ID (uses SPECKIT_WORKFLOW_RUN_ID when set, otherwise auto-generated).
512+
dry_run:
513+
Preview-only mode. When ``True``, step implementations skip
514+
side-effecting work (AI invocations, file writes) and emit a
515+
synthetic ``dry_run_message`` instead. ``dry_run`` propagates
516+
into each step's ``StepContext`` and is persisted on the
517+
resulting ``RunState`` so ``resume()`` keeps the run in
518+
preview mode across restarts. Step ``output`` shape is
519+
unchanged; downstream ``switch``/``do-while`` gates coerce
520+
any dry-run-only fields (e.g. ``output.choice``) so the
521+
preview branch is deterministic.
512522
513523
Returns
514524
-------

0 commit comments

Comments
 (0)