Highlights
Code Injection: 1 prior fix. Scrutinize any change in this area.
lib/compiler.js: most-fixed (1 issue). Treat as high-risk during review.
1 high-severity fix in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Code Injection: User-controlled doctype value is interpolated into generated code; prior fix relied on hasOwnProperty and options.doctype validation, indicating a direct injection sink that can recur if new options or code paths bypass validation.
Memory Leak DoS: The debug stack stored plain objects with references that created circular retention; a dedicated DebugItem class was needed to break the cycle, so any new debug logging that pushes objects onto a retained stack risks reintroducing the leak.