Persistent parachains for a long-term testnet on v1.14+

Hello everyone,

We would like to launch a long-term testnet that could potentially run for over a year to demonstrate the ability to send NFTs over XCM in the ecosystem. For this task, we would like to have all parachains persistent (i.e. working forever). The deprecated mechanism based on Leases allowed us to do this. However, on Polkadot version 1.14 and higher (on which we would like to launch our testnet), a relay with Agile Coretime enabled requires a system parachain (Coretime), which seems to be very redundant for our task. Is it possible to create a long-term testnet with a relay chain where we will not have the Coretime parachain?

We have found several possible approaches to solving this problem. Integration of the paras_sudo_wrapper pallet into runtime. Also, judging by this script, when starting zombienet, at some stage the coretime pallet is directly called via sudo on the relay side. How correct are these approaches, assuming all parachains are trusted and should work forever? Is there a more correct one?

Another aspect: will there be any side effects (compared to the case of having a CoreTime parachain)? Can the relay schedule tasks only consider Leases with Agile Coretime enabled but without migration and Coretime parachain? The latter is relevant for us since we have Opal testnet, which is currently running on v0.9.43 and has persistent parachains. We would also like to update it to the latest sdk without adding another system parachain (Coretime).