argv is read manually before adw::Application sees it (GTK's option parser rejects unknown long flags), then the filtered list is passed to app.run_with_args. Stub exits cleanly with a stderr breadcrumb so a developer who passes --first-run before Phase 10 lands doesn't get a stuck process. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>