import { StepId } from '@gridpilot/automation/domain/value-objects/StepId'; import type { PlaywrightAutomationAdapter } from 'packages/automation/infrastructure/adapters/automation'; import type { AutomationResult } from 'packages/automation/application/ports/AutomationResults'; export function assertAutoNavigationConfig(config: Record): void { if ((config as any).__skipFixtureNavigation) { throw new Error('__skipFixtureNavigation is forbidden in auto-navigation suites'); } } export async function executeStepWithAutoNavigationGuard( adapter: PlaywrightAutomationAdapter, step: number, config: Record, ): Promise { assertAutoNavigationConfig(config); return adapter.executeStep(StepId.create(step), config); }