The archive canisters of ICRC-1 ledgers are minted automatically after X transactions (trigger threshold). What I don’t understand is whether they already have a set freeze threshold value.
Since I think I won’t be their controller, I would have trouble modifying this parameter. I’m referring to the official ICRC1-2-3 Wasm file found in the token creation guide of dfinity.
What worries me the most is that, in the future, all transactions - or even worse, the token balances in users wallets -could be wiped out because this parameter is not preset.
When a ledger spawns an archive, the controller of the newly-spawned archive will be the same as that of the ledger. E.g., for the ckBTC archive, the controller is the NNS root canister, the same as the controller of the ckBTC ledger.
Making sure that the ledger and archive canisters do not runs out of cycles and get wiped, is nothing specific to ledger suite canisters. One way to facilitate the management is to use a service such as CycleOps.
Thank you Mathias! Just to follow up:
if the auto-archive trigger fails due to insufficient cycles, will the ledger automatically retry the create_canister call once there are enough cycles available again? Or would a manual intervention still be needed in that case?
If there are not enough cycles to create an archive, the ledger would retry. The archiving logic is run after each transaction, i.e., there is not automatic retry on a timer or heartbeat.