@onlineapps/cookbook-router 1.0.34 → 1.0.36
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/README.md +1 -1
- package/package.json +2 -6
- package/src/queueManager.js +13 -2
package/README.md
CHANGED
|
@@ -207,7 +207,7 @@ The router distinguishes between retryable and non-retryable errors:
|
|
|
207
207
|
|
|
208
208
|
- `@onlineapps/cookbook-core` - Core parsing and validation
|
|
209
209
|
- `@onlineapps/cookbook-executor` - Workflow execution engine
|
|
210
|
-
<!-- cookbook-transformer removed in operations.json-first migration; see /api/docs/
|
|
210
|
+
<!-- cookbook-transformer removed in operations.json-first migration; see /api/docs/biz/30-operations/registration-wire.md -->
|
|
211
211
|
- `@onlineapps/connector-cookbook` - Full-featured wrapper
|
|
212
212
|
|
|
213
213
|
## License
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onlineapps/cookbook-router",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.36",
|
|
4
4
|
"description": "Message routing for cookbook workflows - handles service discovery and queue routing",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -18,11 +18,7 @@
|
|
|
18
18
|
],
|
|
19
19
|
"author": "OnlineApps",
|
|
20
20
|
"license": "PROPRIETARY",
|
|
21
|
-
"dependencies": {
|
|
22
|
-
"@onlineapps/conn-infra-mq": "1.1.70",
|
|
23
|
-
"@onlineapps/conn-orch-registry": "1.2.1",
|
|
24
|
-
"@onlineapps/cookbook-core": "2.1.16"
|
|
25
|
-
},
|
|
21
|
+
"dependencies": {},
|
|
26
22
|
"devDependencies": {
|
|
27
23
|
"jest": "^29.7.0"
|
|
28
24
|
},
|
package/src/queueManager.js
CHANGED
|
@@ -129,8 +129,19 @@ class QueueManager {
|
|
|
129
129
|
this.mqClient.ack(message);
|
|
130
130
|
} catch (error) {
|
|
131
131
|
logger.error(`Error processing message from ${queueName}:`, error);
|
|
132
|
-
// Reject message without requeue
|
|
133
|
-
|
|
132
|
+
// Reject message without requeue.
|
|
133
|
+
//
|
|
134
|
+
// The signature is `nack(msg, options)`, NOT amqplib's raw
|
|
135
|
+
// `nack(msg, allUpTo, requeue)`. This call read
|
|
136
|
+
// `nack(message, false, false)` until 2026-08-28: `false` arrived as
|
|
137
|
+
// `options`, `false.requeue` is `undefined`, and the client defaults an
|
|
138
|
+
// undefined `requeue` to TRUE
|
|
139
|
+
// (`@onlineapps/mq-client-core/src/transports/rabbitmqClient.js:2252`).
|
|
140
|
+
// Every message whose handler threw was therefore requeued forever
|
|
141
|
+
// instead of being discarded — the exact opposite of what the line above
|
|
142
|
+
// it claimed. Measured against the live broker: one publish produced 5
|
|
143
|
+
// deliveries in 1.2 s and kept going.
|
|
144
|
+
this.mqClient.nack(message, { requeue: false });
|
|
134
145
|
}
|
|
135
146
|
};
|
|
136
147
|
|