wai: a ladder of timeliness fallbacks, and the reference sink scheduler #655
Loading…
Reference in a new issue
No description provided.
Delete branch "wai/timeliness-ladder-scheduler"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Timeliness gets a ladder of fallbacks, and a reference scheduler that runs a sink's plans.
The ladder (
extensions/timeliness.md§4.1, §4.2, §4.3, §5.3, §6.3, §7.3)fallbackisnull, one rung as an object, or 2 to 8 rungs as an array. Values strictly fall, and no object appears twice; a violation istimeliness_ladder_invalid(rule 3.4).by_msa sink presents the primary if it holds it, otherwise the first rung it holds. Holding neither, it statespassedand presents no rung in the primary's place from then on. It presents the primary when it first holds it, while its value is at least 1, and at the end, having presented nothing, abandons any request and statesended.The scheduler (§7.5,
wai-rs/src/timeliness/scheduler.rs)scheduler::runtakes a sink's plans and the instants it first held each object, and returnsfetch,abandon,present,passedandendedby ordered steps, as a function of those inputs alone. A later plan replaces the one in force wholly, and anything settled stays settled.plans_invalidandarrivals_invalidrefuse bad input.Verified
On a Linux build host, Rust 1.99.1, at this head:
timeliness_verify.pyderives each outcome from the text; all mutated copies fail and all weakened verifiers are caught.wai_timeliness_vectors verifyregenerates the corpus byte for byte.claim_verify.pyon the claim corpus, andhttp_verify.pyall pass.wai breaking: no unacknowledged break. The API changes are acknowledged in the entry.Limits
WAI_FEATURES, not the workflow's full union; CI runs the union.The changelog entry is
wai/changes/2026-11-05-rungs-fallback-ladder-sink-scheduler.md.🤖 Generated with Claude Code