Cannot access orcpt

Issue Description

I am trying to filter incoming emails using the envelope “RCTP TO” test. I have a catch-all address set up on my domain, which means the original “to” gets rewritten to my catch-all address.
After a bit more digging, it seems like I can access the original “to” by using “orcpt”.
I wrote a little sieve script to test whether filtering by “orcpt” works:

require ["enotify", "envelope", "envelope-dsn"];
notify :message "Step 1" "mailto:[email protected]";
if envelope :matches "orcpt" "*" {
  notify :message "Step 2" "mailto:[email protected]";
}

The issue is that I never receive the “Step 2” notification from this script when I receive an email. I have tested this script in MtaStageRcpt as well as the untrusted runtime, since according to the changelog, v0.16.6 should support “orcpt” in the untrusted runtime.

I am running Stalwart v0.16.14

Expected Behavior

I should be able to access the original RCPT TO in the untrusted runtime using envelope :matches "orcpt" ..., ${envelope.orcpt}, or something similar.

Stalwart Version

v0.16.x

Installation Method

NixOS

Database Backend

PostgreSQL

Blob Storage

PostgreSQL

Search Engine

Internal

Directory Backend

Internal

I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.

on

I have searched this support forum (open and closed topics) and confirm this is not a duplicate.

on

I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.

on