OpenBSDs userland is base qualified code such as nginx and extra packages are kept separate in /usr/local.
For both snapshots and especially for building yourself follow www.openbsd.org/faq/current.html For building from source; man release is brill. Sync issues with packages built after upgrades are highly unlikely as long as you update src and ports at the same time (occasionally you may need to update ports again a little later) but building packages yourself can be time consuming. You may sync your base src in the middle of an update so if you run into problems resync all your sources and try again. Snapshots are apparently done at times when sync issues and problems in the base src have a good chance of being avoided but obviously this is current and actively developed by many so no guarantees. For snapshots download and install and run pkg_add soon after. If pkg_add fails due to major or minor lib issues or you see other odd messages then check the dates of the snapshot and snapshot packages and when they change try again. Regards, Kc