v0.2
Review the tapstate v0.2 preview capabilities, nest transforms, playground setup, and known runtime limitations.
Released August 2026 · Current preview: v0.2.1
v0.2 expands tapstate's authoring and runtime surfaces while remaining a
non-production preview. It adds document assembly with nest, discovered
schema validation, and connected CLI operations. See the
GitHub releases for native
CLI bundles, checksums, and release assets.
What changed
v0.2.1
- The local playground creates and discovers the MySQL source before it applies the pipeline that reads its rows. This allows the reference MySQL-to-MongoDB flow to complete its initial snapshot instead of failing before the pipeline is created.
tapstate --versionreportstapstate 0.2.1, and the CLI installer defaults to this release.- The disposable local playground downloads the
0.2.1CLI and uses the pinnedghcr.io/tapstate/tapstate:0.2.1server image. - Declare a
viewas the complete instruction to materialize rows into the managed state store.serve.syncremains the separate path for delivery to an external system, and a pipeline can use either or both.
v0.2.0
- Use
nesttransforms to assemble related streams into documents, including explicit root and child key-change tracking when the source supplies before images. - Catch incompatible CEL row expressions at apply time using discovered source schemas, with separate diagnostics for missing, unsupported, and unknown types. See row-expression schema and type errors.
- Use command-level CLI help and authenticated connected commands in addition to the interactive REPL.
- Run the local MCP gateway from the complete CLI bundle to expose supported control-plane operations to an MCP host.
- Write MySQL
TIMESTAMP(3)values as MongoDB BSON dates at millisecond precision on the verified MySQL-to-MongoDB path. The instant is preserved; the source time-zone or offset representation is not. See the data compatibility notes for MySQL and MongoDB.
Release components
The local playground uses the pinned ghcr.io/tapstate/tapstate:0.2.1 server
image and the separate
MySQL and MongoDB connector preview assets.
The server image and connector artifacts support the disposable reference path;
they are not a production deployment method or a general connector support
contract.
The CLI release contains macOS and glibc-based Linux bundles for arm64 and
x64. Each archive has a SHA-256 file, and checksums.txt covers all four.
Recommended minimums for this build are macOS 15.0 and glibc 2.34.
Known limitations
- The runtime is single-node, keeps runtime state in memory, and is not intended for production.
- The v0.2 local playground verifies one end-to-end combination: MySQL initial load
plus CDC, an in-flight
map, and MongoDB materialization. - A change that a connector reads is delivered at least once, not exactly once.
- An insert-only target can receive duplicate rows when the snapshot and CDC reads overlap and both observe the same row.
- A source change written while the change stream is positioning itself can be missed before the connector reads it, because the saved position is not passed to the stream read until the snapshot finishes. The at-least-once statement does not cover a change that the connector never reads.
- Runtime connector registration accepts only the published MySQL and MongoDB
preview artifacts. An artifact declaring another connector ID is refused with
connector.not-official; catalog metadata does not expand this boundary. joinremains declared by the Schema but is refused by the current runtime.run,export,diff, andeditremain reserved CLI verbs and return exit code3.- The server-backed preview is provided through the disposable Docker playground; this release does not include a standalone server installer or operator deployment guide. See Install the CLI for the CLI/server boundary.
Use non-production systems and data for evaluation.
Get started
- Install the CLI for offline authoring or to connect to an existing server.
- Assemble documents with nest to maintain one MongoDB document from related MySQL tables.
- Use the CLI reference and Troubleshooting for command and diagnostic details.