My impression is that tuples don't get enough attention:
There's much interest in large topics (existential types, variadic generics...), but tuples don't seem to be important enough to write manifests for them - yet issues regarding them pop up all the time (the latest probably Some small keypath extensions: identity and tuple components).
I think a long-term plan for tuples and the significance of labels (not only in tuples) could help a lot.
Your milage may vary, but I had to fire up the compiler to check what is possible and what not, and I have no idea how Swift 7 might deal with some tuple assignments...
var tup0: (Int, Int) = (key: 2, 2)
let tub0: (a: Int, b: Int) = (2, b: 1)
tup0 = tub0 // works
var tup1 = (key: 2, 2)
let tub1: (a: Int, b: Int) = (2, b: 1)
tup1 = tub1 // doesn't compile
var tup1b = (key: 2, 2)
let tub1b: (a: Int, b: Int) = (2, b: 1)
tup1b = tub1b as! (key: Int, Int) // compiles & crashes
var tup2: (key: Int, Int) = (2, b: 1)
let tub2 = (key: 2, second: 2)
tup2 = tub2 // works
var tup3: (key: Int, Int) = (2, b: 1)
let tub3 = (first: 2, second: 2)
tup3 = tub3 // doesn't compile