Pre-pitch: Let's solve the String.Index encoded offset problem

May I ask what is probably a stupid question? When you/SE‐0180 say(s) this...

...by “serialization”, you mean putting the various index kinds into a linear series in order to compare which comes first (Comparable), correct? Or do you mean data serialization, where the index instance would be encoded into a series of bits (Codable)?

Until I double‐checked String.Index and noticed that it wasn’t actually Codable, I—mistakenly?—thought you were all referring to the latter. (The word encoded didn’t help.) The idea absolutely terrified me, which was where this random post came from:

I’m glad the standard library doesn’t use it for that—right?—, but its existing name still sort of invites the confusion I had, and suggests that it can be used magically with Codable. But that would be a foot‐shoot fest. Maybe we should all keep that in mind as we design API and write documentation, so that whatever we come up with is clear?

(The API you list above looks fine in this regard.)