openclaw-threema 0.6.5 → 0.6.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.7 (2026-05-04)
4
+
5
+ ### Added
6
+ - **Inbound Message Coalescing Infrastructure (Single-Flight)**: Foundational code to prevent multiple parallel Reply-Cycles when users send related messages (text + file) as separate webhooks.
7
+ - Per-sender state tracking with 3-second coalesce window (`COALESCE_WINDOW_MS`).
8
+ - Automatic flush at 5 parts or window expiry (`COALESCE_MAX_PARTS`).
9
+ - Part merging logic: combines text+file into single inbound context.
10
+ - Queue support for parts arriving during in-flight dispatch.
11
+ - Integration points ready in text handler (~line 2352) and file handler (~line 2576).
12
+
13
+ ### Status
14
+ - Coalescing infrastructure complete and TypeScript-compiled.
15
+ - Integration into dispatch handlers deferred to main agent (pragmatic approach to minimize refactoring risk).
16
+ - All integration points documented in `/workspace/scout-reports/threema-coalescing-v0.6.7.md`.
17
+
18
+ ## 0.6.6 (2026-05-04)
19
+
20
+ ### Added
21
+ - **Idempotency Cache for Webhook Replay Protection**: Implements replay-attack protection against Threema webhook retries.
22
+ - New message-ID deduplication mechanism with configurable TTL (24h) and cache size (500 entries max).
23
+ - Automatic pruning of expired entries during check.
24
+ - Disk persistence via `~/.openclaw/extensions/threema/.idempotency-cache/messageids.json` to survive plugin reloads.
25
+ - Throttled writes (max 1 per 5 seconds) to prevent excessive I/O.
26
+ - Prevents duplicate processing when Threema Gateway retries a failed webhook delivery.
27
+ - Solves the issue where Plugin reloads during `npm publish` + temporary 5xx errors could cause the same message to be processed twice.
28
+
3
29
  ## 0.6.5 (2026-05-04)
4
30
 
5
31
  ### Added