diff --git a/.changeset/api-typed-surface.md b/.changeset/api-typed-surface.md deleted file mode 100644 index 55eb8f21a..000000000 --- a/.changeset/api-typed-surface.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/cli': patch ---- - -The bundled API contract (`spec.json` and the generated `api.gen.d.ts`) now -covers the full served surface, adding typed paths for service accounts, -invitations, billing, deployments and their sub-resources, custom domains, -entitlements, LLM settings, chat sessions, MCP tokens, runners, and the package -catalog. No runtime behavior change; clients gain accurate types for these -endpoints. diff --git a/.changeset/batch-outcome-shutdown-fixes.md b/.changeset/batch-outcome-shutdown-fixes.md deleted file mode 100644 index 9f1887276..000000000 --- a/.changeset/batch-outcome-shutdown-fixes.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -'@walkeros/core': patch -'@walkeros/collector': patch -'@walkeros/server-destination-gcp': patch ---- - -Batched destination delivery now reports failures. A batch push that fails -(including BigQuery row errors) is routed to the dead-letter buffer and counted -as failed instead of being silently dropped, and graceful shutdown waits for -in-flight batches to finish. Also fixes a shutdown timer that could delay -process exit, and makes a zero millisecond batch wait (`batch: 0`) correctly -enable batching. diff --git a/.changeset/bigquery-timing-float.md b/.changeset/bigquery-timing-float.md deleted file mode 100644 index b77c444fb..000000000 --- a/.changeset/bigquery-timing-float.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/server-destination-gcp': patch ---- - -The BigQuery destination now creates the `timing` column as `FLOAT64` instead of -`INT64`. Event timing carries sub-second decimal precision, which was previously -truncated to whole numbers on write. Existing tables keep their column type; -alter it to `FLOAT64` to preserve precision going forward. diff --git a/.changeset/browser-window-single-instance.md b/.changeset/browser-window-single-instance.md deleted file mode 100644 index f5d5ff144..000000000 --- a/.changeset/browser-window-single-instance.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/web-source-browser': patch ---- - -The single-instance guard is now scoped to the window instead of the module, so -loading the tag more than once on the same page is inert rather than -re-initializing. A second load no longer re-binds DOM triggers, re-adopts the -event layer, or surfaces an error to the host page. diff --git a/.changeset/cli-archive-bundles.md b/.changeset/cli-archive-bundles.md deleted file mode 100644 index 349f8f609..000000000 --- a/.changeset/cli-archive-bundles.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@walkeros/cli': minor ---- - -`walkeros run` now accepts a `.tar.gz`/`.tgz` flow archive (URL or local file): -it extracts the bundle and its `node_modules/` and runs it, so server flows with -external step packages resolve them at runtime. `walkeros bundle -o flow.tar.gz` -packs a server bundle directory into that archive. Web single-file bundles do -not support archive output. diff --git a/.changeset/cli-iife-browser-bundle.md b/.changeset/cli-iife-browser-bundle.md deleted file mode 100644 index edbbe203c..000000000 --- a/.changeset/cli-iife-browser-bundle.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@walkeros/cli': patch ---- - -Browser flow bundles are now emitted as an IIFE so all internal code stays -inside a private scope. Previously the bundled helper functions could leak onto -the global `window` object and collide with other scripts on the page, such as -Google Analytics or a consent manager. Server bundles are unchanged and still -emit ESM. diff --git a/.changeset/codebox-toolbar-memo.md b/.changeset/codebox-toolbar-memo.md deleted file mode 100644 index 20f2d1603..000000000 --- a/.changeset/codebox-toolbar-memo.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@walkeros/explorer': patch ---- - -CodeBox now memoizes its toolbar and tabs so a validation-marker update repaints -only the error and warning badges instead of re-rendering the whole editor. This -removes the visible editor flicker when content or markers change rapidly. diff --git a/.changeset/collector-foreign-dispatch-guard.md b/.changeset/collector-foreign-dispatch-guard.md deleted file mode 100644 index 2efa85fae..000000000 --- a/.changeset/collector-foreign-dispatch-guard.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/collector': patch ---- - -Lifecycle dispatch now fails closed when called with a non-collector argument. -If an internal function is ever reached by foreign code (for example a global -name collision), it returns quietly instead of throwing, so it can no longer -break the surrounding page. diff --git a/.changeset/collector-public-chain-helpers.md b/.changeset/collector-public-chain-helpers.md deleted file mode 100644 index e5b9330cf..000000000 --- a/.changeset/collector-public-chain-helpers.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -'@walkeros/collector': patch -'@walkeros/core': patch ---- - -Promote chain, route shape, and reference scanner helpers to the public surface -so app and tooling can resolve transformer chains, probe route shapes, and -discover `$flow.` references without reaching into internal modules: - -- collector: re-export `walkChain` (resolve a transformer chain start into the - ordered step IDs) and `extractTransformerNextMap` (read static next-links from - a `Transformer.Transformers` map). -- core: re-export `isRouteArray` and `isRouteConfigEntry` (the canonical shape - probes for `Transformer.Route`) and add `scanFlowRefs(value, into?)`, which - walks any value (string, object, array) and returns every `$flow.` - reference found, including refs nested inside `$code:` snippets. diff --git a/.changeset/collector-state-delivery.md b/.changeset/collector-state-delivery.md deleted file mode 100644 index 69531acab..000000000 --- a/.changeset/collector-state-delivery.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@walkeros/collector': minor ---- - -Consent and state-gated source reactions, such as the session source's session -start, now fire reliably regardless of source init order or whether state -arrives before or after `run`. The collector delivers each state change exactly -once per subscriber, so sources no longer need to re-fire on repeat collector -notifications of the same state. diff --git a/.changeset/config-batch-enabler.md b/.changeset/config-batch-enabler.md deleted file mode 100644 index 495e71d86..000000000 --- a/.changeset/config-batch-enabler.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@walkeros/collector': minor ---- - -Destinations now batch every event when you set `config.batch`, with no `'* *'` -wildcard mapping rule needed. A bare number sets the debounce wait; -`{ wait, size, age }` tunes the window. Rule-level `batch` still overrides per -event type, and pending batches now flush on shutdown. - -Migration: if you previously set `config.batch` alongside a single non-wildcard -rule `batch`, `config.batch` only capped that rule before; it now batches all of -the destination's events. To batch only specific events, drop `config.batch` and -set `batch` on those rules. diff --git a/.changeset/config-credentials-field.md b/.changeset/config-credentials-field.md deleted file mode 100644 index 37fecadd5..000000000 --- a/.changeset/config-credentials-field.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -'@walkeros/core': minor -'@walkeros/server-destination-gcp': minor -'@walkeros/server-store-sheets': minor -'@walkeros/server-store-gcs': minor -'@walkeros/server-source-gcp': minor -'@walkeros/server-destination-datamanager': minor ---- - -Add an optional, strictly-typed `config.credentials` field to destinations, -stores, and sources. Service-account credentials now configure under -`config.credentials`, validated per package and resolved from `$env`. The -package-specific `settings.credentials` still works but is deprecated, so move -credentials to `config.credentials`. The raw `settings.` passthrough (e.g. -`settings.bigquery`) is unchanged. diff --git a/.changeset/datalayer-source-mapping-examples.md b/.changeset/datalayer-source-mapping-examples.md deleted file mode 100644 index 2c3ef75f5..000000000 --- a/.changeset/datalayer-source-mapping-examples.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@walkeros/web-source-datalayer': patch -'@walkeros/cli': patch ---- - -Source-level mapping examples for the dataLayer source now key on the prefix as -entity and the gtag action as action: `mapping..`. The shipped -`examples/mapping.ts`, the comprehensive `flow-complete.json` example, and the -related docs reflect the convention, including the special-cased actions -`consent`, `config`, and `set` whose trailing token is dropped by the -entity/action split. diff --git a/.changeset/dependency-refresh-runtime-sdks.md b/.changeset/dependency-refresh-runtime-sdks.md deleted file mode 100644 index cf5e110d1..000000000 --- a/.changeset/dependency-refresh-runtime-sdks.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@walkeros/cli': patch -'@walkeros/server-source-express': patch -'@walkeros/server-source-gcp': patch -'@walkeros/server-destination-sqlite': patch -'@walkeros/server-destination-mixpanel': patch -'@walkeros/mcp-source-browser': patch ---- - -Refresh runtime dependencies to their latest majors: Express 5, Commander 15, -better-sqlite3 12, @libsql/client 0.17, Google Cloud functions-framework 5, -mixpanel 0.22, and jsdom 29. No public API changes; installs now pull the -current versions of these SDKs. diff --git a/.changeset/destination-cast-cleanup.md b/.changeset/destination-cast-cleanup.md deleted file mode 100644 index cc8c07a5a..000000000 --- a/.changeset/destination-cast-cleanup.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -'@walkeros/web-destination-plausible': patch -'@walkeros/web-destination-piwikpro': patch -'@walkeros/web-destination-meta': patch -'@walkeros/web-destination-snowplow': patch -'@walkeros/web-destination-gtag': patch -'@walkeros/web-destination-api': patch ---- - -Internal type-safety cleanup: removed unsafe casts around browser globals and -env mocks by typing each destination's `Env` and reading globals through -`getEnv(env)`. No behavior change. diff --git a/.changeset/explorer-use-client-directive.md b/.changeset/explorer-use-client-directive.md deleted file mode 100644 index 8a82dd469..000000000 --- a/.changeset/explorer-use-client-directive.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@walkeros/explorer': patch ---- - -The built bundle now preserves its leading `"use client"` directive, so Next.js -treats the package as a client boundary. The minifier could previously strip it, -which broke server components that import the package at build time. diff --git a/.changeset/flow-ref-grammar.md b/.changeset/flow-ref-grammar.md deleted file mode 100644 index eba26da81..000000000 --- a/.changeset/flow-ref-grammar.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@walkeros/core': patch ---- - -Fix `$flow` reference scanning to match the resolver's name grammar, so names -with leading digits or hyphens no longer produce false-positive references. diff --git a/.changeset/flowstate-platform.md b/.changeset/flowstate-platform.md deleted file mode 100644 index 626a96439..000000000 --- a/.changeset/flowstate-platform.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/core': patch ---- - -`FlowState` records can now carry an optional `platform` field -(`'web' | 'server'`) identifying the runtime that produced the state. Observers -can use it alongside `flowId` to correlate telemetry across web and server -runtimes of the same flow. diff --git a/.changeset/getenv-generic.md b/.changeset/getenv-generic.md deleted file mode 100644 index c60c742ff..000000000 --- a/.changeset/getenv-generic.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/web-core': minor ---- - -`getEnv` is now generic over a destination's `Env`. Passing your env type -(`getEnv(env)`) returns `window`/`document` as the real DOM globals merged -with your declared SDK shape, so destinations no longer need to cast browser -globals (`as Window`/`as Document`) at the call site. diff --git a/.changeset/gethashserver-algorithm-option.md b/.changeset/gethashserver-algorithm-option.md deleted file mode 100644 index 19411947c..000000000 --- a/.changeset/gethashserver-algorithm-option.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/server-core': patch -'@walkeros/server-destination-criteo': patch ---- - -`getHashServer` now accepts an `algorithm` option (`sha256` default, or `md5`), -so destinations can request either digest from the shared util instead of -calling Node crypto directly. Criteo's email hashing composes this util for its -md5, sha256, and sha256_md5 forms. No behavior change for existing SHA-256 -callers. diff --git a/.changeset/ingest-map-operator-docs.md b/.changeset/ingest-map-operator-docs.md deleted file mode 100644 index 7d73a7b7c..000000000 --- a/.changeset/ingest-map-operator-docs.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@walkeros/core': patch -'@walkeros/transformer-ga4': patch -'@walkeros/server-transformer-bot': patch -'@walkeros/server-transformer-fingerprint': patch -'@walkeros/cli': patch ---- - -Documentation fix: server source `config.ingest` examples now use the `map` -operator with direct request field paths instead of a bare object. A bare object -like `{ url: 'req.url' }` is silently inert, so the ingest stayed empty and -downstream `ingest.*` fields never resolved. Affects package hints, READMEs, the -core source type docs, and the bundled CLI example. diff --git a/.changeset/lazy-dev-exports.md b/.changeset/lazy-dev-exports.md deleted file mode 100644 index 1f70267ed..000000000 --- a/.changeset/lazy-dev-exports.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/cli': patch ---- - -Bundle skeletons now expose each package's dev exports through a lazy loader. -Production deploy bundles drop it entirely, so a shipped `walker.js` never -carries the dev schema graph, while in-process simulate and push inline the dev -exports so they resolve on a minimal runtime without the source packages -installed alongside. This fixes a browser deploy bundle that could fail to build -or retain dev schemas, and web simulation that could not find the dev exports. diff --git a/.changeset/mcp-contract-and-catalog.md b/.changeset/mcp-contract-and-catalog.md deleted file mode 100644 index d3c13a803..000000000 --- a/.changeset/mcp-contract-and-catalog.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@walkeros/mcp': minor -'@walkeros/cli': patch -'@walkeros/source-demo': patch ---- - -The MCP now loads flows by ID, requires the `flow_simulate` `step` parameter it -always enforced, and adds a `diagnostics` tool reporting client and CLI versions -plus backend reachability. Package discovery returns a complete catalog with a -warning when a source degrades, instead of silently caching partial results, and -returned flow configs are round-trip safe (structural values stay literal). The -demo source can now be simulated as a source step; the CLI also exports -`VERSION` and `resolveAppUrl` and clears a deleted default project. diff --git a/.changeset/mcp-surface-hardening.md b/.changeset/mcp-surface-hardening.md deleted file mode 100644 index 695b4ab90..000000000 --- a/.changeset/mcp-surface-hardening.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -'@walkeros/mcp': minor -'@walkeros/cli': minor -'@walkeros/transformer-ga4': patch ---- - -The MCP `flow_simulate` and `flow_bundle` tools now accept a cloud flow id as -`configPath`, so you can simulate or bundle a saved flow without a manual file -round-trip, and repeated simulations reuse a prebuilt bundle for faster runs. -Loading or fetching a flow with no default project set now returns a clear "no -default project" error, and `flow_examples` surfaces a referenced package's -shipped examples when a step has none inline. Bundle stats now report the real -total bundle size and list package names instead of a per-package estimate, and -the GA4 transformer documents its wiring contract via package hints. diff --git a/.changeset/no-bundle-step-examples.md b/.changeset/no-bundle-step-examples.md deleted file mode 100644 index 75d261afd..000000000 --- a/.changeset/no-bundle-step-examples.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -'@walkeros/web-source-browser': patch -'@walkeros/source-demo': patch -'@walkeros/destination-demo': patch -'@walkeros/web-destination-snowplow': patch -'@walkeros/server-source-fetch': patch -'@walkeros/server-source-aws': patch -'@walkeros/server-source-gcp': patch -'@walkeros/server-destination-api': patch -'@walkeros/server-destination-sqlite': patch -'@walkeros/transformer-demo': patch -'@walkeros/web-source-cmp-cookiefirst': patch -'@walkeros/web-source-cmp-cookiepro': patch -'@walkeros/web-source-cmp-usercentrics': patch -'@walkeros/web-source-datalayer': patch ---- - -Step examples are no longer bundled into production output. They were -accidentally exported from the production entry of these packages and pulled -into bundled JS. Examples remain available via the package `./dev` subpath for -simulation and testing. diff --git a/.changeset/preview-source-and-delete.md b/.changeset/preview-source-and-delete.md deleted file mode 100644 index bd53a3931..000000000 --- a/.changeset/preview-source-and-delete.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/cli': minor -'@walkeros/mcp': minor ---- - -Preview creation can now target a deployed version: pass -`source: { kind: 'deployment-version', deploymentVersionId }` to `createPreview` -(CLI) or the MCP `flow_manage` `preview_create` action to preview what's live -instead of the flow's draft. Deleting a preview no longer errors on the empty -`204 No Content` response and resolves to a confirmation record. diff --git a/.changeset/request-cache-serialization.md b/.changeset/request-cache-serialization.md deleted file mode 100644 index dbb37d8fe..000000000 --- a/.changeset/request-cache-serialization.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@walkeros/core': patch -'@walkeros/server-store-fs': patch ---- - -Request caching now persists structured HTTP responses, including binary bodies -(`Buffer`, `Uint8Array`, `ArrayBuffer`), to byte/string store backends -(filesystem, S3, GCS, in-memory) and honors TTL. Previously, caching a response -could crash the process or never populate, and entries never expired. Cached -values now round-trip safely (binary bodies decode back as a `Buffer`) and -expire correctly instead of serving stale content after a redeploy. diff --git a/.changeset/require-order-independence.md b/.changeset/require-order-independence.md deleted file mode 100644 index c084c156c..000000000 --- a/.changeset/require-order-independence.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@walkeros/collector': minor ---- - -A source or destination with a `require` gate now activates reliably from the -collector's current recorded state, regardless of source init order or which -source provided the required state (such as a CMP applying consent). CMP and -session sources now perform their initial consent read during `init()`, so -construction stays side-effect free. diff --git a/.changeset/runtime-trace-polling.md b/.changeset/runtime-trace-polling.md deleted file mode 100644 index 2c01f443a..000000000 --- a/.changeset/runtime-trace-polling.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/core': minor -'@walkeros/cli': minor ---- - -Trace telemetry now activates at runtime by polling the deployment's trace -window, so web and server flows start and stop full-payload recording without a -redeploy. A future trace window upgrades a flow to full inbound and outbound -recording, and a null or past window reverts to the flow's `observe` baseline -and self-expires. diff --git a/.changeset/scoped-generic-data-attribute.md b/.changeset/scoped-generic-data-attribute.md deleted file mode 100644 index 0e47ce033..000000000 --- a/.changeset/scoped-generic-data-attribute.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -'@walkeros/web-source-browser': minor -'@walkeros/mcp-source-browser': minor ---- - -Add the `data-elb_` scoped generic attribute. It carries the same `key:value` -properties as the blanket `data-elb-` generic, but only events whose triggered -element is nested below the `data-elb_` element receive them. The -`createTagger()` API gains a `scoped()` method and the `generate_tagging` MCP -tool gains a `scoped` input to produce it. Use `data-elb-` for properties every -trigger in an entity should carry, and `data-elb_` when only triggers within a -specific branch should. diff --git a/.changeset/secret-manage-mcp-tool.md b/.changeset/secret-manage-mcp-tool.md deleted file mode 100644 index aa4ceff35..000000000 --- a/.changeset/secret-manage-mcp-tool.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@walkeros/mcp': minor -'@walkeros/cli': minor ---- - -Add a `secret_manage` MCP tool (and matching CLI functions) to manage a flow's -secrets. List secret metadata, create, rotate, and delete secrets that flow -steps reference as `$env.`. Values are write-only: encrypted at rest and -never returned or logged. diff --git a/.changeset/simulate-collector-step.md b/.changeset/simulate-collector-step.md deleted file mode 100644 index 89499cbcd..000000000 --- a/.changeset/simulate-collector-step.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -'@walkeros/cli': minor -'@walkeros/core': minor -'@walkeros/collector': patch -'@walkeros/mcp': patch ---- - -Source simulation gains a `collector` step that runs the real collector -enrichment and returns the fully enriched event. Transformer simulation now -accepts an optional raw `ingest` so request decoders like GA4 can be tested -standalone by supplying a `url`. The `flow_simulate` MCP tool accepts the new -collector step and the transformer `ingest` input. diff --git a/.changeset/skeleton-resolved-view.md b/.changeset/skeleton-resolved-view.md deleted file mode 100644 index 99f2ad76f..000000000 --- a/.changeset/skeleton-resolved-view.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/storybook-addon': patch ---- - -The inspector now shows scoped (`data-elb_`) and generic (`data-elb-`) -attributes resolved onto the entities that use them, labeled by origin, and -scoped attributes are included in the visual property highlight. The three panel -tabs are renamed to Events (N), Live Events (N), and Skeleton (N). diff --git a/.changeset/state-block.md b/.changeset/state-block.md deleted file mode 100644 index 143feb566..000000000 --- a/.changeset/state-block.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/core': patch -'@walkeros/collector': patch ---- - -Add a declarative `state` block for `get`/`set` against a store, replacing -`$code:` for simple fetch and stash. Available on source, transformer, and -destination steps; defaults to an in-memory store. diff --git a/.changeset/store-format-standardization.md b/.changeset/store-format-standardization.md deleted file mode 100644 index 3ccb2ff28..000000000 --- a/.changeset/store-format-standardization.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -'@walkeros/core': patch -'@walkeros/collector': patch -'@walkeros/server-store-fs': patch -'@walkeros/server-store-s3': patch -'@walkeros/server-store-gcs': patch -'@walkeros/server-store-sheets': patch ---- - -Stores now use one structured value type with binary (`Uint8Array`) as a -first-class leaf, serialized by a shared codec. A new `file: true` store option -serves byte-exact assets such as walker.js (default is structured key-value). -TTL is owned by the cache layer, not the store. Sheets is structured-only and -rejects `file: true`. diff --git a/.changeset/tag-unified-visualization.md b/.changeset/tag-unified-visualization.md deleted file mode 100644 index 3254c1479..000000000 --- a/.changeset/tag-unified-visualization.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@walkeros/explorer': minor ---- - -Add a unified tag visualization: the `Tag` atom plus `TagCanvas` and -`TagTreeEditor`. It renders walkerOS data-elb tagging as nested rectangles -(entity, context, global, action, property) with an auto-laid-out reading view -and an overlay you can draw onto a screenshot. The overlay editor supports -dragging and resizing rectangles, keeping every tag fully nested or fully -separate. The existing `TagSkeleton` and `TagSkeletonOverlay` continue to work. diff --git a/.changeset/telemetry-no-poll.md b/.changeset/telemetry-no-poll.md deleted file mode 100644 index f3904327f..000000000 --- a/.changeset/telemetry-no-poll.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/cli': patch ---- - -The wrapped browser bundle can now install a telemetry observer without a trace -poll. When the telemetry options omit `traceUrl`, the bundle emits at a fixed -level with no polling, suited to short-lived, URL-opted-in sessions. Bundles -that pass `traceUrl` keep the existing poll behavior. diff --git a/.changeset/transformer-validate.md b/.changeset/transformer-validate.md deleted file mode 100644 index 5f39be2af..000000000 --- a/.changeset/transformer-validate.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -'@walkeros/transformer-validate': minor -'@walkeros/core': minor -'@walkeros/cli': patch ---- - -New `@walkeros/transformer-validate` transformer validates events against JSON -Schema contracts. It runs in both web and server flows, supports strict and pass -modes, and writes the verdict and error list to configurable paths so you can -gate or observe event quality. - -The declarative per-step `validate` field on sources, transformers, and -destinations is removed. Define event shapes in the top-level `contract` and -enforce them at runtime by adding a `transformer-validate` step that references -them via `$contract.`; `format: true` still checks an event is a valid -`WalkerOS.PartialEvent`. Design-time validation now checks step examples against -the resolved contract. diff --git a/.changeset/validate-multiflow-secret-scoping.md b/.changeset/validate-multiflow-secret-scoping.md deleted file mode 100644 index a39c9abe6..000000000 --- a/.changeset/validate-multiflow-secret-scoping.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@walkeros/core': patch ---- - -Flow validation now scopes the "web flows cannot reference a managed secret" -check per flow. A multi-flow config where a web flow forwards to a server flow -that holds a `$secret.` reference now validates cleanly, instead of the server -flow's secret being wrongly flagged against the web flow. diff --git a/.changeset/validate-schema-only-fix.md b/.changeset/validate-schema-only-fix.md deleted file mode 100644 index 902c551c4..000000000 --- a/.changeset/validate-schema-only-fix.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@walkeros/transformer-validate': patch ---- - -Fix schema-only contract rules being skipped during validation. A contract rule -that carries only a whole-event `schema` (no `events` block) is now enforced -instead of being treated as an inert inline schema. diff --git a/apps/cli/CHANGELOG.md b/apps/cli/CHANGELOG.md index f418595ab..6fed72df2 100644 --- a/apps/cli/CHANGELOG.md +++ b/apps/cli/CHANGELOG.md @@ -1,5 +1,26 @@ # walkeros +## 4.2.0 + +### Patch Changes + +- Updated dependencies [e8f6909] +- Updated dependencies [654ba38] +- Updated dependencies [5b1a134] +- Updated dependencies [b98474f] +- Updated dependencies [59aa9e1] +- Updated dependencies [e8f6909] +- Updated dependencies [d39a6a1] +- Updated dependencies [9d066cc] +- Updated dependencies [6a72a32] +- Updated dependencies [9d066cc] +- Updated dependencies [654ba38] +- Updated dependencies [e8f6909] +- Updated dependencies [6a72a32] +- Updated dependencies [e2a60ae] +- Updated dependencies [23d4b86] + - @walkeros/cli@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/cli/package.json b/apps/cli/package.json index bac4fa846..f061fdddb 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,6 +1,6 @@ { "name": "walkeros", - "version": "4.1.2", + "version": "4.2.0", "description": "walkerOS CLI - Bundle and deploy walkerOS components", "license": "MIT", "type": "module", @@ -18,7 +18,7 @@ "clean": "rm -rf .turbo && rm -rf dist" }, "dependencies": { - "@walkeros/cli": "4.1.2" + "@walkeros/cli": "4.2.0" }, "devDependencies": { "tsup": "^8.5.1", diff --git a/apps/demos/react/CHANGELOG.md b/apps/demos/react/CHANGELOG.md index 8d516e927..f659d7069 100644 --- a/apps/demos/react/CHANGELOG.md +++ b/apps/demos/react/CHANGELOG.md @@ -1,5 +1,38 @@ # walkeros-demo-react +## 2.0.13 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [d65bbde] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/web-destination-gtag@4.2.0 + - @walkeros/web-destination-api@4.2.0 + - @walkeros/web-core@4.2.0 + ## 2.0.12 ### Patch Changes diff --git a/apps/demos/react/package.json b/apps/demos/react/package.json index cf9b87e99..4783c3304 100644 --- a/apps/demos/react/package.json +++ b/apps/demos/react/package.json @@ -1,6 +1,6 @@ { "name": "walkeros-demo-react", - "version": "2.0.12", + "version": "2.0.13", "private": true, "type": "module", "scripts": { @@ -16,12 +16,12 @@ }, "dependencies": { "@remix-run/router": "^1.23.0", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-destination-api": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-destination-api": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "react": "^19.2.3", "react-dom": "^19.2.3", "react-router-dom": "^7.10.1" @@ -34,7 +34,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", + "@walkeros/config": "4.2.0", "autoprefixer": "^10.4.23", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", diff --git a/apps/demos/storybook/CHANGELOG.md b/apps/demos/storybook/CHANGELOG.md index 09b6c5b05..8769a4601 100644 --- a/apps/demos/storybook/CHANGELOG.md +++ b/apps/demos/storybook/CHANGELOG.md @@ -1,5 +1,28 @@ # @walkeros/storybook-demo +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-source-browser@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/demos/storybook/package.json b/apps/demos/storybook/package.json index 4eb042267..88791162c 100644 --- a/apps/demos/storybook/package.json +++ b/apps/demos/storybook/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/storybook-demo", "private": true, - "version": "4.1.2", + "version": "4.2.0", "type": "module", "scripts": { "dev": "vite", @@ -13,8 +13,8 @@ "build-storybook": "storybook build" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "react": "^19.2.3", "react-dom": "^19.2.3" }, @@ -26,7 +26,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/storybook-addon": "4.1.2", + "@walkeros/storybook-addon": "4.2.0", "autoprefixer": "^10.4.23", "eslint": "^9.39.2", "eslint-plugin-react-hooks": "^7.0.1", diff --git a/apps/explorer/CHANGELOG.md b/apps/explorer/CHANGELOG.md index 0c07a8c26..8c1d91ad9 100644 --- a/apps/explorer/CHANGELOG.md +++ b/apps/explorer/CHANGELOG.md @@ -1,5 +1,53 @@ # @walkeros/explorer +## 4.2.0 + +### Minor Changes + +- 560d8af: Add a unified tag visualization: the `Tag` atom plus `TagCanvas` and + `TagTreeEditor`. It renders walkerOS data-elb tagging as nested rectangles + (entity, context, global, action, property) with an auto-laid-out reading view + and an overlay you can draw onto a screenshot. The overlay editor supports + dragging and resizing rectangles, keeping every tag fully nested or fully + separate. The existing `TagSkeleton` and `TagSkeletonOverlay` continue to + work. + +### Patch Changes + +- 2d64ed2: CodeBox now memoizes its toolbar and tabs so a validation-marker + update repaints only the error and warning badges instead of re-rendering the + whole editor. This removes the visible editor flicker when content or markers + change rapidly. +- 560d8af: The built bundle now preserves its leading `"use client"` directive, + so Next.js treats the package as a client boundary. The minifier could + previously strip it, which broke server components that import the package at + build time. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/explorer/package.json b/apps/explorer/package.json index a184e583d..49923b21f 100644 --- a/apps/explorer/package.json +++ b/apps/explorer/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/explorer", - "version": "4.1.2", + "version": "4.2.0", "description": "Interactive React components for walkerOS documentation and exploration", "license": "MIT", "type": "module", @@ -36,10 +36,10 @@ "@rjsf/core": "^6.1.2", "@rjsf/utils": "^6.1.2", "@rjsf/validator-ajv8": "^6.1.2", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "clsx": "^2.1.1", "monaco-editor": "^0.55.1", "prettier": "^3.7.4", @@ -65,8 +65,8 @@ "@typescript-eslint/eslint-plugin": "^8.28.0", "@typescript-eslint/parser": "^8.28.0", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", + "@walkeros/config": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", "eslint": "^9.23.0", "eslint-plugin-jest": "^29.15.2", "eslint-plugin-storybook": "^10.1.11", diff --git a/apps/quickstart/CHANGELOG.md b/apps/quickstart/CHANGELOG.md index 16c0c9ece..217ac69ed 100644 --- a/apps/quickstart/CHANGELOG.md +++ b/apps/quickstart/CHANGELOG.md @@ -1,5 +1,38 @@ # @walkeros/quickstart +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [d65bbde] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/web-destination-gtag@4.2.0 + - @walkeros/web-destination-api@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/quickstart/package.json b/apps/quickstart/package.json index 68239485c..aeddac2a0 100644 --- a/apps/quickstart/package.json +++ b/apps/quickstart/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/quickstart", - "version": "4.1.2", + "version": "4.2.0", "private": true, "description": "Verified code examples for walkerOS documentation", "license": "MIT", @@ -14,12 +14,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/collector": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", - "@walkeros/web-destination-api": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/collector": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", + "@walkeros/web-destination-api": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/apps/storybook-addon/CHANGELOG.md b/apps/storybook-addon/CHANGELOG.md index 52950d53b..1c73420e4 100644 --- a/apps/storybook-addon/CHANGELOG.md +++ b/apps/storybook-addon/CHANGELOG.md @@ -1,5 +1,40 @@ # @walkeros/storybook-addon +## 4.2.0 + +### Patch Changes + +- 560d8af: The inspector now shows scoped (`data-elb_`) and generic + (`data-elb-`) attributes resolved onto the entities that use them, labeled by + origin, and scoped attributes are included in the visual property highlight. + The three panel tabs are renamed to Events (N), Live Events (N), and Skeleton + (N). +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/storybook-addon/package.json b/apps/storybook-addon/package.json index 051362f55..5426ff25d 100644 --- a/apps/storybook-addon/package.json +++ b/apps/storybook-addon/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/storybook-addon", - "version": "4.1.2", + "version": "4.2.0", "description": "Visualize, debug, and validate walkerOS event tracking in your Storybook stories. Real-time event capture with visual DOM highlighting for data-attribute based tagging.", "keywords": [ "storybook-addons", @@ -62,10 +62,10 @@ }, "dependencies": { "@storybook/icons": "^2.0.1", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0" }, "devDependencies": { "@storybook/addon-docs": "^10.1.9", @@ -74,7 +74,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", + "@walkeros/config": "4.2.0", "auto": "^11.3.6", "boxen": "^8.0.1", "npm-run-all2": "^8.0.4", diff --git a/apps/walkerjs/CHANGELOG.md b/apps/walkerjs/CHANGELOG.md index 23241170c..9af2203ba 100644 --- a/apps/walkerjs/CHANGELOG.md +++ b/apps/walkerjs/CHANGELOG.md @@ -1,5 +1,38 @@ # @walkeros/walker.js +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [b98474f] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/web-source-datalayer@4.2.0 + - @walkeros/web-core@4.2.0 + - @walkeros/web-source-session@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/apps/walkerjs/package.json b/apps/walkerjs/package.json index 0e1db5c83..40a9dab66 100644 --- a/apps/walkerjs/package.json +++ b/apps/walkerjs/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/walker.js", - "version": "4.1.2", + "version": "4.2.0", "description": "Ready-to-use walkerOS bundle with browser source, collector, and dataLayer support", "license": "MIT", "main": "./dist/index.js", @@ -40,12 +40,12 @@ "preview": "npm run build && npx serve -l 3333 examples" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/collector": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", - "@walkeros/web-source-datalayer": "4.1.2", - "@walkeros/web-source-session": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/collector": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", + "@walkeros/web-source-datalayer": "4.2.0", + "@walkeros/web-source-session": "4.2.0" }, "devDependencies": { "@swc/jest": "^0.2.39", diff --git a/package-lock.json b/package-lock.json index 3044040fa..1448c86c4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,10 +48,10 @@ }, "apps/cli": { "name": "walkeros", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/cli": "4.1.2" + "@walkeros/cli": "4.2.0" }, "bin": { "walkeros": "dist/index.js" @@ -63,15 +63,15 @@ }, "apps/demos/react": { "name": "walkeros-demo-react", - "version": "2.0.12", + "version": "2.0.13", "dependencies": { "@remix-run/router": "^1.23.0", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-destination-api": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-destination-api": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "react": "^19.2.3", "react-dom": "^19.2.3", "react-router-dom": "^7.10.1" @@ -84,7 +84,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", + "@walkeros/config": "4.2.0", "autoprefixer": "^10.4.23", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", @@ -146,10 +146,10 @@ }, "apps/demos/storybook": { "name": "@walkeros/storybook-demo", - "version": "4.1.2", + "version": "4.2.0", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "react": "^19.2.3", "react-dom": "^19.2.3" }, @@ -162,7 +162,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/storybook-addon": "4.1.2", + "@walkeros/storybook-addon": "4.2.0", "autoprefixer": "^10.4.23", "eslint": "^9.39.2", "eslint-plugin-react-hooks": "^7.0.1", @@ -512,7 +512,7 @@ }, "apps/explorer": { "name": "@walkeros/explorer", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -526,10 +526,10 @@ "@rjsf/core": "^6.1.2", "@rjsf/utils": "^6.1.2", "@rjsf/validator-ajv8": "^6.1.2", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "clsx": "^2.1.1", "monaco-editor": "^0.55.1", "prettier": "^3.7.4", @@ -551,8 +551,8 @@ "@typescript-eslint/eslint-plugin": "^8.28.0", "@typescript-eslint/parser": "^8.28.0", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", + "@walkeros/config": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", "eslint": "^9.23.0", "eslint-plugin-jest": "^29.15.2", "eslint-plugin-storybook": "^10.1.11", @@ -883,27 +883,27 @@ }, "apps/quickstart": { "name": "@walkeros/quickstart", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-destination-api": "4.1.2", - "@walkeros/web-destination-gtag": "4.1.2", - "@walkeros/web-source-browser": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-destination-api": "4.2.0", + "@walkeros/web-destination-gtag": "4.2.0", + "@walkeros/web-source-browser": "4.2.0" } }, "apps/storybook-addon": { "name": "@walkeros/storybook-addon", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { "@storybook/icons": "^2.0.1", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0" }, "devDependencies": { "@storybook/addon-docs": "^10.1.9", @@ -912,7 +912,7 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", - "@walkeros/config": "4.1.2", + "@walkeros/config": "4.2.0", "auto": "^11.3.6", "boxen": "^8.0.1", "npm-run-all2": "^8.0.4", @@ -936,15 +936,15 @@ }, "apps/walkerjs": { "name": "@walkeros/walker.js", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", - "@walkeros/web-source-datalayer": "4.1.2", - "@walkeros/web-source-session": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", + "@walkeros/web-source-datalayer": "4.2.0", + "@walkeros/web-source-session": "4.2.0" }, "devDependencies": { "@swc/jest": "^0.2.39", @@ -20452,6 +20452,10 @@ "resolved": "packages/web/destinations/optimizely", "link": true }, + "node_modules/@walkeros/web-destination-piano": { + "resolved": "packages/web/destinations/piano", + "link": true + }, "node_modules/@walkeros/web-destination-pinterest": { "resolved": "packages/web/destinations/pinterest", "link": true @@ -48977,15 +48981,15 @@ }, "packages/cli": { "name": "@walkeros/cli", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { "@vercel/nft": "^1.10.2", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", - "@walkeros/server-destination-api": "4.1.2", - "@walkeros/transformer-validate": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", + "@walkeros/server-destination-api": "4.2.0", + "@walkeros/transformer-validate": "4.2.0", "ajv": "^8.17.1", "chalk": "^5.6.2", "ci-info": "^4.4.0", @@ -49015,8 +49019,8 @@ "@types/pacote": "^11.1.8", "@types/picomatch": "4.0.3", "@types/semver": "^7.7.1", - "@walkeros/config": "4.1.2", - "@walkeros/core": "4.1.2", + "@walkeros/config": "4.2.0", + "@walkeros/core": "4.2.0", "msw": "^2.12.10", "openapi-typescript": "^7.13.0", "tsx": "^4.21.0" @@ -50209,7 +50213,7 @@ }, "packages/collector": { "name": "@walkeros/collector", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -50218,15 +50222,15 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/config": { "name": "@walkeros/config", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -50571,7 +50575,7 @@ }, "packages/core": { "name": "@walkeros/core", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -50585,27 +50589,27 @@ }, "packages/destinations/demo": { "name": "@walkeros/destination-demo", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/mcps/mcp": { "name": "@walkeros/mcp", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", - "@walkeros/cli": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/cli": "4.2.0", + "@walkeros/core": "4.2.0" }, "bin": { "walkeros-mcp": "dist/stdio.js" }, "devDependencies": { "@types/node": "^25.9.1", - "@walkeros/config": "4.1.2" + "@walkeros/config": "4.2.0" }, "engines": { "node": ">=20.0.0" @@ -50616,12 +50620,12 @@ }, "packages/mcps/source-browser": { "name": "@walkeros/mcp-source-browser", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "jsdom": "^29.1.1" }, "bin": { @@ -50630,9 +50634,9 @@ "devDependencies": { "@types/jsdom": "^28.0.3", "@types/node": "^25.9.1", - "@walkeros/collector": "4.1.2", - "@walkeros/config": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/config": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "engines": { "node": ">=18.0.0" @@ -51023,7 +51027,7 @@ }, "packages/server/core": { "name": "@walkeros/server-core", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51032,16 +51036,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" } }, "packages/server/destinations/amplitude": { "name": "@walkeros/server-destination-amplitude", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51051,16 +51055,16 @@ "license": "MIT", "dependencies": { "@amplitude/analytics-node": "^1.5.53", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/api": { "name": "@walkeros/server-destination-api", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51069,14 +51073,14 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {} }, "packages/server/destinations/aws": { "name": "@walkeros/server-destination-aws", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51088,14 +51092,14 @@ "@aws-sdk/client-firehose": "^3.952.0", "@aws-sdk/client-sns": "^3.952.0", "@aws-sdk/client-sts": "^3.952.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {} }, "packages/server/destinations/bing": { "name": "@walkeros/server-destination-bing", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51104,16 +51108,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/criteo": { "name": "@walkeros/server-destination-criteo", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51122,16 +51126,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/customerio": { "name": "@walkeros/server-destination-customerio", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51140,17 +51144,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "customerio-node": "^4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/datamanager": { "name": "@walkeros/server-destination-datamanager", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51159,17 +51163,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "google-auth-library": "^10.5.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/file": { "name": "@walkeros/server-destination-file", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51178,16 +51182,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/gcp": { "name": "@walkeros/server-destination-gcp", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51199,14 +51203,14 @@ "@google-cloud/bigquery": "^8.1.1", "@google-cloud/bigquery-storage": "^5.1.0", "@google-cloud/pubsub": "^5.3.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {} }, "packages/server/destinations/hubspot": { "name": "@walkeros/server-destination-hubspot", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51216,16 +51220,16 @@ "license": "MIT", "dependencies": { "@hubspot/api-client": "^13.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/kafka": { "name": "@walkeros/server-destination-kafka", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51234,17 +51238,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "kafkajs": "^2.2.4" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/klaviyo": { "name": "@walkeros/server-destination-klaviyo", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51253,17 +51257,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "klaviyo-api": "^22.0.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/linkedin": { "name": "@walkeros/server-destination-linkedin", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51272,16 +51276,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/meta": { "name": "@walkeros/server-destination-meta", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51290,16 +51294,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/mixpanel": { "name": "@walkeros/server-destination-mixpanel", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51308,17 +51312,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "mixpanel": "^0.22.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/mparticle": { "name": "@walkeros/server-destination-mparticle", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51327,16 +51331,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/pinterest": { "name": "@walkeros/server-destination-pinterest", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51345,16 +51349,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/posthog": { "name": "@walkeros/server-destination-posthog", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51363,17 +51367,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "posthog-node": "^5.0.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/reddit": { "name": "@walkeros/server-destination-reddit", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51382,16 +51386,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/redis": { "name": "@walkeros/server-destination-redis", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51400,17 +51404,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "ioredis": "^5.10.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/rudderstack": { "name": "@walkeros/server-destination-rudderstack", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51420,16 +51424,16 @@ "license": "MIT", "dependencies": { "@rudderstack/rudder-sdk-node": "^3.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/segment": { "name": "@walkeros/server-destination-segment", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51439,16 +51443,16 @@ "license": "MIT", "dependencies": { "@segment/analytics-node": "^3.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/slack": { "name": "@walkeros/server-destination-slack", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51458,16 +51462,16 @@ "license": "MIT", "dependencies": { "@slack/web-api": "^7.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/snapchat": { "name": "@walkeros/server-destination-snapchat", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51476,16 +51480,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/sqlite": { "name": "@walkeros/server-destination-sqlite", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51494,13 +51498,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { "@libsql/client": "^0.17.0", "@types/better-sqlite3": "^7.6.13", - "@walkeros/collector": "4.1.2", + "@walkeros/collector": "4.2.0", "better-sqlite3": "^12.0.0" }, "peerDependencies": { @@ -51518,7 +51522,7 @@ }, "packages/server/destinations/tiktok": { "name": "@walkeros/server-destination-tiktok", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51527,16 +51531,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/destinations/twitter": { "name": "@walkeros/server-destination-twitter", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51545,17 +51549,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "oauth-1.0a": "^2.2.6" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/server/sources/aws": { "name": "@walkeros/server-source-aws", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51566,11 +51570,11 @@ "dependencies": { "@aws-sdk/client-sns": "^3.952.0", "@aws-sdk/client-sqs": "^3.952.0", - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { "@types/aws-lambda": "^8.10.159", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "peerDependencies": { "@types/aws-lambda": "^8.10.0" @@ -51578,7 +51582,7 @@ }, "packages/server/sources/express": { "name": "@walkeros/server-source-express", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51587,8 +51591,8 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", "cors": "^2.8.5", "express": "^5.2.1" }, @@ -51900,17 +51904,17 @@ }, "packages/server/sources/fetch": { "name": "@walkeros/server-source-fetch", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": {} }, "packages/server/sources/gcp": { "name": "@walkeros/server-source-gcp", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51920,8 +51924,8 @@ "license": "MIT", "dependencies": { "@google-cloud/pubsub": "^5.3.0", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": {}, "peerDependencies": { @@ -51930,7 +51934,7 @@ }, "packages/server/stores/fs": { "name": "@walkeros/server-store-fs", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51939,15 +51943,15 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/server/stores/gcs": { "name": "@walkeros/server-store-gcs", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51956,13 +51960,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": {} }, "packages/server/stores/s3": { "name": "@walkeros/server-store-s3", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51971,14 +51975,14 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "s3mini": "^0.9.1" }, "devDependencies": {} }, "packages/server/stores/sheets": { "name": "@walkeros/server-store-sheets", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -51987,13 +51991,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": {} }, "packages/server/transformers/bot": { "name": "@walkeros/server-transformer-bot", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52002,13 +52006,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "isbot": "^5.1.39" } }, "packages/server/transformers/file": { "name": "@walkeros/server-transformer-file", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52017,15 +52021,15 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/server/transformers/fingerprint": { "name": "@walkeros/server-transformer-fingerprint", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52034,12 +52038,12 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" } }, "packages/server/transformers/validate": { @@ -52060,38 +52064,38 @@ }, "packages/transformers/demo": { "name": "@walkeros/transformer-demo", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/transformers/ga4": { "name": "@walkeros/transformer-ga4", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/transformers/validate": { "name": "@walkeros/transformer-validate", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { "@cfworker/json-schema": "^4.1.1", - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/web/core": { "name": "@walkeros/web-core", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52100,15 +52104,15 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } }, "packages/web/destinations/amplitude": { "name": "@walkeros/web-destination-amplitude", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52118,16 +52122,16 @@ "license": "MIT", "dependencies": { "@amplitude/unified": "^1.0.16", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/api": { "name": "@walkeros/web-destination-api", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52136,16 +52140,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/clarity": { "name": "@walkeros/web-destination-clarity", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52155,16 +52159,16 @@ "license": "MIT", "dependencies": { "@microsoft/clarity": "^1.0.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/d8a": { "name": "@walkeros/web-destination-d8a", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52174,16 +52178,16 @@ "license": "MIT", "dependencies": { "@d8a-tech/wt": "^1.2.1", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/fullstory": { "name": "@walkeros/web-destination-fullstory", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52193,16 +52197,16 @@ "license": "MIT", "dependencies": { "@fullstory/browser": "^2.0.8", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/gtag": { "name": "@walkeros/web-destination-gtag", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52211,13 +52215,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" } }, "packages/web/destinations/heap": { "name": "@walkeros/web-destination-heap", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52226,16 +52230,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/hotjar": { "name": "@walkeros/web-destination-hotjar", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52245,16 +52249,16 @@ "license": "MIT", "dependencies": { "@hotjar/browser": "^1.0.9", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/linkedin": { "name": "@walkeros/web-destination-linkedin", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52263,16 +52267,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/matomo": { "name": "@walkeros/web-destination-matomo", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52281,16 +52285,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/meta": { "name": "@walkeros/web-destination-meta", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52299,17 +52303,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { "@types/facebook-pixel": "^0.0.31", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/mixpanel": { "name": "@walkeros/web-destination-mixpanel", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52318,18 +52322,18 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", "mixpanel-browser": "^2.78.0" }, "devDependencies": { "@types/mixpanel-browser": "^2.50.0", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/optimizely": { "name": "@walkeros/web-destination-optimizely", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52339,16 +52343,34 @@ "license": "MIT", "dependencies": { "@optimizely/optimizely-sdk": "^6.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" + } + }, + "packages/web/destinations/piano": { + "name": "@walkeros/web-destination-piano", + "version": "4.2.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/elbwalker" + } + ], + "license": "MIT", + "dependencies": { + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" + }, + "devDependencies": { + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/pinterest": { "name": "@walkeros/web-destination-pinterest", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52357,16 +52379,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/piwikpro": { "name": "@walkeros/web-destination-piwikpro", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52375,16 +52397,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/plausible": { "name": "@walkeros/web-destination-plausible", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52393,16 +52415,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/posthog": { "name": "@walkeros/web-destination-posthog", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52411,17 +52433,17 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0", "posthog-js": "^1.367.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/segment": { "name": "@walkeros/web-destination-segment", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52431,16 +52453,16 @@ "license": "MIT", "dependencies": { "@segment/analytics-next": "^1.82.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/destinations/snowplow": { "name": "@walkeros/web-destination-snowplow", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52449,19 +52471,19 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { "@snowplow/browser-plugin-snowplow-ecommerce": "^4.6.8", "@snowplow/browser-tracker-core": "^4.6.8", - "@walkeros/collector": "4.1.2", - "@walkeros/config": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/config": "4.2.0" } }, "packages/web/destinations/tiktok": { "name": "@walkeros/web-destination-tiktok", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52470,16 +52492,16 @@ ], "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/sources/browser": { "name": "@walkeros/web-source-browser", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52488,14 +52510,14 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" } }, "packages/web/sources/cmps/cookiefirst": { "name": "@walkeros/web-source-cmp-cookiefirst", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52504,14 +52526,14 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": {} }, "packages/web/sources/cmps/cookiepro": { "name": "@walkeros/web-source-cmp-cookiepro", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52520,14 +52542,14 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": {} }, "packages/web/sources/cmps/usercentrics": { "name": "@walkeros/web-source-cmp-usercentrics", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52536,13 +52558,13 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" } }, "packages/web/sources/dataLayer": { "name": "@walkeros/web-source-datalayer", - "version": "4.1.2", + "version": "4.2.0", "funding": [ { "type": "GitHub Sponsors", @@ -52551,8 +52573,8 @@ ], "license": "MIT", "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": { "@types/gtag.js": "^0.0.20" @@ -52560,105 +52582,105 @@ }, "packages/web/sources/demo": { "name": "@walkeros/source-demo", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "packages/web/sources/session": { "name": "@walkeros/web-source-session", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" } }, "website": { "name": "@walkeros/website", - "version": "4.1.2", + "version": "4.2.0", "dependencies": { "@docusaurus/core": "^3.9.2", "@docusaurus/preset-classic": "^3.9.2", "@docusaurus/theme-live-codeblock": "^3.9.2", "@docusaurus/theme-mermaid": "^3.9.2", "@easyops-cn/docusaurus-search-local": "^0.55.1", - "@walkeros/collector": "^4.1.2", - "@walkeros/core": "^4.1.2", - "@walkeros/explorer": "^4.1.2", - "@walkeros/server-destination-amplitude": "^4.1.2", - "@walkeros/server-destination-api": "^4.1.2", - "@walkeros/server-destination-aws": "^4.1.2", - "@walkeros/server-destination-bing": "^4.1.2", - "@walkeros/server-destination-criteo": "^4.1.2", - "@walkeros/server-destination-customerio": "^4.1.2", - "@walkeros/server-destination-datamanager": "^4.1.2", - "@walkeros/server-destination-file": "^4.1.2", - "@walkeros/server-destination-gcp": "^4.1.2", - "@walkeros/server-destination-hubspot": "^4.1.2", - "@walkeros/server-destination-kafka": "^4.1.2", - "@walkeros/server-destination-klaviyo": "^4.1.2", - "@walkeros/server-destination-linkedin": "^4.1.2", - "@walkeros/server-destination-meta": "^4.1.2", - "@walkeros/server-destination-mixpanel": "^4.1.2", - "@walkeros/server-destination-mparticle": "^4.1.2", - "@walkeros/server-destination-pinterest": "^4.1.2", - "@walkeros/server-destination-posthog": "^4.1.2", - "@walkeros/server-destination-reddit": "^4.1.2", - "@walkeros/server-destination-redis": "^4.1.2", - "@walkeros/server-destination-rudderstack": "^4.1.2", - "@walkeros/server-destination-segment": "^4.1.2", - "@walkeros/server-destination-slack": "^4.1.2", - "@walkeros/server-destination-snapchat": "^4.1.2", - "@walkeros/server-destination-sqlite": "^4.1.2", - "@walkeros/server-destination-tiktok": "^4.1.2", - "@walkeros/server-destination-twitter": "^4.1.2", - "@walkeros/server-source-aws": "^4.1.2", - "@walkeros/server-source-express": "^4.1.2", - "@walkeros/server-source-fetch": "^4.1.2", - "@walkeros/server-source-gcp": "^4.1.2", - "@walkeros/server-store-fs": "^4.1.2", - "@walkeros/server-store-gcs": "^4.1.2", - "@walkeros/server-store-s3": "^4.1.2", - "@walkeros/server-store-sheets": "^4.1.2", - "@walkeros/server-transformer-bot": "^4.1.2", - "@walkeros/server-transformer-file": "^4.1.2", - "@walkeros/server-transformer-fingerprint": "^4.1.2", - "@walkeros/transformer-ga4": "^4.1.2", - "@walkeros/walker.js": "^4.1.2", - "@walkeros/web-destination-amplitude": "^4.1.2", - "@walkeros/web-destination-api": "^4.1.2", - "@walkeros/web-destination-clarity": "^4.1.2", - "@walkeros/web-destination-d8a": "^4.1.2", - "@walkeros/web-destination-fullstory": "^4.1.2", - "@walkeros/web-destination-gtag": "^4.1.2", - "@walkeros/web-destination-heap": "^4.1.2", - "@walkeros/web-destination-hotjar": "^4.1.2", - "@walkeros/web-destination-linkedin": "^4.1.2", - "@walkeros/web-destination-matomo": "^4.1.2", - "@walkeros/web-destination-meta": "^4.1.2", - "@walkeros/web-destination-mixpanel": "^4.1.2", - "@walkeros/web-destination-optimizely": "^4.1.2", - "@walkeros/web-destination-pinterest": "^4.1.2", - "@walkeros/web-destination-piwikpro": "^4.1.2", - "@walkeros/web-destination-plausible": "^4.1.2", - "@walkeros/web-destination-posthog": "^4.1.2", - "@walkeros/web-destination-segment": "^4.1.2", - "@walkeros/web-destination-snowplow": "^4.1.2", - "@walkeros/web-destination-tiktok": "^4.1.2", - "@walkeros/web-source-browser": "^4.1.2", - "@walkeros/web-source-cmp-cookiefirst": "^4.1.2", - "@walkeros/web-source-cmp-cookiepro": "^4.1.2", - "@walkeros/web-source-cmp-usercentrics": "^4.1.2", - "@walkeros/web-source-datalayer": "^4.1.2", - "@walkeros/web-source-session": "^4.1.2", + "@walkeros/collector": "^4.2.0", + "@walkeros/core": "^4.2.0", + "@walkeros/explorer": "^4.2.0", + "@walkeros/server-destination-amplitude": "^4.2.0", + "@walkeros/server-destination-api": "^4.2.0", + "@walkeros/server-destination-aws": "^4.2.0", + "@walkeros/server-destination-bing": "^4.2.0", + "@walkeros/server-destination-criteo": "^4.2.0", + "@walkeros/server-destination-customerio": "^4.2.0", + "@walkeros/server-destination-datamanager": "^4.2.0", + "@walkeros/server-destination-file": "^4.2.0", + "@walkeros/server-destination-gcp": "^4.2.0", + "@walkeros/server-destination-hubspot": "^4.2.0", + "@walkeros/server-destination-kafka": "^4.2.0", + "@walkeros/server-destination-klaviyo": "^4.2.0", + "@walkeros/server-destination-linkedin": "^4.2.0", + "@walkeros/server-destination-meta": "^4.2.0", + "@walkeros/server-destination-mixpanel": "^4.2.0", + "@walkeros/server-destination-mparticle": "^4.2.0", + "@walkeros/server-destination-pinterest": "^4.2.0", + "@walkeros/server-destination-posthog": "^4.2.0", + "@walkeros/server-destination-reddit": "^4.2.0", + "@walkeros/server-destination-redis": "^4.2.0", + "@walkeros/server-destination-rudderstack": "^4.2.0", + "@walkeros/server-destination-segment": "^4.2.0", + "@walkeros/server-destination-slack": "^4.2.0", + "@walkeros/server-destination-snapchat": "^4.2.0", + "@walkeros/server-destination-sqlite": "^4.2.0", + "@walkeros/server-destination-tiktok": "^4.2.0", + "@walkeros/server-destination-twitter": "^4.2.0", + "@walkeros/server-source-aws": "^4.2.0", + "@walkeros/server-source-express": "^4.2.0", + "@walkeros/server-source-fetch": "^4.2.0", + "@walkeros/server-source-gcp": "^4.2.0", + "@walkeros/server-store-fs": "^4.2.0", + "@walkeros/server-store-gcs": "^4.2.0", + "@walkeros/server-store-s3": "^4.2.0", + "@walkeros/server-store-sheets": "^4.2.0", + "@walkeros/server-transformer-bot": "^4.2.0", + "@walkeros/server-transformer-file": "^4.2.0", + "@walkeros/server-transformer-fingerprint": "^4.2.0", + "@walkeros/transformer-ga4": "^4.2.0", + "@walkeros/walker.js": "^4.2.0", + "@walkeros/web-destination-amplitude": "^4.2.0", + "@walkeros/web-destination-api": "^4.2.0", + "@walkeros/web-destination-clarity": "^4.2.0", + "@walkeros/web-destination-d8a": "^4.2.0", + "@walkeros/web-destination-fullstory": "^4.2.0", + "@walkeros/web-destination-gtag": "^4.2.0", + "@walkeros/web-destination-heap": "^4.2.0", + "@walkeros/web-destination-hotjar": "^4.2.0", + "@walkeros/web-destination-linkedin": "^4.2.0", + "@walkeros/web-destination-matomo": "^4.2.0", + "@walkeros/web-destination-meta": "^4.2.0", + "@walkeros/web-destination-mixpanel": "^4.2.0", + "@walkeros/web-destination-optimizely": "^4.2.0", + "@walkeros/web-destination-pinterest": "^4.2.0", + "@walkeros/web-destination-piwikpro": "^4.2.0", + "@walkeros/web-destination-plausible": "^4.2.0", + "@walkeros/web-destination-posthog": "^4.2.0", + "@walkeros/web-destination-segment": "^4.2.0", + "@walkeros/web-destination-snowplow": "^4.2.0", + "@walkeros/web-destination-tiktok": "^4.2.0", + "@walkeros/web-source-browser": "^4.2.0", + "@walkeros/web-source-cmp-cookiefirst": "^4.2.0", + "@walkeros/web-source-cmp-cookiepro": "^4.2.0", + "@walkeros/web-source-cmp-usercentrics": "^4.2.0", + "@walkeros/web-source-datalayer": "^4.2.0", + "@walkeros/web-source-session": "^4.2.0", "css-loader": "^7.1.2", "prism-react-renderer": "^2.4.1", "react": "^19.2.4", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 086361187..460f13b94 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,129 @@ # @walkeros/cli +## 4.2.0 + +### Minor Changes + +- 654ba38: `walkeros run` now accepts a `.tar.gz`/`.tgz` flow archive (URL or + local file): it extracts the bundle and its `node_modules/` and runs it, so + server flows with external step packages resolve them at runtime. + `walkeros bundle -o flow.tar.gz` packs a server bundle directory into that + archive. Web single-file bundles do not support archive output. +- 6a72a32: The MCP `flow_simulate` and `flow_bundle` tools now accept a cloud + flow id as `configPath`, so you can simulate or bundle a saved flow without a + manual file round-trip, and repeated simulations reuse a prebuilt bundle for + faster runs. Loading or fetching a flow with no default project set now + returns a clear "no default project" error, and `flow_examples` surfaces a + referenced package's shipped examples when a step has none inline. Bundle + stats now report the real total bundle size and list package names instead of + a per-package estimate, and the GA4 transformer documents its wiring contract + via package hints. +- 9d066cc: Preview creation can now target a deployed version: pass + `source: { kind: 'deployment-version', deploymentVersionId }` to + `createPreview` (CLI) or the MCP `flow_manage` `preview_create` action to + preview what's live instead of the flow's draft. Deleting a preview no longer + errors on the empty `204 No Content` response and resolves to a confirmation + record. +- 654ba38: Trace telemetry now activates at runtime by polling the deployment's + trace window, so web and server flows start and stop full-payload recording + without a redeploy. A future trace window upgrades a flow to full inbound and + outbound recording, and a null or past window reverts to the flow's `observe` + baseline and self-expires. +- e8f6909: Add a `secret_manage` MCP tool (and matching CLI functions) to manage + a flow's secrets. List secret metadata, create, rotate, and delete secrets + that flow steps reference as `$env.`. Values are write-only: encrypted + at rest and never returned or logged. +- 6a72a32: Source simulation gains a `collector` step that runs the real + collector enrichment and returns the fully enriched event. Transformer + simulation now accepts an optional raw `ingest` so request decoders like GA4 + can be tested standalone by supplying a `url`. The `flow_simulate` MCP tool + accepts the new collector step and the transformer `ingest` input. + +### Patch Changes + +- e8f6909: The bundled API contract (`spec.json` and the generated + `api.gen.d.ts`) now covers the full served surface, adding typed paths for + service accounts, invitations, billing, deployments and their sub-resources, + custom domains, entitlements, LLM settings, chat sessions, MCP tokens, + runners, and the package catalog. No runtime behavior change; clients gain + accurate types for these endpoints. +- 5b1a134: Browser flow bundles are now emitted as an IIFE so all internal code + stays inside a private scope. Previously the bundled helper functions could + leak onto the global `window` object and collide with other scripts on the + page, such as Google Analytics or a consent manager. Server bundles are + unchanged and still emit ESM. +- b98474f: Source-level mapping examples for the dataLayer source now key on the + prefix as entity and the gtag action as action: `mapping..`. + The shipped `examples/mapping.ts`, the comprehensive `flow-complete.json` + example, and the related docs reflect the convention, including the + special-cased actions `consent`, `config`, and `set` whose trailing token is + dropped by the entity/action split. +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- e8f6909: Documentation fix: server source `config.ingest` examples now use the + `map` operator with direct request field paths instead of a bare object. A + bare object like `{ url: 'req.url' }` is silently inert, so the ingest stayed + empty and downstream `ingest.*` fields never resolved. Affects package hints, + READMEs, the core source type docs, and the bundled CLI example. +- d39a6a1: Bundle skeletons now expose each package's dev exports through a lazy + loader. Production deploy bundles drop it entirely, so a shipped `walker.js` + never carries the dev schema graph, while in-process simulate and push inline + the dev exports so they resolve on a minimal runtime without the source + packages installed alongside. This fixes a browser deploy bundle that could + fail to build or retain dev schemas, and web simulation that could not find + the dev exports. +- 9d066cc: The MCP now loads flows by ID, requires the `flow_simulate` `step` + parameter it always enforced, and adds a `diagnostics` tool reporting client + and CLI versions plus backend reachability. Package discovery returns a + complete catalog with a warning when a source degrades, instead of silently + caching partial results, and returned flow configs are round-trip safe + (structural values stay literal). The demo source can now be simulated as a + source step; the CLI also exports `VERSION` and `resolveAppUrl` and clears a + deleted default project. +- e2a60ae: The wrapped browser bundle can now install a telemetry observer + without a trace poll. When the telemetry options omit `traceUrl`, the bundle + emits at a fixed level with no polling, suited to short-lived, URL-opted-in + sessions. Bundles that pass `traceUrl` keep the existing poll behavior. +- 23d4b86: New `@walkeros/transformer-validate` transformer validates events + against JSON Schema contracts. It runs in both web and server flows, supports + strict and pass modes, and writes the verdict and error list to configurable + paths so you can gate or observe event quality. + + The declarative per-step `validate` field on sources, transformers, and + destinations is removed. Define event shapes in the top-level `contract` and + enforce them at runtime by adding a `transformer-validate` step that + references them via `$contract.`; `format: true` still checks an event + is a valid `WalkerOS.PartialEvent`. Design-time validation now checks step + examples against the resolved contract. + +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] +- Updated dependencies [0cad016] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/server-core@4.2.0 + - @walkeros/server-destination-api@4.2.0 + - @walkeros/transformer-validate@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 6e194098c..2622d52fa 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/cli", - "version": "4.1.2", + "version": "4.2.0", "description": "walkerOS CLI - Bundle and deploy walkerOS components", "license": "MIT", "type": "module", @@ -52,11 +52,11 @@ }, "dependencies": { "@vercel/nft": "^1.10.2", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", - "@walkeros/server-destination-api": "4.1.2", - "@walkeros/transformer-validate": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", + "@walkeros/server-destination-api": "4.2.0", + "@walkeros/transformer-validate": "4.2.0", "ajv": "^8.17.1", "chalk": "^5.6.2", "ci-info": "^4.4.0", @@ -83,8 +83,8 @@ "@types/pacote": "^11.1.8", "@types/picomatch": "4.0.3", "@types/semver": "^7.7.1", - "@walkeros/config": "4.1.2", - "@walkeros/core": "4.1.2", + "@walkeros/config": "4.2.0", + "@walkeros/core": "4.2.0", "msw": "^2.12.10", "openapi-typescript": "^7.13.0", "tsx": "^4.21.0" diff --git a/packages/collector/CHANGELOG.md b/packages/collector/CHANGELOG.md index e5f538b14..ef2b2d7de 100644 --- a/packages/collector/CHANGELOG.md +++ b/packages/collector/CHANGELOG.md @@ -1,5 +1,82 @@ # @walkeros/collector +## 4.2.0 + +### Minor Changes + +- 654ba38: Consent and state-gated source reactions, such as the session + source's session start, now fire reliably regardless of source init order or + whether state arrives before or after `run`. The collector delivers each state + change exactly once per subscriber, so sources no longer need to re-fire on + repeat collector notifications of the same state. +- c27d3c1: Destinations now batch every event when you set `config.batch`, with + no `'* *'` wildcard mapping rule needed. A bare number sets the debounce wait; + `{ wait, size, age }` tunes the window. Rule-level `batch` still overrides per + event type, and pending batches now flush on shutdown. + + Migration: if you previously set `config.batch` alongside a single + non-wildcard rule `batch`, `config.batch` only capped that rule before; it now + batches all of the destination's events. To batch only specific events, drop + `config.batch` and set `batch` on those rules. + +- 126c0f1: A source or destination with a `require` gate now activates reliably + from the collector's current recorded state, regardless of source init order + or which source provided the required state (such as a CMP applying consent). + CMP and session sources now perform their initial consent read during + `init()`, so construction stays side-effect free. + +### Patch Changes + +- 76d32c1: Batched destination delivery now reports failures. A batch push that + fails (including BigQuery row errors) is routed to the dead-letter buffer and + counted as failed instead of being silently dropped, and graceful shutdown + waits for in-flight batches to finish. Also fixes a shutdown timer that could + delay process exit, and makes a zero millisecond batch wait (`batch: 0`) + correctly enable batching. +- 5b1a134: Lifecycle dispatch now fails closed when called with a non-collector + argument. If an internal function is ever reached by foreign code (for example + a global name collision), it returns quietly instead of throwing, so it can no + longer break the surrounding page. +- 908d6f0: Promote chain, route shape, and reference scanner helpers to the + public surface so app and tooling can resolve transformer chains, probe route + shapes, and discover `$flow.` references without reaching into internal + modules: + - collector: re-export `walkChain` (resolve a transformer chain start into the + ordered step IDs) and `extractTransformerNextMap` (read static next-links + from a `Transformer.Transformers` map). + - core: re-export `isRouteArray` and `isRouteConfigEntry` (the canonical shape + probes for `Transformer.Route`) and add `scanFlowRefs(value, into?)`, which + walks any value (string, object, array) and returns every `$flow.` + reference found, including refs nested inside `$code:` snippets. + +- 6a72a32: Source simulation gains a `collector` step that runs the real + collector enrichment and returns the fully enriched event. Transformer + simulation now accepts an optional raw `ingest` so request decoders like GA4 + can be tested standalone by supplying a `url`. The `flow_simulate` MCP tool + accepts the new collector step and the transformer `ingest` input. +- 3eb2467: Add a declarative `state` block for `get`/`set` against a store, + replacing `$code:` for simple fetch and stash. Available on source, + transformer, and destination steps; defaults to an in-memory store. +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/collector/package.json b/packages/collector/package.json index ff0230ec6..1cfbc954b 100644 --- a/packages/collector/package.json +++ b/packages/collector/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/collector", "description": "Unified platform-agnostic collector for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "main": "./dist/index.js", "module": "./dist/index.mjs", "types": "./dist/index.d.ts", @@ -32,7 +32,7 @@ "update": "npx npm-check-updates -u && npm update" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", @@ -61,6 +61,6 @@ } ], "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } } diff --git a/packages/config/CHANGELOG.md b/packages/config/CHANGELOG.md index 19b20567e..a9b969085 100644 --- a/packages/config/CHANGELOG.md +++ b/packages/config/CHANGELOG.md @@ -1,5 +1,7 @@ # @walkeros/config +## 4.2.0 + ## 4.1.2 ## 4.1.1 diff --git a/packages/config/package.json b/packages/config/package.json index 1408af811..d8054a7b6 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/config", - "version": "4.1.2", + "version": "4.2.0", "type": "module", "description": "Shared development configuration for walkerOS packages (TypeScript, ESLint, Jest, tsup)", "license": "MIT", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 0a9808341..bc42a1668 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,89 @@ # @walkeros/core +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. +- 654ba38: Trace telemetry now activates at runtime by polling the deployment's + trace window, so web and server flows start and stop full-payload recording + without a redeploy. A future trace window upgrades a flow to full inbound and + outbound recording, and a null or past window reverts to the flow's `observe` + baseline and self-expires. +- 6a72a32: Source simulation gains a `collector` step that runs the real + collector enrichment and returns the fully enriched event. Transformer + simulation now accepts an optional raw `ingest` so request decoders like GA4 + can be tested standalone by supplying a `url`. The `flow_simulate` MCP tool + accepts the new collector step and the transformer `ingest` input. +- 23d4b86: New `@walkeros/transformer-validate` transformer validates events + against JSON Schema contracts. It runs in both web and server flows, supports + strict and pass modes, and writes the verdict and error list to configurable + paths so you can gate or observe event quality. + + The declarative per-step `validate` field on sources, transformers, and + destinations is removed. Define event shapes in the top-level `contract` and + enforce them at runtime by adding a `transformer-validate` step that + references them via `$contract.`; `format: true` still checks an event + is a valid `WalkerOS.PartialEvent`. Design-time validation now checks step + examples against the resolved contract. + +### Patch Changes + +- 76d32c1: Batched destination delivery now reports failures. A batch push that + fails (including BigQuery row errors) is routed to the dead-letter buffer and + counted as failed instead of being silently dropped, and graceful shutdown + waits for in-flight batches to finish. Also fixes a shutdown timer that could + delay process exit, and makes a zero millisecond batch wait (`batch: 0`) + correctly enable batching. +- 908d6f0: Promote chain, route shape, and reference scanner helpers to the + public surface so app and tooling can resolve transformer chains, probe route + shapes, and discover `$flow.` references without reaching into internal + modules: + - collector: re-export `walkChain` (resolve a transformer chain start into the + ordered step IDs) and `extractTransformerNextMap` (read static next-links + from a `Transformer.Transformers` map). + - core: re-export `isRouteArray` and `isRouteConfigEntry` (the canonical shape + probes for `Transformer.Route`) and add `scanFlowRefs(value, into?)`, which + walks any value (string, object, array) and returns every `$flow.` + reference found, including refs nested inside `$code:` snippets. + +- f4a9013: Fix `$flow` reference scanning to match the resolver's name grammar, + so names with leading digits or hyphens no longer produce false-positive + references. +- d65bbde: `FlowState` records can now carry an optional `platform` field + (`'web' | 'server'`) identifying the runtime that produced the state. + Observers can use it alongside `flowId` to correlate telemetry across web and + server runtimes of the same flow. +- e8f6909: Documentation fix: server source `config.ingest` examples now use the + `map` operator with direct request field paths instead of a bare object. A + bare object like `{ url: 'req.url' }` is silently inert, so the ingest stayed + empty and downstream `ingest.*` fields never resolved. Affects package hints, + READMEs, the core source type docs, and the bundled CLI example. +- c27d3c1: Request caching now persists structured HTTP responses, including + binary bodies (`Buffer`, `Uint8Array`, `ArrayBuffer`), to byte/string store + backends (filesystem, S3, GCS, in-memory) and honors TTL. Previously, caching + a response could crash the process or never populate, and entries never + expired. Cached values now round-trip safely (binary bodies decode back as a + `Buffer`) and expire correctly instead of serving stale content after a + redeploy. +- 3eb2467: Add a declarative `state` block for `get`/`set` against a store, + replacing `$code:` for simple fetch and stash. Available on source, + transformer, and destination steps; defaults to an in-memory store. +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- 18c9469: Flow validation now scopes the "web flows cannot reference a managed + secret" check per flow. A multi-flow config where a web flow forwards to a + server flow that holds a `$secret.` reference now validates cleanly, instead + of the server flow's secret being wrongly flagged against the web flow. + ## 4.1.2 ## 4.1.1 diff --git a/packages/core/package.json b/packages/core/package.json index 5d1e67aa2..c0ca0db79 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/core", "description": "Core types and platform-agnostic utilities for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "main": "./dist/index.js", "module": "./dist/index.mjs", "types": "./dist/index.d.ts", diff --git a/packages/destinations/demo/CHANGELOG.md b/packages/destinations/demo/CHANGELOG.md index b020f5edb..7e3cbdc79 100644 --- a/packages/destinations/demo/CHANGELOG.md +++ b/packages/destinations/demo/CHANGELOG.md @@ -1,5 +1,28 @@ # @walkeros/destination-demo +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/destinations/demo/package.json b/packages/destinations/demo/package.json index 4b9b7c0b3..ab4d498cc 100644 --- a/packages/destinations/demo/package.json +++ b/packages/destinations/demo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/destination-demo", "description": "Demo destination for walkerOS - logs events to console", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -40,7 +40,7 @@ "test": "jest" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/mcps/mcp/CHANGELOG.md b/packages/mcps/mcp/CHANGELOG.md index f4545e3c0..494cd3db4 100644 --- a/packages/mcps/mcp/CHANGELOG.md +++ b/packages/mcps/mcp/CHANGELOG.md @@ -1,5 +1,71 @@ # @walkeros/mcp +## 4.2.0 + +### Minor Changes + +- 9d066cc: The MCP now loads flows by ID, requires the `flow_simulate` `step` + parameter it always enforced, and adds a `diagnostics` tool reporting client + and CLI versions plus backend reachability. Package discovery returns a + complete catalog with a warning when a source degrades, instead of silently + caching partial results, and returned flow configs are round-trip safe + (structural values stay literal). The demo source can now be simulated as a + source step; the CLI also exports `VERSION` and `resolveAppUrl` and clears a + deleted default project. +- 6a72a32: The MCP `flow_simulate` and `flow_bundle` tools now accept a cloud + flow id as `configPath`, so you can simulate or bundle a saved flow without a + manual file round-trip, and repeated simulations reuse a prebuilt bundle for + faster runs. Loading or fetching a flow with no default project set now + returns a clear "no default project" error, and `flow_examples` surfaces a + referenced package's shipped examples when a step has none inline. Bundle + stats now report the real total bundle size and list package names instead of + a per-package estimate, and the GA4 transformer documents its wiring contract + via package hints. +- 9d066cc: Preview creation can now target a deployed version: pass + `source: { kind: 'deployment-version', deploymentVersionId }` to + `createPreview` (CLI) or the MCP `flow_manage` `preview_create` action to + preview what's live instead of the flow's draft. Deleting a preview no longer + errors on the empty `204 No Content` response and resolves to a confirmation + record. +- e8f6909: Add a `secret_manage` MCP tool (and matching CLI functions) to manage + a flow's secrets. List secret metadata, create, rotate, and delete secrets + that flow steps reference as `$env.`. Values are write-only: encrypted + at rest and never returned or logged. + +### Patch Changes + +- 6a72a32: Source simulation gains a `collector` step that runs the real + collector enrichment and returns the fully enriched event. Transformer + simulation now accepts an optional raw `ingest` so request decoders like GA4 + can be tested standalone by supplying a `url`. The `flow_simulate` MCP tool + accepts the new collector step and the transformer `ingest` input. +- Updated dependencies [e8f6909] +- Updated dependencies [76d32c1] +- Updated dependencies [654ba38] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [b98474f] +- Updated dependencies [59aa9e1] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [d39a6a1] +- Updated dependencies [9d066cc] +- Updated dependencies [6a72a32] +- Updated dependencies [9d066cc] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [e8f6909] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [e2a60ae] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/cli@4.2.0 + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/mcps/mcp/package.json b/packages/mcps/mcp/package.json index 3b65aa0b7..af0c8408d 100644 --- a/packages/mcps/mcp/package.json +++ b/packages/mcps/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/mcp", - "version": "4.1.2", + "version": "4.2.0", "description": "MCP server for walkerOS flow development - discover packages, scaffold configs, validate, bundle, simulate, and test event pipelines", "license": "MIT", "type": "module", @@ -35,15 +35,15 @@ }, "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", - "@walkeros/cli": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/cli": "4.2.0", + "@walkeros/core": "4.2.0" }, "peerDependencies": { "zod": "^4.0" }, "devDependencies": { "@types/node": "^25.9.1", - "@walkeros/config": "4.1.2" + "@walkeros/config": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/mcps/source-browser/CHANGELOG.md b/packages/mcps/source-browser/CHANGELOG.md index 319792feb..dcc984dd6 100644 --- a/packages/mcps/source-browser/CHANGELOG.md +++ b/packages/mcps/source-browser/CHANGELOG.md @@ -1,5 +1,42 @@ # @walkeros/mcp-source-browser +## 4.2.0 + +### Minor Changes + +- 21ac669: Add the `data-elb_` scoped generic attribute. It carries the same + `key:value` properties as the blanket `data-elb-` generic, but only events + whose triggered element is nested below the `data-elb_` element receive them. + The `createTagger()` API gains a `scoped()` method and the `generate_tagging` + MCP tool gains a `scoped` input to produce it. Use `data-elb-` for properties + every trigger in an entity should carry, and `data-elb_` when only triggers + within a specific branch should. + +### Patch Changes + +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-source-browser@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/mcps/source-browser/package.json b/packages/mcps/source-browser/package.json index ac6ba97cf..c1388beb0 100644 --- a/packages/mcps/source-browser/package.json +++ b/packages/mcps/source-browser/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/mcp-source-browser", - "version": "4.1.2", + "version": "4.2.0", "description": "MCP server for walkerOS data-elb HTML tagging — generate, parse, and validate tracking attributes with real DOM parsing", "license": "MIT", "type": "module", @@ -31,16 +31,16 @@ }, "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-source-browser": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/web-source-browser": "4.2.0", "jsdom": "^29.1.1" }, "devDependencies": { "@types/jsdom": "^28.0.3", "@types/node": "^25.9.1", - "@walkeros/config": "4.1.2", - "@walkeros/collector": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/config": "4.2.0", + "@walkeros/collector": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "peerDependencies": { "zod": "^4.0" diff --git a/packages/server/core/CHANGELOG.md b/packages/server/core/CHANGELOG.md index 36e40b53a..3ad27e1e8 100644 --- a/packages/server/core/CHANGELOG.md +++ b/packages/server/core/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/server-core +## 4.2.0 + +### Patch Changes + +- 2d64ed2: `getHashServer` now accepts an `algorithm` option (`sha256` default, + or `md5`), so destinations can request either digest from the shared util + instead of calling Node crypto directly. Criteo's email hashing composes this + util for its md5, sha256, and sha256_md5 forms. No behavior change for + existing SHA-256 callers. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/core/package.json b/packages/server/core/package.json index 7776d1b5d..54bb15aa4 100644 --- a/packages/server/core/package.json +++ b/packages/server/core/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-core", "description": "Server-specific utilities for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -27,8 +27,8 @@ "update": "npx npm-check-updates -u && npm update" }, "devDependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", @@ -52,6 +52,6 @@ } ], "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } } diff --git a/packages/server/destinations/amplitude/CHANGELOG.md b/packages/server/destinations/amplitude/CHANGELOG.md index 0827703ed..34e55c3a1 100644 --- a/packages/server/destinations/amplitude/CHANGELOG.md +++ b/packages/server/destinations/amplitude/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-amplitude +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/amplitude/package.json b/packages/server/destinations/amplitude/package.json index 4b399cfab..9bd425eaf 100644 --- a/packages/server/destinations/amplitude/package.json +++ b/packages/server/destinations/amplitude/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-amplitude", "description": "Amplitude server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "@amplitude/analytics-node": "^1.5.53", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/api/CHANGELOG.md b/packages/server/destinations/api/CHANGELOG.md index 4f4b8b67b..045f74f04 100644 --- a/packages/server/destinations/api/CHANGELOG.md +++ b/packages/server/destinations/api/CHANGELOG.md @@ -1,5 +1,30 @@ # @walkeros/server-destination-api +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/api/package.json b/packages/server/destinations/api/package.json index 89724f63d..75bef876d 100644 --- a/packages/server/destinations/api/package.json +++ b/packages/server/destinations/api/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-api", "description": "API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,8 +38,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/destinations/aws/CHANGELOG.md b/packages/server/destinations/aws/CHANGELOG.md index 78e91f718..cf2c71ac2 100644 --- a/packages/server/destinations/aws/CHANGELOG.md +++ b/packages/server/destinations/aws/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-aws +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/aws/package.json b/packages/server/destinations/aws/package.json index 64c3d4cff..52420433e 100644 --- a/packages/server/destinations/aws/package.json +++ b/packages/server/destinations/aws/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-aws", "description": "AWS server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -38,8 +38,8 @@ "@aws-sdk/client-firehose": "^3.952.0", "@aws-sdk/client-sns": "^3.952.0", "@aws-sdk/client-sts": "^3.952.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/destinations/bing/CHANGELOG.md b/packages/server/destinations/bing/CHANGELOG.md index 4bca84fe7..fca53e722 100644 --- a/packages/server/destinations/bing/CHANGELOG.md +++ b/packages/server/destinations/bing/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-meta +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/bing/package.json b/packages/server/destinations/bing/package.json index cac6d850f..eb33db712 100644 --- a/packages/server/destinations/bing/package.json +++ b/packages/server/destinations/bing/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-bing", "description": "Microsoft Advertising (Bing UET CAPI) server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/criteo/CHANGELOG.md b/packages/server/destinations/criteo/CHANGELOG.md index be08aad77..4f28a31a2 100644 --- a/packages/server/destinations/criteo/CHANGELOG.md +++ b/packages/server/destinations/criteo/CHANGELOG.md @@ -1,5 +1,31 @@ # @walkeros/server-destination-criteo +## 4.2.0 + +### Patch Changes + +- 2d64ed2: `getHashServer` now accepts an `algorithm` option (`sha256` default, + or `md5`), so destinations can request either digest from the shared util + instead of calling Node crypto directly. Criteo's email hashing composes this + util for its md5, sha256, and sha256_md5 forms. No behavior change for + existing SHA-256 callers. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/criteo/package.json b/packages/server/destinations/criteo/package.json index 27530895e..3f33db31c 100644 --- a/packages/server/destinations/criteo/package.json +++ b/packages/server/destinations/criteo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-criteo", "description": "Criteo Events API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/customerio/CHANGELOG.md b/packages/server/destinations/customerio/CHANGELOG.md index 3df1ebc0a..bf5276d89 100644 --- a/packages/server/destinations/customerio/CHANGELOG.md +++ b/packages/server/destinations/customerio/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-customerio +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/customerio/package.json b/packages/server/destinations/customerio/package.json index 7f4973796..68fda9f09 100644 --- a/packages/server/destinations/customerio/package.json +++ b/packages/server/destinations/customerio/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-customerio", "description": "Customer.io messaging automation server destination for walkerOS (customerio-node, Track + Transactional API)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "customerio-node": "^4.2.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/datamanager/CHANGELOG.md b/packages/server/destinations/datamanager/CHANGELOG.md index ee371aafe..f5dbef609 100644 --- a/packages/server/destinations/datamanager/CHANGELOG.md +++ b/packages/server/destinations/datamanager/CHANGELOG.md @@ -1,5 +1,35 @@ # @walkeros/server-destination-datamanager +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/datamanager/package.json b/packages/server/destinations/datamanager/package.json index 0373b0918..4971a3fa3 100644 --- a/packages/server/destinations/datamanager/package.json +++ b/packages/server/destinations/datamanager/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-datamanager", "description": "Google Data Manager server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,12 +35,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "google-auth-library": "^10.5.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/file/CHANGELOG.md b/packages/server/destinations/file/CHANGELOG.md index d9908f545..94078ecf7 100644 --- a/packages/server/destinations/file/CHANGELOG.md +++ b/packages/server/destinations/file/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-file +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/file/package.json b/packages/server/destinations/file/package.json index a8598c897..86c9d1dcb 100644 --- a/packages/server/destinations/file/package.json +++ b/packages/server/destinations/file/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-file", "description": "Local file sink for walkerOS server flows (JSONL, TSV, CSV)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/gcp/CHANGELOG.md b/packages/server/destinations/gcp/CHANGELOG.md index 558e7de43..6b0f5c308 100644 --- a/packages/server/destinations/gcp/CHANGELOG.md +++ b/packages/server/destinations/gcp/CHANGELOG.md @@ -1,5 +1,45 @@ # @walkeros/server-destination-gcp +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. + +### Patch Changes + +- 76d32c1: Batched destination delivery now reports failures. A batch push that + fails (including BigQuery row errors) is routed to the dead-letter buffer and + counted as failed instead of being silently dropped, and graceful shutdown + waits for in-flight batches to finish. Also fixes a shutdown timer that could + delay process exit, and makes a zero millisecond batch wait (`batch: 0`) + correctly enable batching. +- db97edc: The BigQuery destination now creates the `timing` column as `FLOAT64` + instead of `INT64`. Event timing carries sub-second decimal precision, which + was previously truncated to whole numbers on write. Existing tables keep their + column type; alter it to `FLOAT64` to preserve precision going forward. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/gcp/package.json b/packages/server/destinations/gcp/package.json index 3ba849f36..e2ec6827d 100644 --- a/packages/server/destinations/gcp/package.json +++ b/packages/server/destinations/gcp/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-gcp", "description": "Google Cloud Platform server destinations for walkerOS (BigQuery, Pub/Sub)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -33,8 +33,8 @@ "@google-cloud/bigquery": "^8.1.1", "@google-cloud/bigquery-storage": "^5.1.0", "@google-cloud/pubsub": "^5.3.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/destinations/hubspot/CHANGELOG.md b/packages/server/destinations/hubspot/CHANGELOG.md index eef5d07cf..0a363d3a7 100644 --- a/packages/server/destinations/hubspot/CHANGELOG.md +++ b/packages/server/destinations/hubspot/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-hubspot +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/hubspot/package.json b/packages/server/destinations/hubspot/package.json index fd9c52f6d..873785dfe 100644 --- a/packages/server/destinations/hubspot/package.json +++ b/packages/server/destinations/hubspot/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-hubspot", "description": "HubSpot CRM server destination for walkerOS (@hubspot/api-client, custom events + contact upsert)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "@hubspot/api-client": "^13.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/kafka/CHANGELOG.md b/packages/server/destinations/kafka/CHANGELOG.md index 0be42eea1..616a748c4 100644 --- a/packages/server/destinations/kafka/CHANGELOG.md +++ b/packages/server/destinations/kafka/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-kafka +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/kafka/package.json b/packages/server/destinations/kafka/package.json index 06a1632a9..241f955f8 100644 --- a/packages/server/destinations/kafka/package.json +++ b/packages/server/destinations/kafka/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-kafka", "description": "Apache Kafka server destination for walkerOS (kafkajs, JSON serialization, GZIP compression)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "kafkajs": "^2.2.4", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/klaviyo/CHANGELOG.md b/packages/server/destinations/klaviyo/CHANGELOG.md index db6c1657c..db8478d61 100644 --- a/packages/server/destinations/klaviyo/CHANGELOG.md +++ b/packages/server/destinations/klaviyo/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-klaviyo +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/klaviyo/package.json b/packages/server/destinations/klaviyo/package.json index 28698329c..aaf2538f5 100644 --- a/packages/server/destinations/klaviyo/package.json +++ b/packages/server/destinations/klaviyo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-klaviyo", "description": "Klaviyo marketing automation server destination for walkerOS (klaviyo-api SDK, events + profile upserts)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "klaviyo-api": "^22.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/linkedin/CHANGELOG.md b/packages/server/destinations/linkedin/CHANGELOG.md index 77d54ae45..b306e910b 100644 --- a/packages/server/destinations/linkedin/CHANGELOG.md +++ b/packages/server/destinations/linkedin/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-linkedin +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/linkedin/package.json b/packages/server/destinations/linkedin/package.json index 95b4888f3..540164136 100644 --- a/packages/server/destinations/linkedin/package.json +++ b/packages/server/destinations/linkedin/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-linkedin", "description": "LinkedIn Conversions API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/meta/CHANGELOG.md b/packages/server/destinations/meta/CHANGELOG.md index 2374b0923..c2ffcb220 100644 --- a/packages/server/destinations/meta/CHANGELOG.md +++ b/packages/server/destinations/meta/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-meta +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/meta/package.json b/packages/server/destinations/meta/package.json index 3a92a9c0d..268e6de09 100644 --- a/packages/server/destinations/meta/package.json +++ b/packages/server/destinations/meta/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-meta", "description": "Meta server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/mixpanel/CHANGELOG.md b/packages/server/destinations/mixpanel/CHANGELOG.md index abe320da3..d28f7df44 100644 --- a/packages/server/destinations/mixpanel/CHANGELOG.md +++ b/packages/server/destinations/mixpanel/CHANGELOG.md @@ -1,5 +1,30 @@ # @walkeros/server-destination-mixpanel +## 4.2.0 + +### Patch Changes + +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/mixpanel/package.json b/packages/server/destinations/mixpanel/package.json index b4ac09360..aeca4fc7f 100644 --- a/packages/server/destinations/mixpanel/package.json +++ b/packages/server/destinations/mixpanel/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-mixpanel", "description": "Mixpanel server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,12 +35,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "mixpanel": "^0.22.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/mparticle/CHANGELOG.md b/packages/server/destinations/mparticle/CHANGELOG.md index ac053b73b..dbb3922ff 100644 --- a/packages/server/destinations/mparticle/CHANGELOG.md +++ b/packages/server/destinations/mparticle/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-mparticle +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/mparticle/package.json b/packages/server/destinations/mparticle/package.json index b3006da93..9e8039cc6 100644 --- a/packages/server/destinations/mparticle/package.json +++ b/packages/server/destinations/mparticle/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-mparticle", "description": "mParticle server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/pinterest/CHANGELOG.md b/packages/server/destinations/pinterest/CHANGELOG.md index 62f51ba9f..b2fce6633 100644 --- a/packages/server/destinations/pinterest/CHANGELOG.md +++ b/packages/server/destinations/pinterest/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-pinterest +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/pinterest/package.json b/packages/server/destinations/pinterest/package.json index f91cb0257..ae1d0c394 100644 --- a/packages/server/destinations/pinterest/package.json +++ b/packages/server/destinations/pinterest/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-pinterest", "description": "Pinterest server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/posthog/CHANGELOG.md b/packages/server/destinations/posthog/CHANGELOG.md index 57d9e3b2b..6dbc62679 100644 --- a/packages/server/destinations/posthog/CHANGELOG.md +++ b/packages/server/destinations/posthog/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-posthog +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/posthog/package.json b/packages/server/destinations/posthog/package.json index 4c06bdd3e..43577aa7a 100644 --- a/packages/server/destinations/posthog/package.json +++ b/packages/server/destinations/posthog/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-posthog", "description": "PostHog server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,12 +35,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "posthog-node": "^5.0.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/reddit/CHANGELOG.md b/packages/server/destinations/reddit/CHANGELOG.md index 4b31c60b7..4d8417a4b 100644 --- a/packages/server/destinations/reddit/CHANGELOG.md +++ b/packages/server/destinations/reddit/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-reddit +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/reddit/package.json b/packages/server/destinations/reddit/package.json index dd7f2d9da..000ff53a1 100644 --- a/packages/server/destinations/reddit/package.json +++ b/packages/server/destinations/reddit/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-reddit", "description": "Reddit server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/redis/CHANGELOG.md b/packages/server/destinations/redis/CHANGELOG.md index 57d1a07cb..5b8c7e7a3 100644 --- a/packages/server/destinations/redis/CHANGELOG.md +++ b/packages/server/destinations/redis/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-redis +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/redis/package.json b/packages/server/destinations/redis/package.json index 8134be6f0..d7d100f9c 100644 --- a/packages/server/destinations/redis/package.json +++ b/packages/server/destinations/redis/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-redis", "description": "Redis Streams server destination for walkerOS (ioredis, XADD, pipeline batching)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "ioredis": "^5.10.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/rudderstack/CHANGELOG.md b/packages/server/destinations/rudderstack/CHANGELOG.md index fe405c573..c6ce5ef3d 100644 --- a/packages/server/destinations/rudderstack/CHANGELOG.md +++ b/packages/server/destinations/rudderstack/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-rudderstack +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/rudderstack/package.json b/packages/server/destinations/rudderstack/package.json index 71782bbe4..0c1fa69cc 100644 --- a/packages/server/destinations/rudderstack/package.json +++ b/packages/server/destinations/rudderstack/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-rudderstack", "description": "RudderStack CDP server destination for walkerOS (@rudderstack/rudder-sdk-node, full Segment Spec)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "@rudderstack/rudder-sdk-node": "^3.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/segment/CHANGELOG.md b/packages/server/destinations/segment/CHANGELOG.md index 49ad8e926..d19df7618 100644 --- a/packages/server/destinations/segment/CHANGELOG.md +++ b/packages/server/destinations/segment/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-segment +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/segment/package.json b/packages/server/destinations/segment/package.json index 6d7d6572e..0e23c629f 100644 --- a/packages/server/destinations/segment/package.json +++ b/packages/server/destinations/segment/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-segment", "description": "Segment CDP server destination for walkerOS (@segment/analytics-node, full Segment Spec)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "@segment/analytics-node": "^3.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/slack/CHANGELOG.md b/packages/server/destinations/slack/CHANGELOG.md index 54ec308d9..638c03ad0 100644 --- a/packages/server/destinations/slack/CHANGELOG.md +++ b/packages/server/destinations/slack/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-slack +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/slack/package.json b/packages/server/destinations/slack/package.json index a96c6bce1..b3efca304 100644 --- a/packages/server/destinations/slack/package.json +++ b/packages/server/destinations/slack/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-slack", "description": "Slack server destination for walkerOS (Incoming Webhook + @slack/web-api, Block Kit, channel routing, threading, DMs)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -36,11 +36,11 @@ }, "dependencies": { "@slack/web-api": "^7.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/snapchat/CHANGELOG.md b/packages/server/destinations/snapchat/CHANGELOG.md index fc6e1f836..f44319333 100644 --- a/packages/server/destinations/snapchat/CHANGELOG.md +++ b/packages/server/destinations/snapchat/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-meta +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/snapchat/package.json b/packages/server/destinations/snapchat/package.json index a275a94d4..9cf791097 100644 --- a/packages/server/destinations/snapchat/package.json +++ b/packages/server/destinations/snapchat/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-snapchat", "description": "Snapchat Conversions API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/sqlite/CHANGELOG.md b/packages/server/destinations/sqlite/CHANGELOG.md index d2aaba8e1..882318933 100644 --- a/packages/server/destinations/sqlite/CHANGELOG.md +++ b/packages/server/destinations/sqlite/CHANGELOG.md @@ -1,5 +1,34 @@ # @walkeros/server-destination-sqlite +## 4.2.0 + +### Patch Changes + +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/sqlite/package.json b/packages/server/destinations/sqlite/package.json index 85ee245d1..f7d4365ff 100644 --- a/packages/server/destinations/sqlite/package.json +++ b/packages/server/destinations/sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-sqlite", "description": "SQLite server destination for walkerOS (local via better-sqlite3, remote via libSQL/Turso)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,8 +38,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "peerDependencies": { "better-sqlite3": "^12.0.0", @@ -54,7 +54,7 @@ } }, "devDependencies": { - "@walkeros/collector": "4.1.2", + "@walkeros/collector": "4.2.0", "better-sqlite3": "^12.0.0", "@libsql/client": "^0.17.0", "@types/better-sqlite3": "^7.6.13" diff --git a/packages/server/destinations/tiktok/CHANGELOG.md b/packages/server/destinations/tiktok/CHANGELOG.md index 55e55309c..2210f6b81 100644 --- a/packages/server/destinations/tiktok/CHANGELOG.md +++ b/packages/server/destinations/tiktok/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-meta +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/tiktok/package.json b/packages/server/destinations/tiktok/package.json index abeb432e5..17f849ae3 100644 --- a/packages/server/destinations/tiktok/package.json +++ b/packages/server/destinations/tiktok/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-tiktok", "description": "TikTok Events API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,11 +35,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/destinations/twitter/CHANGELOG.md b/packages/server/destinations/twitter/CHANGELOG.md index 658db0726..8c4e8ac55 100644 --- a/packages/server/destinations/twitter/CHANGELOG.md +++ b/packages/server/destinations/twitter/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/server-destination-twitter +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/destinations/twitter/package.json b/packages/server/destinations/twitter/package.json index ff3caa9c3..784d8bfa3 100644 --- a/packages/server/destinations/twitter/package.json +++ b/packages/server/destinations/twitter/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-destination-twitter", "description": "X (Twitter) Conversions API server destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "exports": { ".": { @@ -35,12 +35,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2", + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0", "oauth-1.0a": "^2.2.6" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/sources/aws/CHANGELOG.md b/packages/server/sources/aws/CHANGELOG.md index ff069b8f7..f5488791c 100644 --- a/packages/server/sources/aws/CHANGELOG.md +++ b/packages/server/sources/aws/CHANGELOG.md @@ -1,5 +1,28 @@ # @walkeros/server-source-aws +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/sources/aws/package.json b/packages/server/sources/aws/package.json index 3c5daf7ca..019ca18ed 100644 --- a/packages/server/sources/aws/package.json +++ b/packages/server/sources/aws/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-source-aws", "description": "AWS server sources for walkerOS (Lambda, API Gateway, Function URLs)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -23,14 +23,14 @@ "dependencies": { "@aws-sdk/client-sqs": "^3.952.0", "@aws-sdk/client-sns": "^3.952.0", - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "peerDependencies": { "@types/aws-lambda": "^8.10.0" }, "devDependencies": { "@types/aws-lambda": "^8.10.159", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/sources/express/CHANGELOG.md b/packages/server/sources/express/CHANGELOG.md index 988e35884..3a0402cc3 100644 --- a/packages/server/sources/express/CHANGELOG.md +++ b/packages/server/sources/express/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/server-source-express +## 4.2.0 + +### Patch Changes + +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/sources/express/package.json b/packages/server/sources/express/package.json index a9e5e041d..9a9180d21 100644 --- a/packages/server/sources/express/package.json +++ b/packages/server/sources/express/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-source-express", "description": "Express server source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -20,8 +20,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", "express": "^5.2.1", "cors": "^2.8.5" }, diff --git a/packages/server/sources/fetch/CHANGELOG.md b/packages/server/sources/fetch/CHANGELOG.md index 51cdc3274..5c7917746 100644 --- a/packages/server/sources/fetch/CHANGELOG.md +++ b/packages/server/sources/fetch/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/server-source-fetch +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/sources/fetch/package.json b/packages/server/sources/fetch/package.json index cc5d2f37b..13ed5853b 100644 --- a/packages/server/sources/fetch/package.json +++ b/packages/server/sources/fetch/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-source-fetch", "description": "Web Standard Fetch API source for walkerOS (Cloudflare Workers, Vercel Edge, Deno, Bun)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -20,8 +20,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/sources/gcp/CHANGELOG.md b/packages/server/sources/gcp/CHANGELOG.md index 35ce78096..ee1f2d552 100644 --- a/packages/server/sources/gcp/CHANGELOG.md +++ b/packages/server/sources/gcp/CHANGELOG.md @@ -1,5 +1,46 @@ # @walkeros/server-source-gcp +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. + +### Patch Changes + +- 59aa9e1: Refresh runtime dependencies to their latest majors: Express 5, + Commander 15, better-sqlite3 12, @libsql/client 0.17, Google Cloud + functions-framework 5, mixpanel 0.22, and jsdom 29. No public API changes; + installs now pull the current versions of these SDKs. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/sources/gcp/package.json b/packages/server/sources/gcp/package.json index c6f98224d..53210670c 100644 --- a/packages/server/sources/gcp/package.json +++ b/packages/server/sources/gcp/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-source-gcp", "description": "Google Cloud Platform server sources for walkerOS (Cloud Functions, Pub/Sub)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -21,8 +21,8 @@ }, "dependencies": { "@google-cloud/pubsub": "^5.3.0", - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "peerDependencies": { "@google-cloud/functions-framework": "^5.0.2" diff --git a/packages/server/stores/fs/CHANGELOG.md b/packages/server/stores/fs/CHANGELOG.md index 25e5ee37f..575d235f2 100644 --- a/packages/server/stores/fs/CHANGELOG.md +++ b/packages/server/stores/fs/CHANGELOG.md @@ -1,5 +1,36 @@ # @walkeros/server-store-fs +## 4.2.0 + +### Patch Changes + +- c27d3c1: Request caching now persists structured HTTP responses, including + binary bodies (`Buffer`, `Uint8Array`, `ArrayBuffer`), to byte/string store + backends (filesystem, S3, GCS, in-memory) and honors TTL. Previously, caching + a response could crash the process or never populate, and entries never + expired. Cached values now round-trip safely (binary bodies decode back as a + `Buffer`) and expire correctly instead of serving stale content after a + redeploy. +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/stores/fs/package.json b/packages/server/stores/fs/package.json index 3fa3c2eea..1f7bea177 100644 --- a/packages/server/stores/fs/package.json +++ b/packages/server/stores/fs/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-store-fs", "description": "Filesystem store for walkerOS server - reads and writes files via the Store interface", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,10 +33,10 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/stores/gcs/CHANGELOG.md b/packages/server/stores/gcs/CHANGELOG.md index 617f5d76c..118a74ad7 100644 --- a/packages/server/stores/gcs/CHANGELOG.md +++ b/packages/server/stores/gcs/CHANGELOG.md @@ -1,5 +1,38 @@ # @walkeros/server-store-gcs +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. + +### Patch Changes + +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/stores/gcs/package.json b/packages/server/stores/gcs/package.json index 16130c4eb..fc186ae2e 100644 --- a/packages/server/stores/gcs/package.json +++ b/packages/server/stores/gcs/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-store-gcs", "description": "Google Cloud Storage for walkerOS server flows", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,7 +33,7 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/stores/s3/CHANGELOG.md b/packages/server/stores/s3/CHANGELOG.md index 95a56601c..e95e9259e 100644 --- a/packages/server/stores/s3/CHANGELOG.md +++ b/packages/server/stores/s3/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/server-store-s3 +## 4.2.0 + +### Patch Changes + +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/stores/s3/package.json b/packages/server/stores/s3/package.json index 4ec5dfdec..23707e94a 100644 --- a/packages/server/stores/s3/package.json +++ b/packages/server/stores/s3/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-store-s3", "description": "S3-compatible object storage for walkerOS server flows", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,7 +33,7 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "s3mini": "^0.9.1" }, "devDependencies": {}, diff --git a/packages/server/stores/sheets/CHANGELOG.md b/packages/server/stores/sheets/CHANGELOG.md index e27002a26..7f361bdd5 100644 --- a/packages/server/stores/sheets/CHANGELOG.md +++ b/packages/server/stores/sheets/CHANGELOG.md @@ -1,5 +1,38 @@ # @walkeros/server-store-sheets +## 4.2.0 + +### Minor Changes + +- e8f6909: Add an optional, strictly-typed `config.credentials` field to + destinations, stores, and sources. Service-account credentials now configure + under `config.credentials`, validated per package and resolved from `$env`. + The package-specific `settings.credentials` still works but is deprecated, so + move credentials to `config.credentials`. The raw `settings.` passthrough + (e.g. `settings.bigquery`) is unchanged. + +### Patch Changes + +- 5b1a134: Stores now use one structured value type with binary (`Uint8Array`) + as a first-class leaf, serialized by a shared codec. A new `file: true` store + option serves byte-exact assets such as walker.js (default is structured + key-value). TTL is owned by the cache layer, not the store. Sheets is + structured-only and rejects `file: true`. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/stores/sheets/package.json b/packages/server/stores/sheets/package.json index 5ecad3933..60770d885 100644 --- a/packages/server/stores/sheets/package.json +++ b/packages/server/stores/sheets/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-store-sheets", "description": "Google Sheets store for walkerOS server flows", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,7 +33,7 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/server/transformers/bot/CHANGELOG.md b/packages/server/transformers/bot/CHANGELOG.md index 19bdec1b3..c8829491f 100644 --- a/packages/server/transformers/bot/CHANGELOG.md +++ b/packages/server/transformers/bot/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/server-transformer-bot +## 4.2.0 + +### Patch Changes + +- e8f6909: Documentation fix: server source `config.ingest` examples now use the + `map` operator with direct request field paths instead of a bare object. A + bare object like `{ url: 'req.url' }` is silently inert, so the ingest stayed + empty and downstream `ingest.*` fields never resolved. Affects package hints, + READMEs, the core source type docs, and the bundled CLI example. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/transformers/bot/package.json b/packages/server/transformers/bot/package.json index 2235c17dc..0ec53340b 100644 --- a/packages/server/transformers/bot/package.json +++ b/packages/server/transformers/bot/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-transformer-bot", "description": "Server-side bot and AI-agent detection transformer for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -28,7 +28,7 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "isbot": "^5.1.39" }, "repository": { diff --git a/packages/server/transformers/file/CHANGELOG.md b/packages/server/transformers/file/CHANGELOG.md index f4c11b62d..ba4b80e7a 100644 --- a/packages/server/transformers/file/CHANGELOG.md +++ b/packages/server/transformers/file/CHANGELOG.md @@ -1,5 +1,24 @@ # @walkeros/server-transformer-file +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/transformers/file/package.json b/packages/server/transformers/file/package.json index 73108f12c..6b23c28ef 100644 --- a/packages/server/transformers/file/package.json +++ b/packages/server/transformers/file/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-transformer-file", "description": "File serving transformer for walkerOS - serves static files via pluggable Store backend", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -28,10 +28,10 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/server/transformers/fingerprint/CHANGELOG.md b/packages/server/transformers/fingerprint/CHANGELOG.md index a57452b97..17e496272 100644 --- a/packages/server/transformers/fingerprint/CHANGELOG.md +++ b/packages/server/transformers/fingerprint/CHANGELOG.md @@ -1,5 +1,31 @@ # @walkeros/server-transformer-fingerprint +## 4.2.0 + +### Patch Changes + +- e8f6909: Documentation fix: server source `config.ingest` examples now use the + `map` operator with direct request field paths instead of a bare object. A + bare object like `{ url: 'req.url' }` is silently inert, so the ingest stayed + empty and downstream `ingest.*` fields never resolved. Affects package hints, + READMEs, the core source type docs, and the bundled CLI example. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/server-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/server/transformers/fingerprint/package.json b/packages/server/transformers/fingerprint/package.json index dca0bdf56..ff9ab6bc4 100644 --- a/packages/server/transformers/fingerprint/package.json +++ b/packages/server/transformers/fingerprint/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/server-transformer-fingerprint", "description": "Fingerprint transformer for walkerOS server - hash configurable fields for session continuity", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -27,8 +27,8 @@ "update": "npx npm-check-updates -u && npm update" }, "devDependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", @@ -60,7 +60,7 @@ } ], "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/server-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/server-core": "4.2.0" } } diff --git a/packages/transformers/demo/CHANGELOG.md b/packages/transformers/demo/CHANGELOG.md index 108f4bf7a..4e2c0f375 100644 --- a/packages/transformers/demo/CHANGELOG.md +++ b/packages/transformers/demo/CHANGELOG.md @@ -1,5 +1,28 @@ # @walkeros/transformer-demo +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/transformers/demo/package.json b/packages/transformers/demo/package.json index 9a73dfbf5..33c122b95 100644 --- a/packages/transformers/demo/package.json +++ b/packages/transformers/demo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/transformer-demo", "description": "Demo transformer for walkerOS - logs and passes through events", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -26,7 +26,7 @@ "test": "jest" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/transformers/ga4/CHANGELOG.md b/packages/transformers/ga4/CHANGELOG.md index fa01293cf..726dcd16a 100644 --- a/packages/transformers/ga4/CHANGELOG.md +++ b/packages/transformers/ga4/CHANGELOG.md @@ -1,5 +1,38 @@ # @walkeros/transformer-ga4 +## 4.2.0 + +### Patch Changes + +- e8f6909: Documentation fix: server source `config.ingest` examples now use the + `map` operator with direct request field paths instead of a bare object. A + bare object like `{ url: 'req.url' }` is silently inert, so the ingest stayed + empty and downstream `ingest.*` fields never resolved. Affects package hints, + READMEs, the core source type docs, and the bundled CLI example. +- 6a72a32: The MCP `flow_simulate` and `flow_bundle` tools now accept a cloud + flow id as `configPath`, so you can simulate or bundle a saved flow without a + manual file round-trip, and repeated simulations reuse a prebuilt bundle for + faster runs. Loading or fetching a flow with no default project set now + returns a clear "no default project" error, and `flow_examples` surfaces a + referenced package's shipped examples when a step has none inline. Bundle + stats now report the real total bundle size and list package names instead of + a per-package estimate, and the GA4 transformer documents its wiring contract + via package hints. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/transformers/ga4/package.json b/packages/transformers/ga4/package.json index b0bd0754c..29b896727 100644 --- a/packages/transformers/ga4/package.json +++ b/packages/transformers/ga4/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/transformer-ga4", "description": "Decodes GA4 Measurement Protocol v2 (gtag /g/collect) into walkerOS events", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -32,10 +32,10 @@ "test": "jest" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/transformers/validate/CHANGELOG.md b/packages/transformers/validate/CHANGELOG.md new file mode 100644 index 000000000..8f02b18c2 --- /dev/null +++ b/packages/transformers/validate/CHANGELOG.md @@ -0,0 +1,37 @@ +# @walkeros/transformer-validate + +## 4.2.0 + +### Minor Changes + +- 23d4b86: New `@walkeros/transformer-validate` transformer validates events + against JSON Schema contracts. It runs in both web and server flows, supports + strict and pass modes, and writes the verdict and error list to configurable + paths so you can gate or observe event quality. + + The declarative per-step `validate` field on sources, transformers, and + destinations is removed. Define event shapes in the top-level `contract` and + enforce them at runtime by adding a `transformer-validate` step that + references them via `$contract.`; `format: true` still checks an event + is a valid `WalkerOS.PartialEvent`. Design-time validation now checks step + examples against the resolved contract. + +### Patch Changes + +- 0cad016: Fix schema-only contract rules being skipped during validation. A + contract rule that carries only a whole-event `schema` (no `events` block) is + now enforced instead of being treated as an inert inline schema. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 diff --git a/packages/transformers/validate/package.json b/packages/transformers/validate/package.json index 419da6783..2ae70ed23 100644 --- a/packages/transformers/validate/package.json +++ b/packages/transformers/validate/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/transformer-validate", "description": "JSON Schema contract validation transformer for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,11 +33,11 @@ "test": "jest" }, "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "@cfworker/json-schema": "^4.1.1" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/core/CHANGELOG.md b/packages/web/core/CHANGELOG.md index cccab5121..404120c19 100644 --- a/packages/web/core/CHANGELOG.md +++ b/packages/web/core/CHANGELOG.md @@ -1,5 +1,31 @@ # @walkeros/web-core +## 4.2.0 + +### Minor Changes + +- d65bbde: `getEnv` is now generic over a destination's `Env`. Passing your env + type (`getEnv(env)`) returns `window`/`document` as the real DOM globals + merged with your declared SDK shape, so destinations no longer need to cast + browser globals (`as Window`/`as Document`) at the call site. + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/core/package.json b/packages/web/core/package.json index a7d2919ba..5a4736a7d 100644 --- a/packages/web/core/package.json +++ b/packages/web/core/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-core", "description": "Web-specific utilities for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -27,7 +27,7 @@ "update": "npx npm-check-updates -u && npm update" }, "devDependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", @@ -51,6 +51,6 @@ } ], "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" } } diff --git a/packages/web/destinations/amplitude/CHANGELOG.md b/packages/web/destinations/amplitude/CHANGELOG.md index d08e741fd..38fafdb3e 100644 --- a/packages/web/destinations/amplitude/CHANGELOG.md +++ b/packages/web/destinations/amplitude/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-amplitude +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/amplitude/package.json b/packages/web/destinations/amplitude/package.json index 99900c60a..e8b5a57e5 100644 --- a/packages/web/destinations/amplitude/package.json +++ b/packages/web/destinations/amplitude/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-amplitude", "description": "Amplitude web destination for walkerOS (analytics, session replay, experiments, guides & surveys)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@amplitude/unified": "^1.0.16", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/api/CHANGELOG.md b/packages/web/destinations/api/CHANGELOG.md index a76ef01fe..f58154d34 100644 --- a/packages/web/destinations/api/CHANGELOG.md +++ b/packages/web/destinations/api/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/web-destination-api +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/api/package.json b/packages/web/destinations/api/package.json index a43658b1d..4e16814d0 100644 --- a/packages/web/destinations/api/package.json +++ b/packages/web/destinations/api/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-api", "description": "Web API destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/clarity/CHANGELOG.md b/packages/web/destinations/clarity/CHANGELOG.md index bc8c162b9..86c1d881d 100644 --- a/packages/web/destinations/clarity/CHANGELOG.md +++ b/packages/web/destinations/clarity/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-clarity +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/clarity/package.json b/packages/web/destinations/clarity/package.json index e1b55cb44..26df7bf19 100644 --- a/packages/web/destinations/clarity/package.json +++ b/packages/web/destinations/clarity/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-clarity", "description": "Microsoft Clarity web destination for walkerOS (session replay, heatmaps, smart events)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@microsoft/clarity": "^1.0.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/d8a/CHANGELOG.md b/packages/web/destinations/d8a/CHANGELOG.md index a2f99a0b3..b68fd9913 100644 --- a/packages/web/destinations/d8a/CHANGELOG.md +++ b/packages/web/destinations/d8a/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-d8a +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/d8a/package.json b/packages/web/destinations/d8a/package.json index 0eded53f5..9970cd2b7 100644 --- a/packages/web/destinations/d8a/package.json +++ b/packages/web/destinations/d8a/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-d8a", "description": "d8a web destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ }, "dependencies": { "@d8a-tech/wt": "^1.2.1", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/fullstory/CHANGELOG.md b/packages/web/destinations/fullstory/CHANGELOG.md index 4d20df1e4..2b9451344 100644 --- a/packages/web/destinations/fullstory/CHANGELOG.md +++ b/packages/web/destinations/fullstory/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-fullstory +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/fullstory/package.json b/packages/web/destinations/fullstory/package.json index 9b2c8d0ab..96ea29ebc 100644 --- a/packages/web/destinations/fullstory/package.json +++ b/packages/web/destinations/fullstory/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-fullstory", "description": "FullStory web destination for walkerOS (session replay, custom events, user/page properties)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@fullstory/browser": "^2.0.8", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/gtag/CHANGELOG.md b/packages/web/destinations/gtag/CHANGELOG.md index fd91d6f80..1824dd23c 100644 --- a/packages/web/destinations/gtag/CHANGELOG.md +++ b/packages/web/destinations/gtag/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/web-destination-gtag +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/gtag/package.json b/packages/web/destinations/gtag/package.json index 8081c737d..9c5e0e07d 100644 --- a/packages/web/destinations/gtag/package.json +++ b/packages/web/destinations/gtag/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-gtag", "description": "Unified Google destination for walkerOS (GA4, Ads, GTM)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,8 +38,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/heap/CHANGELOG.md b/packages/web/destinations/heap/CHANGELOG.md index 921e90c08..c7a0e0128 100644 --- a/packages/web/destinations/heap/CHANGELOG.md +++ b/packages/web/destinations/heap/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-heap +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/heap/package.json b/packages/web/destinations/heap/package.json index 8d6e5ba4f..7b1e68556 100644 --- a/packages/web/destinations/heap/package.json +++ b/packages/web/destinations/heap/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-heap", "description": "Heap web destination for walkerOS (product analytics, auto-capture)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/hotjar/CHANGELOG.md b/packages/web/destinations/hotjar/CHANGELOG.md index f4a8d108c..904125f57 100644 --- a/packages/web/destinations/hotjar/CHANGELOG.md +++ b/packages/web/destinations/hotjar/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-hotjar +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/hotjar/package.json b/packages/web/destinations/hotjar/package.json index 34019a5a8..a7be071c8 100644 --- a/packages/web/destinations/hotjar/package.json +++ b/packages/web/destinations/hotjar/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-hotjar", "description": "Hotjar web destination for walkerOS (session replay, heatmaps, surveys)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@hotjar/browser": "^1.0.9", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/linkedin/CHANGELOG.md b/packages/web/destinations/linkedin/CHANGELOG.md index fa1140d81..07dd162a8 100644 --- a/packages/web/destinations/linkedin/CHANGELOG.md +++ b/packages/web/destinations/linkedin/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-linkedin +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/linkedin/package.json b/packages/web/destinations/linkedin/package.json index 83a4e97bf..d10701ad9 100644 --- a/packages/web/destinations/linkedin/package.json +++ b/packages/web/destinations/linkedin/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-linkedin", "description": "LinkedIn Insight Tag web destination for walkerOS (conversion tracking, retargeting, demographic insights)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/matomo/CHANGELOG.md b/packages/web/destinations/matomo/CHANGELOG.md index 3bc54fb9f..2a99ca7a2 100644 --- a/packages/web/destinations/matomo/CHANGELOG.md +++ b/packages/web/destinations/matomo/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-matomo +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/matomo/package.json b/packages/web/destinations/matomo/package.json index c97a139f3..eb82f068b 100644 --- a/packages/web/destinations/matomo/package.json +++ b/packages/web/destinations/matomo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-matomo", "description": "Matomo web destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/meta/CHANGELOG.md b/packages/web/destinations/meta/CHANGELOG.md index cdd586cc4..74b6bac06 100644 --- a/packages/web/destinations/meta/CHANGELOG.md +++ b/packages/web/destinations/meta/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/web-destination-meta +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/meta/package.json b/packages/web/destinations/meta/package.json index eee770794..c7177a352 100644 --- a/packages/web/destinations/meta/package.json +++ b/packages/web/destinations/meta/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-meta", "description": "Meta pixel web destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,12 +38,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { "@types/facebook-pixel": "^0.0.31", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/mixpanel/CHANGELOG.md b/packages/web/destinations/mixpanel/CHANGELOG.md index 085922cea..329466c6c 100644 --- a/packages/web/destinations/mixpanel/CHANGELOG.md +++ b/packages/web/destinations/mixpanel/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-mixpanel +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/mixpanel/package.json b/packages/web/destinations/mixpanel/package.json index 5381ad150..cd0b11a68 100644 --- a/packages/web/destinations/mixpanel/package.json +++ b/packages/web/destinations/mixpanel/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-mixpanel", "description": "Mixpanel web destination for walkerOS (events, people, groups, consent)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,13 +38,13 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "mixpanel-browser": "^2.78.0", - "@walkeros/web-core": "4.1.2" + "@walkeros/web-core": "4.2.0" }, "devDependencies": { "@types/mixpanel-browser": "^2.50.0", - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/optimizely/CHANGELOG.md b/packages/web/destinations/optimizely/CHANGELOG.md index 87fbb6bfe..0d07dae8c 100644 --- a/packages/web/destinations/optimizely/CHANGELOG.md +++ b/packages/web/destinations/optimizely/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-optimizely +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/optimizely/package.json b/packages/web/destinations/optimizely/package.json index 2bd7fa5e4..10b02221e 100644 --- a/packages/web/destinations/optimizely/package.json +++ b/packages/web/destinations/optimizely/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-optimizely", "description": "Optimizely Feature Experimentation web destination for walkerOS (conversion tracking, revenue metrics, user targeting)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@optimizely/optimizely-sdk": "^6.0.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/piano/CHANGELOG.md b/packages/web/destinations/piano/CHANGELOG.md new file mode 100644 index 000000000..9b5bd8027 --- /dev/null +++ b/packages/web/destinations/piano/CHANGELOG.md @@ -0,0 +1,24 @@ +# @walkeros/web-destination-piano + +## 4.2.0 + +### Patch Changes + +- 8063504: Add the Piano Analytics web destination, forwarding events to the + official Piano `pa` SDK via sendEvent. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 diff --git a/packages/web/destinations/piano/LICENSE b/packages/web/destinations/piano/LICENSE new file mode 100644 index 000000000..00b601ace --- /dev/null +++ b/packages/web/destinations/piano/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 elbWalker GmbH + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/web/destinations/piano/README.md b/packages/web/destinations/piano/README.md new file mode 100644 index 000000000..66ddf4f64 --- /dev/null +++ b/packages/web/destinations/piano/README.md @@ -0,0 +1,103 @@ +

