aboutsummaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-27 22:21:28 -0500
committerCraig Jennings <c@cjennings.net>2026-05-27 22:21:28 -0500
commit0aa21f770f3908b4ec36ebee865498c3bd530dc7 (patch)
tree12de10e14ea31e5d02bfb4276ecf950feaa2d11f /todo.org
parent99332d9c13f4ab49ca2cc9af6feddabeb30e1c4e (diff)
downloaddotemacs-0aa21f770f3908b4ec36ebee865498c3bd530dc7.tar.gz
dotemacs-0aa21f770f3908b4ec36ebee865498c3bd530dc7.zip
chore(todo): tag deferred Signal follow-ups :no-sync:
The wrap-up's sync-child-priority pass bumped two intentionally-deprioritized children of the Signal parent: the [#C] handle-error leak and the [#D] groups vNext. Both are deliberate. The leak is bounded by the stop/start clrhash and the groups task is explicitly post-1:1-stability, so I tagged them :no-sync: to stick at their chosen priorities across future wrap-ups.
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org4
1 files changed, 2 insertions, 2 deletions
diff --git a/todo.org b/todo.org
index 6c90b230..edd644a5 100644
--- a/todo.org
+++ b/todo.org
@@ -56,7 +56,7 @@ Installed signal-cli 0.14.4.1 (AUR; imported AsamK's signing key FA10826A... to
*** 2026-05-27 Wed @ 21:55:57 -0500 Added JSON-RPC success-result dispatch in the signel fork
Fork commit 4740d97 added =signel--request-handler-map= (id → success callback), extended =signel--send-rpc= with an optional =success-callback= that registers under the new request id, and gave =signel--dispatch= a result branch that invokes the callback and removes the handler. Error responses also remhash the handler entry, and =signel-start= / =signel-stop= both =clrhash= the map so reconnect is reliably empty. Backward-compatible: existing callers that don't pass a callback hit the same code path as before. Five ERT tests in this project (=tests/test-signel-rpc-dispatch.el=, dotemacs commit bfec0eab) lock the contract: Normal (result invokes callback + cleanup, send-rpc registers), Boundary (unknown id is a no-op), Error (error response cleans up handler), reconnect (=signel-stop= empties the map). Refactor audit surfaced a separate pre-existing leak in =signel--handle-error= (request-buffer-map entries aren't removed on error); filed as the [#C] follow-up below.
-*** TODO [#C] signel--handle-error leaks request-buffer-map entries :bug:
+*** TODO [#C] signel--handle-error leaks request-buffer-map entries :bug:no-sync:
Surfaced during the JSON-RPC dispatch refactor audit. =signel--handle-error= reads =signel--request-buffer-map= by id but never =remhash='es the entry, so every error response leaves the request-id → buffer-name mapping behind for the life of the process. Low impact (the map clears on stop/start, and id collisions are unlikely at the counter scale), but unbounded growth in a long-lived session and inconsistent with how the new request-handler-map is cleaned up on error.
*** TODO [#B] Notify only for the unviewed conversation :feature:
@@ -71,7 +71,7 @@ Fork commit 5ec56c0 added =signel--pending-input= (capture from input-marker to
*** 2026-05-27 Wed @ 22:08:40 -0500 use-package wired with C-; M keymap and local account config
=use-package signel :load-path "~/code/signel" :ensure nil= already wired earlier with =signel-auto-open-buffer nil=. Account source is =signel-account= set from =cj/signal-private-config-file= (=signal-config.local.el=, gitignored) loaded in =:config=, decided in the workflow spec. Keymap prefix =C-; M= attached via =with-eval-after-load 'keybindings= so the binding survives load-order.
-*** TODO [#D] Include Signal groups in the picker :feature:
+*** TODO [#D] Include Signal groups in the picker :feature:no-sync:
vNext after the 1:1 initiate-message flow is stable. Merge =listGroups= with =listContacts=, label groups distinctly, and preserve the current v1 behavior where the picker is contacts-only.
*** 2026-05-26 Tue @ 15:15:43 -0500 Candidate Signal clients / CLIs