Yeah, this is how BCC: is done, the address just doesn’t make it into a header.
Discourse is a bit different in that it does not use the envelope recipient at all, only the headers. Arguably, this is wrong, but so many people depend on the current behaviour it’s hard to change.
Fast Rejection was removed as it was broken. On top of that, the logic checked the envelope recipient, which doesn’t match what Discourse looks for. This mismatch means that fast-rejection might reject otherwise deliverable mail, and allow non-deliverable.
Reconciling this would unfortunately be a gnarly effort for comparatively little gain.