世界 f57eff33bb ccm,ocm: fix WS push lifecycle, deduplicate rate_limits, stabilize reset aggregation
- Add closed channel to webSocketSession for push goroutine shutdown
  on connection close, preventing session leak and Service.Close() hang
- Intercept upstream codex.rate_limits events instead of forwarding;
  push goroutine is now the sole sender of aggregated rate_limits
- Emit status updates on reset-only changes (fiveHourResetChanged,
  weeklyResetChanged) so push goroutine picks up reset advances
- Skip expired resets (hours <= 0) in aggregation instead of clamping
  to now, avoiding unstable reset_at output and spurious status ticks
- Delete stale upstream reset headers when aggregated reset is zero
- Hardcode "codex" identifier everywhere: handleWebSocketRateLimitsEvent,
  buildSyntheticRateLimitsEvent, rewriteResponseHeaders
- Remove rewriteWebSocketRateLimits, rewriteWebSocketRateLimitWindow,
  identifier tracking (TypedValue), and unused imports
2026-03-17 20:00:54 +08:00
2026-03-15 17:56:37 +08:00
2026-02-26 14:13:32 +08:00
2026-03-14 21:38:38 +08:00
2026-03-15 17:56:37 +08:00
2026-03-15 17:57:53 +08:00
2026-03-01 12:30:43 +08:00
2026-02-27 14:58:06 +08:00
2025-07-08 13:14:43 +08:00
2026-02-15 21:10:44 +08:00
2024-02-24 13:20:27 +08:00
2026-02-26 14:13:32 +08:00
2025-04-29 20:45:19 +08:00
2023-12-29 18:00:40 +08:00
2023-12-29 18:00:40 +08:00
2026-02-26 14:13:32 +08:00
2023-03-27 08:20:51 +08:00

Sponsored by Warp, built for coding with multiple AI agents

Warp sponsorship

sing-box

The universal proxy platform.

Packaging status

Documentation

https://sing-box.sagernet.org

License

Copyright (C) 2022 by nekohasekai <contact-sagernet@sekai.icu>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

In addition, no derivative work may use the name or imply association
with this application without prior consent.
S
Description
No description provided
Readme 52 MiB
Languages
Go 97.2%
Shell 1.6%
Objective-C 0.8%
Makefile 0.2%
C 0.2%