@brandboostinggmbh/observable-workflows 0.23.0 → 0.23.1

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
@@ -15,13 +15,19 @@ For NPM packages, changelogs are conventionally stored in a `CHANGELOG.md` file
15
15
  - The changelog file is also visible in the GitHub repository for easy reference
16
16
 
17
17
  ## [Unreleased]
18
-
19
18
  ### 🚧 Work in Progress
20
19
 
21
20
  Changes that will be included in the next release will be documented here.
22
21
 
23
22
  ---
24
23
 
24
+ ## [v0.23.1] - 2026-05-22
25
+ ### � Bug Fixes
26
+
27
+ - **`enqueueWorkflowBatch`: preserve per-workflow input when `(workflowType, initialName)` collide** — Previously, the queue message body's `input` was resolved via a content-based `workflows.find((w) => w.workflow.workflowType === p.workflowType && w.initialName === p.initialName)`, which returned the first match for every duplicate. When two or more workflows in the same batch shared both `workflowType` and `initialName`, all duplicates were enqueued with the **first** workflow's input even though their D1 rows and `instanceId`s were correctly distinct — causing silent data corruption in fan-out scenarios. Inputs are now carried through positionally on each prepared entry, which also eliminates a quadratic `find` lookup. Added regression test `tests/enqueue-batch-duplicate-name.test.ts`.
28
+
29
+ ---
30
+
25
31
  ## [v0.23.0] - 2026-03-16
26
32
 
27
33
  ### ✨ Features
package/dist/index.js CHANGED
@@ -1968,7 +1968,8 @@ function createQueueWorkflowContext(options) {
1968
1968
  triggerId,
1969
1969
  initialName,
1970
1970
  shouldQueue: !hasDependencies,
1971
- delaySeconds
1971
+ delaySeconds,
1972
+ input
1972
1973
  };
1973
1974
  }));
1974
1975
  const workflowsWithDeps = preparedWorkflows.filter((p) => !p.shouldQueue).length;
@@ -1984,7 +1985,7 @@ function createQueueWorkflowContext(options) {
1984
1985
  type: "workflow-run",
1985
1986
  workflowType: p.workflowType,
1986
1987
  workflowName: p.initialName,
1987
- input: workflows.find((w) => w.workflow.workflowType === p.workflowType && w.initialName === p.initialName)?.input,
1988
+ input: p.input,
1988
1989
  tenantId: p.tenantId,
1989
1990
  triggerId: p.triggerId,
1990
1991
  queueIdentifier: options.queueIdentifier,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brandboostinggmbh/observable-workflows",
3
- "version": "0.23.0",
3
+ "version": "0.23.1",
4
4
  "description": "My awesome typescript library",
5
5
  "type": "module",
6
6
  "license": "MIT",