@walkeros/cli 4.7.0-next-1790245733116 → 4.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +136 -48
- package/README.md +11 -5
- package/dist/cli.js +9186 -6548
- package/dist/dev.d.ts +7 -0
- package/dist/dev.js +17 -2
- package/dist/dev.js.map +1 -1
- package/dist/examples/README.md +47 -213
- package/dist/examples/customers/README.md +18 -0
- package/dist/examples/customers/cust-1001 +1 -0
- package/dist/examples/customers/cust-42 +1 -0
- package/dist/examples/flow-complete.json +4760 -592
- package/dist/examples/flow-complete.md +884 -225
- package/dist/examples/index.d.ts +2681 -1
- package/dist/examples/index.js +6882 -659
- package/dist/examples/index.js.map +1 -1
- package/dist/examples/shared/README.md +22 -0
- package/dist/index.d.ts +297 -24
- package/dist/index.js +2767 -884
- package/dist/index.js.map +1 -1
- package/examples/README.md +47 -213
- package/examples/customers/README.md +18 -0
- package/examples/customers/cust-1001 +1 -0
- package/examples/customers/cust-42 +1 -0
- package/examples/flow-complete.json +4760 -592
- package/examples/flow-complete.md +884 -225
- package/examples/shared/README.md +22 -0
- package/package.json +31 -8
- package/dist/examples/docker-compose.runner.yml +0 -44
- package/examples/docker-compose.runner.yml +0 -44
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @walkeros/cli
|
|
2
2
|
|
|
3
|
-
## 4.7.0
|
|
3
|
+
## 4.7.0
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
@@ -9,58 +9,146 @@
|
|
|
9
9
|
`config.bundle.env`; they must be literal strings and supply `$env` in web
|
|
10
10
|
bundles. Step packages, overrides and their dependencies must now come from
|
|
11
11
|
the npm registry: git, file and URL specs are rejected.
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
`
|
|
17
|
-
-
|
|
18
|
-
|
|
19
|
-
`
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
`
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
`
|
|
12
|
+
- 64b06de: A bundle's default release is now a content id of config, packages
|
|
13
|
+
and CLI version, so repeat builds hit the build cache. Env and secret values
|
|
14
|
+
are not part of it, only their names. `--release` now beats a flow's
|
|
15
|
+
`collector.release`. Rebuilt local `path` packages and CLI upgrades invalidate
|
|
16
|
+
the build caches, and `cache clear --builds` also clears compiled code.
|
|
17
|
+
- 64b06de: Packages with several exports, such as the GCP and AWS sources and
|
|
18
|
+
destinations, now publish a settings schema per export. `walkeros validate`
|
|
19
|
+
and MCP `package_get` use the schema of the export a step imports. Pub/Sub,
|
|
20
|
+
BigQuery, SNS and SQS steps pinned to this release or later are checked
|
|
21
|
+
instead of skipped; older pins still report a skip.
|
|
22
|
+
- 74821ed: The canonical `flow-complete.json` example is rewritten as one tested
|
|
23
|
+
ecommerce setup with web, server and warehouse flows and a 15-chapter guide.
|
|
24
|
+
The new `flowCompleteManifest` export from `@walkeros/cli/examples` names
|
|
25
|
+
every feature by a stable id with a JSON Pointer into the file, so docs and
|
|
26
|
+
tools can reference it.
|
|
27
|
+
- 06b498a: `walkeros run` is removed. Build with `walkeros bundle`, then start
|
|
28
|
+
the artifact with `runneros start dist/flow.mjs` from the new
|
|
29
|
+
`@walkeros/runner` package, which the `walkeros/flow` image now runs. The CLI
|
|
30
|
+
no longer depends on `express`, `cors` or `p-limit`. New `@walkeros/core/node`
|
|
31
|
+
entry with the Node-only logger, redaction and temp-path helpers.
|
|
32
|
+
- 74821ed: `walkeros push --simulate` prints each step's mapping and vendor
|
|
33
|
+
calls (`simulations` in `--json`) and reports init or push failures. New
|
|
34
|
+
flags: `--ingest`, `--consent` (MCP `state.consent`), `--command` for command
|
|
35
|
+
examples, `--simulate collector.default` and `--mock collector.next.<id>`. A
|
|
36
|
+
destination that sent nothing says why in `skipped`. `toPrintable` is
|
|
37
|
+
exported.
|
|
38
|
+
- 74821ed: Simulate records every vendor call through one recorder, `observeEnv`
|
|
39
|
+
from `@walkeros/core`, and runs offline: BigQuery, Data Manager and the
|
|
40
|
+
Sheets, GCS and S3 stores reach the network through `env`. Client and `Env`
|
|
41
|
+
types of BigQuery, Firehose, PostHog, SQS and Pub/Sub are structural.
|
|
42
|
+
`@walkeros/cli` exports `resolveExportName` and `selectDevExamples` and drops
|
|
43
|
+
`findExample` and `compareOutput`.
|
|
44
|
+
- 74821ed: Simulate starts only the simulated step, and a simulated transformer
|
|
45
|
+
continues through its `next`. Source simulations list the commands a source
|
|
46
|
+
issues as `elb` calls; `--page-url` sets the web page. Express flows need no
|
|
47
|
+
port. Packages with several exports use per-export examples and mocks, and a
|
|
48
|
+
destination without a mock env is refused instead of calling the vendor.
|
|
49
|
+
- 4b4937f: Files that passed `walkeros validate` may now fail: it checks every
|
|
50
|
+
flow and every step's package settings unless you narrow it, and resolves each
|
|
51
|
+
flow as the bundler does, so an unresolvable `$flow` is an error. `--path`
|
|
52
|
+
checks the entry in every flow. Settings findings warn for one minor.
|
|
53
|
+
Named-export steps are skipped; `--offline` skips fetching.
|
|
54
|
+
- 74821ed: `walkeros validate` reports a missing or non-JSON input as exit 3,
|
|
55
|
+
like `--path`, `--flow` or `--offline` with a non-flow `-t`. Unknown keys on
|
|
56
|
+
destinations and stores warn (`UNKNOWN_KEY`), as does
|
|
57
|
+
`@walkeros/store-memory`. `--path` ignores `uri` and email formats. The Flow
|
|
58
|
+
JSON Schema adds `config.observe` and drops step-level `validate`; the
|
|
59
|
+
Usercentrics schema lists `apiVersion` and `v3EventName`.
|
|
60
|
+
- 74821ed: `walkeros validate` prints a `Scope:` line and returns
|
|
61
|
+
`details.scope` instead of `details.validatedFlow`, `details.skipped` for
|
|
62
|
+
checks that did not run and `details.deferred` for values known only at
|
|
63
|
+
runtime. Skips never read as passed. Every finding has a stable `code`.
|
|
64
|
+
`--strict` fails on warnings or skips (exit 2), and `validate()` and
|
|
65
|
+
`flow_validate` with `strict` return `valid: false`; `flow_validate` also
|
|
66
|
+
accepts `offline`.
|
|
67
|
+
- 74821ed: An unknown `$var` or `$store` now fails `walkeros validate`, as it
|
|
68
|
+
fails the bundle. References resolve per flow, and `description` text is never
|
|
69
|
+
read as a reference. A dangling contract `extend`, an unknown `$contract` on a
|
|
70
|
+
validate step, or a contract cycle is an error. Contracts bind only on
|
|
71
|
+
validate steps. Malformed references and unknown or shadowed routes warn.
|
|
72
|
+
- 4f89234: Web builds now assign the collector to the global named in
|
|
73
|
+
`config.settings.windowCollector`, default `walkerOS`. Before,
|
|
74
|
+
`walkeros bundle` ignored the setting. It accepts a name or a `$var`/`$env`
|
|
75
|
+
reference; the resolved name must be a valid, non-reserved JavaScript
|
|
76
|
+
identifier, or the build and `walkeros validate` report an error.
|
|
34
77
|
|
|
35
78
|
### Patch Changes
|
|
36
79
|
|
|
37
|
-
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
80
|
+
- 786a860: AWS destinations now deliver in bundled flows without extra setup.
|
|
81
|
+
Firehose batches by default, ends records with a newline (`newline: false`
|
|
82
|
+
turns it off), sends mapped `data` and accepts `config.credentials`. Rejected
|
|
83
|
+
records now count as failed. SNS works with `topicArn` alone and no longer
|
|
84
|
+
creates topics at start. `walkeros setup` resolves `$secret` values; partial
|
|
85
|
+
batch failures log their causes.
|
|
86
|
+
- 74821ed: Server builds served from the build cache now copy the root `include`
|
|
87
|
+
folders; web builds ignore `include` and log it. An unused package in
|
|
88
|
+
`bundle.packages` warns instead of failing the build. Cache entries are
|
|
89
|
+
written atomically, so an interrupt no longer leaves a broken entry, and
|
|
90
|
+
`walkeros cache clear` removes leftovers. Temp dirs are
|
|
91
|
+
`<tmp>/walkeros/<kind>/<id>`.
|
|
92
|
+
- 5a210e1: `walkeros flows create` and `walkeros flows update` now read
|
|
93
|
+
`--content` from a file path or URL as well as an inline JSON string. Large
|
|
94
|
+
flows no longer need to fit on the command line: pass `--content ./flow.json`.
|
|
95
|
+
- 74821ed: A flow's own log lines now go through the CLI logger: its debug lines
|
|
96
|
+
need `--verbose`, and they go to stderr with `--json`. Version numbers are no
|
|
97
|
+
longer masked as tokens, so `walkeros deploy` shows the image tag and
|
|
98
|
+
`bundle --stats` shows package versions. Paths under the system temp directory
|
|
99
|
+
print as `$TMPDIR/...`.
|
|
100
|
+
- b1e5aa5: Manifest builds now survive short network blips: the manifest
|
|
101
|
+
download, skeleton downloads and uploads retry up to three times on network
|
|
102
|
+
errors, timeouts, 5xx and 429, while other statuses such as an expired link
|
|
103
|
+
fail at once. Each retry is logged, and errors name the cause, for example
|
|
104
|
+
`fetch failed (ECONNRESET)` or `HTTP 503`.
|
|
105
|
+
- 74821ed: Simulate and push output, CLI and flow logs, and the MCP
|
|
106
|
+
`flow_simulate` and `flow_push` results mask the values of secrets a flow
|
|
107
|
+
references, also inside JSON strings, numbers and URLs. `scrubSecrets` takes
|
|
108
|
+
`known`, the CLI logger `knownSecrets`, and `scrubJson` replaces
|
|
109
|
+
`maskKnownNumbers`. MCP `flow_push` and `flow_simulate` read their config
|
|
110
|
+
once; a config that cannot be read stops the run.
|
|
111
|
+
- 050d776: Simulated click and impression examples of the browser source carry
|
|
112
|
+
`source` and `globals` again. A page scope from another realm, such as an
|
|
113
|
+
iframe or a simulated page, is now recognized. Simulate also exposes `Node`,
|
|
114
|
+
`Element`, `HTMLElement`, `Document` and `ShadowRoot`, so `instanceof` checks
|
|
115
|
+
behave as in a browser.
|
|
116
|
+
- 74821ed: `state` paths resolve against `{ event, ingest }` and need an
|
|
117
|
+
`event.` or `ingest.` prefix; a `get` can write into `ingest`, and an
|
|
118
|
+
unresolvable key warns. Every step field now survives bundling: transformers
|
|
119
|
+
with only `state` or `mapping`, and code steps with `cache` or `state`, were
|
|
120
|
+
silently dropped before. `buildCacheContext` is renamed `createMappingRoot`.
|
|
121
|
+
- e860006: `state` gains `mapping` to shape what a lookup returns or a write
|
|
122
|
+
stores, merged into the target. An undeclared `state.store`, or a `file: true`
|
|
123
|
+
store, is now a validation error in `walkeros validate` and deploy preflight;
|
|
124
|
+
at runtime the entry logs an error or is skipped with a warning. The s3 and
|
|
125
|
+
gcs stores report their `file` mode.
|
|
126
|
+
- Updated dependencies [786a860]
|
|
127
|
+
- Updated dependencies [74821ed]
|
|
46
128
|
- Updated dependencies [06b498a]
|
|
47
|
-
- Updated dependencies [
|
|
48
|
-
- Updated dependencies [
|
|
49
|
-
- Updated dependencies [
|
|
129
|
+
- Updated dependencies [7e5e3de]
|
|
130
|
+
- Updated dependencies [b9668bf]
|
|
131
|
+
- Updated dependencies [74821ed]
|
|
132
|
+
- Updated dependencies [64b06de]
|
|
133
|
+
- Updated dependencies [4b4937f]
|
|
134
|
+
- Updated dependencies [74821ed]
|
|
135
|
+
- Updated dependencies [74821ed]
|
|
136
|
+
- Updated dependencies [74821ed]
|
|
50
137
|
- Updated dependencies [06b498a]
|
|
51
|
-
- Updated dependencies [
|
|
52
|
-
- Updated dependencies [
|
|
53
|
-
- Updated dependencies [
|
|
54
|
-
- Updated dependencies [
|
|
55
|
-
- Updated dependencies [
|
|
56
|
-
- Updated dependencies [
|
|
57
|
-
- Updated dependencies [
|
|
58
|
-
- Updated dependencies [
|
|
59
|
-
|
|
60
|
-
- @walkeros/
|
|
61
|
-
- @walkeros/
|
|
62
|
-
- @walkeros/
|
|
63
|
-
- @walkeros/
|
|
138
|
+
- Updated dependencies [74821ed]
|
|
139
|
+
- Updated dependencies [74821ed]
|
|
140
|
+
- Updated dependencies [74821ed]
|
|
141
|
+
- Updated dependencies [74821ed]
|
|
142
|
+
- Updated dependencies [74821ed]
|
|
143
|
+
- Updated dependencies [e860006]
|
|
144
|
+
- Updated dependencies [74821ed]
|
|
145
|
+
- Updated dependencies [74821ed]
|
|
146
|
+
- Updated dependencies [4f89234]
|
|
147
|
+
- @walkeros/collector@4.7.0
|
|
148
|
+
- @walkeros/core@4.7.0
|
|
149
|
+
- @walkeros/server-core@4.7.0
|
|
150
|
+
- @walkeros/transformer-validate@4.7.0
|
|
151
|
+
- @walkeros/server-destination-api@4.7.0
|
|
64
152
|
|
|
65
153
|
## 4.6.1
|
|
66
154
|
|
package/README.md
CHANGED
|
@@ -22,14 +22,20 @@ npm install -g @walkeros/cli
|
|
|
22
22
|
## Quick start
|
|
23
23
|
|
|
24
24
|
```bash
|
|
25
|
-
# Bundle a flow configuration
|
|
26
|
-
walkeros bundle flow.json
|
|
27
|
-
|
|
28
25
|
# Test with simulated events (no real API calls)
|
|
29
26
|
walkeros push flow.json --event '{"name":"product view"}' --simulate destination.demo
|
|
30
27
|
|
|
31
|
-
#
|
|
32
|
-
walkeros
|
|
28
|
+
# Bundle a flow configuration into dist/
|
|
29
|
+
walkeros bundle flow.json -o dist/
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
The CLI builds flows; it does not run them. Start a built server flow with
|
|
33
|
+
`runneros` from
|
|
34
|
+
[`@walkeros/runner`](https://www.npmjs.com/package/@walkeros/runner) (also the
|
|
35
|
+
`walkeros/flow` Docker image):
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
npx --package=@walkeros/runner runneros start dist/flow.mjs --port 3000
|
|
33
39
|
```
|
|
34
40
|
|
|
35
41
|
## Documentation
|