But it would be interesting anyway to know where it's documented to use this instead of arch in the destination string
You can find the description by running the following command in Terminal:
man xcodebuild
** Destinations**
The -destination option takes as its argument a destination specifier describing the device (or devices) to use as a destination.
The local Mac, referred to in the Xcode interface as My Mac, and which supports the following keys:
arch The architecture to use, e.g. arm64 or x86_64.
variant The optional variant to use, e.g. Mac Catalyst or macOS.
An iOS device, which supports the following keys:
id The identifier of the device to use, as shown in the Devices window. A valid destination specifier must provide either id or name, but not both.
name The name of the device to use. A valid destination specifier must provide either id or name, but not both.
OS When specifying the simulated device by name, the iOS version for that simulated device, such as 6.0, or the string latest (the default) to indicate the most recent version of iOS supported by this
version of Xcode.
A simulated iOS device, which supports the following keys:
id The identifier of the simulated device to use, as shown in the Devices window. A valid destination specifier must provide either id or name, but not both.
name The name of the simulated device to use. A valid destination specifier must provide either id or name, but not both.
OS When specifying the simulated device by name, the iOS version for that simulated device, such as 6.0, or the string latest (the default) to indicate the most recent version of iOS supported by this
version of Xcode.