# Testing signals — chromaui/chromatic-cli

> Canonical page: https://codevetter.com/unpack/chromatic-cli/testing-signals

# Testing signals — chromaui/chromatic-cli

Scanned commit 9e2606a2dbc11bcd07e7e451431432e32de0224b (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

Tests and CI were inspected, not executed; their existence establishes intended checks, not passing results. Vitest covers task logic, orchestration, renderer semantics, and deterministic hashing through extensive mocks and fixtures. CI also defines packed-package smoke runs and hosted visual checks, which exercise different boundaries from unit tests. This is a bounded inspection, and configured coverage excludes the Action adapter and several presentation/fixture categories.
- package.json defines vitest run --coverage; vitest.config.mts includes bin-src, node-src, and isChromatic helpers in coverage, excluding stories, frames, fake adapters, mocks, and selected test utilities. action-src is outside that configured coverage include. — [package.json#L86-L90](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/package.json#L86-L90) [vitest.config.mts#L4-L19](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/vitest.config.mts#L4-L19)
- node-src/index.test.ts mocks subprocesses, DNS, node-fetch, and writes; its orchestration assertions include merge-base checkout before getCommit and restoration after a later failure, so those tests do not demonstrate real Git restoration. — [node-src/index.test.ts#L28-L88](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/index.test.ts#L28-L88) [node-src/index.test.ts#L520-L553](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/index.test.ts#L520-L553)
- upload.test.ts checks GraphQL descriptors, multipart target uploads, and upload tallies with mocked HTTP/files; its fallback test asserts a second mutation omits contentHash after a sentinel failure. — [node-src/tasks/upload.test.ts#L13-L35](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/tasks/upload.test.ts#L13-L35) [node-src/tasks/upload.test.ts#L57-L124](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/tasks/upload.test.ts#L57-L124) [node-src/tasks/upload.test.ts#L1185-L1268](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/tasks/upload.test.ts#L1185-L1268)
- share.test.ts mocks reservation, confirmation, file upload, and filesystem boundaries; assertions cover early onUrl delivery, complete/error/cancelled confirmation, nonfatal confirmation errors, and optional log-file configuration. — [node-src/share.test.ts#L16-L65](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/share.test.ts#L16-L65) [node-src/share.test.ts#L94-L116](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/share.test.ts#L94-L116) [node-src/share.test.ts#L182-L257](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/share.test.ts#L182-L257)
- Renderer-engine tests distinguish skip from skip-self: both succeed visually, but only skip sets ctx.skip; these assertions protect downstream pipeline behavior independently of a terminal renderer. — [node-src/renderer/engine/index.test.ts#L116-L167](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/renderer/engine/index.test.ts#L116-L167)
- manifest.golden.test.ts pins exact whole-Storybook, per-story, and config hashes against a frozen fixture, supplementing relational hash tests; its comments explain that changing the recipe affects comparisons against older baseline hashes. — [node-src/lib/turbosnap/v2/manifest.golden.test.ts#L12-L36](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/lib/turbosnap/v2/manifest.golden.test.ts#L12-L36) [node-src/lib/turbosnap/v2/manifest.golden.test.ts#L87-L133](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/lib/turbosnap/v2/manifest.golden.test.ts#L87-L133)
- smoke-test.yml packs the CLI and defines Yarn variants, pnpm, npx, Node API, Windows, and Action runs; it copies fixtures outside the repository to avoid fallback to repository node_modules. The inspected matrix lists Ubuntu and Windows, without establishing macOS behavior. — [.github/workflows/smoke-test.yml#L13-L29](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.github/workflows/smoke-test.yml#L13-L29) [.github/workflows/smoke-test.yml#L37-L125](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.github/workflows/smoke-test.yml#L37-L125) [.github/workflows/smoke-test.yml#L144-L178](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.github/workflows/smoke-test.yml#L144-L178)
- Lint-and-test CI specifies type checking, linting, build inspection, Vitest, and Codecov; separate Chromatic workflows publish the CLI's own Storybook with exitOnceUploaded:true, so their upload job does not wait for final snapshot results. — [.github/workflows/lint-and-test.yml#L24-L37](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.github/workflows/lint-and-test.yml#L24-L37) [.github/workflows/chromatic-prod.yml#L20-L28](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.github/workflows/chromatic-prod.yml#L20-L28) [.storybook/main.ts#L6-L15](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/.storybook/main.ts#L6-L15) [node-src/tasks/verify/verifyBuild.ts#L243-L249](https://github.com/chromaui/chromatic-cli/blob/9e2606a2dbc11bcd07e7e451431432e32de0224b/node-src/tasks/verify/verifyBuild.ts#L243-L249)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
