$ErrorActionPreference = 'Stop' $root = Split-Path -Parent $PSScriptRoot $page = Get-Content -LiteralPath (Join-Path $root 'pages/profile/m01-profile-home.vue') -Raw -Encoding UTF8 foreach ($route in @('/pages/profile/m08-promotion','/pages/profile/m09-vip-orders')) { if (-not $page.Contains($route)) { throw "M01 service entry missing: $route" } } if ($page -match '(?s)\.profile-hero\s*\{[^}]*overflow:\s*hidden') { throw 'M01 profile hero must not clip expanded identity copy' } Write-Output 'M01-SERVICE-ENTRY-CONTRACT PASS'