Completed grid
Step by step solution
Step 1
We start by looking at column 5, in combination with column 6 and 7. In column 6, we have two groups of digits. These two groups cannot be connected via column 7, since each group in column 7 has at most 2 digits. This implies that both groups in column 6 should be connected to the single group in column 5.
Because of the cross the streams rules, this is only possible if the groups in column 5 and 6 have shapes which look roughly as follows:
In particular, the group in column 5 should have at least 3 digits, and may not touch the boundaries of the grid. We get the following progress:
Step 2
Now we look at the top row. Note that the 7 in this row requires at least 2 digits. The 5 in this column can furthermore not be placed in just R1C4, since this would contradict the corresponding column clue. For a similar reason, we also cannot place a 5 in R1C7. We conclude that the 5 clue always needs to use a digit in R1C6.
Looking at row 3, we have two ?-clues which take at least 1 cell, and a 7 clue which takes at least 2 cells. This 7 always needs to use R3C6. We have the following progress:
Step 3
The 9 clue in column 6 should use at least 2 and at most 3 digits, so there is only one way left to position the digits corresponding to this clue. Using the connectivity considerations from step 1, together with the observation that the 7 from column 5 uses at most 3 digits, allows us to almost complete the shading of column 5 and 6.
Step 4
In row 3, we now know where the ?-clues should go in the grid. In row 6, we know that the 10 takes at least 3 digits, which should in particular include R6C2 and R6C3. In column 6, we already know the positions of all 5 digits, so the remaining cell should be empty.
Step 5
Next we consider the four cells R4C3, R5C3 and R5C4. The cells R4C3 and R5C4 cannot both be shaded because of connectivity. Also the cells R5C3 and R4C3 cannot both be shaded, since this would force the 7 from column 3 into R6C3 and R7C3, and the 8 from column 4 into R6C4 and R7C3, thereby forming a 2x2 block with digits. It can also not be the case that both R4C3 and R5C3 contain digits, because this would form a group of 4 digits in column 3, which is impossible.
The conclusion we can draw from the previous observations is that R5C4 cannot be shaded. This in turn implies that R4C4 is shaded by the 2x2 rule, and that R5C3 is shaded to prevent a group of 4 digits from forming in row 5.
Step 6
By connectivity, R6C4 should contain a digit. The 7 in column 3 should be completed into cell R7C3. Next, the 2x2 rule implies that R7C2 and R7C4 need to be shaded. Finally we know that the 9 of row 4 needs to use R4C2.
Step 7
It is time to finally fill in some digits! In row 5, we have a 9 which should be satisfied with 3 digits, and without using a 1 which occurs elsewhere in the row. This is only possible by writing it as 9 = 2+3+4 (in some order). This clue shares R5C4 with the 8 of column 4. This 8 cannot be completed if it contained a 2 or 4, so R5C4 should contain a 3 instead.
Step 8
Those are enough digits for now. The 5 in R6C4 implies that the 10 clue in row 6 cannot consist of 4 cells, so R6C1 is shaded. By connectivity we find that R5C2 contains the only digit corresponding to the 1 clue.
Step 9
Column 1 can only be completed by putting a digit for the ? in R1C1, and by shading R2C1. This allows us to complete the shading of this corner of the grid by using connectivity, and by furthermore using that the 8 in column 3 uses at most 3 digits and the 2 in column 4 uses exactly 1 digit.
Step 10
Next, we will try putting some digits into the grid again. First we observe that we can put a 1 in R5C2 and a 2 in R2C4. We note that the 6 in column 6 has to be completed as 2+4 in some order, and therefore the 9 in the same column should contain 1+3+5. The 7 in column 5 has to be 1+2+4.
The 10 in row 6 can a priori be completed as either 1+4+5 or 2+3+5. However, R6C2 cannot contain a 1 because of the 1 in R5C2, and R6C3 cannot contain a 1 because then the 7 in column 3 cannot be completed anymore. Therefore the 10 needs to be 2+3+5 in some order.
Step 11
The fact that the 10 in row 6 is satisfied as 2+3+5, implies that R6C6 cannot contain a 2, and therefore it contains a 4.
Step 12
Note that R1C7 is either empty, or contains a 4: if any other digit would be entered here, then the column clue could not be satisfied because of the 2x2 rule. This implies that R1C6 contains either a 1 or a 5.
Next consider the 7 in row 3. If this is a 2 digit sum, it needs to be 2+5 (in this order). If it is a 3 digit sum, it needs to be 2+1+4 (in this order). In particular, R3C5 always contains a 2, R3C6 contains either a 1 or a 5, and R3C7 always is either empty or contains a 4. Note that in both these cases, R4C7 needs to be empty.
We also note that both R1C6 and R3C6 contain either a 1 or a 5, and therefore R2C6 needs to contain a 3.
Step 13
Staying in the same corner, we see that either R1C7 or R3C7 contains a 4, in order to satisfy either the 5 clue in row 1 or the 7 clue in row 3. By the 2x2 rule, this implies that R2C7 is empty.
One consequence of this, is that the 7 clue in row 2 needs to be satisfied by R2C2, R2C3 and R2C4. This can only be done in a single way.
By looking at column 7, we furthermore see that one of the fours in this column needs to be satisfied as 1+3. This is only possible if we use R6C7 and R7C7 for this.
Step 14
Consider the 9 in row 4, this can only be completed as 2+3+4. Now by looking at row 2, we see that all 5 digits should be placed somewhere in this column, and the only remaining place for the 5 is at the top. This 5 also allows us to complete the top row, together with cells R3C6 and R3C7.
Step 15
Now there is only one way of completing the 5 in column 1, which in turn leaves only one way of completing the 8 in column 3. The remaining 4 digits can easily be filled out after this, which completes the puzzle!