An unwritable --report path ended in a TypeError from fputcsv() after the counts were printed. The command now says so and exits with an error before anything is migrated. Page titles in the report include hidden pages (Connection::select() applied the frontend restrictions). Co-Authored-By: Claude Opus 5.5 <[email protected]>