- Replace em dashes (UTF-8 multi-byte) with ASCII hyphens; PowerShell 5.1
reads ps1 files as CP1252 by default so any non-ASCII in source causes
cascading parse errors
- Extract POSTGRES_PASSWORD from container env (Aspire uses scram-sha-256;
peer/trust auth does not work) and pass as PGPASSWORD env var to pg_dump
and psql in both Backup and Restore scripts
- @() wrap on Get-ChildItem result to force array before .Count under
Set-StrictMode -Version Latest (single-item returns a bare object in PS5)
- Restore-test evidence: 73 ColorVarieties -> DELETE 12 -> 61 -> pg_restore
-> 73 confirmed (run 2026-06-06 07:09 against postgres-gatkzrgq)
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>