Key changes
- Added atomic MyTonCtrl bootstrap with automatic rollback after failed or interrupted initialization.
- Improved blockchain dump handling:
- Detects failed downloads and extractions.
- Cleans corrupted partial state before retrying.
- Adds configurable extraction threads and extraction timing.
- Makes pre-extraction validation optional.
- Added explicit NETWORK=mainnet|testnet configuration, independent of TON_BRANCH.
- Persisted /usr/local/bin/mytonctrl and /usr/src/ton through new mytonctrl and ton-src Docker volumes.
- Restores missing MyTonCtrl CLI, Python modules, service definitions, and bootstrap markers from persisted state.
- Added safeguards for legacy or incomplete MyTonCtrl installations.
- Improved ownership and permission normalization for TON and MyTonCtrl data.
- Upgraded the build environment from Clang 21 to Clang 22.
- Added sysstat and iotop diagnostic utilities.
- Updated Docker Compose examples and configuration documentation.
- Removed the obsolete SYNC_BEFORE configuration.
Upgrade notes
- Existing deployments should add the mytonctrl and ton-src volumes before recreating containers.
- Testnet installations must set NETWORK=testnet in addition to the testnet TON branch and global configuration.
- Back up /var/ton-work and /usr/local/bin/mytoncore before upgrading.
- Legacy installations with a MyTonCtrl database but missing bootstrap metadata may stop safely and require manual recovery or ALLOW_LEGACY_MYTONCORE_DB_QUARANTINE=true.