1
Reduce the input
Remove application code and external dependencies until only the failing syntax and its observable result remain.
2
Include the complete options
Copy the exact object passed to
obfuscate, including the seed and every transform override.3
Record the environment
Include the
webfuscator version, Node.js version, and operating system.4
Compare observable behavior
Show the original and transformed return values, thrown error classes, mutations, or external calls. An output substring assertion alone does not prove a behavior bug.
5
Attach a runnable harness
Put the input, options, transformation, and comparison in one file when possible.
Reproduction template
reproduce.mjs
Open a GitHub issue
Include the reduced input, full options, environment, expected result, actual result, and runnable harness.