picoclaw/pkg
Hoshina 72e897f95a fix(channels): fix memory hazards in channel abstraction layer
Address 7 memory/architecture issues affecting long-running gateway
processes on embedded devices (<10MB RAM):

- Fix dispatcher busy-wait: remove select+default pattern that caused
  CPU spin after context cancellation; SubscribeOutbound handles ctx
  internally
- Add TTL janitor for typingStops/placeholders sync.Map entries to
  prevent unbounded accumulation when outbound paths fail
- Reduce queue buffers from 100 to 16 slots (~84% memory reduction)
- Optimize SplitMessage with index-based rune operations to reduce
  intermediate string/rune allocations
- Replace uuid.New() with atomic counter + random prefix for media
  scope IDs (eliminates per-call crypto/rand syscall)
- Lazy channel worker creation: defer goroutine+buffer allocation
  until channel.Start() succeeds
2026-02-24 22:30:22 +08:00
..
agent fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-23 21:34:37 +08:00
auth enable misspell 2026-02-25 21:14:19 +11:00
bus fix(channels): fix memory hazards in channel abstraction layer 2026-02-24 22:30:22 +08:00
channels fix(channels): fix memory hazards in channel abstraction layer 2026-02-24 22:30:22 +08:00
config feat(media): integrate TTL cleanup into FileMediaStore 2026-02-24 21:24:32 +09:00
constants refactor: replace bool map with set-style map for internal channels (#472) 2026-02-19 11:48:17 +01:00
cron feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
devices fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-23 21:34:37 +08:00
health refactor(channels): consolidate HTTP servers into shared server managed by Manager 2026-02-23 02:39:09 +08:00
heartbeat fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-23 21:34:37 +08:00
identity feat(identity): add unified user identity with canonical platform:id format 2026-02-23 06:56:48 +08:00
logger enable prealloc 2026-02-25 21:31:07 +11:00
media feat(media): integrate TTL cleanup into FileMediaStore 2026-02-24 21:24:32 +09:00
migrate Merge pull request #677 from yinwm/refactor/model-to-model-name 2026-02-24 19:05:40 +08:00
providers fix(providers): support per-model request_timeout in model_list (#733) 2026-02-26 19:08:19 +11:00
routing feat(identity): add unified user identity with canonical platform:id format 2026-02-23 06:56:48 +08:00
session feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
skills Perf/precompile regex (#687) 2026-02-26 20:44:03 +11:00
state feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
tools fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-23 21:34:37 +08:00
utils refactor(channels): move SplitMessage from pkg/utils to pkg/channels 2026-02-23 05:46:34 +08:00
voice feat(linter): Fix govet linter 2026-02-20 22:35:16 +02:00