## SocketDev/socket-cli — v2.0.10…v2.1.0

_196+ commits._

### Features
- **feat(bootstrap): add Brotli compression for all bootstrap variants** (61f54c9)
- **feat(smol): implement binary caching to avoid recompilation on post-processing failures** (1170195)
- **Add option --reach-use-unreachable-from-precomputation (#850)** (d29da70)
- **feat(dlx): implement unified manifest for packages and binaries** (4b18b92)
- **feat(git-hooks): make security checks mandatory, lint/test optional** (f6841f5)
- **feat(scripts): add file validation checks** (b20a2f4)
- **feat(validate): add bundle dependencies validation** (88807c1)
- **feat(validation): add guard against link: dependencies and remove from root** (bf21111)
- **feat(preflight): add @cyclonedx/cdxgen to background downloads** (4ab6925)
- **feat(nlp): add progressive enhancement with ONNX Runtime stub** (965fb1b)

### Fixes
- **fix(sea-builder): remove erroneous closing brace causing syntax error** (9d982f2)
- **fix(smol-builder): copy brotli header to src directory** (fd77fff)
- **fix(smol-builder): update hardcoded patch reference to use numbered prefix** (9b2a8f1)
- **fix(test): correct import path for confirm prompt** (b8d458a)
- **fix(bootstrap): use major version only for CLI download spec** (3175696)
- **fix(smol): implement robust cross-platform strip with capability detection** (9de34dc)
- **fix(smol): use platform-specific strip flags for binary optimization** (cc27391)
- **fix(smol): use shell for execCapture and enable fail-fast for builds** (5a47511)
- **fix(bootstrap): show Socket CLI version instead of Node.js version** (4f041cb)
- **fix(bootstrap): skip preflight on --version for instant response** (175c82a)
- **fix(smol): skip CLI bootstrap for basic Node.js operations** (d7ec8c2)
- **fix(ci): make WASM optional in SEA builds with graceful fallback** (c87d8fc)
- **fix(ci): remove ai-cache-valid references from build-sea workflow** (aa486be)
- **fix(ci): comment out socketbin-cli-ai references in build-sea workflow** (0967e0c)
- **fix(ci): update ONNX Runtime artifact verification to check for .mjs files** (c359cb7)
- **fix(onnx): add existence checks to patch verification** (57ec480)
- **fix(onnx): verify wasm_post_build.js patch in cache validation** (4b8fc84)
- **fix(onnx): clean stale cache after GitHub Actions restoration** (7c5eb58)
- **fix(onnxruntime): patch wasm_post_build.js in both source and build directories** (8824fbb)
- **fix(bootstrap): remove unnecessary empty log after spinner completes** (b77b609)
- **fix(test): reduce thread count on macOS CI to prevent SIGABRT** (47ef4a3)
- **fix(types): resolve exactOptionalPropertyTypes issue in UpdateStore** (c98eda8)
- **fix(update): only show content-type warning in debug mode on parse failure** (d618972)
- **fix(types): correct parameter types for SDK method calls** (a7c0298)
- **fix(types): add explicit type parameters to handleApiCall calls** (cfc0dda)
- **fix(types): update handleApiCall signature for SDK v3 compatibility** (a0fc5a0)
- **fix(types): revert to use SDK v3 method names in type references** (790a2ae)
- **fix(types): update SDK operation names to match API types** (371addd)
- **fix(deps): update all packages to use catalog for @socketsecurity/lib** (43385e2)
- **fix(lint): fix all lint errors and update dependencies** (1c339ff)
- **fix(build): externalize Socket dependencies and add bundle validation test** (190b8b6)
- **fix: update for @socketsecurity/lib 3.0.5 compatibility** (2931b47)
- **perf(cli): defer registryUrl lookup until needed** (423fdb2)
- **fix(build): use default export workaround for CommonJS imports with --import flag** (f164218)
- **fix(test): resolve TypeScript errors and test failures in NLP modules** (ad9834c)
- **fix(smol): use Module.prototype.require.bind for virtual module** (dae71f4)
- **fix(smol): use Module.createRequire for proper module context** (54fa154)
- **fix(onnx): patch wasm_post_build.js to handle modern Emscripten** (1412ab1)
- **perf(smol): use vm.compileFunction() and remove internal path remapping** (ec3165d)
- **fix(bootstrap): correct stream/promises module path for smol builds** (2c9ef06)
- **fix(ci): remove expression from build-models job name** (c6065fd)
- **fix(models): correct --all flag logic to build both models** (36cbd97)

### Tests
- **test(cli): fix unused logger variables and update flipped dry-run snapshots** (e1a1312)
- **test(cli): add dry-run validation to all 129 dry-run tests** (90294f7)
- **test(cli): add validation to prevent flipped dry-run snapshots** (7832337)
- **test(update): use Promise.allSettled for concurrent store operations** (c8c90bb)
- **test(backup): use Promise.allSettled for file operations** (04ec7af)
- **test(manifest): use Promise.allSettled for concurrent operations** (a095db7)
- **test(queue): use Promise.allSettled for robust testing** (9b3ddbf)
- **test(patch): use Promise.allSettled for cleanup operations** (bc80b19)
- **test(fix): use Promise.allSettled for test cleanup** (e4c7471)
- **test: fix dry-run test snapshots for commands with API tokens** (5edacf9)
- **test: update all test snapshots for help output changes** (232bb35)
- **test: update snapshots for --reach-use-unreachable-from-precomputation flag** (4a9ccb7)
- **test: fix mock constructor issues and convert output-list-repos to vi.doMock()** (c5e6c77)
- **test(output): fix logger mocking using vi.doMock() pattern** (790f56f)
- **test(output): refactor tests to work around logger mock issues** (08c72c0)
- **test: attempt Option 2 refactoring for remaining test files** (7876183)
- **test: parallel agent fixes for test files** (ea4a587)
- **test: add missing static imports to organization/repository tests** (cd0b660)
- **test: convert multiple test files to use static imports** (00626de)
- **test: refactor output-dependencies test to use static imports** (af9ac54)
- **test: fix rich-progress tests by using local spinner variable** (d31a094)
- **test: fix logger mocks to include getDefaultLogger export** (32ac519)
- **test: update snapshots and fix update manager mock** (ed65f96)
- **test: update snapshots after @socketsecurity/lib changes** (2482299)

### Docs
- **docs: remove meta-documentation and deprecated files** (af19eef)
- **docs(onnxruntime): add detailed comments explaining patch and cache handling** (7f1abd2)
- **docs(changelog): update v2.1.0 with recent changes** (40238c2)
- **docs(changelog): update v2.0.11 with recent changes** (e4666ba)
- **docs(changelog): add v2.0.11 and v2.0.10 release entries** (81f52df)
- **docs(nlp): add progressive enhancement documentation** (04db6be)
- **docs(onnx): document inline patches and minimize code comments** (441540e)

### Chore
- **chore(release): update CHANGELOG for v2.1.0** (10189f6)
- **chore(deps): update @socketsecurity/lib to 3.2.1** (865ce93)
- **chore(wasm): pin all build tools to latest stable versions** (014f409)
- **refactor: optimize logger and spinner initialization** (e687a44)
- **refactor(smol-builder): rename patches and additions with numbered prefixes** (a281c03)
- **refactor(smol-builder): add numbered prefixes and fix build errors** (0264131)
- **refactor(smol): standardize naming with socketsecurity_ prefix and explicit versions** (6be4ce3)
- **ci: enable test sharding for faster CI** (3a099e7)
- **ci: run tests on Node 24.10.0 only** (53071f6)
- **chore(deps): update typescript-eslint to 8.44.1 for consistency** (1b57fd5)
- **refactor(smol): replace shell commands with native Node.js APIs** (b4da57b)
- **refactor(smol): use explicit build test flag instead of detecting CLI args** (a8561c6)
- **refactor(ci): remove unused WASM build inputs from build-sea workflow** (13eace5)
- **refactor(scan): use Promise.allSettled to prevent memory leaks** (eaaa2ae)
- **refactor(cache): use Promise.allSettled for cache warming** (db85ef2)
- **refactor(project): use Promise.allSettled for context detection** (8d8eac6)
- **refactor(git): use Promise.allSettled for config operations** (78360d9)
- **refactor(onnx): use Promise.allSettled for defensive patch checking** (2a2db28)
- **refactor(onnx): use safeReadFile for patch verification** (e38fa98)
- **refactor(onnx): use array for patch verification** (da9e508)
- **refactor(onnxruntime): simplify patch approach - delete stale cache instead of double-patching** (d102291)
- **chore(deps): update lockfile for socket-lib@3.2.0** (6b916bc)
- **chore(release): bump version to 2.1.0 and update dependencies** (ec679e2)
- **style: auto-format test mocks with arrow functions** (31469c8)
- **chore(deps): update @socketsecurity/sdk to 3.1.2** (4133b89)
- **chore(deps): update @socketsecurity/sdk to 3.1.1** (1531d7d)
- **chore(deps): update @socketsecurity/sdk to 3.1.0** (d0af9a6)
- **refactor(build): remove Socket dependencies from external array** (668d6ea)
- **style: apply auto-formatting to test files** (4252641)
- **chore(gitignore): ignore WASM bundles and Rust target directories** (9999e39)
- **chore(deps): convert common dependencies to catalog** (650377b)
- **chore(deps): convert Socket dependencies to catalog** (932acf9)
- **chore(deps): update Socket dependencies to latest** (2a5a668)
- **chore(deps): update @socketregistry/packageurl-js to 1.3.5** (2de0610)
- **chore(deps): update @socketsecurity/lib to 3.1.3** (5956704)
- **chore(deps): update @socketsecurity/lib to 3.1.1** (4d5ae66)
- **chore(deps): update @socketsecurity/lib to 3.1.0** (3038099)
- **chore(deps): update @socketregistry/packageurl-js and catalog, fix imports** (7a9cbe3)
- **chore(deps): update @socketsecurity/sdk to 3.0.30 and @socketsecurity/registry to 2.0.1** (52083ea)
- **chore(deps): update @socketsecurity/lib to 3.0.6** (aecb1b9)
- **chore(deps): update @socketregistry/packageurl-js to 1.3.3** (74511e9)
- **refactor(test): validate bundled dependencies against package.json dependencies** (c17755c)
- **chore: update @socketsecurity/lib to v3.0.5** (dda53dc)
- **refactor(preflight): use node:timers/promises sleep instead of custom delay** (0af1c19)
- **refactor(preflight): remove isPackageCached in favor of downloadPackage cache** (b4119f1)
- **refactor(preflight): add once-only guard and variable delays** (1a4bd18)
- **refactor(python): rename ensureSocketCli to ensureSocketPythonCli** (b354272)
- **chore(deps): update @socketsecurity/lib to 3.0.4** (0646fd8)
- **refactor(preflight): remove unused cli-ai from preflight downloads** (816749e)
- **chore: remove duplicate configs and obsolete files** (59c38ad)
- **refactor(preflight): stagger downloads sequentially and add Python** (66fd98c)
- **refactor(changelog): move CHANGELOG.md to repo root and add v2.0.11/v2.0.10 releases** (a08cdef)
- **refactor(python): add SHA-256 checksum verification for python-build-standalone** (662d3dd)
- **chore(deps): upgrade @socketsecurity/sdk to 3.0.29** (3526c35)
- **refactor(cli): replace console.log/error/warn with logger** (e8ad2f4)
- **chore(deps): upgrade @socketregistry/packageurl-js to v1.3.2** (aaa4924)
- **refactor(test): consolidate duplicate tests and vitest configs** (429a777)
- **chore(deps): upgrade @socketsecurity/sdk to v3.0.28** (ecf2214)
- **refactor: upgrade @socketsecurity/lib to v3.0.3 and migrate logger/spinner API** (33460d5)
- **refactor(config): implement optional external alias detection for TypeScript** (2359d33)
- **chore(release): consolidate v2.0.11 changelog and remove CDN hooks** (dffc522)
- **refactor(env): standardize env var naming and adopt ENV object pattern** (429a7dd)
- **refactor(env): standardize environment variable naming with SOCKET_CLI_ prefix** (4430706)
- **chore: remove nlp-example.mts from source tree** (2314983)
- **ci(wasm): add fail-fast checks before long builds** (90dcf56)
- **refactor(smol): use makeRequireFunction like Node.js does** (ad25451)
- **refactor(smol): improve build script output formatting** (e4a588a)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/SocketDev/socket-cli?utm_source=github-action)._