$ErrorActionPreference = 'Stop' $root = Split-Path -Parent $PSScriptRoot $page = Get-Content -LiteralPath (Join-Path $root 'pages/genealogy/g11-genealogy-settings.vue') -Raw -Encoding UTF8 foreach ($token in @('settingsFixtures', 'settingsFixtures[genealogyId.value]', 'genealogyDraft.name.trim().length > 30', 'originalDraft', 'isDirty')) { if (-not $page.Contains($token)) { throw "G11 settings data contract missing: $token" } } Write-Output 'G11-SETTINGS-DATA-CONTRACT PASS'