@@ -8,7 +8,11 @@ import fs from 'node:fs/promises';
88import os from 'node:os' ;
99import path from 'node:path' ;
1010
11- import { extractUrlLikeFromDevToolsTitle , urlsEqual } from './DevtoolsUtils.js' ;
11+ import {
12+ extractUrlLikeFromDevToolsTitle ,
13+ urlsEqual ,
14+ UniverseManager ,
15+ } from './DevtoolsUtils.js' ;
1216import type { ListenerMap } from './PageCollector.js' ;
1317import { NetworkCollector , ConsoleCollector } from './PageCollector.js' ;
1418import { Locator } from './third_party/index.js' ;
@@ -113,6 +117,7 @@ export class McpContext implements Context {
113117
114118 #nextSnapshotId = 1 ;
115119 #traceResults: TraceResult [ ] = [ ] ;
120+ #universeManager: UniverseManager ;
116121
117122 #locatorClass: typeof Locator ;
118123 #options: McpContextOptions ;
@@ -127,6 +132,7 @@ export class McpContext implements Context {
127132 this . logger = logger ;
128133 this . #locatorClass = locatorClass ;
129134 this . #options = options ;
135+ this . #universeManager = new UniverseManager ( this . browser ) ;
130136
131137 this . #networkCollector = new NetworkCollector ( this . browser ) ;
132138
@@ -153,11 +159,13 @@ export class McpContext implements Context {
153159
154160 async #init( ) {
155161 const pages = await this . createPagesSnapshot ( ) ;
162+ await this . #universeManager. init ( pages ) ;
156163 await this . #networkCollector. init ( pages ) ;
157164 await this . #consoleCollector. init ( pages ) ;
158165 }
159166
160167 dispose ( ) {
168+ this . #universeManager. dispose ( ) ;
161169 this . #networkCollector. dispose ( ) ;
162170 this . #consoleCollector. dispose ( ) ;
163171 }
0 commit comments