@walkeros/core 4.8.1 → 4.8.3-next-1793115089237

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
@@ -1,5 +1,101 @@
1
1
  # @walkeros/core
2
2
 
3
+ ## 4.8.3-next-1793115089237
4
+
5
+ ### Patch Changes
6
+
7
+ - 34fd225: The mapping rule descriptions shown in property tables and
8
+ `package_get` now match the behaviour: a `condition` that returns false moves
9
+ on to the next rule, `batch` works only on a destination with `pushBatch`,
10
+ `extend` applies only in `@walkeros/transformer-ga4`'s `settings.mapping`, and
11
+ the `mappingKey` and batch `key` examples are `"product view"`.
12
+ - 5313635: A destination package can publish `examples.minimal` from
13
+ `src/examples/minimal.ts` (`MINIMAL_EXAMPLE_FILE`): the settings it needs to
14
+ deliver, credentials named as secrets. `composeQuickstart` from
15
+ `@walkeros/core/dev` turns it into the install line, the integrated code and a
16
+ complete flow reading each credential as `$secret`, and throws when they
17
+ cannot be built. `packageMetaOf` writes a package's `$meta`, a single platform
18
+ as a list.
19
+ - 5313635: Schema descriptions now match the behaviour: `setup` on destinations,
20
+ stores and flow steps runs only through `walkeros setup`; an event cache's
21
+ `stop` defaults to true on sources, and `update` changes only a source's
22
+ response, on HIT and MISS. They appear in the flow JSON Schema and in MCP.
23
+ - 5313635: The source config descriptions of `require`, `setup` and `ingest` now
24
+ match the behaviour: `require` delays only `on()` calls, not init or event
25
+ capture; `setup` runs only through `walkeros setup`; `ingest` resolves against
26
+ the normalized request scope of server sources.
27
+ - 5313635: `@walkeros/core/dev` exports `toSerializable`, which turns a value
28
+ into what `walkerOS.json` publishes: functions become `{ $code }` objects with
29
+ their source text, Zod schemas are left out, and everything else is copied.
30
+ The package build and the step example runner both use it, so tests run what
31
+ is published.
32
+ - 5313635: The sample events from `getEvent` now use the standard event names:
33
+ `checkout start` replaces `checkout view`, an order carries `tax` and `total`,
34
+ a promotion names its placement `slot`, and product events carry `currency`.
35
+ Order `value` is now the merchandise value: the `order complete` sample goes
36
+ from 555 to 462, and the gross amount charged is `total` (467.22). The
37
+ destination examples read `data.tax`, `data.slot` and the search keys
38
+ `data.term` and `data.results`, and gross fields such as Matomo `grandTotal`
39
+ read `data.total` first, then `data.value`. The CLI ships default event
40
+ contracts for common site types in `examples/contracts/`.
41
+ - 34fd225: The `PushResult.error` description now says when it is set: for a
42
+ rejected event or a failure before the destinations. A destination's failure
43
+ is reported in `failed`, under its id with a `reason`, and leaves `error`
44
+ unset.
45
+ - 5313635: `@walkeros/core` exports the `StepType` type, the kind of a step
46
+ package (`source`, `transformer`, `destination` or `store`), read from
47
+ `STEP_TYPES` on `@walkeros/core/dev`. `StepKind`, `FlowStepType` and `stepId`
48
+ use it, as do the step kinds `resolveExportName` in `@walkeros/cli` and the
49
+ simulate tool of `@walkeros/mcp` take, so the kinds are listed in one place.
50
+
51
+ ## 4.8.2
52
+
53
+ ### Patch Changes
54
+
55
+ - 2374f54: `logger.throw` only throws and no longer writes a log line; the
56
+ collector writes the one failure line. A rule `condition` that throws fails
57
+ the event instead of falling through. A mapping value without an operator is
58
+ dropped and reported. The wildcard lookup tries exact, `entity *`, `* action`,
59
+ then `* *`, and falls through a tier whose conditions all fail.
60
+ - 7e5fc27: A JSON log line above 32 KiB now truncates its message as well as its
61
+ context and sets `messageTruncated: true`, so one oversized line can no longer
62
+ break a log pipeline. Mapping problems report under the step `mapping.<rule>`,
63
+ one line per rule.
64
+ - 2374f54: `logger.format: 'json'` prints one JSON object per line on server
65
+ flows, with `severity`, `message`, `time`, `scope` and `context`; errors and
66
+ warnings go to stderr. Web flows reject it. A log handler receives the cause
67
+ code, status, retryable flag and suppressed count as structured fields, so
68
+ lines can be forwarded without parsing.
69
+ - 964590a: Tag Mode's `moin` and the preview activator `browserSwapActivator`
70
+ (with `SwapActivatorConfig` and `SESSION_STORAGE_KEY`) moved to
71
+ `@walkeros/web-core`, and `isElementOrDocument` is removed.
72
+ `serializeStoreValue`, `deserializeStoreValue` and `StoreCodecError` moved to
73
+ `@walkeros/core/node`. `getFlowSettings` reads `$env` only from the `env` you
74
+ pass it, never from `process.env`. Errors keep `cause` in every browser.
75
+ - 4100ede: `getEvent` returns the same event on every run: a fixed timestamp and
76
+ an id derived from the event name. It accepts only standard event names, so a
77
+ typo no longer compiles; `createEvent` builds any other event and uses the
78
+ same fixed default timestamp. `order complete` carries the order amount as
79
+ `data.value` instead of `data.total`, and the package examples read
80
+ `data.value`.
81
+ - 2374f54: New `StepError` carries a code, an HTTP status and `retryable`;
82
+ `acknowledge(result)` tells a producer to ack, retry or reject a message, and
83
+ `reportCause` writes one failure line per cause. `SendResponse` is `{ data }`.
84
+ An `init` of a destination, transformer or store can no longer return `false`:
85
+ throw a `StepError`, and untyped `false` fails with `not-ready`.
86
+ - 2374f54: Flow validation now rejects unknown keys in step `config`,
87
+ destination and store entries, the `collector` block, inline `code` and
88
+ contract rules, mapping keys with no effect at their position, values without
89
+ an operator or with two producers, and malformed whole-value references.
90
+ Inline code may define `pushBatch`, `on` and `destroy`. Strict `$flow` treats
91
+ an empty value as unresolved.
92
+ - 15eb7b2: The error for an empty `$flow` reference names only the setting to
93
+ fill in; it no longer suggests a `walkeros deploy` command.
94
+ - 33a2779: `$flow` references now accept flow names with a hyphen, such as
95
+ `$flow.tracking-server.url`.
96
+ - 33a2779: Tag Mode's loader now hears the app's call on sites that block
97
+ messages from origins they do not know.
98
+
3
99
  ## 4.8.1
4
100
 
5
101
  ### Patch Changes
@@ -710,9 +806,6 @@
710
806
  and `event.context` remain required.
711
807
  - Each source self-registers via TypeScript module augmentation of `SourceMap`
712
808
  in `@walkeros/core`.
713
- - App-side coordination (`/workspaces/developer/app`) is a follow-up plan, not
714
- part of this release. Telemetry from v4 CLI/MCP will not validate against
715
- the existing app schema until that follow-up ships.
716
809
  - `Mapping.Rule.skip` is renamed to `Mapping.Rule.silent`. Customer flow.json
717
810
  configs using `skip: true` in mapping rules must rename to `silent: true`.
718
811
  Hard cut: no legacy alias, the field is gone.