A serial bus of unique identifier switches (1wire or similar) connecting all the keys with a single loop could be cheaper at scale and solve NKRO. Possibly work on many vastly different (a few buttons to hundreds) product lines with the same ASIC with say only one or two support components per application.
You are correct, that is an nicely elegant solution. You could even use the top of a 'key' chip as the land point for the key, either magnetic or capacitive activation.