Advice Latency - Gidntsquia/deadlock-street-brawl-helper GitHub Wiki
Advice latency
Target: advice drawn within 400 ms of the last card landing (the first frame all three card circles hold a card, logged as card.land), judged per draft on the median of 3 headless runs. The earlier measure, ms from appear, includes the up to 1.5 s the game spends dealing the cards, which no reader can shorten. Icon branch: text only (a card's item comes from its name line; no icon read decides anything).
Run: 2026-10-14 09:23 US Eastern (3 runs), machine Jaxon-PC (Intel i7-10700KF, 16 threads), commit 4a42e05 plus the covered-line change (committed as 647677b), host load at run start/end 19->31 %, 28->27 %, 23->12 %.
Result: PASS. 26 of 26 drafts pass on the median, 0 wrong, from last card max 638 ms (s8 d024, a covered set that shows ? on one slot), median 168 ms. Summary: win:latency 2026-10-14T13:23:24.808Z 4a42e05+dirty: 3 run(s), 78 rows, 74 rows <= 400 ms from last card, 26/26 drafts pass (median), from last max 638 ms, median 168 ms, 0 wrong, load 19->31 % 28->27 % 23->12 %. PASS
Columns: old = ms from appear in the old app; last = ms from appear to the last card landing; best/med/worst = ms from the last card over the 3 runs; ocr and settl = median OCR round trip and settle time.
set label items old last best med worst ocr settl verdict
s0 d002 Infuser, Cheat Death, Mystic Reverb 2750 846 110 110 114 130 0 ok
s1 d003 Superior Cooldown, Warp Stone, Surge of Power 2500 817 174 186 229 220 88 ok
s1 d004 Counterspell, Tesla Bullets, Express Shot 3750 773 110 121 138 73 6 ok
s1 d005 Boundless Spirit, Crushing Fists, Silencer 2500 733 263 307 314 34 0 ok (covered slot ?)
s2 d006 Ricochet, Healing Tempo, Transcendent Cooldown 7000 1034 61 70 93 137 0 ok
s2 d007 Lightning Scroll, Ricochet, Runed Gauntlets 4000 1142 243 248 249 103 0 ok
s2 d007 Boundless Spirit, Crippling Headshot, Eternal Gift 2750 1035 234 240 316 115 0 ok
s2 d008 Colossus, Indomitable, Mystic Reverb 4750 847 178 183 190 72 7 ok
s3 d009 Extra Spirit, Mystic Burst, Mystic Regeneration 2250 653 238 238 255 104 0 ok
s3 d010 Active Reload, Bullet Lifesteal, Decay 2250 943 116 128 129 77 0 ok
s3 d011 Spirit Snatch, Spirit Rend, Heroic Aura 2750 1148 102 176 177 141 0 ok
s4 d013 Lifestrike, Spirit Resilience, Metal Skin 2250 866 117 128 130 107 12 ok
s4 d014 Toxic Bullets, Counterspell, Healing Nova 2250 901 122 176 178 114 0 ok
s5 d015 Quicksilver Reload, Enchanter's Emblem, Return Fire 2750 783 241 363 571 274 238 ok
s5 d016 Escalating Resilience, Dispel Magic, Tesla Bullets 4500 -78 117 121 130 105 13 ok
s5 d017 Indomitable, Scourge, Juggernaut 1750 797 105 127 167 83 6 ok
s6 d019 Escalating Resilience, Weapon Shielding, Healbane 1750 735 117 144 185 169 9 ok
s6 d020 Inhibitor, Hollow Point, Healing Nova 2000 712 298 321 332 183 0 ok
s7 d021 Healing Booster, Trophy Collector, Bullet Resist Shr 2750 347 189 211 263 173 64 ok
s7 d022 Shadow Weave, Torment Pulse, Toxic Bullets 2250 808 114 121 122 76 11 ok
s7 d023 Burst Fire, Alchemical Fire, Rapid Recharge 2000 914 104 114 133 99 8 ok
s8 d024 Spirit Shredder, Spirit Sap, Melee Charge 2250 -167 520 590 638 177 0 ok (covered slot ?)
s8 d025 Heroic Aura, Spirit Resilience, Superior Duration 4000 810 118 119 134 95 7 ok
s8 d026 Spiritual Overflow, Witchmail, Crippling Headshot 2250 682 168 177 189 59 0 ok
s9 d027 Heroic Aura, Spirit Rend, Superior Cooldown 2750 1516 52 60 116 99 7 ok
s9 d028 Escalating Exposure, Juggernaut, Frenzy 1750 872 109 131 174 128 0 ok
Release 0.5.0 (2026-10-15): both recordings and slow PCs
Rows s10 to s13 come from the 2026-10-15 recording (four Infernus drafts, 1280x720); s0 to s9 from 2026-10-09.
npm run win:latency plays the recording each stretch names. Median of 3 runs on a quiet host (load under 4):
| Run | Drafts passing | Max from last card | Median | Wrong |
|---|---|---|---|---|
| normal | 38/38 | 851 ms (covered set s8 d024) | 169 ms | 0 |
--slow 2 |
50/50 | 909 ms | 171 ms | 0 |
--slow 4 |
50/50 | 847 ms | 178 ms | 0 |
--slow N pins the app to N times fewer cores at below-normal priority. The bar at --slow 4: 0 wrong, every set advised
(a ? on a covered slot counts), every row under 1000 ms from the last card; the harness exits 1 when a row misses it
(--bar-ms tightens it). A slow PC sees plates within about a second, and grey ? plates that fill in are normal.