@@ -124,21 +124,43 @@ This policy recognizes that experimental platforms may not compile, may not
124124pass the test suite, and do not have the same level of testing and support
125125infrastructure as Tier 1 and Tier 2 platforms.
126126
127- ### Experimental features behind compile-time flags and V8 flags
127+ ### Experimental features behind compile-time flags, experimental runtime flags, and V8 flags
128128
129129Node.js includes certain experimental features that are only available when
130- Node.js is compiled with specific flags. These features are intended for
131- development, debugging, or testing purposes and are not enabled in official
132- releases.
130+ Node.js is compiled with specific flags or that are only enabled with experimental
131+ runtime flags. These features are intended for development, debugging, or testing
132+ purposes and are not enabled or supported in official releases.
133133
134134Node.js may also expose V8 features that are controlled by V8 command-line flags
135135(e.g., ` --js-staging ` , ` --max_old_space_size ` ). These flags
136136enable or modify V8-level JavaScript engine behavior that is not part of the
137137ECMAScript specification that Node.js implements and is not part of the
138138Node.js documented API surface.
139139
140+ #### Runtime gated experimental features
141+
142+ Experimental features behind runtime flags can fall into one of three
143+ [ categories] ( https://github.com/nodejs/node/blob/main/doc/api/documentation.md?rgh-link-date=2026-08-21T20%3A28%3A33.000Z#stability-index ) :
144+
145+ * 1.0 - Early development.
146+ * 1.1 - Active development.
147+ * 1.2 - Release candidate.
148+
149+ Security vulnerabilities that only affect experimental features in either the
150+ 1.0 or 1.1 stages, and that are gated with an ` --experimental-* ` runtime flag
151+ requiring explicit opt-in by the user to enable, will ** not** be accepted as
152+ valid security issues unless the vulnerability can be exploited in a way that
153+ impacts the security of a stable feature when the associated ` --experimental-* `
154+ flag is ** not enabled** .
155+
156+ Security vulnerabilities that affect experimental features in the 1.2 stage are
157+ acceptable as valid security issues.
158+
159+ #### Compile-time gated experimental features and V8 flags
160+
140161* Security vulnerabilities that only affect features behind compile-time flags
141- or V8 flags will ** not** be accepted as valid security issues.
162+ or V8 flags _ that are not enabled by default_ will ** not** be accepted as valid
163+ security issues.
142164* Any issues with these features will be treated as normal bugs.
143165* No CVEs will be issued for issues that only affect compile-time flag or V8 flag features.
144166* Bug bounty rewards are not available for compile-time flag or V8 flag feature issues.
@@ -524,6 +546,15 @@ The following are **not** vulnerabilities in Node.js:
524546 vulnerability. Applications that rely on the Permission Model must not grant
525547 ` --allow-worker ` to code they do not trust.
526548
549+ #### QUIC and HTTP/3
550+
551+ The experimental QUIC and HTTP/3 implementation in Node.js is a complex new
552+ protocol stack and API that is still under active development and should not be
553+ used for production workloads. Reports that only affect QUIC or HTTP/3 are not
554+ considered Node.js vulnerabilities at this time. It is expected that the QUIC
555+ and HTTP/3 implementation will continue to evolve, and security issues will be
556+ addressed as the implementation matures.
557+
527558#### Virtual File System (` node:vfs ` )
528559
529560The experimental [ Virtual File System] ( https://nodejs.org/api/vfs.html )
@@ -560,12 +591,6 @@ vulnerability. Node.js validates the structure of Early Hints per the HTTP spec
560591but does not sanitize free-form application data passed to it; that is the
561592application's responsibility.
562593
563- ## Assessing experimental features reports
564-
565- Experimental features are eligible for security reports just like any other
566- stable feature of Node.js. They may also receive the same severity score that a
567- stable feature would.
568-
569594## Receiving security updates
570595
571596Security notifications will be distributed via the following methods.
0 commit comments