Match the Go dest-first identity check so a concurrent replacement is never moved into .rollback-*; only a post-quarantine mismatch is restored with no-replace. Cover both races in the npm smoke suite.