save_project uses project_commands.board, which was NOT in the propagation list after pcbnew.LoadBoard() in _handle_import_svg_logo. As a result, save_project() wrote the old in-memory board (without logo gr_poly entries) back to disk, erasing the logo every time. Fix: call _update_command_handlers() after reload, which updates all command handler board references including project_commands.