+ + walkerOS + +

+ +# @walkeros/web-destination-piano + +Send walkerOS events to Piano Analytics. + +[Documentation](https://www.walkeros.io/docs/destinations/web/piano) • +[NPM Package](https://www.npmjs.com/package/@walkeros/web-destination-piano) +• +[Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/web/destinations/piano) + +This destination forwards collector-processed events to the official +[Piano Analytics JavaScript SDK](https://github.com/at-internet/piano-analytics-js) +(`pa`) via `pa.sendEvent`. + +## Installation + +```bash +npm install @walkeros/web-destination-piano +``` + +## Quick start + +```json +{ + "version": 4, + "flows": { + "default": { + "config": { + "platform": "web" + }, + "destinations": { + "piano": { + "package": "@walkeros/web-destination-piano", + "config": { + "loadScript": true, + "settings": { + "site": 123456789, + "collectDomain": "https://example.pa-cd.com" + } + } + } + } + } + } +} +``` + +With `loadScript: true` the destination loads the Piano SDK script and calls +`pa.setConfigurations({ site, collectDomain })` on init. If you load the SDK +yourself, omit `loadScript` and make sure `pa` is available on `window`. + +## Settings + +| Setting | Type | Required | Description | +| --------------- | -------- | -------- | ------------------------------------------------------------ | +| `site` | `number` | yes | Piano Analytics site id, from your collection settings. | +| `collectDomain` | `string` | yes | Collection domain endpoint, like `https://xxxxxxx.pa-cd.com` | +| `options` | `object` | no | Additional Piano `setConfigurations` options merged on init. | + +## Mapping + +Each event is mapped to a Piano event name and a property object, then sent with +`pa.sendEvent(name, data)`. Piano uses dot-notation event names like +`page.display`. + +| walkerOS event | Piano event | Notes | +| ---------------- | -------------------------- | --------------------------- | +| `page view` | `page.display` | Page name and chapter. | +| `order complete` | `transaction.confirmation` | Transaction id and revenue. | + +```json +{ + "mapping": { + "page": { + "view": { + "name": "page.display", + "data": { "map": { "page": "data.title" } } + } + } + } +} +``` + +## Documentation + +Full configuration, mapping, and examples live in the docs: +**https://www.walkeros.io/docs/destinations/web/piano** + +## Contribute + +Feel free to contribute by submitting an +[issue](https://github.com/elbwalker/walkerOS/issues), starting a +[discussion](https://github.com/elbwalker/walkerOS/discussions), or getting in +[contact](https://calendly.com/elb-alexander/30min). + +## License + +MIT diff --git a/packages/web/destinations/piano/jest.config.mjs b/packages/web/destinations/piano/jest.config.mjs new file mode 100644 index 000000000..9f5dcec3d --- /dev/null +++ b/packages/web/destinations/piano/jest.config.mjs @@ -0,0 +1,5 @@ +import baseConfig from '@walkeros/config/jest/web.config'; + +const config = {}; + +export default { ...baseConfig, ...config }; diff --git a/packages/web/destinations/piano/package.json b/packages/web/destinations/piano/package.json new file mode 100644 index 000000000..938850776 --- /dev/null +++ b/packages/web/destinations/piano/package.json @@ -0,0 +1,78 @@ +{ + "name": "@walkeros/web-destination-piano", + "description": "Piano Analytics web destination for walkerOS", + "version": "4.2.0", + "license": "MIT", + "main": "./dist/index.js", + "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.mjs", + "require": "./dist/index.js" + }, + "./examples": { + "types": "./dist/examples/index.d.ts", + "import": "./dist/examples/index.mjs", + "require": "./dist/examples/index.js" + }, + "./dev": { + "types": "./dist/dev.d.ts", + "import": "./dist/dev.mjs", + "require": "./dist/dev.js" + }, + "./walkerOS.json": "./dist/walkerOS.json" + }, + "files": [ + "dist/**", + "CHANGELOG.md" + ], + "scripts": { + "build": "tsup --silent", + "clean": "rm -rf .turbo && rm -rf dist", + "dev": "jest --watchAll --colors", + "typecheck": "tsc --noEmit", + "lint": "eslint \"**/*.ts*\"", + "test": "jest", + "update": "npx npm-check-updates -u && npm update" + }, + "dependencies": { + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" + }, + "devDependencies": { + "@walkeros/collector": "4.2.0" + }, + "repository": { + "url": "git+https://github.com/elbwalker/walkerOS.git", + "directory": "packages/web/destinations/piano" + }, + "author": "elbwalker ", + "homepage": "https://github.com/elbwalker/walkerOS#readme", + "bugs": { + "url": "https://github.com/elbwalker/walkerOS/issues" + }, + "walkerOS": { + "type": "destination", + "platform": [ + "web" + ], + "docs": "https://www.walkeros.io/docs/destinations/web/piano" + }, + "keywords": [ + "walkerOS", + "walkerOS-destination", + "destination", + "web", + "piano", + "piano-analytics", + "analytics" + ], + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/elbwalker" + } + ] +} diff --git a/packages/web/destinations/piano/src/__tests__/stepExamples.test.ts b/packages/web/destinations/piano/src/__tests__/stepExamples.test.ts new file mode 100644 index 000000000..3c53d440c --- /dev/null +++ b/packages/web/destinations/piano/src/__tests__/stepExamples.test.ts @@ -0,0 +1,80 @@ +import type { WalkerOS } from '@walkeros/core'; +import { isObject, mockEnv } from '@walkeros/core'; +import { startFlow } from '@walkeros/collector'; +import { examples } from '../dev'; +import type { Config, Env, Rule } from '../types'; +import destinationPiano from '..'; + +type Effect = [string, ...unknown[]]; + +/** + * `StepExample.in` and `.mapping` are typed `unknown`. Narrow them with type + * predicates (the cast-free way) rather than `as` assertions. + */ +function isEvent(value: unknown): value is WalkerOS.Event { + return ( + isObject(value) && + typeof value.name === 'string' && + typeof value.entity === 'string' && + typeof value.action === 'string' + ); +} + +function isConfig(value: unknown): value is Config { + return isObject(value); +} + +function isRule(value: unknown): value is Rule { + return isObject(value); +} + +/** + * Capture every Piano SDK method call by wrapping the example env with + * `mockEnv`, which recurses into `window.pa` and records each call as + * `[callable, ...args]` (e.g. `['pa.sendEvent', 'page.display', {...}]`). + */ +function spyEnv(): { env: Env; calls: Effect[] } { + const calls: Effect[] = []; + const env = mockEnv(examples.env.push, (path, args) => { + calls.push([path.slice(1).join('.'), ...args]); + }); + return { env, calls }; +} + +const initExample = examples.step.init; +const initConfig: Config = isConfig(initExample.in) ? initExample.in : {}; +const initOut: Effect[] = [...(initExample.out ?? [])].map((effect) => [ + ...effect, +]); + +describe('piano destination — step examples', () => { + const stepEntries = Object.entries(examples.step).filter( + ([name]) => name !== 'init', + ); + + it.each(stepEntries)('%s', async (name, example) => { + const { env, calls } = spyEnv(); + + if (!isEvent(example.in)) + throw new Error(`step example "${name}" has no event input`); + + const rule = isRule(example.mapping) ? example.mapping : undefined; + const mapping: Config['mapping'] = rule + ? { [example.in.entity]: { [example.in.action]: rule } } + : undefined; + + const { elb } = await startFlow(); + await elb('walker destination', { + code: { ...destinationPiano, env }, + config: { ...initConfig, mapping }, + }); + await elb(example.in); + + const expected: Effect[] = [...(example.out ?? [])].map((effect) => [ + ...effect, + ]); + + // init (setConfigurations) runs before push (sendEvent); assert both. + expect(calls).toEqual([...initOut, ...expected]); + }); +}); diff --git a/packages/web/destinations/piano/src/dev.ts b/packages/web/destinations/piano/src/dev.ts new file mode 100644 index 000000000..706f4127d --- /dev/null +++ b/packages/web/destinations/piano/src/dev.ts @@ -0,0 +1,2 @@ +export * as schemas from './schemas'; +export * as examples from './examples'; diff --git a/packages/web/destinations/piano/src/examples/env.ts b/packages/web/destinations/piano/src/examples/env.ts new file mode 100644 index 000000000..747fd9b9d --- /dev/null +++ b/packages/web/destinations/piano/src/examples/env.ts @@ -0,0 +1,40 @@ +import type { Env, PianoAnalytics } from '../types'; + +/** + * Example environment configurations for the Piano destination. + * + * These environments provide standardized mock structures for testing and + * development without loading the real Piano SDK. They satisfy the `Env` + * interface directly, so no type casts are needed. + */ + +const noop = () => {}; + +/** A no-op Piano SDK whose methods are wrapped by `mockEnv` to capture calls. */ +function mockPa(): PianoAnalytics { + return { + setConfigurations: noop, + sendEvent: noop, + sendEvents: noop, + }; +} + +/** SDK not yet present: init must tolerate a missing `pa`. */ +export const init: Env = { + window: {}, +}; + +/** SDK present: used for capturing setConfigurations/sendEvent calls. */ +export const push: Env = { + window: { + pa: mockPa(), + }, +}; + +/** + * Simulation tracking paths + * Specifies which function calls to track during simulation + */ +export const simulation = [ + 'call:window.pa.sendEvent', // Track Piano sendEvent calls +]; diff --git a/packages/web/destinations/piano/src/examples/index.ts b/packages/web/destinations/piano/src/examples/index.ts new file mode 100644 index 000000000..df0b2c989 --- /dev/null +++ b/packages/web/destinations/piano/src/examples/index.ts @@ -0,0 +1,2 @@ +export * as env from './env'; +export * as step from './step'; diff --git a/packages/web/destinations/piano/src/examples/step.ts b/packages/web/destinations/piano/src/examples/step.ts new file mode 100644 index 000000000..cab56cbeb --- /dev/null +++ b/packages/web/destinations/piano/src/examples/step.ts @@ -0,0 +1,102 @@ +import type { Flow } from '@walkeros/core'; +import { getEvent } from '@walkeros/core'; + +const settings = { + site: 123456789, + collectDomain: 'https://example.pa-cd.com', +}; + +/** + * Destination bootstrap. + * init configures the Piano `pa` SDK with the site id and collection domain + * via setConfigurations. + */ +export const init: Flow.StepExample = { + title: 'Initialization', + description: + 'Destination bootstrap configures Piano with the site id and collection domain.', + in: { + settings, + }, + out: [['pa.setConfigurations', settings]], +}; + +export const pageView: Flow.StepExample = { + title: 'Page view', + description: + 'A page view fires a Piano page.display event with the page name and chapter.', + in: getEvent('page view', { timestamp: 1700000200 }), + mapping: { + name: 'page.display', + data: { + map: { + page: 'data.title', + page_chapter1: 'globals.pagegroup', + }, + }, + }, + out: [ + [ + 'pa.sendEvent', + 'page.display', + { + page: 'walkerOS documentation', + page_chapter1: 'docs', + }, + ], + ], +}; + +export const purchase: Flow.StepExample = { + title: 'Purchase', + description: + 'A completed order fires a Piano transaction.confirmation event with the transaction id, revenue and currency.', + in: getEvent('order complete', { timestamp: 1700000201 }), + mapping: { + name: 'transaction.confirmation', + data: { + map: { + transaction_id: 'data.id', + revenue: 'data.total', + currency: 'data.currency', + }, + }, + }, + out: [ + [ + 'pa.sendEvent', + 'transaction.confirmation', + { + transaction_id: '0rd3r1d', + revenue: 555, + currency: 'EUR', + }, + ], + ], +}; + +export const customEvent: Flow.StepExample = { + title: 'Custom event', + description: + 'A generic entity action fires a custom Piano event with mapped properties.', + in: getEvent('entity action', { timestamp: 1700000202 }), + mapping: { + name: 'click.action', + data: { + map: { + label: 'data.string', + value: 'data.number', + }, + }, + }, + out: [ + [ + 'pa.sendEvent', + 'click.action', + { + label: 'foo', + value: 1, + }, + ], + ], +}; diff --git a/packages/web/destinations/piano/src/index.test.ts b/packages/web/destinations/piano/src/index.test.ts new file mode 100644 index 000000000..2d3d93680 --- /dev/null +++ b/packages/web/destinations/piano/src/index.test.ts @@ -0,0 +1,91 @@ +import type { Config, Env } from './types'; +import { startFlow } from '@walkeros/collector'; +import { getEvent } from '@walkeros/core'; +import destinationPiano from '.'; + +const SCRIPT_SRC = 'https://tag.aticdn.net/piano-analytics.js'; + +describe('destination piano', () => { + const site = 123456789; + const collectDomain = 'https://example.pa-cd.com'; + + beforeEach(() => { + jest.restoreAllMocks(); + }); + + async function register(env: Env, config: Config = {}) { + const { elb } = await startFlow(); + await elb('walker destination', { + code: { ...destinationPiano, env }, + config: { settings: { site, collectDomain }, ...config }, + }); + return elb; + } + + test('configures piano on init', async () => { + const setConfigurations = jest.fn(); + const env: Env = { + window: { + pa: { setConfigurations, sendEvent: jest.fn(), sendEvents: jest.fn() }, + }, + }; + + const elb = await register(env); + await elb(getEvent()); + + expect(setConfigurations).toHaveBeenCalledWith({ site, collectDomain }); + }); + + test('sends a mapped event', async () => { + const sendEvent = jest.fn(); + const env: Env = { + window: { + pa: { setConfigurations: jest.fn(), sendEvent, sendEvents: jest.fn() }, + }, + }; + + const elb = await register(env, { + mapping: { + page: { + view: { name: 'page.display', data: { map: { page: 'data.title' } } }, + }, + }, + }); + await elb(getEvent('page view')); + + expect(sendEvent).toHaveBeenCalledWith('page.display', { + page: 'walkerOS documentation', + }); + }); + + test('tolerates a missing SDK', async () => { + const env: Env = { window: {} }; + + const elb = await register(env); + await expect(elb(getEvent())).resolves.toBeDefined(); + }); + + test('loadScript injects the Piano script', async () => { + const sendEvent = jest.fn(); + const env: Env = { + window: { + pa: { setConfigurations: jest.fn(), sendEvent, sendEvents: jest.fn() }, + }, + }; + + const script = document.createElement('script'); + const createElement = jest + .spyOn(document, 'createElement') + .mockReturnValue(script); + const appendChild = jest + .spyOn(document.head, 'appendChild') + .mockImplementation((node) => node); + + const elb = await register(env, { loadScript: true }); + await elb(getEvent()); + + expect(createElement).toHaveBeenCalledWith('script'); + expect(script.src).toBe(SCRIPT_SRC); + expect(appendChild).toHaveBeenCalledWith(script); + }); +}); diff --git a/packages/web/destinations/piano/src/index.ts b/packages/web/destinations/piano/src/index.ts new file mode 100644 index 000000000..a8333d028 --- /dev/null +++ b/packages/web/destinations/piano/src/index.ts @@ -0,0 +1,56 @@ +import type { Env, Destination, PianoAnalytics } from './types'; +import { isDefined, isObject } from '@walkeros/core'; + +// Types +export * as DestinationPiano from './types'; + +const SCRIPT_SRC = 'https://tag.aticdn.net/piano-analytics.js'; + +export const destinationPiano: Destination = { + type: 'piano', + + config: {}, + + init({ config, env }) { + const settings = config.settings || {}; + + if (config.loadScript) addScript(); + + const pa = resolvePa(env); + if (pa && isDefined(settings.site) && isDefined(settings.collectDomain)) { + pa.setConfigurations({ + site: settings.site, + collectDomain: settings.collectDomain, + ...(isObject(settings.options) ? settings.options : {}), + }); + } + + return config; + }, + + push(event, { data, env }) { + const pa = resolvePa(env); + if (!pa) return; + + pa.sendEvent(event.name, isObject(data) ? data : {}); + }, +}; + +/** + * Resolve the Piano `pa` SDK without casts: prefer the injected env (tests, + * simulation), fall back to the browser global declared on `Window`. + */ +function resolvePa(env: Env): PianoAnalytics | undefined { + return ( + env.window?.pa ?? (typeof window !== 'undefined' ? window.pa : undefined) + ); +} + +function addScript(src = SCRIPT_SRC) { + if (typeof document === 'undefined') return; + const script = document.createElement('script'); + script.src = src; + document.head.appendChild(script); +} + +export default destinationPiano; diff --git a/packages/web/destinations/piano/src/schemas/index.ts b/packages/web/destinations/piano/src/schemas/index.ts new file mode 100644 index 000000000..7a7c2aa47 --- /dev/null +++ b/packages/web/destinations/piano/src/schemas/index.ts @@ -0,0 +1,10 @@ +import { zodToSchema } from '@walkeros/core/dev'; +import { SettingsSchema } from './settings'; +import { MappingSchema } from './mapping'; + +export { SettingsSchema, type Settings } from './settings'; +export { MappingSchema, type Mapping } from './mapping'; + +// JSON Schema +export const settings = zodToSchema(SettingsSchema); +export const mapping = zodToSchema(MappingSchema); diff --git a/packages/web/destinations/piano/src/schemas/mapping.ts b/packages/web/destinations/piano/src/schemas/mapping.ts new file mode 100644 index 000000000..abd7f2c76 --- /dev/null +++ b/packages/web/destinations/piano/src/schemas/mapping.ts @@ -0,0 +1,12 @@ +import { z } from '@walkeros/core/dev'; + +/** + * Piano Mapping Schema + * Piano has no event-level mapping configuration + */ +export const MappingSchema = z.object({}); + +/** + * Type inference from MappingSchema + */ +export type Mapping = z.infer; diff --git a/packages/web/destinations/piano/src/schemas/settings.ts b/packages/web/destinations/piano/src/schemas/settings.ts new file mode 100644 index 000000000..7600f01cf --- /dev/null +++ b/packages/web/destinations/piano/src/schemas/settings.ts @@ -0,0 +1,18 @@ +import { z } from '@walkeros/core/dev'; + +export const SettingsSchema = z.object({ + site: z + .number() + .describe( + 'Piano Analytics site id (numeric), from your collection settings', + ), + collectDomain: z + .string() + .describe('Collection domain endpoint, like https://xxxxxxx.pa-cd.com'), + options: z + .record(z.string(), z.unknown()) + .describe('Additional Piano setConfigurations options merged on init') + .optional(), +}); + +export type Settings = z.infer; diff --git a/packages/web/destinations/piano/src/types/index.ts b/packages/web/destinations/piano/src/types/index.ts new file mode 100644 index 000000000..978dbc83d --- /dev/null +++ b/packages/web/destinations/piano/src/types/index.ts @@ -0,0 +1,56 @@ +import type { + Mapping as WalkerOSMapping, + WalkerOS, + Destination as CoreDestination, +} from '@walkeros/core'; +import type { DestinationWeb } from '@walkeros/web-core'; + +declare global { + interface Window { + pa?: PianoAnalytics; + } +} + +/** + * Surface of the official Piano Analytics browser SDK (the `pa` global from + * https://tag.aticdn.net/piano-analytics.js). Only the methods this + * destination calls are declared; the SDK exposes more. + */ +export interface PianoAnalytics { + setConfigurations(configurations: WalkerOS.AnyObject): void; + sendEvent(name: string, data?: WalkerOS.AnyObject): void; + sendEvents( + events: ReadonlyArray<{ name: string; data?: WalkerOS.AnyObject }>, + ): void; +} + +export interface Settings { + /** Piano Analytics site id (numeric), from your collection settings. */ + site: number; + /** Collection domain endpoint, like https://xxxxxxx.pa-cd.com */ + collectDomain: string; + /** Additional Piano `setConfigurations` options merged on init. */ + options?: WalkerOS.AnyObject; +} + +export type InitSettings = Partial; + +export interface Mapping {} + +export interface Env extends DestinationWeb.Env { + window?: { + pa?: PianoAnalytics; + }; +} + +export type Types = CoreDestination.Types; + +export type Destination = DestinationWeb.Destination; +export type Config = DestinationWeb.Config; + +export interface PianoDestination extends Destination { + env?: Env; +} + +export type Rule = WalkerOSMapping.Rule; +export type Rules = WalkerOSMapping.Rules; diff --git a/packages/web/destinations/piano/tsconfig.json b/packages/web/destinations/piano/tsconfig.json new file mode 100644 index 000000000..e9f0a4037 --- /dev/null +++ b/packages/web/destinations/piano/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "@walkeros/config/tsconfig/web.json", + "compilerOptions": { + "rootDir": "src" + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] +} diff --git a/packages/web/destinations/piano/tsup.config.ts b/packages/web/destinations/piano/tsup.config.ts new file mode 100644 index 000000000..35c11c7a7 --- /dev/null +++ b/packages/web/destinations/piano/tsup.config.ts @@ -0,0 +1,18 @@ +import { + defineConfig, + buildModules, + buildExamples, + buildBrowser, + buildES5, + buildDev, +} from '@walkeros/config/tsup'; + +const globalName = 'Destination'; + +export default defineConfig([ + buildModules(), + buildExamples(), + buildBrowser({ globalName }), + buildES5({ globalName }), + buildDev(), +]); diff --git a/packages/web/destinations/pinterest/CHANGELOG.md b/packages/web/destinations/pinterest/CHANGELOG.md index be890f51d..193fbd817 100644 --- a/packages/web/destinations/pinterest/CHANGELOG.md +++ b/packages/web/destinations/pinterest/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-pinterest +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/pinterest/package.json b/packages/web/destinations/pinterest/package.json index c43df0921..cd31d6a42 100644 --- a/packages/web/destinations/pinterest/package.json +++ b/packages/web/destinations/pinterest/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-pinterest", "description": "Pinterest Tag web destination for walkerOS (conversion tracking, enhanced matching, audience building)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/piwikpro/CHANGELOG.md b/packages/web/destinations/piwikpro/CHANGELOG.md index 57da2cfeb..b28303d73 100644 --- a/packages/web/destinations/piwikpro/CHANGELOG.md +++ b/packages/web/destinations/piwikpro/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/web-destination-piwikpro +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/piwikpro/package.json b/packages/web/destinations/piwikpro/package.json index 3008dc1ef..34544c1e3 100644 --- a/packages/web/destinations/piwikpro/package.json +++ b/packages/web/destinations/piwikpro/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-piwikpro", "description": "Piwik PRO destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/plausible/CHANGELOG.md b/packages/web/destinations/plausible/CHANGELOG.md index 8f84be350..8b0974ecc 100644 --- a/packages/web/destinations/plausible/CHANGELOG.md +++ b/packages/web/destinations/plausible/CHANGELOG.md @@ -1,5 +1,29 @@ # @walkeros/web-destination-plausible +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/plausible/package.json b/packages/web/destinations/plausible/package.json index 08611a8f2..597905086 100644 --- a/packages/web/destinations/plausible/package.json +++ b/packages/web/destinations/plausible/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-plausible", "description": "Plausible web destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/posthog/CHANGELOG.md b/packages/web/destinations/posthog/CHANGELOG.md index dcd2c086f..c36d824bd 100644 --- a/packages/web/destinations/posthog/CHANGELOG.md +++ b/packages/web/destinations/posthog/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-posthog +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/posthog/package.json b/packages/web/destinations/posthog/package.json index ca7b2e152..fde2db6e2 100644 --- a/packages/web/destinations/posthog/package.json +++ b/packages/web/destinations/posthog/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-posthog", "description": "PostHog web destination for walkerOS (product analytics, session replay, feature flags, surveys)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,12 +38,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", + "@walkeros/core": "4.2.0", "posthog-js": "^1.367.0", - "@walkeros/web-core": "4.1.2" + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/segment/CHANGELOG.md b/packages/web/destinations/segment/CHANGELOG.md index fd8da9c61..b60a20ad4 100644 --- a/packages/web/destinations/segment/CHANGELOG.md +++ b/packages/web/destinations/segment/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-segment +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/segment/package.json b/packages/web/destinations/segment/package.json index 940c8bb8e..22872ddc1 100644 --- a/packages/web/destinations/segment/package.json +++ b/packages/web/destinations/segment/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-segment", "description": "Segment CDP web destination for walkerOS (@segment/analytics-next, full Segment Spec)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,11 +39,11 @@ }, "dependencies": { "@segment/analytics-next": "^1.82.0", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/destinations/snowplow/CHANGELOG.md b/packages/web/destinations/snowplow/CHANGELOG.md index f297da9ac..08f8a871b 100644 --- a/packages/web/destinations/snowplow/CHANGELOG.md +++ b/packages/web/destinations/snowplow/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/web-destination-snowplow +## 4.2.0 + +### Patch Changes + +- d65bbde: Internal type-safety cleanup: removed unsafe casts around browser + globals and env mocks by typing each destination's `Env` and reading globals + through `getEnv(env)`. No behavior change. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/snowplow/package.json b/packages/web/destinations/snowplow/package.json index 599227ec2..d5ea91a13 100644 --- a/packages/web/destinations/snowplow/package.json +++ b/packages/web/destinations/snowplow/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-snowplow", "description": "Snowplow web destination for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,12 +38,12 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/config": "4.1.2", + "@walkeros/collector": "4.2.0", + "@walkeros/config": "4.2.0", "@snowplow/browser-tracker-core": "^4.6.8", "@snowplow/browser-plugin-snowplow-ecommerce": "^4.6.8" }, diff --git a/packages/web/destinations/tiktok/CHANGELOG.md b/packages/web/destinations/tiktok/CHANGELOG.md index 632f69481..87c91e18b 100644 --- a/packages/web/destinations/tiktok/CHANGELOG.md +++ b/packages/web/destinations/tiktok/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-destination-tiktok +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/destinations/tiktok/package.json b/packages/web/destinations/tiktok/package.json index 8bebaa404..934213e4e 100644 --- a/packages/web/destinations/tiktok/package.json +++ b/packages/web/destinations/tiktok/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-destination-tiktok", "description": "TikTok Pixel web destination for walkerOS (conversion tracking, Advanced Matching)", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,11 +38,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/sources/browser/CHANGELOG.md b/packages/web/sources/browser/CHANGELOG.md index 0e90a6c4c..df7e71100 100644 --- a/packages/web/sources/browser/CHANGELOG.md +++ b/packages/web/sources/browser/CHANGELOG.md @@ -1,5 +1,49 @@ # @walkeros/web-source-browser +## 4.2.0 + +### Minor Changes + +- 21ac669: Add the `data-elb_` scoped generic attribute. It carries the same + `key:value` properties as the blanket `data-elb-` generic, but only events + whose triggered element is nested below the `data-elb_` element receive them. + The `createTagger()` API gains a `scoped()` method and the `generate_tagging` + MCP tool gains a `scoped` input to produce it. Use `data-elb-` for properties + every trigger in an entity should carry, and `data-elb_` when only triggers + within a specific branch should. + +### Patch Changes + +- 5b1a134: The single-instance guard is now scoped to the window instead of the + module, so loading the tag more than once on the same page is inert rather + than re-initializing. A second load no longer re-binds DOM triggers, re-adopts + the event layer, or surfaces an error to the host page. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/browser/package.json b/packages/web/sources/browser/package.json index 5425838ec..0cfcee66a 100644 --- a/packages/web/sources/browser/package.json +++ b/packages/web/sources/browser/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-browser", "description": "Browser DOM source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,9 +33,9 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/sources/cmps/cookiefirst/CHANGELOG.md b/packages/web/sources/cmps/cookiefirst/CHANGELOG.md index 255625fa0..a9d791a7d 100644 --- a/packages/web/sources/cmps/cookiefirst/CHANGELOG.md +++ b/packages/web/sources/cmps/cookiefirst/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/web-source-cmp-cookiefirst +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/cmps/cookiefirst/package.json b/packages/web/sources/cmps/cookiefirst/package.json index 5ed3c1d9e..e0aac83a4 100644 --- a/packages/web/sources/cmps/cookiefirst/package.json +++ b/packages/web/sources/cmps/cookiefirst/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-cmp-cookiefirst", "description": "CookieFirst consent management source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "walkerOS": { "type": "source", @@ -46,8 +46,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/collector": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/collector": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/web/sources/cmps/cookiepro/CHANGELOG.md b/packages/web/sources/cmps/cookiepro/CHANGELOG.md index b27e45f81..e5d40809a 100644 --- a/packages/web/sources/cmps/cookiepro/CHANGELOG.md +++ b/packages/web/sources/cmps/cookiepro/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/web-source-cmp-cookiepro +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/cmps/cookiepro/package.json b/packages/web/sources/cmps/cookiepro/package.json index 28e823b7d..36cc18761 100644 --- a/packages/web/sources/cmps/cookiepro/package.json +++ b/packages/web/sources/cmps/cookiepro/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-cmp-cookiepro", "description": "CookiePro/OneTrust consent management source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "walkerOS": { "type": "source", @@ -46,8 +46,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/collector": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/collector": "4.2.0" }, "devDependencies": {}, "repository": { diff --git a/packages/web/sources/cmps/usercentrics/CHANGELOG.md b/packages/web/sources/cmps/usercentrics/CHANGELOG.md index baa80d696..a697f2f89 100644 --- a/packages/web/sources/cmps/usercentrics/CHANGELOG.md +++ b/packages/web/sources/cmps/usercentrics/CHANGELOG.md @@ -1,5 +1,33 @@ # @walkeros/web-source-cmp-usercentrics +## 4.2.0 + +### Patch Changes + +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/cmps/usercentrics/package.json b/packages/web/sources/cmps/usercentrics/package.json index 65f6a4ba7..8ad359610 100644 --- a/packages/web/sources/cmps/usercentrics/package.json +++ b/packages/web/sources/cmps/usercentrics/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-cmp-usercentrics", "description": "Usercentrics consent management source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "walkerOS": { "type": "source", @@ -46,8 +46,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/collector": "4.1.2", - "@walkeros/core": "4.1.2" + "@walkeros/collector": "4.2.0", + "@walkeros/core": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/sources/dataLayer/CHANGELOG.md b/packages/web/sources/dataLayer/CHANGELOG.md index 3c4d5e9f4..637d485ca 100644 --- a/packages/web/sources/dataLayer/CHANGELOG.md +++ b/packages/web/sources/dataLayer/CHANGELOG.md @@ -1,5 +1,39 @@ # @walkeros/web-source-datalayer +## 4.2.0 + +### Patch Changes + +- b98474f: Source-level mapping examples for the dataLayer source now key on the + prefix as entity and the gtag action as action: `mapping..`. + The shipped `examples/mapping.ts`, the comprehensive `flow-complete.json` + example, and the related docs reflect the convention, including the + special-cased actions `consent`, `config`, and `set` whose trailing token is + dropped by the entity/action split. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/dataLayer/package.json b/packages/web/sources/dataLayer/package.json index dab809c00..26b2cba46 100644 --- a/packages/web/sources/dataLayer/package.json +++ b/packages/web/sources/dataLayer/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-datalayer", "description": "DataLayer source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -38,8 +38,8 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/collector": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/collector": "4.2.0" }, "devDependencies": { "@types/gtag.js": "^0.0.20" diff --git a/packages/web/sources/demo/CHANGELOG.md b/packages/web/sources/demo/CHANGELOG.md index 28c108fcf..dbb8ffddf 100644 --- a/packages/web/sources/demo/CHANGELOG.md +++ b/packages/web/sources/demo/CHANGELOG.md @@ -1,5 +1,36 @@ # @walkeros/source-demo +## 4.2.0 + +### Patch Changes + +- 9d066cc: The MCP now loads flows by ID, requires the `flow_simulate` `step` + parameter it always enforced, and adds a `diagnostics` tool reporting client + and CLI versions plus backend reachability. Package discovery returns a + complete catalog with a warning when a source degrades, instead of silently + caching partial results, and returned flow configs are round-trip safe + (structural values stay literal). The demo source can now be simulated as a + source step; the CLI also exports `VERSION` and `resolveAppUrl` and clears a + deleted default project. +- 776e5f9: Step examples are no longer bundled into production output. They were + accidentally exported from the production entry of these packages and pulled + into bundled JS. Examples remain available via the package `./dev` subpath for + simulation and testing. +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/demo/package.json b/packages/web/sources/demo/package.json index 9f9b3f3e8..b9ad40155 100644 --- a/packages/web/sources/demo/package.json +++ b/packages/web/sources/demo/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/source-demo", "description": "Demo source for walkerOS - generates events from config", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -39,10 +39,10 @@ "test": "jest" }, "dependencies": { - "@walkeros/core": "4.1.2" + "@walkeros/core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/packages/web/sources/session/CHANGELOG.md b/packages/web/sources/session/CHANGELOG.md index 992e06974..51ff5fad1 100644 --- a/packages/web/sources/session/CHANGELOG.md +++ b/packages/web/sources/session/CHANGELOG.md @@ -1,5 +1,26 @@ # @walkeros/web-source-session +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [908d6f0] +- Updated dependencies [e8f6909] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [d65bbde] +- Updated dependencies [e8f6909] +- Updated dependencies [c27d3c1] +- Updated dependencies [654ba38] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/web-core@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/packages/web/sources/session/package.json b/packages/web/sources/session/package.json index a3e5437bc..409144f3a 100644 --- a/packages/web/sources/session/package.json +++ b/packages/web/sources/session/package.json @@ -1,7 +1,7 @@ { "name": "@walkeros/web-source-session", "description": "Session source for walkerOS", - "version": "4.1.2", + "version": "4.2.0", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -33,11 +33,11 @@ "update": "npx npm-check-updates -u && npm update" }, "dependencies": { - "@walkeros/core": "4.1.2", - "@walkeros/web-core": "4.1.2" + "@walkeros/core": "4.2.0", + "@walkeros/web-core": "4.2.0" }, "devDependencies": { - "@walkeros/collector": "4.1.2" + "@walkeros/collector": "4.2.0" }, "repository": { "url": "git+https://github.com/elbwalker/walkerOS.git", diff --git a/skills/walkeros-create-transformer/templates/validation/index.test.ts b/skills/walkeros-create-transformer/templates/validation/index.test.ts index 9479ee98f..2912512d4 100644 --- a/skills/walkeros-create-transformer/templates/validation/index.test.ts +++ b/skills/walkeros-create-transformer/templates/validation/index.test.ts @@ -34,8 +34,10 @@ describe('Redact Transformer', () => { const pushContext = createPushContext(); const result = transformer.push(event, pushContext); - expect(result).toMatchObject(examples.events.processedEvent); - expect((result as any).data.email).toBeUndefined(); + // Narrow the Result union cast-free: a single Result carries `.event`. + if (!result || Array.isArray(result)) throw new Error('expected an event'); + expect(result.event).toMatchObject(examples.events.processedEvent); + expect(result.event?.data?.email).toBeUndefined(); }); test('passes through event when no fields match', () => { @@ -49,7 +51,8 @@ describe('Redact Transformer', () => { const pushContext = createPushContext(); const result = transformer.push(event, pushContext); - expect((result as any).data.email).toBe('user@example.com'); + if (!result || Array.isArray(result)) throw new Error('expected an event'); + expect(result.event?.data?.email).toBe('user@example.com'); }); test('logs redactions when enabled', () => { diff --git a/website/CHANGELOG.md b/website/CHANGELOG.md index 43d042387..2b06f3e95 100644 --- a/website/CHANGELOG.md +++ b/website/CHANGELOG.md @@ -1,5 +1,108 @@ # @walkeros/website +## 4.2.0 + +### Patch Changes + +- Updated dependencies [76d32c1] +- Updated dependencies [db97edc] +- Updated dependencies [5b1a134] +- Updated dependencies [2d64ed2] +- Updated dependencies [5b1a134] +- Updated dependencies [908d6f0] +- Updated dependencies [654ba38] +- Updated dependencies [c27d3c1] +- Updated dependencies [e8f6909] +- Updated dependencies [b98474f] +- Updated dependencies [59aa9e1] +- Updated dependencies [d65bbde] +- Updated dependencies [560d8af] +- Updated dependencies [f4a9013] +- Updated dependencies [d65bbde] +- Updated dependencies [2d64ed2] +- Updated dependencies [e8f6909] +- Updated dependencies [6a72a32] +- Updated dependencies [776e5f9] +- Updated dependencies [c27d3c1] +- Updated dependencies [126c0f1] +- Updated dependencies [654ba38] +- Updated dependencies [21ac669] +- Updated dependencies [6a72a32] +- Updated dependencies [3eb2467] +- Updated dependencies [5b1a134] +- Updated dependencies [560d8af] +- Updated dependencies [23d4b86] +- Updated dependencies [18c9469] + - @walkeros/core@4.2.0 + - @walkeros/collector@4.2.0 + - @walkeros/server-destination-gcp@4.2.0 + - @walkeros/web-source-browser@4.2.0 + - @walkeros/explorer@4.2.0 + - @walkeros/server-store-sheets@4.2.0 + - @walkeros/server-store-gcs@4.2.0 + - @walkeros/server-source-gcp@4.2.0 + - @walkeros/server-destination-datamanager@4.2.0 + - @walkeros/web-source-datalayer@4.2.0 + - @walkeros/server-source-express@4.2.0 + - @walkeros/server-destination-sqlite@4.2.0 + - @walkeros/server-destination-mixpanel@4.2.0 + - @walkeros/web-destination-plausible@4.2.0 + - @walkeros/web-destination-piwikpro@4.2.0 + - @walkeros/web-destination-meta@4.2.0 + - @walkeros/web-destination-snowplow@4.2.0 + - @walkeros/web-destination-gtag@4.2.0 + - @walkeros/web-destination-api@4.2.0 + - @walkeros/server-destination-criteo@4.2.0 + - @walkeros/transformer-ga4@4.2.0 + - @walkeros/server-transformer-bot@4.2.0 + - @walkeros/server-transformer-fingerprint@4.2.0 + - @walkeros/server-source-fetch@4.2.0 + - @walkeros/server-source-aws@4.2.0 + - @walkeros/server-destination-api@4.2.0 + - @walkeros/web-source-cmp-cookiefirst@4.2.0 + - @walkeros/web-source-cmp-cookiepro@4.2.0 + - @walkeros/web-source-cmp-usercentrics@4.2.0 + - @walkeros/server-store-fs@4.2.0 + - @walkeros/server-store-s3@4.2.0 + - @walkeros/walker.js@4.2.0 + - @walkeros/server-destination-amplitude@4.2.0 + - @walkeros/server-destination-aws@4.2.0 + - @walkeros/server-destination-bing@4.2.0 + - @walkeros/server-destination-customerio@4.2.0 + - @walkeros/server-destination-file@4.2.0 + - @walkeros/server-destination-hubspot@4.2.0 + - @walkeros/server-destination-kafka@4.2.0 + - @walkeros/server-destination-klaviyo@4.2.0 + - @walkeros/server-destination-linkedin@4.2.0 + - @walkeros/server-destination-meta@4.2.0 + - @walkeros/server-destination-mparticle@4.2.0 + - @walkeros/server-destination-pinterest@4.2.0 + - @walkeros/server-destination-posthog@4.2.0 + - @walkeros/server-destination-reddit@4.2.0 + - @walkeros/server-destination-redis@4.2.0 + - @walkeros/server-destination-rudderstack@4.2.0 + - @walkeros/server-destination-segment@4.2.0 + - @walkeros/server-destination-slack@4.2.0 + - @walkeros/server-destination-snapchat@4.2.0 + - @walkeros/server-destination-tiktok@4.2.0 + - @walkeros/server-destination-twitter@4.2.0 + - @walkeros/server-transformer-file@4.2.0 + - @walkeros/web-destination-amplitude@4.2.0 + - @walkeros/web-destination-clarity@4.2.0 + - @walkeros/web-destination-d8a@4.2.0 + - @walkeros/web-destination-fullstory@4.2.0 + - @walkeros/web-destination-heap@4.2.0 + - @walkeros/web-destination-hotjar@4.2.0 + - @walkeros/web-destination-linkedin@4.2.0 + - @walkeros/web-destination-matomo@4.2.0 + - @walkeros/web-destination-mixpanel@4.2.0 + - @walkeros/web-destination-optimizely@4.2.0 + - @walkeros/web-destination-pinterest@4.2.0 + - @walkeros/web-destination-posthog@4.2.0 + - @walkeros/web-destination-segment@4.2.0 + - @walkeros/web-destination-tiktok@4.2.0 + - @walkeros/web-source-session@4.2.0 + ## 4.1.2 ### Patch Changes diff --git a/website/docs/destinations/web/piano.mdx b/website/docs/destinations/web/piano.mdx new file mode 100644 index 000000000..f5d52f23e --- /dev/null +++ b/website/docs/destinations/web/piano.mdx @@ -0,0 +1,91 @@ +--- +title: Piano Analytics +description: Send events to Piano Analytics +path: /docs/destinations/web/piano +sidebar_position: 5 +package: '@walkeros/web-destination-piano' +--- + +import data from '@walkeros/web-destination-piano/walkerOS.json'; +import Configuration from '@site/src/components/snippets/_configuration.mdx'; + +import WhereThisFits from '@site/src/components/snippets/_where-this-fits.mdx'; + +# Piano Analytics + + + +[Piano Analytics](https://piano.io/product/analytics/) is an enterprise +analytics and audience platform. The destination loads the official Piano +`pa` SDK, configures it with your site id and collection domain, and forwards +events via `pa.sendEvent`. + +Piano is a web destination in the walkerOS flow:} + flowMap={{ + destinations: { default: { label: 'Destination', text: 'Piano', highlight: true } }, + }} +/> + +## Installation + + + + + + + + + + + +Add to your `flow.json` destinations: + + + +[See bundled mode setup](/docs/getting-started/modes/bundled) | [CLI reference](/docs/apps/cli) + + + + + diff --git a/website/package.json b/website/package.json index 79866409a..35e123df6 100644 --- a/website/package.json +++ b/website/package.json @@ -1,6 +1,6 @@ { "name": "@walkeros/website", - "version": "4.1.2", + "version": "4.2.0", "private": true, "scripts": { "docusaurus": "docusaurus", @@ -20,75 +20,75 @@ "@docusaurus/theme-live-codeblock": "^3.9.2", "@docusaurus/theme-mermaid": "^3.9.2", "@easyops-cn/docusaurus-search-local": "^0.55.1", - "@walkeros/collector": "^4.1.2", - "@walkeros/core": "^4.1.2", - "@walkeros/explorer": "^4.1.2", - "@walkeros/server-destination-amplitude": "^4.1.2", - "@walkeros/server-destination-api": "^4.1.2", - "@walkeros/server-destination-aws": "^4.1.2", - "@walkeros/server-destination-bing": "^4.1.2", - "@walkeros/server-destination-criteo": "^4.1.2", - "@walkeros/server-destination-customerio": "^4.1.2", - "@walkeros/server-destination-datamanager": "^4.1.2", - "@walkeros/server-destination-file": "^4.1.2", - "@walkeros/server-destination-gcp": "^4.1.2", - "@walkeros/server-destination-hubspot": "^4.1.2", - "@walkeros/server-destination-kafka": "^4.1.2", - "@walkeros/server-destination-klaviyo": "^4.1.2", - "@walkeros/server-destination-linkedin": "^4.1.2", - "@walkeros/server-destination-meta": "^4.1.2", - "@walkeros/server-destination-mixpanel": "^4.1.2", - "@walkeros/server-destination-mparticle": "^4.1.2", - "@walkeros/server-destination-pinterest": "^4.1.2", - "@walkeros/server-destination-posthog": "^4.1.2", - "@walkeros/server-destination-reddit": "^4.1.2", - "@walkeros/server-destination-redis": "^4.1.2", - "@walkeros/server-destination-rudderstack": "^4.1.2", - "@walkeros/server-destination-segment": "^4.1.2", - "@walkeros/server-destination-slack": "^4.1.2", - "@walkeros/server-destination-snapchat": "^4.1.2", - "@walkeros/server-destination-sqlite": "^4.1.2", - "@walkeros/server-destination-tiktok": "^4.1.2", - "@walkeros/server-destination-twitter": "^4.1.2", - "@walkeros/server-source-aws": "^4.1.2", - "@walkeros/server-source-express": "^4.1.2", - "@walkeros/server-source-fetch": "^4.1.2", - "@walkeros/server-source-gcp": "^4.1.2", - "@walkeros/server-store-fs": "^4.1.2", - "@walkeros/server-store-gcs": "^4.1.2", - "@walkeros/server-store-s3": "^4.1.2", - "@walkeros/server-store-sheets": "^4.1.2", - "@walkeros/server-transformer-bot": "^4.1.2", - "@walkeros/server-transformer-file": "^4.1.2", - "@walkeros/server-transformer-fingerprint": "^4.1.2", - "@walkeros/transformer-ga4": "^4.1.2", - "@walkeros/walker.js": "^4.1.2", - "@walkeros/web-destination-amplitude": "^4.1.2", - "@walkeros/web-destination-api": "^4.1.2", - "@walkeros/web-destination-clarity": "^4.1.2", - "@walkeros/web-destination-d8a": "^4.1.2", - "@walkeros/web-destination-fullstory": "^4.1.2", - "@walkeros/web-destination-gtag": "^4.1.2", - "@walkeros/web-destination-heap": "^4.1.2", - "@walkeros/web-destination-hotjar": "^4.1.2", - "@walkeros/web-destination-linkedin": "^4.1.2", - "@walkeros/web-destination-matomo": "^4.1.2", - "@walkeros/web-destination-meta": "^4.1.2", - "@walkeros/web-destination-mixpanel": "^4.1.2", - "@walkeros/web-destination-optimizely": "^4.1.2", - "@walkeros/web-destination-pinterest": "^4.1.2", - "@walkeros/web-destination-piwikpro": "^4.1.2", - "@walkeros/web-destination-plausible": "^4.1.2", - "@walkeros/web-destination-posthog": "^4.1.2", - "@walkeros/web-destination-segment": "^4.1.2", - "@walkeros/web-destination-snowplow": "^4.1.2", - "@walkeros/web-destination-tiktok": "^4.1.2", - "@walkeros/web-source-browser": "^4.1.2", - "@walkeros/web-source-cmp-cookiefirst": "^4.1.2", - "@walkeros/web-source-cmp-cookiepro": "^4.1.2", - "@walkeros/web-source-cmp-usercentrics": "^4.1.2", - "@walkeros/web-source-datalayer": "^4.1.2", - "@walkeros/web-source-session": "^4.1.2", + "@walkeros/collector": "^4.2.0", + "@walkeros/core": "^4.2.0", + "@walkeros/explorer": "^4.2.0", + "@walkeros/server-destination-amplitude": "^4.2.0", + "@walkeros/server-destination-api": "^4.2.0", + "@walkeros/server-destination-aws": "^4.2.0", + "@walkeros/server-destination-bing": "^4.2.0", + "@walkeros/server-destination-criteo": "^4.2.0", + "@walkeros/server-destination-customerio": "^4.2.0", + "@walkeros/server-destination-datamanager": "^4.2.0", + "@walkeros/server-destination-file": "^4.2.0", + "@walkeros/server-destination-gcp": "^4.2.0", + "@walkeros/server-destination-hubspot": "^4.2.0", + "@walkeros/server-destination-kafka": "^4.2.0", + "@walkeros/server-destination-klaviyo": "^4.2.0", + "@walkeros/server-destination-linkedin": "^4.2.0", + "@walkeros/server-destination-meta": "^4.2.0", + "@walkeros/server-destination-mixpanel": "^4.2.0", + "@walkeros/server-destination-mparticle": "^4.2.0", + "@walkeros/server-destination-pinterest": "^4.2.0", + "@walkeros/server-destination-posthog": "^4.2.0", + "@walkeros/server-destination-reddit": "^4.2.0", + "@walkeros/server-destination-redis": "^4.2.0", + "@walkeros/server-destination-rudderstack": "^4.2.0", + "@walkeros/server-destination-segment": "^4.2.0", + "@walkeros/server-destination-slack": "^4.2.0", + "@walkeros/server-destination-snapchat": "^4.2.0", + "@walkeros/server-destination-sqlite": "^4.2.0", + "@walkeros/server-destination-tiktok": "^4.2.0", + "@walkeros/server-destination-twitter": "^4.2.0", + "@walkeros/server-source-aws": "^4.2.0", + "@walkeros/server-source-express": "^4.2.0", + "@walkeros/server-source-fetch": "^4.2.0", + "@walkeros/server-source-gcp": "^4.2.0", + "@walkeros/server-store-fs": "^4.2.0", + "@walkeros/server-store-gcs": "^4.2.0", + "@walkeros/server-store-s3": "^4.2.0", + "@walkeros/server-store-sheets": "^4.2.0", + "@walkeros/server-transformer-bot": "^4.2.0", + "@walkeros/server-transformer-file": "^4.2.0", + "@walkeros/server-transformer-fingerprint": "^4.2.0", + "@walkeros/transformer-ga4": "^4.2.0", + "@walkeros/walker.js": "^4.2.0", + "@walkeros/web-destination-amplitude": "^4.2.0", + "@walkeros/web-destination-api": "^4.2.0", + "@walkeros/web-destination-clarity": "^4.2.0", + "@walkeros/web-destination-d8a": "^4.2.0", + "@walkeros/web-destination-fullstory": "^4.2.0", + "@walkeros/web-destination-gtag": "^4.2.0", + "@walkeros/web-destination-heap": "^4.2.0", + "@walkeros/web-destination-hotjar": "^4.2.0", + "@walkeros/web-destination-linkedin": "^4.2.0", + "@walkeros/web-destination-matomo": "^4.2.0", + "@walkeros/web-destination-meta": "^4.2.0", + "@walkeros/web-destination-mixpanel": "^4.2.0", + "@walkeros/web-destination-optimizely": "^4.2.0", + "@walkeros/web-destination-pinterest": "^4.2.0", + "@walkeros/web-destination-piwikpro": "^4.2.0", + "@walkeros/web-destination-plausible": "^4.2.0", + "@walkeros/web-destination-posthog": "^4.2.0", + "@walkeros/web-destination-segment": "^4.2.0", + "@walkeros/web-destination-snowplow": "^4.2.0", + "@walkeros/web-destination-tiktok": "^4.2.0", + "@walkeros/web-source-browser": "^4.2.0", + "@walkeros/web-source-cmp-cookiefirst": "^4.2.0", + "@walkeros/web-source-cmp-cookiepro": "^4.2.0", + "@walkeros/web-source-cmp-usercentrics": "^4.2.0", + "@walkeros/web-source-datalayer": "^4.2.0", + "@walkeros/web-source-session": "^4.2.0", "css-loader": "^7.1.2", "prism-react-renderer": "^2.4.1", "react": "^19.2.4",