Does pledge(2) still enable its simple programming interface by allowing certain default actions based on a filesystem hierarchy layout, statically defined in the kernel/libc/somewhere? The first presented versions of tame(2) had this iirc.
If I followed the tech@ list properly, I believe OpenBSD has added a specialized socket type for the "dns" pledge. That allows removing the code that permit certain socket calls iif /etc/resolv.conf has been opened.
There are other things in the works related to pledge. For example, they're going to ship a native local stub resolver that will be a functional extension of libc, permitting them to remove and simplify code from libc. That would allow sandboxing networked services without necessarily requiring any filesystem access after invoking pledge, while still permitting DNS to seamlessly work even after configuration changes. (The trick is that most client resolvers, third-party and in libc, default to 127.0.0.1:53 if /etc/resolv.conf is unavailable.)