Under the hood
Artifact asset read/delete permission checks now go through a shared internal helper
What
The check that decides whether you're allowed to read or delete an artifact asset was rewired to use a shared internal helper function instead of a separate inline lookup, and this helper now throws its denial directly rather than returning a value to be checked.
Why
This is an internal consistency change. It should not change what gets allowed or denied, but centralizes the logic so read and delete checks behave the same way.