-e pkg-name
This option allows you to test for the presence of another
(perhaps prerequisite) package from a script. If the package
identified by pkg-name is currently installed, return 0,
otherwise return 1. In addition, the names of any package(s)
found installed are printed to stdout unless turned off using the
-q option.
The given pkg-name is actually a package specification, as
described in packages-specs(7). For example, pkg_info -e
'name->=1.3' will match versions 1.3 and later of the name
package.
-e pkg-path
Another variant of this option that uses a package path instead.
A package path is a location within the ports tree, as described
in FULLPKGPATH in bsd.port.mk(5). For example, pkg_info -e
x11/kde/base3 will match any package that was compiled according
to ${PORTSDIR}/x11/kde/base3.

I don't believe there are stable packages being built yet, so, this isn't exactly an issue for the most part.

jggimi has the right idea, grab the ports.tar.gz tarball and update to OPENBSD_4_7 or your stable branch, and you'll get an idea what ports have been updated via the output (..use cvs -q) or after updating run the out-of-date script and manually build any updates relevant to your system.

I may be wrong about the available of stable packages though, haven't reconfirmed this yet.

(I know it sounds stupid) can I just please make sure pkg_add -u updates my packages on system (not ports yet) entirely (as in no additional steps required except cleanup?)? as exactly described in the OpenBSD docs?