This is something the SSWG has been debating back and forth, as the following threads have shown:
Ian Partridge from IBM suggested similar to you, where we have swift-<package solution name, such as APNS>-nio
and the modules drop the swift
part ie. APNSClientNIO
or APNSNIO
.
There's still concerns that with such consistency will still lead to close clashes, and as the SSWG pointed out - multiple packages may be accepted for the same solution domain (say, two Redis libraries) that might take different approaches and solve perhaps different problems for users. The SSWG is intended to be a guided process to validate project maturity and viability, not to necessarily be a board that accepts only "official" solutions.
With that said, having a more strict naming structure restricts the flexibility of naming "competing" packages.