UNPKG

donobu

Version:

Create browser automations with an LLM agent and replay them as Playwright scripts.

28 lines 1.69 kB
import { AsyncLocalStorage } from 'async_hooks'; import winston from 'winston'; import type { FlowLogBuffer } from '../utils/FlowLogBuffer'; export declare const loggingContext: AsyncLocalStorage<unknown>; /** * ################################################################################### * # WARNING! Only use this function within the context of Playwright test fixtures! # * ################################################################################### * * Playwright spins up one worker process per shard and constructs the entire * fixture graph (including the user test function) before entering our * AsyncLocalStorage scopes. That means early logs in the test body may execute * outside the ALS store even though we seed it later in the fixture. * * We therefore keep a *process-local* fallback that stores the most recent flow * ID and log buffer for the worker. Because Playwright guarantees only one test * runs at a time per process, this is safe: there is no race between concurrent * tests in the same worker, yet we still avoid leaking IDs across workers. */ export declare function setProcessLocalFlowId(flowId: string | null): void; export declare function setProcessLocalLogBuffer(buffer: FlowLogBuffer | null): void; export declare const appLogger: winston.Logger; export declare const accessLogger: winston.Logger; export declare const browserLogger: winston.Logger; export declare const networkLogger: winston.Logger; export declare function logErrorWithoutStack(message: string, error: any, level?: 'error' | 'warn' | 'info' | 'debug'): void; export declare function formatLogInfoForTest(info: any): any; //# sourceMappingURL=Logger.d.ts.map