32 lines · 1.2 KB · TypeScript
RawDownload
export type ClaudeRecordingQueryMode =  | "streaming"  | "restart"  | "resume_at_cursor"  | "fork_session"  | "fork_session_prior_turn"  | "fork_session_continue"  | "fork_session_siblings"  | "fork_session_merge_back"  | "fork_session_merge_back_siblings"  | "active_steering"  | "interrupt"  | "interrupt_restart"; export function validateClaudeReplayRecordingSelection(input: {  readonly scenario: string;  readonly configuredQueryMode: ClaudeRecordingQueryMode;  readonly selectedQueryMode: ClaudeRecordingQueryMode;  readonly configuredPromptCount: number;  readonly selectedPromptCount: number;}): void {  if (input.selectedQueryMode !== input.configuredQueryMode) {    throw new Error(      `Claude replay fixture '${input.scenario}' uses query mode '${input.configuredQueryMode}', not '${input.selectedQueryMode}'. Select a scenario configured for the requested query mode.`,    );  }  if (input.selectedPromptCount !== input.configuredPromptCount) {    throw new Error(      `Claude replay fixture '${input.scenario}' requires exactly ${input.configuredPromptCount} prompt(s) for query mode '${input.configuredQueryMode}', but received ${input.selectedPromptCount}.`,    );  }}