It seems like it's something to do with changes to the way the name/uid are handled. Seems like a bug to me though. Even the documentation doesn't seem to make much sense.
On CURRENT I get the same error, unless I use
-n
Code:
# pw useradd 123
pw: login name required
# pw useradd -n 123
#
# pw userdel 123
pw: no such uid `123'
# pw userdel -n 123
#
It seems it's interpreting it as a UID unless you specifically tell it it's a login name using
-n.
Documentation for 10.2 shows the following, in which case you could understand it treating a number as a UID.
However on 11, the documentation has changed to the following, which suggests
pw useradd 123
'should' work, as you need to use
-u for the UID, but it still functions the same as 10.2:
pw useradd [-n] name [-u uid]
All in all, seems a bit of a mess. I don't know why they can't just stuck to using
-u, and only that, if you want to specify the UID.