feat: Add metro transit, gadgets, shop, social apps, and traffic models checkpoint

This commit is contained in:
CAtlas0784 committed 2026-10-29 01:55:01 +07:00
1 parent caa42b84ed
commit 74e2963a12
79 files changed
+527962 -496

No files matched your search

@@ -38,7 +38,21 @@ internal static class RpcFrameDispatcher
if (frame.Mode == 0x09)
{
await router.DispatchAsync(session, frame, cancellationToken);
// Last-resort containment: the router already catches handler/fallback errors,
// but anything that still escapes here must only cost this one frame — an
// exception propagating to the TCP loop closes the session (client: Reconnecting).
try
{
await router.DispatchAsync(session, frame, cancellationToken);
}
catch (OperationCanceledException)
{
throw;
}
catch (Exception ex)
{
session.Log.Error($"dispatch survived frame mode=0x{frame.Mode:X2} (session kept)", ex);
}
return;
}