You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(chat-flow): serialize per-chat processing, end flow on dead-leaf nodes (v1.0.3)
- processMessage now serializes per (session, chat) through a self-evicting promise
chain, closing a read->write race where two near-simultaneous messages could lose or
duplicate navigation (double greeting, resurrected leaf). The bounded invalid-path
re-process recurses on the locked body to avoid self-deadlock.
- When a config edit parks an in-flight user on a node that no longer has options, the
flow ends cleanly instead of looping "Invalid option" until the 15-minute expiry.
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ This repository provides:
35
35
| Plugin | Description | Version | Status |
36
36
| ------ | ----------- | ------- | ------ |
37
37
|[`after-hours`](./after-hours)| Auto-replies with a configurable away/closing message to messages received outside business hours. | 0.1.1 | stable |
38
-
|[`chat-flow`](./chat-flow)| Interactive, stateful auto-reply: a trigger word starts a greeting + numbered menu, replies traverse a configurable menu tree, and per-chat state expires after 15 minutes. | 1.0.2| stable |
38
+
|[`chat-flow`](./chat-flow)| Interactive, stateful auto-reply: a trigger word starts a greeting + numbered menu, replies traverse a configurable menu tree, and per-chat state expires after 15 minutes. | 1.0.3| stable |
39
39
|[`faq-bot`](./faq-bot)| Auto-replies to inbound WhatsApp messages from configurable FAQ keyword/regex rules. | 0.1.1 | stable |
40
40
|[`group-translate`](./group-translate)| Auto-translates group messages between participants' languages via a LibreTranslate backend. Configure in-chat with /tr commands. Admin-gated; disabled until enabled. | 1.0.2 | stable |
41
41
|[`gsheets-logger`](./gsheets-logger)| Logs WhatsApp message events to a Google Sheet via a service account. | 0.2.1 | stable |
Copy file name to clipboardExpand all lines: chat-flow/manifest.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
{
2
2
"id": "chat-flow",
3
3
"name": "Chat Flow",
4
-
"version": "1.0.2",
4
+
"version": "1.0.3",
5
5
"type": "extension",
6
6
"main": "dist/index.js",
7
7
"description": "Interactive, stateful auto-reply: a trigger word starts a greeting + numbered menu, replies traverse a configurable menu tree, and per-chat state expires after 15 minutes.",
Copy file name to clipboardExpand all lines: plugins.json
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -197,7 +197,7 @@
197
197
{
198
198
"id": "chat-flow",
199
199
"name": "Chat Flow",
200
-
"version": "1.0.2",
200
+
"version": "1.0.3",
201
201
"type": "extension",
202
202
"status": "stable",
203
203
"description": "Interactive, stateful auto-reply: a trigger word starts a greeting + numbered menu, replies traverse a configurable menu tree, and per-chat state expires after 15 minutes.",
0 commit comments