Skip to content

v3.0.1

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Nov 22:44
· 2 commits to main since this release
3c934cf
  • Fix sustained underuse of the event byte share when reliable events exceed the burst. Repay bounded one-packet
    debt before the next oversized event instead of repeatedly waiting for a full bucket and clipping pump overshoot.
    Preserve state scheduling, ordered replay, protected credit, rejected-write refunds and the configured byte rate.
  • Add minute-long real-browser state-age and reliable-throughput gates against the unchanged published 2.3 baseline.
    With an explicit throughput-oriented state share of 0.075, five alternating pairs per browser/path deliver lower
    p95 draw-submission state age and at least as many reliable events in every pair. The default remains 0.5; this
    balanced setting does not retain the earlier default-share 66% age benefit. See validation/RELIABLE_PARITY.md.
  • Wire generation 5 and the application APIs are unchanged. This patch is compatible with 3.0.0 peers. Actual-game
    rendering measurements are separate from the transport comparison; no general game-FPS increase is promised.

Sustained latency with reliable throughput

80 valid trials /40 pairs. Five alternating minute-long overload pairs per browser/path, plus normal controls. Unchanged2.3 baseline; candidate state share0.075, default remains0.5.

Browser/path Workload Median p95 age before→after Paired age change Median events before→after Combined parity benefit
chromium/ws normal 59.4→60.0ms 0.9% 0→0 no
chromium/ws mixed-budget 171.8→140.9ms -18.1% 323→331 yes
chromium/rtc normal 59.5→59.9ms 0.7% 0→0 no
chromium/rtc mixed-budget 171.1→141.2ms -17.4% 323→331 yes
firefox/ws normal 60.3→60.0ms -0.5% 0→0 no
firefox/ws mixed-budget 172.7→140.4ms -18.9% 323→331 yes
firefox/rtc normal 59.7→59.4ms 0.4% 0→0 no
firefox/rtc mixed-budget 170.1→140.8ms -17.1% 323→331 yes

Before/after medians and paired median ratios are separate summaries. Age is generation to Canvas draw submission, not physical presentation. Every overload pair must improve age by≥10% beyond both clock estimates and receive at least as many ordered events.

  • Only the mixed-budget setting qualifies; this retains less freshness than the original default-share comparison.
  • Same configured primary application byte rate and burst; bounded oversized-packet debt, exempt control and mirrored datagram bytes are reported separately.
  • No universal network/device/latency guarantee. Actual-game FPS is measured separately.
  • All earlier failed pilots and a rejected state-debt prototype remain separate diagnostics; they are not pooled into these comparisons.

Raw browser evidence · Completed comparison

Actual-game rendering

CS2, Nocturne Keep and kimu completed60 primary rendering trials/30 pairs and same-session RTC reconnects, with unchanged game/rendering code and the exact changed scheduler method isolated on the client. No consistent FPS gain was demonstrated. Nocturne and kimu are near this desktop’s240Hz callback limit at native CPU speed. CS2’s large frame-rate shifts also occur with byte-identical scheduler roles, so its live A/B comparison does not establish a causal gain or regression. All negative pairs, the identical-code control and the scoped CPU-cost diagnostic remain in the evidence. These measurements used the same3.0.0 game authority for both client roles; they do not certify a changed authority’s latency.

Game results and limits · Raw game metrics · Official package file verification

The matching 3.0.1 clients and servers are now deployed for CS2, Nocturne Keep and kimu. Live movement/gameplay and same-player reconnects pass on native RTC and forced WebSocket. Their hosted game gates pass, including ten-minute reconnect/replay soaks. The attached deployed-game-acceptance-3.0.1.json records the tested sources, CI runs and functional acceptance; the separate rendering measurements do not demonstrate a repeatable FPS gain.