Skip to content

walkerOS v3.1.0

Choose a tag to compare

@github-actions github-actions released this 20 Mar 21:51
· 413 commits to main since this release
c516a9b

Changes

Auto-add npm packages from flow steps (sources, destinations, transformers,
stores) to build packages, eliminating the need for a redundant packages
section

Add createTrigger to browser source examples following unified Trigger.CreateFn
interface. Step examples migrated to HTML content format with trigger metadata.
Collector simulate.ts updated with dual-path support for createTrigger and
legacy triggers.

Consolidate HTTP patterns into core/http.ts: apiFetch (authenticated),
publicFetch (unauthenticated), deployFetch (deploy token priority), and
mergeAuthHeaders. Remove duplicated resolveBaseUrl alias and legacy
authenticatedFetch/deployAuthenticatedFetch from auth.ts.

Add createTrigger following unified Trigger.CreateFn interface. Step examples
updated with trigger metadata.

Add createTrigger following unified Trigger.CreateFn interface. Step examples
updated with trigger metadata.

Add env.express and env.cors to Env interface for dependency injection. Tests
and simulations can now replace the HTTP layer without touching module imports.

Add env.window and env.document to session source Env interface. Session
detection (window, storage, performance) now uses injected globals when
provided, enabling full simulation without a browser environment.

Add optional StorageEnv parameter to storageRead, storageWrite, and
storageDelete. Enables dependency injection of window/document for testing and
simulation. Fully backwards-compatible — existing callers are unchanged.

Rewrite createTrigger to use real HTTP requests via fetch() instead of mocked
req/res. Follows unified Trigger.CreateFn interface. Step examples updated with
trigger metadata field.

MCP api tool: replace overloaded id param with explicit projectId and
flowId. CLI functions now throw structured ApiError with code and details from
the API response. mcpError forwards structured error data to MCP clients.

Add mergeConfigSchema to core and integrate into MCP package_get tool.
package_get now returns schemas.config — a merged JSON Schema combining base
config fields (require, consent, logger, mapping, etc.) from core with the
package's typed settings schema. Runtime-only fields (env, onError, onLog) are
excluded.

Fix MCP issues from user feedback: add 'entry' to validate output type, include
version in feedback payload, require Node >=20, support inline JSON in
loadJsonConfig for sandboxed environments

Replace hardcoded package registry with live npm search. Package catalog is now
fetched dynamically from npm and enriched with walkerOS.json metadata from CDN.
Change platform type from string to array. Packages declare platform as ["web"],
["server"], or ["web", "server"]. Empty array means platform-agnostic. The
normalizePlatform utility handles backwards compatibility with the old string
format from already-published packages.
Remove outputSchema from package_get to prevent SDK validation crashes on
unexpected field values.

Add missing fields to Zod schemas: require, logger, ingest on Source.Config and
require, logger on Destination.Config. These fields existed in TypeScript types
but were absent from schemas, making them undiscoverable via JSON Schema and
MCP.

Server bundles are now fully self-contained — all npm dependencies (including
express and cors) are bundled into the output. No node_modules needed at
runtime.

Unified source simulation input. All source simulation uses SourceInput {
content, trigger?, env? } — one format for CLI, MCP, and tests. Removes legacy
runSourceLegacy and deprecated SimulateSource fields. CLI gains --step flag. MCP
flow_simulate drops example parameter (use flow_examples to discover, then
provide event). flow_examples now returns trigger metadata. StepExample Zod
schema aligned with TypeScript type.

Published Packages