$ the-wire · showcase
Gateway drain-loop deadlock fixed, QA lease leaks closed
By RepoJournal · Filed · About OpenClaw
OpenClaw fixed a zero-work drain loop in the auto-reply gateway and plugged QA lease leaks, both caused by recent policy changes.
The auto-reply gateway could stall in a zero-work drain loop after a queue drop policy change, blocking all outgoing messages. The fix preserves pending overflow summaries, records queue cap outcomes, and aligns summary lines with sources, ensuring the gateway drains correctly and no work is lost [1].
QA runs had two leak paths: isolated runs could permanently leak a channel credential lease after one transient cleanup failure, and runtime-parity runs could leave their owned lab server running while hiding the original scenario failure. The isolated-suite owner now records transport cleanup only after success, preserving the registry retry contract; the runtime-parity owner uses canonical cleanup aggregation so every owned lab stops [2].
Continuing the project-wide production LOC reduction, Telegram outbound actions, edits, forum topics, and rich-message handling now share canonical option contracts and target parsing without changing the plugin public surface [3]. Related consolidation in infra unifies platform/service path and usage rollup owners while preserving Nix/workspace ordering and all accounting [4].
Channel preview streaming now respects explicit `streaming.mode: partial` over inherited defaults in Telegram and Discord. Precedence is centralized in `src/channels/streaming.ts`: explicit channel block setting wins over eligible explicit preview modes, and the reply runner classifies item events for CLI preamble capture without leaking hidden commentary into final answers [5].
Action items
- → Update openclaw to include commit ae41dce to avoid auto-reply gateway stalls openclaw/openclaw [immediate]
- → Verify QA pipeline is using the lease-cleanup fix from PR 119442 to prevent resource leaks openclaw/openclaw [immediate]
- → Monitor Telegram and Discord preview streaming behavior after the precedence fix openclaw/openclaw [monitor]
References
- [1] fix: auto-reply gateway stalls in a zero-work drain loop after a queue drop policy change (#119331) ↗ openclaw/openclaw
- [2] fix(qa): release failed transport leases and always stop owned labs ↗ openclaw/openclaw
- [3] refactor(telegram): consolidate outbound contracts and targets ↗ openclaw/openclaw
- [4] refactor(infra): consolidate service paths and usage rollups ↗ openclaw/openclaw
- [5] fix(channels): keep preview streaming quiet and non-blocking ↗ openclaw/openclaw