hive-c0re + docs: extract scheduled_prompts prose (#715 batch 2)

This commit is contained in:
damocles 2026-05-31 17:07:57 +02:00 committed by mara
commit 50879cea5a
2 changed files with 23 additions and 42 deletions

View file

@ -125,6 +125,14 @@ kind-specific payload carrier.
inbox messages to each target at the scheduled time, recurring
when `interval_seconds` is set.
### Scheduled prompt worker (catch-up clamp)
When hive-c0re comes back from being down, the worker sees rows whose `next_fire_at_unix` is well in the past. For recurring rows that would mean firing N delayed pulses in a row — spammy and useless. Instead the worker fires **once** per row and bumps `next_fire_at_unix` to the next interval slot ≥ `now`, recording how many cycles were skipped in `last_result` (per-target). Operators see "fired late, caught up from 17 skipped" instead of 17 wake-up storms.
One-shot rows fire once (if past due, on the next worker pass) and are deleted by the worker; recurring rows survive until cancelled.
`targets` is its own table (`scheduled_prompt_targets`) so partial cancellation flips a single row and the dashboard can show last-fired / last-result per recipient. Cancelling every target reaps the parent row on the next worker pass.
### Destroy semantics
`HostRequest::Destroy { name, purge }` is the lifecycle tear-down,