Fixes threejs-0002: StackNode build() uses nodes.indexOf() inside filter callback — O(n²) during shader graph compilation per unique node set comparison. --- a/src/nodes/core/StackNode.js +++ b/src/nodes/core/StackNode.js @@ -380,7 +380,8 @@ class StackNode extends Node { this._currentNode = null; - const newNodes = this.nodes.filter( ( node ) => nodes.indexOf( node ) === - 1 ); + // FIX threejs-0002: nodes.indexOf() inside filter = O(n²) — CWE-407 + const nodesSet = new Set( nodes ); // O(n) build once + const newNodes = this.nodes.filter( ( node ) => ! nodesSet.has( node ) ); // O(1) per check