Summary
tests/unit/test_publish_dry_run.py executes real pnpm install and pnpm publish --dry-run subprocesses. It is therefore an integration/publication check rather than an isolated unit test. Running it inside the instrumented native adapter coverage suite can execute package hooks that replace the exact Node addon being measured, so #359 must currently exclude it with an explicit tracking reference.
Acceptance criteria
- Reclassify the real npm dry-run behavior as a dedicated integration or publication-policy test.
- Add isolated unit coverage for command construction and failure propagation without invoking package hooks.
- Preserve a real publication dry-run gate in the appropriate workflow; do not weaken or remove its assertions.
- Remove the file-specific exclusion from
scripts/coverage-rust.sh once the test selection no longer replaces the measured addon.
- Prove native adapter coverage still loads the exact instrumented artifact and publication dry-run behavior remains independently green.
- Do not use retries, sleeps, skips, or lowered thresholds.
Summary
tests/unit/test_publish_dry_run.pyexecutes realpnpm installandpnpm publish --dry-runsubprocesses. It is therefore an integration/publication check rather than an isolated unit test. Running it inside the instrumented native adapter coverage suite can execute package hooks that replace the exact Node addon being measured, so #359 must currently exclude it with an explicit tracking reference.Acceptance criteria
scripts/coverage-rust.shonce the test selection no longer replaces the measured addon.