pledge(2) and unveil(2) has been resolved by eliminating the tmppath promise from what pledge(2) offers.
The commit by Theo de Raadt (deraadt@) comes with an explanation in the commit message, which reads
List: openbsd-cvs Subject: CVS: cvs.openbsd.org: src From: Theo de Raadt <deraadt () cvs ! openbsd ! org> Date: 2026-02-26 7:42:26 CVSROOT: /cvs Module name: src Changes by: deraadt@cvs.openbsd.org 2026/02/26 00:42:26 Modified files: sys/sys : pledge.h sys/kern : kern_pledge.c lib/libc/sys : pledge.2 Log message: pledge "tmppath" goes away because it sucks. The history is kind of sad: unveil(2) was invented by Bob Beck and myself because a couple of us struggled and couldn't expand the "tmppath" mechanism to general use.