Skip to content

Commit 7eda583

Browse files
committed
Add success->pending transition via refresh()
If a success job's key is still in key_source but the target entry was deleted, refresh() will transition it back to pending.
1 parent 3018b8f commit 7eda583

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

docs/src/design/autopopulate-2.0-spec.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,13 +146,14 @@ stateDiagram-v2
146146
reserved --> [*] : complete()\n[if not keeping completed]
147147
reserved --> success : complete()\n[if keeping completed]
148148
reserved --> error : error()
149+
success --> pending : refresh()\n[if key in key_source]
149150
error --> [*] : delete()
150151
success --> [*] : delete()
151152
ignore --> [*] : delete()
152153
```
153154

154155
**Transition methods:**
155-
- `refresh()` — Adds new jobs as `pending` (from `key_source - target - jobs`)
156+
- `refresh()` — Adds new jobs as `pending`; also re-pends `success` jobs if key is in `key_source` but not in target
156157
- `ignore()` — Marks a key as `ignore` (can be called on keys not yet in jobs table)
157158
- `reserve()` — Marks a pending job as `reserved` before calling `make()`
158159
- `complete()` — Marks reserved job as `success`, or deletes it (based on `jobs.keep_completed` setting)

0 commit comments

Comments
 (0)