Hi tarek,

I'm looking at this Disjoint Group + Diagonal puzzle in sukaku explainer 1.15.10:

000000000007000000000604003000000000510090034000000000600701000000000200000000000

After a few trivial moves we get here:

- Code: Select all
`+--------+--------------------------------------------------------------+--------+`

| 12348 | 6 234589 12359 12358 35789 14589 124589 | 2578 |

+--------+--------+ +--------+--------+

| 1349 | 2458 | 7 139 258 3589 6 | 2458 | 1589 |

| +--------+--------+ +--------+--------+ |

| 1289 2589 | 1258 | 6 12578 4 | 158 | 125789 3 |

| +--------+--------+ +--------+--------+ |

| 23489 234789 23489 | 1345 | 13457 | 6 | 1589 12589 2589 |

| +--------+--------+--------+ |

| 5 1 6 8 | 9 | 2 7 3 4 |

| +--------+--------+--------+ |

| 234789 23489 289 | 1345 | 1345 | 57 | 1589 125689 125689 |

| +--------+--------+ +--------+--------+ |

| 6 234589 | 23458 | 7 23458 1 | 3458 | 4589 589 |

| +--------+--------+ +--------+--------+ |

| 1349 | 4578 | 13589 349 4568 3589 2 | 45678 | 1589 |

+--------+--------+ +--------+--------+

| 123478 | 234589 12589 23459 234568 589 134589 145689 | 15678 |

+--------+--------------------------------------------------------------+--------+

At this point it suggests a skyscraper and 'get all hints' only shows a bunch of turbot fishes. However, we have the following moves:

-Locked candidates 2 on diagonal (eliminate from rest of box 1)

-Locked candidates 6 on diagonal (eliminate from rest of box 9)

-Locked candidates 3 on diagonal (eliminate from rest of top left disjoint group)

-Locked candidates 1 on anti-diagonal (eliminate from rest of bottom left disjoint group)

-Locked candidates 7 in lower right disjoint group (eliminate from rest of diagonal)

How come these moves are not shown?

RW

Edit: seeing similar misses in other puzzles as well. It appears diagonals are not properly accounted for when checking locked candidates.

Edit 2: looking at the code, it seems it doesn't check diagonals for locked candidates at all...