• v4.5.2 1deb907b76

    v4.5.2 — Chat ping parsing fixes
    All checks were successful
    CI / build-and-test (push) Successful in 1m30s
    Stable

    joeyr released this 2026-09-05 22:43:10 -05:00 | 19 commits to main since this release

    Fixed

    • Chat pings were dropped from 10:00 game time onward. Tesseract routinely
      splits a two-digit minute with a stray space, reading 13:03 as 1 3:03 —
      3 of 11 lines in one measured live capture. The timestamp pattern required the
      separator to follow the minute digits immediately, so every one of those lines
      failed to match and was discarded.

      The failure was invisible in the worst way: a dropped line is indistinguishable
      from a line that was never a ping, so nothing logged and nothing surfaced. It
      also hid behind early-game testing — a clock like 00:13 has a single minute
      digit and survives, which is exactly why the first verified pings (Vex Flash at
      0:13 and 0:20) worked while a later one did not.

      The digit groups now admit internal spaces and strip them before the value is
      read, with the seconds still required to be exactly two digits so a greedy
      match cannot run into the sender's name. Regression tests use verbatim
      tesseract output rather than idealized strings.

    • The verbose ping phrasing was dropped. League emits more than one wording,
      and both turn up in the same game one second apart:

      06:28 JRendar (Amumu): Malphite Flash
      06:28 JRendar (Amumu): Cho'Gath used Flash
      

      Everything before the spell was treated as the champion name, so the second
      line asked the roster for a champion called "Cho'Gath used" and silently
      dropped a real ping — visible on screen as one tracked Flash where two were
      called. Connective words (used, uses, has, just) are now stripped from
      the end of the champion candidate, never the start, so a champion whose name
      legitimately contains one is unaffected.

    Changed

    • OCR latency measured at ~900ms per pass against a 2s poll, so the cadence has
      room and is unchanged. Worth recording because the wrong diagnosis here was
      tempting: chat lines fade after ~10s, which makes "we polled too slowly" a
      plausible-sounding but incorrect explanation for a missed ping.
    Downloads