So my last search implementation was just wrong, like incorrect. It still is but at least I made a debugging ui. I’ll do the actual thinking/debugging later.
Did a big rewrite of all the types, I now use a 0-25 integer to represent letters and conversions are everywhere. This also makes hover type hints unreadable, they look like
type Word = [0 | 1 | 2 | 5 | 3 | 4 | 22 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25, 0 | 1 | 2 | 5 | 3 | 4 | 22 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25, 0 | 1 | 2 | 5 | 3 | 4 | 22 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25, 0 | 1 | 2 | 5 | 3 | 4 | 22 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25, 0 | 1 | 2 | 5 | 3 | 4 | 22 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25]
I also tried to get a web worker to search every pair of words for bugs. I won’t be trying that again in the near future.