Thanks Ed for your comments and corrections.
Prelims
a) R12C1 = {39/48/57}, no 1,2,6
b) R1C67 = {39/48/57}, no 1,2,6
c) R3C23 = {16/25/34}, no 7,8,9
d) R4C34 = {79}
e) R6C34 = {59/68}
f) R7C23 = {39/48/57}, no 1,2,6
g) R89C1 = {49/58/67}, no 1,2,3
h) R9C67 = {17/26/35}, no 4,8,9
i) 10(3) cage at R6C6 = {127/136/145/235}, no 8,9
j) 21(3) cage at R7C8 = {489/579/678}, no 1,2,3
k) 38(8) cage at R4C2 = {12345689}, no 7
1. 38(8) cage at R4C2 = {12345689}, CPE no 1,2,3,4,5,6,8,9 in R5C1 -> R5C1 = 7, R3C34 = [97], clean-up: no 5 in R12C1, no 5 in R6C4, no 3 in R7C2, no 6 in R89C1
1a. R12C1 = {39} (cannot be {48} which clashes with R89C1), locked for C1 and N1, clean-up: no 4 in R3C23, no 4 in R89C1
1b. Naked pair {58} in R89C1, locked for C1 and N7, clean-up: no 4,7 in R7C23
1c. R7C23 = [93]
1d. R1C67 = {48/57} (cannot be {39} which clashes with R1C1), no 3,9
1e. 3 in N4 only in R456C2, locked for 38(8) cage at R4C2, no 3 in R5C4567
1f. 9 in 38(8) cage only in R5C4567, locked for R5
1g. 34(6) cage at R1C3 must contain 9, locked for N2
2. 45 rule on N1 2 innies R1C3 + R3C1 = 10 = [46/64/82]
2a. Killer pair 2,6 in R1C3 + R3C1 and R3C23, locked for N1
2b. 2 in N1 only in R3C123, locked for R3
2c. 6 in N1 only in R1C3 + R3C123, CPE no 6 in R3C4
3. 45 rule on N7 2 innies R7C1 + R9C3 = 8 = [17/26/62]
4. 45 rule on N3 2 innies R13C7 = 11 = [47/56/74/83]
5. 45 rule on N9 2 innies R79C7 = 8 = {17/26}/[53], clean-up: no 3 in R9C6
6. 45 rule on C89 2 outies R28C7 = 14 = {59/68}
6a. R13C7 (step 4) = [47/74/83] (cannot be [56] which clashes with R28C7), no 5,6, clean-up: no 7 in R1C6
7. 45 rule on N6 3 innies R456C7 = 12 = {129/138/147/246} (cannot be {156} which clashes with R28C7, cannot be {237/345} which clash with R13C7), no 5
8. 12(3) cage at R3C7 = {138/147/156/237/246/345}
8a. R34C7 cannot total 11 (which would clash with R13C7 = 11, step 4, CCC) -> no 1 in R4C6
[Alternatively 45 rule on N3 2 outies R4C67 = 1 innie R1C7 + 1, IOU no 1 in R4C6]
8b. 1 of {138} must be in R4C7 -> no 8 in R4C7
9. 10(3) cage at R6C6 = {127/136/145/235}
9a. R67C7 cannot total 8 (which would clash with R79C7 = 8, step 5, CCC) -> no 2 in R6C6
[Alternatively 45 rule on N7 2 outies R6C67 = 1 innie R9C7 + 2, IOU no 2 in R6C6]
10. 45 rule on N2 2(1+1) outies R1C3 + R4C5 = 1 innie R1C6 + 6, IOU no 6 in R4C5
11. 45 rule on N2 3(2+1) outies R1C37 + R4C5 = 18
11a. Max R1C37 = 15 -> min R4C5 = 3
11b. R1C37 cannot total 11,12 (because no 6,7 in R4C5) -> no 4 in R1C3, clean-up: no 6 in R3C1 (step 2)
12. 45 rule on N8 2(1+1) outies R6C5 + R9C3 = 1 innie R9C6 + 3, IOU no 3 in R6C5
13. 45 rule on N8 3(1+2) outies R6C5 + R9C37 = 11
13a. Min R9C37 = 3 -> max R6C5 = 8
13b. R9C37 cannot total 6 -> no 5 in R6C5
13c. R6C5 + R9C3 cannot total 5 -> no 6 in R9C7, clean-up: no 2 in R7C7 (step 5), no 2 in R9C6
14. 10(3) cage at R6C6 = {127/136/145/235}
14a. 2 of {127} must be in R6C7 -> no 7 in R6C7
15. R456C7 (step 7) = {129/138/246}
15a. 8,9 of {129/138} must be in R5C7 -> no 1 in R5C7
15b. 4 of {246} must be R4C7 (because R13C7 = [83] for {246}, no 7 in R4C6 and 12(3) cage at R3C7 cannot be [336]) -> no 6 in R4C7, no 4 in R56C7
16. 10(3) cage at R6C6 = {127/136/145/235}
16a. 4 of {145} must be in R6C6, 5 of {235} must be in R7C7 -> no 5 in R6C6
17. Consider placements for R3C1 = {24}
R3C1 = 2 => no 2 in R7C1 => no 6 in R9C3 (step 3)
or R3C1 = 4 => R1C3 = 6 (step 2)
-> no 6 in R9C3, clean-up: no 2 in R7C1 (step 3)
[Ed pointed out that 45 rule on N17 4(2+2) innies R19C3 + R37C1 = 18 eliminates 6 from R9C3 because R37C1 cannot total 4. It’s rare that a 45 on separated rows/columns/nonets leads to anything useful, so one tends not to look at them.]
18. R6C5 + R9C37 = 11 (step 13)
18a. R9C37 cannot total 7 -> no 4 in R6C5
19. R13C7 (step 6a) = [47/74/83]
19a. R1C37 + R4C5 = 18 (step 11) = [648/675/873] (cannot be [684] because R3C7 = 3, R4C7 = 4 (hidden single in C7) clashes with R4C5) -> no 8 in R1C7, no 4 in R4C5, clean-up: no 4 in R1C6, no 3 in R3C7
20. Naked pair {47} in R13C7, locked for C7 and N3, clean-up: no 1 in R79C7 (step 5), no 1,7 in R9C6
20a. Killer pair 5,6 in R28C7 and R7C7, locked for C7
20b. Naked triple {123} R469C7, 1 also locked for N6
20c. 1 in R5 only in R5C23456, locked for 38(8) cage at R4C2, no 1 in R46C2
21. R6C5 + R9C37 = 11 (step 13)
21a. Min R9C37 = 5 -> max R6C5 = 6
22. 12(3) cage at R3C7 (step 8) = {147/237/246/345} (cannot be {138/156} because R3C7 only contains 4,7), no 8
23. 10(3) cage at R6C6 = {136/145/235}
23a. R7C7 = {56} -> no 6 in R6C6
24. 34(6) cage at R1C3 = {136789/345679} (cannot be {145789/235789/245689} which clash with R1C6), no 2, 3,7 locked for N2, 7 also locked for C5
25. R2C6 = 2 (hidden single in N2)
25a. 17(4) cage at R2C6 = {1268/2348/2456}
25b. 5 of {2456} must be in R4C5 -> no 5 in R3C56
26. 27(6) cage at R7C4 = {123489/123579/123678/124578} (cannot be {124569/134568/234567} which clash with R9C6), 1 locked for N8
27. 7 in N8 only in 21(4) cage at R6C5 = {1479/1578/2478/3567} (cannot be {2379} because 3,9 only in R8C6)
27a. R6C5 = {126} -> no 2,6 in R7C56 + R8C6
28. 2 in N8 only in R789C4 + R89C5, locked for 27(6) cage at R7C4 -> R9C3 = 7, R7C1 = 1 (step 3)
28a. 6 in C1 only in R46C1, locked for N4, clean-up: no 8 in R6C4
28b. 6 in 38(8) cage at R4C2 only in R5C456, locked for R5 and N5 -> R6C4 = 9, R6C3 = 5, clean-up: no 2 in R3C2
28c. 5 in 38(8) cage only in R5C456, locked for R5 and N5
29. R5C7 = 9 (hidden single in R5), clean-up: no 5 in R28C7 (step 6)
29a. Naked pair {68} in R28C7, locked for C7 -> R7C7 = 5, R9C7 = 3 (step 5), R9C6 = 5, R1C6 = 8, R1C7 = 4, R1C3 = 6, R4C5 = 8 (step 11), R3C1 = 4 (step 2), R8C56 = [47], R89C1 = [58]
29b. Naked pair {16} in R3C56, locked for R3 and N2 -> R3C23 = [52], R8C3 = 4
29c. Naked pair {68} in R7C8 + R8C7, locked for N9 -> R7C9 = 2
29d. R7C8 + R8C7 = {68}, R8C8 = 7 (cage sum)
30. R8C6 = 9 (hidden single in C6), R6C5 = 1 (cage sum), R6C7 = 2, R6C6 = 3 (cage sum), R46C1 = [26], R4C67 = [41], R4C2 = 3, R5C6 = 6, R3C56 = [61], R89C5 = [32], R5C45 = [25], R123C4 = [543]
31. Naked pair {89} in R3C89, locked for N3 -> R2C7 = 6, R23C8 = 9 = [18]
and the rest is naked singles.