diff --git a/packages/playwright-core/src/server/dispatchers/dispatcher.ts b/packages/playwright-core/src/server/dispatchers/dispatcher.ts index 9215be6d89070..172a58368b278 100644 --- a/packages/playwright-core/src/server/dispatchers/dispatcher.ts +++ b/packages/playwright-core/src/server/dispatchers/dispatcher.ts @@ -356,13 +356,10 @@ export class DispatcherConnection { type: dispatcher._type, method, params: params || {}, + timeout: validMetadata.timeout, log: [], }; - // TODO(skn0tt): promote to top-level metadata instead of smuggling through params. - if (validMetadata.timeout) - callMetadata.params = { ...callMetadata.params, timeout: validMetadata.timeout }; - const controller = dispatcher.createProgressController(callMetadata); this._activeProgressControllers.set(callMetadata.id, controller); diff --git a/packages/playwright-core/src/server/instrumentation.ts b/packages/playwright-core/src/server/instrumentation.ts index c5730e81a84fc..449782e268418 100644 --- a/packages/playwright-core/src/server/instrumentation.ts +++ b/packages/playwright-core/src/server/instrumentation.ts @@ -90,6 +90,7 @@ export type CallMetadata = { type: string; method: string; params: any; + timeout?: number; title?: string; // Client is making an internal call that should not show up in // the inspector or trace. diff --git a/packages/playwright-core/src/server/trace/recorder/tracing.ts b/packages/playwright-core/src/server/trace/recorder/tracing.ts index 90a7018dac724..5fc90c8560c7d 100644 --- a/packages/playwright-core/src/server/trace/recorder/tracing.ts +++ b/packages/playwright-core/src/server/trace/recorder/tracing.ts @@ -738,7 +738,7 @@ function createBeforeActionTraceEvent(metadata: CallMetadata, parentId?: string) title: metadata.title, class: metadata.type, method: metadata.method, - params: metadata.params, + params: metadata.timeout ? { ...metadata.params, timeout: metadata.timeout } : metadata.params, stepId: metadata.stepId, pageId: metadata.pageId, };