@totalreclaw/totalreclaw 3.3.1-rc.12 → 3.3.1-rc.13

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
@@ -4,6 +4,39 @@ All notable changes to `@totalreclaw/totalreclaw` (the OpenClaw plugin) are docu
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [3.3.1-rc.13] — 2026-04-24
8
+
9
+ Coordinated version bump with Python `2.3.1rc13`. No substantive
10
+ changes to the plugin's own TypeScript — the rc.13 fix lands on the
11
+ Hermes-side (`python/src/totalreclaw/hermes/pair_tool.py`) where the
12
+ asyncio lifecycle regression lived. We keep plugin + Python RC
13
+ numbers in lockstep so the release-pipeline tracker and
14
+ `qa-totalreclaw` skill carry both artifacts through QA as one
15
+ bundle.
16
+
17
+ See the corresponding entry in `python/CHANGELOG.md` for the full
18
+ design: the relay-pair WebSocket is now owned by a dedicated worker
19
+ thread (with its own event loop) so it survives the Hermes
20
+ tool-invocation loop teardown that destroyed the rc.10–rc.12 waiter
21
+ mid-recv and caused every pair attempt to 502.
22
+
23
+ The relay-served production pair page is also replaced with the
24
+ rc.13 wizard UX — a typeform-style 3-step flow (PIN → phrase → done)
25
+ mirroring the `docs/mockups/rc13-pair-wizard/` design. This lands in
26
+ the `totalreclaw-relay` repo PR, not here, but surfaces to every
27
+ OpenClaw user via the default relay pair flow.
28
+
29
+ ### Plugin local-mode pair page
30
+
31
+ `skill/plugin/pair-page.ts` (the local-mode fallback served when a
32
+ user sets `TOTALRECLAW_PAIR_MODE=local`) retains its rc.10–rc.12 UX
33
+ shape. The wizard UX port for this file is deferred to rc.14 pending
34
+ a design decision on whether to share a single CSS+JS asset across
35
+ all three pair pages (relay / Python local / plugin local) or keep
36
+ them independently inlined. Local-mode is rarely exercised — the
37
+ plugin defaults to the relay flow via the Hermes Python sidecar and
38
+ only falls back here for air-gapped setups.
39
+
7
40
  ## [3.3.1-rc.12] — 2026-04-23
8
41
 
9
42
  **Ship-stopper fix for rc.11.** The relay-served pair page's submit
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@totalreclaw/totalreclaw",
3
- "version": "3.3.1-rc.12",
3
+ "version": "3.3.1-rc.13",
4
4
  "description": "End-to-end encrypted, agent-portable memory for OpenClaw and any LLM-agent runtime. XChaCha20-Poly1305 with protobuf v4 + on-chain Memory Taxonomy v1 (claim / preference / directive / commitment / episode / summary).",
5
5
  "type": "module",
6
6
  "keywords": [
package/pair-page.ts CHANGED
@@ -5,6 +5,17 @@
5
5
  * the URL fragment (`#pk=...`), runs the client-side pairing flow
6
6
  * ENTIRELY in the browser, and POSTs the encrypted payload back.
7
7
  *
8
+ * rc.13 status: this OpenClaw-plugin local-mode page has NOT been
9
+ * ported to the wizard UX used by the relay (production) and the
10
+ * Python local-mode pages. Local-mode on the OpenClaw plugin is rarely
11
+ * exercised — the plugin defaults to a relay flow via the Hermes
12
+ * Python sidecar and only falls back here for air-gapped setups. The
13
+ * wizard UX port for this file is tracked for rc.14 alongside the
14
+ * design decision on whether to share a single CSS+JS asset across
15
+ * all three pair pages (relay / Python / plugin) or keep them
16
+ * independently inlined. For now, this file retains its rc.10–rc.12
17
+ * UX shape and the rc.12 AES-GCM cipher swap.
18
+ *
8
19
  * Brand tokens imported from the v5b.html public site (colors, font
9
20
  * stack). Typography falls back to system fonts for mobile parity —
10
21
  * we don't ship Euclid Circular A bytes over the pairing HTTP surface.