You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Pin @coana-tech/cli version; make reachability auto-update opt-in
The Python CLI auto-updated the reachability (Coana) engine to the latest
published version on every --reach run via `npm install -g @coana-tech/cli`.
Automatically pulling a brand-new engine version without opting in is
undesirable for environments that need to review/approve dependency updates
before adopting them.
Run a fixed, pinned version (DEFAULT_COANA_CLI_VERSION = 15.3.22) via
`npx @coana-tech/cli@<pinned>` instead, so the engine version only changes
through a standard pip upgrade of this CLI. Opt into newest with
`--reach-version latest`; pin an explicit version with `--reach-version <semver>`.
The global `npm install -g` step is dropped entirely, so an existing global
install is never auto-updated or downgraded.
|`--reach`| False | False | Enable reachability analysis to identify which vulnerable functions are actually called by your code. Creates a tier-1 full-application reachability scan (`scan_type=socket_tier1`). |
243
-
|`--reach-version`| False |latest | Version of @coana-tech/cli to usefor analysis |
243
+
|`--reach-version`| False |*pinned*| Version of @coana-tech/cli to use. Defaults to the version pinned to this CLI release (currently `15.3.22`), so the engine only changes when you upgrade the Socket CLI. Pass `latest` to always use the newest published version (opt-in auto-update), or an explicit version (e.g. `1.2.3`) to pin it.|
244
244
|`--reach-analysis-timeout`| False |*coana*| Timeout in seconds for the reachability analysis. Omitted by default, so coana applies its own (currently 600s). Alias: `--reach-timeout`|
245
245
|`--reach-analysis-memory-limit`| False |*coana*| Memory limit in MB for the reachability analysis. Omitted by default, so coana applies its own (currently 8192). Alias: `--reach-memory-limit`|
246
246
|`--reach-concurrency`| False |*coana*| Control parallel analysis execution (must be >= 1). Omitted by default, so coana applies its own (currently 1) |
@@ -262,8 +262,8 @@ If you don't want to provide the Socket API Token every time then you can use th
262
262
**Reachability Analysis Requirements:**
263
263
264
264
The Python CLI verifies the following **up front** (before invoking the analysis engine) and exits with code **3** if any are unmet:
265
-
- `npm` - Required to install and run `@coana-tech/cli` (the analysis engine)
266
-
- `npx` - Required to execute `@coana-tech/cli`
265
+
- `npm` - Required (verified up front; ships alongside `npx`)
266
+
- `npx` - Required to fetch (on first use) and run `@coana-tech/cli` (the analysis engine)
267
267
- `uv` - Required by the analysis engine
268
268
- An **Enterprise** Socket organization plan (any `enterprise*` plan, including Enterprise trials)
269
269
@@ -313,7 +313,7 @@ Sample config files:
313
313
314
314
For CI-specific examples and guidance, see [`ci-cd.md`](ci-cd.md).
315
315
316
-
The CLI will automatically install `@coana-tech/cli` if not present. Use `--reach` to enable reachability analysis during a full scan, or add `--only-facts-file` (with `--reach`) to submit only the reachability facts file (`.socket.facts.json`) when creating the full scan.
316
+
The CLI runs a pinned `@coana-tech/cli` version via `npx` (fetched on first use, then cached); it does **not** auto-update the engine or install it globally. Pass `--reach-version latest` to opt into the newest published version. Use `--reach` to enable reachability analysis during a full scan, or add `--only-facts-file` (with `--reach`) to submit only the reachability facts file (`.socket.facts.json`) when creating the full scan.
0 commit comments