When a compressed packet declares an originalSize larger than FileTransferLimits.maxFramedFileBytes (~1.13 MiB), BinaryProtocol.decodeCore returns nil with no log.
The suspicious-compression-ratio guard (right next to it) already logs a warning. Because of this inconsistency, legitimate large compressed messages sent from Android (which allows up to 10 MiB expanded size) are silently dropped on iOS with nothing visible on either side.
This makes #1618 much harder to diagnose in the field.
Steps to reproduce:
On Android, construct/send a compressed message whose declared expanded size is between ~1.13 MiB and 10 MiB (still within Android’s limit and the shared 50 000:1 ratio guard). Receive it on iOS. Observe: the message never appears and there is no log entry explaining why it was rejected. (Alternatively) Unit test path: the existing oversizedPayloadIsRejected test already proves the packet is refused; before this change there was simply no log. Fix status: I pushed the fix to your fork on branch:
fix/log-oversized-compressed-payload
Commit: adds a SecureLogger.warning that records the declared size and the ceiling. Behavior is unchanged (packet still rejected).
Activity
21😄👍 内存占用在长跑场景如何
热更新支持吗,开发体验怎样 👍
API 设计很直觉,上手快 🧠📌⚙️
希望能加个最小可运行示例 💡📌📌
SSR/CSR 切换有没有闪烁 🧪🔥
🙌🧪 版本语义化遵守得严格吗
📦⚙️ 密钥管理别写死在仓库里啊
🔥😄👍 观测性方面推荐接哪类指标
✨✨ 时区统一用 UTC 吗
想问下生产环境怎么做降级兜底 🔥⭐
🔥 Mock 和服务虚拟化怎么选
✨📌 国际化文案抽离得干净吗
🙌🤝 版本语义化遵守得严格吗
💡🚀💡 性能瓶颈一般在 IO 还是 CPU
✨👍🙌 结构化输出强制 JSON 稳不稳
缓存失效策略怎么选比较稳 🧠
🧪 异步写法很干净,学习了
✨⚙️📌 回滚预案写在 runbook 里了吗
⚙️ 想贡献 PR,从哪块入手合适
the originalSize / per-type ceilings started logging in #1719. the remaining silent path was the frame-wide payloadLength guard — covered by #1723 (warning level, same as the ratio guard).
🧠 token 成本有没有做过粗算