In a recently Medium article, Joe Kelly described an attack that he calls "Monopoly Mining" in which a state actor or some other very well resourced party that obtains majority hashpower does more than double-spend, they deny all other miners block rewards and thus disrupt the network (https://joekelly100.medium.com/how-to-kill-bitcoin-part-3-no-can-defend-cd6affe3fc44). The attack requires mining ahead but not publishing the chain being created until an opportune time when the majority miner's secret chain is sufficiently far ahead of the canonical chain. Then the majority miner publishes enough of the blocks to establish the new canonical chain taking away all of the block rewards of the now orphaned blocks. Then when any other miner tries to add a new block, the majority miner releases two more withheld blocks to keep denying any other miner block rewards.
Disregarding for the moment the expense required to carry out this attack and the question of whether any entity could attain majority hashpower and build a sufficiently long alternate chain to execute this attack in secret, it seems to me that withholding discovered blocks serves no useful purpose and that this attack could be dealt with by a soft fork that disregards any block that the applicable miner did not publish within a certain amount of time after it was found. But do Bitcoin nodes receive enough information to determine the amount of time that has passed from the time the block was found to the time it was published?
An Ivan on Tech article describes how the Horizen protocol penalizes nodes that delay publishing blocks (https://academy.moralis.io/blog/breaking-down-proof-of-work-mining-and-51-attacks). Has anything similar been seriously considered for Bitcoin?