Skip to content

Commit a1e1495

Browse files
committed
Document that retiring a workflow unbinds it from state
Verified by driving the installed console script against a live instance: `destroy` (retire tier) drops the state binding, so a subsequent `apply` of the same source creates a second workflow rather than reclaiming the retired one, leaving two same-named workflows with one inert. That follows from the state file being the identity link and is the correct behaviour for a command called destroy, but it surprises people. Document it, and point at the alternative -- set active=False in source and apply -- for the "turn this off for now" case, which keeps the binding intact.
1 parent e4b9de9 commit a1e1495

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

‎README.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,12 @@ So `destroy` has two tiers: the default *retires* a workflow (deactivates it and
174174
your state file, leaving it inert on the instance), and `--hard` deletes it, which is
175175
irreversible and cascades to execution history.
176176

177+
Retiring unbinds identity, so **a later `apply` of the same source creates a second workflow
178+
rather than reclaiming the retired one.** You end up with two same-named workflows, one inert.
179+
That follows from the state file being the identity link, but it surprises people. If you meant
180+
"turn this off for now", set `active=False` in your source and `apply` — that keeps the binding.
181+
Use `destroy` when you mean it.
182+
177183
## Determinism
178184

179185
Compiling the same source twice produces **byte-identical** JSON, on any machine, under any

0 commit comments

Comments
 (0)