npm / string_decoder / 1.3.0
string_decoder 1.3.0
- Source
- https://github.com/nodejs/string_decoder
- Commit scanned
60db81e031c1- Compared with
6e0a9286ed44(0 signals introduced since)- Files
- 21 scanned, 1 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 12 info
- Scan time
- 7.0 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 6 of 6 warn and critical signals; 6 demoted to info.
- Disclude version
- 4.0.0
- Scanned (UTC)
- 2026-10-14 19:16
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
var -
var -
var initHandles = ; var _async_wrap = .; .likely benign Node test helper calling process.binding('async_wrap') to access internal async-wrap bindings during test teardown.Reasoning
This is Node.js's own test harness helper file. process.binding('async_wrap') is a deprecated but legitimate internal access used in Node's test suite to inspect async hooks. The pattern is a standard, documented-in-source use, not obfuscation or malicious behavior.
-
likely benign Node test utility probing multi-localhost support via the tcp_wrap internal binding.
Reasoning
Inside hasMultiLocalhost, the code uses process.binding('tcp_wrap') to probe whether binding to 127.0.0.2 works. This is a standard Node test utility for detecting platform capability; it is legitimate internal API use in the test suite.
-
get: });likely benign Lazy getter reading the config binding to detect Intl support for tests.Reasoning
A getter that reads process.binding('config').hasIntl to report ICU availability is a typical feature-detection idiom in Node's test common module. No network, exec, or encoded payload is involved.
-
get: });likely benign Lazy getter reading the config binding to detect small-ICU builds for tests.Reasoning
Same pattern as the hasIntl getter: reads the config binding's hasSmallICU flag for test feature detection. Legitimate and consistent with Node's test harness.
-
likely benign Test helper reading config binding bit-width to skip tests on 32-bit builds.
Reasoning
skipIf32Bits reads the config binding's bits value to skip tests on 32-bit builds. Ordinary build-configuration check in a test helper.
-
var errname = uv ? uv. : '';likely benign Optional load of the uv internal binding to resolve error names, wrapped in try/catch.Reasoning
Guarded try/catch that loads the uv binding to map error codes to names when available. This is a common compatibility fallback in Node internals and tests, with no malicious indicators.
-
// UTF-16LE ; // thumbs up // Additional UTF-8 tests -
assert.; assert.; assert.; -
assert.; assert.; decoder = ; -
assert.; assert.; assert.
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&