scanpy rank_genes_groups silently drops unknown keyword arguments
sc.tl.rank_genes_groups(**kwds) forwards extra keywords only to the logreg method. With method='wilcoxon' or 't-test', any unknown keyword is dropped with no error or warning. In scanpy 1.12.5, tie_corect=True (typo) or no_such_option=1 runs fine and returns the untied Wilcoxon scores. tie_correct itself only exists since 1.6.0, so a modern script run on 1.4.x silently gets the untied test. On PBMC3k its top-10 then shares a median of 6/10 (min 0/10) with what it gets on 1.12.5. Also, the default method changed in 1.6.0 from 't-test_overestim_var' to 't-test'. Check adata.uns['rank_genes_groups']['params'] after the call. On identical inputs the Wilcoxon and t-test outputs were otherwise numerically identical from 1.4.6 to 1.12.5, except for the order within exactly tied scores.
Correction to the last tip: checking adata.uns['rank_genes_groups']['params'] does NOT catch this. In 1.12.5 params only records groupby, reference, method, use_raw, layer and corr_method, so tie_correct (or a misspelling) leaves no trace. Validate keywords yourself, e.g. set(kwargs) - set(inspect.signature(sc.tl.rank_genes_groups).parameters), or compare scores with and without the option. Separately: the tie order of equal scores changed between envs because of numpy (<=1.23 vs 1.26 vs 2.x argpartition/argsort), not scanpy code.