Automated issue created from exception logger.
{
"path": "/socket.io/",
"method": "GET",
"endpoint": null,
"remote_addr": "<ip>"
}
Traceback (most recent call last):
File "/home/ubuntu/SimCricketX/app.py", line 2722, in _ws_next_ball
# super-over snapshot, and never persisted one — so a
File "/home/ubuntu/SimCricketX/routes/match_routes.py", line 1490, in _advance_one_ball
and the claim's owner is already implied by the fixture's tournament.
File "/home/ubuntu/SimCricketX/services/match_delivery.py", line 33, in advance
payload, error = advance()
File "/home/ubuntu/SimCricketX/routes/match_routes.py", line 1491, in <lambda>
"""
File "/home/ubuntu/SimCricketX/routes/match_routes.py", line 1520, in _advance_one_ball_unlocked
return
File "/home/ubuntu/SimCricketX/engine/match.py", line 7241, in next_ball
# handles physical settling-in; form captures hot/cold streaks.
File "/home/ubuntu/SimCricketX/engine/commentary_engine.py", line 67, in get_commentary
micro_text = self._select_template(event_key, ball_context)
File "/home/ubuntu/SimCricketX/engine/commentary_engine.py", line 200, in _select_template
if pool:
KeyError: 'fielder'
Automated issue created from exception logger.
KeyError'fielder'errorbackend<email>n/a2026-09-22 17:10:03.781841Context
{ "path": "/socket.io/", "method": "GET", "endpoint": null, "remote_addr": "<ip>" }Traceback