thombashi/allpairspy ? reverse-engineered prompt

Reverse engineered prompt

Build me a small Python library that helps generate pairwise test cases for large sets of input values.

I want to be able to pass in lists of options for each parameter, then iterate through a much smaller set of combinations that still covers the important pairs. It should feel easy to use in normal Python code, and also work nicely with pytest style parameterized tests.

Please include a way to skip invalid combinations with a custom filter function, since some value pairs should never be tested together. If I pass in named parameters in an ordered mapping, I want the results to come back with readable field names instead of just plain lists.

Also add a few simple examples and tests so it is clear how to use it. If you need to check anything about the current recommended Python packaging or test setup, look up the latest docs online.