aboutsummaryrefslogtreecommitdiff
path: root/.ai/workflows/triage-intake.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-09 14:15:48 -0500
committerCraig Jennings <c@cjennings.net>2026-06-09 14:15:48 -0500
commit75ab07df65351f9c96738cd7efe5edacc523ac80 (patch)
treec43fb89ddcbec9dc6f207ec04e6187d867f521bb /.ai/workflows/triage-intake.org
parent627f521a2e1cc6830dc26a97251772084b708db4 (diff)
downloadrulesets-75ab07df65351f9c96738cd7efe5edacc523ac80.tar.gz
rulesets-75ab07df65351f9c96738cd7efe5edacc523ac80.zip
feat(triage-intake): add Telegram source plugin
I added a Telegram source plugin so the triage-intake sweep covers Telegram alongside Signal, cmail, Gmail, calendar, and PRs. Telegram is personal messaging, so it's a general plugin that syncs to every project. Unlike signal-cli, Telegram has no headless CLI here, so the plugin drives telega.el inside the running Emacs daemon over emacsclient. It records whether telega was already live and shuts it down only if the scan started it, leaving an active session alone. Two sharp edges are documented in the plugin: the tdlib server can SIGSEGV on the initial sync, where docker mode is the fix, and the scan reads the cached telega--chats hash so a dead server still reports unread state instead of going blank. I also added Telegram to the engine's general-plugin list.
Diffstat (limited to '.ai/workflows/triage-intake.org')
-rw-r--r--.ai/workflows/triage-intake.org2
1 files changed, 1 insertions, 1 deletions
diff --git a/.ai/workflows/triage-intake.org b/.ai/workflows/triage-intake.org
index e4d433d..265b883 100644
--- a/.ai/workflows/triage-intake.org
+++ b/.ai/workflows/triage-intake.org
@@ -48,7 +48,7 @@ The engine has no sources baked in. It discovers them by globbing *two* director
ls .ai/workflows/triage-intake.*.org .ai/project-workflows/triage-intake.*.org 2>/dev/null
#+end_src
-- =.ai/workflows/triage-intake.*.org= — *general* source plugins, template-synced (personal Gmail, personal calendar, cmail/Proton, Signal, personal GitHub PRs).
+- =.ai/workflows/triage-intake.*.org= — *general* source plugins, template-synced (personal Gmail, personal calendar, cmail/Proton, Signal, Telegram, personal GitHub PRs).
- =.ai/project-workflows/triage-intake.*.org= — *PROJECT-SPECIFIC* source plugins, never synced, owned by this project (e.g. a work project's Linear, work Gmail, work Slack, enterprise-GitHub PRs).
⚠ *THE #1 FAILURE MODE — read this twice.* Globbing only =.ai/workflows/= and silently missing every project plugin. If you skip =.ai/project-workflows/=, the sweep runs with *half its sources* and Craig never learns what it dropped — the omission is invisible, because a missing source looks identical to a quiet source in the output. There is no error, no empty block, no warning. The sweep just lies by omission. *Glob both directories. Always.*