Releases: ddv1982/ui-test
Release list
v0.1.6 - The Steady Signal
Lore
The signal steadied. The runner no longer guesses before the page is ready, the recorder refuses to write nameless targets, and the release lantern now checks both the code and the tests before the bundle leaves the bench. What had been scattered into small rituals is gathered into one clearer path.
What Changed
- Locator fallback selection now waits with Playwright-native readiness instead of racing on immediate counts.
- URL and title assertions now use Playwright page wait APIs while preserving wildcard URL matching and timeout diagnostics.
- Recording target rebuilding now rejects missing targets instead of emitting wildcard
*targets. - CLI orchestration now centralizes async parsing and top-level error handling, with consistent blank path validation across play, improve, record, and DevTools import paths.
- Record auto-improve fallback guidance is consolidated and shell-quotes unsafe retry paths.
- Frame-aware locator normalization is shared across Playwright AST import and YAML loading, reducing duplicated
frameLocator/contentFramehandling. quality:cinow includes test TypeScript checking, and release verification documents and runs the stronger gate.- Package metadata is bumped to
0.1.6.
Release Artifact
The Release workflow builds from tag v0.1.6, runs npm run release:assert-tag, provisions Chromium, runs npm run quality:release, runs headed parity under xvfb-run, then uploads ui-test-0.1.6.tgz, ui-test-0.1.6.tgz.sha256, ui-test-latest.tgz, and ui-test-latest.tgz.sha256 to this GitHub Release.
Validation
GITHUB_REF_NAME=v0.1.6 npm run release:assert-taggit diff --checknpm run quality:release- Full Vitest suite through the release gate: 80 files, 749 tests
- Coverage, build, package, global install dry-run, packaged global install smoke, and consumer smoke through
quality:release
v0.1.5 - The Guarded Gate
Lore
The gate learned to keep one key. Release paths that once forked into shadow doors now pass through a single guarded threshold, where the tag must name the package, the smoke must prove the bundle, and every script must stand in the lantern light before the artifact leaves the hall.
What Changed
- Startup, setup, record import, and standalone improve paths now fail cleaner and avoid misleading warnings or side effects.
- Snapshot-native assertion candidates keep their source-step bearings after stale assertion removal, and imported Playwright assertions preserve exact text and schema/runtime parity.
release-packagenow produces workflow artifacts only; GitHub Release assets are uploaded exclusively by the canonicalReleaseworkflow.quality:releasenow includes the consumer smoke test, and lint now coversscripts.- Record docs now cover
--from-fileand clarify that--no-improveturns off default report-mode auto-improve. - Package metadata is bumped to
0.1.5.
Release Artifact
The Release workflow builds from tag v0.1.5, runs npm run release:assert-tag and npm run quality:release, then uploads ui-test-0.1.5.tgz, ui-test-0.1.5.tgz.sha256, ui-test-latest.tgz, and ui-test-latest.tgz.sha256 to this GitHub Release.
Validation
GITHUB_REF_NAME=v0.1.5 npm run release:assert-taggit diff --checknpm run quality:release- Targeted CLI/app regression suite: 4 files, 88 tests
- Targeted core regression suite: 6 files, 72 tests
v0.1.4 - The Handy Path
Lore
The path regained its handrail. The runner now leaves a stable tarball at the latest release gate, so a single curl line can fetch the current build without knowing the version by name. This release restores the quick install charm, keeps the release bundle checksummed, and points first-time travelers toward the shortest working road.
What Changed
- README and Getting Started now show a curl-based global install command for the latest GitHub Release.
- The Release workflow now uploads
ui-test-latest.tgzandui-test-latest.tgz.sha256alongside the versioned tarball and checksum. - Package metadata is bumped to
0.1.4.
Release Artifact
The Release workflow builds from tag v0.1.4, runs npm run quality:release, then uploads ui-test-0.1.4.tgz, ui-test-0.1.4.tgz.sha256, ui-test-latest.tgz, and ui-test-latest.tgz.sha256 to this GitHub Release.
Validation
GITHUB_REF_NAME=v0.1.4 npm run release:assert-tag- Workflow YAML parse check for
.github/workflows/ci.yml,.github/workflows/release.yml,.github/workflows/release-verify.yml, and.github/workflows/release-package.yml git diff --checknpm run quality:release
v0.1.3 - The Steady Gate
Lore
The gate learned where the road is steady. Browser work now travels through Node 20.12 and 22, where Playwright provisioning completes cleanly, while Node 24 remains on watch for build and package compatibility. This cut is the corrected provisioning pass: direct Chromium installs, fewer stalled runners, and a clearer split between browser gates and package gates.
What Changed
- Browser-backed CI quality gates now run on Node
20.12.xand22.x. - Coverage, headed parity, consumer smoke, and the Release workflow now use Node
22.xfor Playwright browser provisioning. - Build/package/install smoke coverage still runs across Node
20.12.x,22.x, and24.x. - CI and Release browser provisioning use
npx playwright install --with-deps chromium. - Maintainer docs now document the browser-gate/package-gate Node split.
- Package metadata is bumped to
0.1.3for the corrected release tag.
Release Artifact
The Release workflow builds from tag v0.1.3, runs npm run quality:release, then uploads ui-test-0.1.3.tgz and its .sha256 checksum to this GitHub Release.
Validation
GITHUB_REF_NAME=v0.1.3 npm run release:assert-tagnpm run quality:release- Workflow YAML parse check for
.github/workflows/ci.ymland.github/workflows/release.yml git diff --check
v0.1.2 - The Direct Gate
Lore
The runner stopped asking the onboarding road to carry the release convoy. Chromium now enters CI through Playwright's own Linux gate, with system dependencies in hand before the tests begin. This cut is a provisioning pass: less ceremony in Actions, fewer places for Node 24 to stall, and the user-facing setup path still kept under smoke.
What Changed
- CI browser provisioning now uses
npx playwright install --with-deps chromiuminstead ofnpm run setup. - The Release workflow uses the same direct Playwright installer before running the release gate.
- Maintainer docs now describe the CI provisioning path accurately.
- Package metadata is bumped to
0.1.2for the new release tag.
Release Artifact
The Release workflow builds from tag v0.1.2, runs npm run quality:release, then uploads ui-test-0.1.2.tgz and its .sha256 checksum to this GitHub Release.
Validation
GITHUB_REF_NAME=v0.1.2 npm run release:assert-tagnpm run quality:release- Workflow YAML parse check for
.github/workflows/ci.ymland.github/workflows/release.yml git diff --check
v0.1.1 - The Safe Passage
Lore
The runner learned to wait before judging, choose the surest path before falling back, and carry its release bundle through GitHub instead of the public npm square. This cut is a safety pass: quieter installs, steadier replay, cleaner imports, and a tagged artifact trail for maintainers.
What Changed
- Replay assertions now poll until timeout for text, value, checked state, URL, title, and enabled checks.
- Locator replay now tries the primary selector first before falling back, instead of merging fallback locators up front.
- Playwright import now avoids duplicate nested describes and skips dynamic arguments that cannot be safely serialized.
- Storage state now flows through improve planning and record auto-improve retry guidance.
- Setup and docs now align on Node.js 20.12+.
- Release safety now uses a tested preinstall policy entrypoint and blocks accidental npm registry publishing with private: true.
- CI now covers Node 20.12.x, 22.x, and 24.x, and the release workflow publishes GitHub Release tarballs plus SHA-256 checksums instead of npm packages.
Release Artifact
The Release workflow builds from tag v0.1.1, runs npm run quality:release, then uploads ui-test-0.1.1.tgz and its .sha256 checksum to this GitHub Release.
Validation
- GITHUB_REF_NAME=v0.1.1 npm run release:assert-tag
- npm run quality:release
- git diff --check