You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Summary
`idle-flush-secs` already provides time-based settlement, but its docs
described it as an inactivity timer ("settle a partial batch after this
many seconds without a new block"). The implementation never resets the
deadline when blocks arrive mid-window, so it is actually a **max
interval between settlements**: a batch settles when it reaches
`batch-size` blocks or when `idle-flush-secs` have elapsed since its
first pending block — whichever comes first — meaning even a single
block produced in the window settles on time. This PR corrects the docs
to state that contract and adds run-loop tests that pin it. No behavior
change; the config key keeps its name.
## Changes
- `chain-spec` / `settlement`: corrected doc comments on
`SettlementRuntime.idle_flush_secs` and
`SettlementConfig.idle_flush_interval`, plus stale in-loop comments in
the settlement worker.
- New paused-clock tests drive `Worker::run` end to end: a lone pending
block settles once the interval elapses, and blocks arriving mid-window
don't push the deadline back (settlement happens ~interval after the
window opens, not after the last block). Adds `katana-db` as a
dev-dependency to advance the chain head via direct table writes.
- `docs/tee-deployment.md`: config snippet comments updated to the
accurate semantics.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
0 commit comments