# Changelog

## Unreleased

No additional unreleased changes are recorded.

## 0.1.3 — 2026-11-03

Stable promotion of `0.1.3-beta.1` as package version `0.1.3`, using production tag `v0.1.3` and npm channel `latest`. See [release notes](https://unpkg.com/@newvexa/workify@0.1.3/docs/release-notes-0.1.3.md) for the PR-backed history, validation, upgrade instructions and release behavior.

### Added

- Promotes the source-based README/API-guide regression harness, strict packed-consumer checks, and real React/Vue/Angular lifecycle tests to the stable release line. Framework test dependencies remain isolated and exact-version locked in the private test workspace. These changes originated in [PR #1](https://github.com/NEWVEXA/workify/pull/1).
- Includes dedicated testing and publishing guides, package/link/version checks, and comprehensive stable release notes. The repository's English README, banner, API guide, and runnable JavaScript demo were synchronized with the already-published documentation baseline in PR #1; they are not newly invented core features in 0.1.3.
- Stable preparation adds generated public SVG build/test badges and a JSON verification record under `assets`, while retaining and restyling the live npm-version badge. Version-pinned build/test badges describe the published version's validation, not live public CI for the private repository, and link to the public verification record.

### Changed

- Targets synchronized `package.json` and root lockfile versions of `0.1.3`, with README package/CDN links pinned to that same stable version instead of `0.1.3-beta.1`.
- Uses the existing tag-based release pipeline for stable publication with `--tag latest`. The preceding metadata-only beta preparation was [PR #2](https://github.com/NEWVEXA/workify/pull/2), merged at `503bb5f96c315c18405feee175b84a81fe8c72f2`.

### Fixed

- Carries forward the cold-npm-cache documentation-consumer fix from [commit a84bf7e in PR #1](https://github.com/NEWVEXA/workify/commit/a84bf7ed610bfa6a0ebfe8a11155bd70975a5efb). The dependency-free candidate tarball is installed offline into a fresh consumer and exposed through a temporary filesystem link, without re-resolving the locked framework dependency graph.
- Protects the documented routing correction already recorded in 0.1.2: present `null`, `false`, `0`, and empty-string inputs must not fall back to the initial payload. This is documentation-example regression protection, not a change to engine routing.

### Tested

- The validated merged-main/beta baseline passed **181 distinct project test cases**: 63 core, 13 release guards, 19 simulated HTTP-adapter tests, and 86 documentation tests. PR #1 records passing Node 22.23.4 and Node 24.22.2 checks; the final beta review passed again with Node 24.22.2 and npm 11.21.0. These are historical baseline results.
- Stable validation includes **189 distinct cases**: the 181 baseline cases plus eight badge/check-wrapper regression cases. The generated record derives its totals from successful test summaries; the release archive additionally rejects missing, stale, nonpassing or altered badge evidence.
- All 18 registered README/guide snippets are covered: 17 TypeScript snippets compile with strict checks against the installed candidate declarations, and one CommonJS snippet is checked at runtime. All shipped TypeScript/framework/HTTP examples are also type-checked.
- Coverage includes graph/JSON/concurrency/error/cancellation contracts; quick-start output and import safety; transforms and null/falsy routing; observation cleanup, history, guide error handling, draining and search; framework subscriptions and lifecycles; and package identity, module exports, archive contents, links, and release safety.

### Automation

- The stable check wrapper retains the existing `typecheck`, `test`, `test:http`, and `test:docs` stages. It generates pending/failed states before successful completion and emits passed badge states with derived counts only after every real check succeeds. Its Node-only helpers remain outside the core, the generated status files are npm-allowlisted, and the release guard validates the declared badge evidence.
- Preserves PR/main CI on Node 22 and 24 and the `v*`-tag publishing workflow from PR #1. Validation requires matching package/tag/lockfile identity and a tagged commit already in `origin/main`, runs the project checks, and packs and smoke-tests the exact checked distribution without a post-check rebuild.
- Publication runs in a separate least-privilege OpenID Connect job using the same-run artifact and checksum/integrity verification. Registry lookups fail closed; an identical existing version is a no-op, while changed bytes at an existing version are rejected. Stable releases target `latest`; prereleases target `next`.
- The first live beta publication was verified by [successful run 41723649529](https://github.com/NEWVEXA/workify/actions/runs/41723649529), including the actual npm publish step. Trusted publishing is scoped to `NEWVEXA/workify`, workflow `publish.yml`, environment `npm`, and `v*` deployment tags. It needs no npm secret or separate dist-tag-management permission. The source repository remains private, so public npm provenance is not supplied.

### Compatibility and unchanged behavior

- No core TypeScript implementation, documented public API, ESM/CommonJS/declaration entry points, runtime dependency, or MIT-license change is part of this promotion. The beta review found 31 runtime/declaration/map files identical to published 0.1.2; the stable package audit separately checks the same unchanged runtime boundary.
- Framework adapters, example factories, and the HTTP retry adapter remain separately imported application examples, not new exports or runtime dependencies of the core. No documented API migration is expected from 0.1.2 or 0.1.3-beta.1.

### Known limits

Cancellation remains cooperative, and an engine stays busy until started tasks drain. Status history stores no business payloads and replays no effects. The core does not provide cycles, persistence/resumption, distributed execution, persistent scheduling, automatic retries, or a visual editor. React renderer/server-rendering checks do not establish browser DOM or hydration compatibility; Vue effect-scope checks are not a full browser-mounted application test; Angular injection/signals/JIT checks do not establish template AOT compatibility. Original v0 Bun/browser validation remains historical evidence, not a new stable run.

### Compared with 0.1.3-beta.1

The promotion targets new stable metadata, stable-pinned documentation links, release notes, and honestly labeled README verification badges. The regression suites and OIDC pipeline already shipped in the beta; no new engine behavior is claimed. `0.1.3` requires its own immutable tarball and validation evidence. The existing `0.1.3-beta.1` version and `v0.1.3-beta.1` tag must not be overwritten. Publishing the new stable version to `latest` does not itself move `next`; without separately authorized dist-tag changes, `next` remains on the beta.

## 0.1.3-beta.1 — 2026-11-03

Integration prerelease for verifying tag-triggered OIDC npm publishing. It uses the `next` channel, not `latest`, and includes the source-based README/guide regression suite, strict packed-consumer type checks, real React/Vue/Angular lifecycle tests, and exact-version isolated test dependencies.

Includes Node 22/24 CI, a separately privileged publishing job, package/tag/lockfile checks, tested-tarball integrity verification, and safe prerelease routing. The existing HTTP-retry adapter remains a separately imported example with its own simulated tests, not a core retry feature.

No core implementation, public API, runtime dependency, license, or repository visibility changed. README package/CDN links are pinned to this beta.

## 0.1.2 — 2026-11-03

Further documentation improvements: streamlined the README header, added use-case guidance, a public API overview, a CommonJS import example, explicit TypeScript build/run instructions, and troubleshooting. Included an import-safe JavaScript quick-start factory and an explicit zero-build demo entry point. Clarified routing of delivered null and falsy values without falling back to the initial payload.

Improved API-guide navigation and troubleshooting. Pinned README package/CDN links to 0.1.2. No core implementation, public API, runtime dependency, or execution behavior changed; the routing correction is in a documentation example only.

## 0.1.1 — 2026-11-03

Documentation-only update: redesigned English README with an original Workify banner, npm and package badges, a runnable quick start, and minimal React, Vue, and Angular adapters. Added an English API guide and npm-safe, version-pinned asset and documentation links. Updated the package description to English and included the optimized banner in the package.

No core implementation, public API, runtime dependency, or execution behavior changed.

## 0.1.0 — 2026-11-03

First npm release of the validated Workify v0 core, under the package name `@newvexa/workify`. The unscoped name `workify` belongs to a different publisher.

This release includes a dependency-free, framework-agnostic TypeScript DAG engine; asynchronous nodes and edge transformations with bounded concurrency; If/Else and Switch routing; isolated failures and cooperative cancellation; immutable reactive snapshots, engine events, and bounded status history; and workflow search by ID, name, type, category, and tags.

The package provides ESM, CommonJS, TypeScript declarations, and headless integration examples for React, Vue, and Angular. No UI framework is a runtime dependency.

The core implementation is unchanged from the previously validated v0 delivery. Release preparation updates package metadata, installation/import examples, and archive names. The original v0 validation report remains as a historical record.

Cancellation is cooperative. This release does not provide persistent scheduling, storage/resumption, distributed execution, automatic retries in the engine, a visual editor, or replay of external effects.
