I wouldn't use WRKOBJ. Watch this:
CRTPF FILE(ROB/HIDDEN) RCDLEN(10)
GRTOBJAUT OBJ(ROB/HIDDEN) OBJTYPE(*FILE) USER(*PUBLIC) AUT(*EXCLUDE)
CRTUSRPRF USRPRF(DUMMY) USRCLS(*USER) SPCAUT(*NONE)
sign on as dummy
ADDLIBLE LIB(ROB) POSITION(*FIRST)
(Cannot find object to match specified name.) This would lead you to
assume that it doesn't exist. However,
DSPOBJD OBJ(*LIBL/HIDDEN) OBJTYPE(*FILE)
CPF2189 - Not authorized to object HIDDEN in ROB type *FILE.
Those of us routinely running under *ALLOBJ forget the trials and
tribulations of those that aren't. As such, our tests are invalid.