picoclaw/pkg
ex-takashima e4d3650005 feat(media): integrate TTL cleanup into FileMediaStore
Add background TTL-based cleanup (L2 safety net) directly into
FileMediaStore so file deletion and in-memory ref removal happen
atomically under the same mutex, preventing dangling references.

- Add storedAt timestamp and refToScope reverse map to mediaEntry
- Add CleanExpired() for atomic TTL-based expiration
- Add Start()/Stop() for background goroutine lifecycle
- Add MediaCleanupConfig (enabled, max_age, interval) to config
- Wire up in cmd_gateway.go with config-driven defaults
- Add 8 new tests including concurrent cleanup safety

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 21:24:32 +09:00
..
agent fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-24 12:10:45 +08:00
auth feat(fmt): Fix formatting 2026-02-20 20:03:11 +02:00
bus fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-24 12:10:45 +08:00
channels chore: apply PR #697 comment translations to refactored channel subpackages 2026-02-24 12:19:04 +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-24 12:10:45 +08:00
health refactor(channels): consolidate HTTP servers into shared server managed by Manager 2026-02-24 12:10:45 +08:00
heartbeat fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-24 12:10:45 +08:00
identity feat(identity): add unified user identity with canonical platform:id format 2026-02-24 12:10:45 +08:00
logger fix: align Docker Go version with go.mod and optimize logger (#596) 2026-02-24 08:52:16 +11:00
media feat(media): integrate TTL cleanup into FileMediaStore 2026-02-24 21:24:32 +09:00
migrate feat: add native Mistral AI provider support 2026-02-22 11:40:21 +04:00
providers fix: remove extra fields from ToolCall JSON serialization 2026-02-22 11:40:21 +04:00
routing feat(identity): add unified user identity with canonical platform:id format 2026-02-24 12:10:45 +08:00
session feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
skills translate Chinese comments 2026-02-24 10:27:49 +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-24 12:10:45 +08:00
utils refactor(channels): move SplitMessage from pkg/utils to pkg/channels 2026-02-24 12:10:45 +08:00
voice feat(linter): Fix govet linter 2026-02-20 22:35:16 +02:00