Reproduction (Focused Mach API) 1. Build the code above as a C command-line tool. It is a C command-line tool using mach_port_construct, task_set_exception_ports and task_get_exception_ports. No Endpoint Security entitlement is needed for this focused Mach test. 2. Run only in an isolated disposable macOS VM. The helper checks kern.hv_vmm_present and refuses a non-virtualized host. Every fixture process has a 20-second emergency alarm. 3. Create a fresh temporary directory, for example: `trial=$(mktemp -d /tmp/apple-lifetime.XXXXXX)` Start `FocusedLifetime --custodian "$trial" double-fork` in the background, recording the direct child owner PID and its stdout. The owner creates its local exception receive port, installs EXC_MASK_SYSCALL | EXC_MASK_MACH_SYSCALL | EXC_MASK_BREAKPOINT with EXCEPTION_IDENTITY_PROTECTED | MACH_EXCEPTION_CODES before forking the workload, and has no workload cleanup callback. 4. Wait for `$trial/workload.jsonl`, create `$trial/trigger` and allow the detached descendant to start. Inspect workload.jsonl for successful setup and inherited live handler state (mask 448). 5. SIGKILL only the owner launched by the test; wait for that direct child to exit. Create `$trial/after-owner-loss` and inspect the workload log again. 6. Original observed result: inherited handler state becomes dead (mask 448), but root and detached daemon stay alive and their heartbeat files continue to grow across repeated reads. The fixture alarms later terminate them; timeout cleanup does not count as lifetime enforcement. 7. Repeat in fresh directories with modes root, fork, setsid, spawn-group, spawn-session and clear-exception. A separate breakpoint-control run with the owner left alive confirms real kernel exception delivery; resulting target death is not owner-loss cleanup. Environment: isolated Tart VM, macOS 27.0 (26A428), XNU 13432.1.9, SDK 27.0, ordinary guest UID 501 for Mach tests; guest SIP already disabled; network disabled and no host shares or credentials. Packaged project built separately on macOS 27.0.1 (26A434), Xcode 27.0 (27A266a).