An arrow / trident inside of a block stores the properties of that block. However, it doesn't update when the properties of the block changes. An example would be that if you light up a redstone lamp after an arrow has been shot inside it, the arrow's Properties tag in the inBlockState tag will still be set to lit:"false".
Steps to reproduce
Shoot an arrow into an unlit redstone lamp and run the following command:
/data get entity @e[type=arrow,limit=1]
Light up the redstone lamp and run the same command.
->TheinBlockStatetag will still be set tolit:"false" in both cases
Also happens in 19w36a