@gati-framework/runtime
Version:
Gati runtime execution engine for running handler-based applications
64 lines • 1.75 kB
TypeScript
/**
* @module runtime/request-replayer
* @description Replays requests from snapshots
*/
import type { ReplayOptions, ReplayResult, StageName } from './types/trace.js';
import type { TraceStorage } from './trace-storage.js';
/**
* Request replayer configuration
*/
export interface RequestReplayerConfig {
/** Maximum replay duration (ms) */
maxDuration: number;
/** Enable comparison with original */
enableComparison: boolean;
}
/**
* Replays requests from stored traces
*/
export declare class RequestReplayer {
private storage;
private config;
constructor(storage: TraceStorage, config?: Partial<RequestReplayerConfig>);
/**
* Replay a request from a trace
*/
replay(options: ReplayOptions): Promise<ReplayResult>;
/**
* Get snapshot for a specific stage
*/
private getSnapshotForStage;
/**
* Find stage by name (recursive)
*/
private findStage;
/**
* Prepare request with modifications
*/
private prepareRequest;
/**
* Execute replay (simplified)
*/
private executeReplay;
/**
* Compare replay result with original
*/
private compareResults;
/**
* Validate replay is possible
*/
canReplay(traceId: string, fromStage?: StageName): Promise<boolean>;
/**
* Get available replay stages for a trace
*/
getReplayStages(traceId: string): Promise<StageName[]>;
/**
* Collect stage names recursively
*/
private collectStageNames;
}
/**
* Create a request replayer instance
*/
export declare function createRequestReplayer(storage: TraceStorage, config?: Partial<RequestReplayerConfig>): RequestReplayer;
//# sourceMappingURL=request-replayer.d.ts.map