-
Notifications
You must be signed in to change notification settings - Fork 0
Migration and Versioning
Panayiotis Stylianopoulos edited this page Jul 12, 2026
·
3 revisions
Chunkis has two separate migration concerns:
- CIS-to-CIS version upgrades.
- Vanilla MCA-to-CIS world import.
The migration module owns the CIS version graph and storage-backed rewrites.
Current runtime CIS version: 11.
Supported version edges currently include:
7 → 88 → 99 → 1010 → 11
Migration is forward-only. Downgrades are not supported.
A clean full-directory migration writes .chunkis-cis-version.
The fabric module owns the pre-runtime MCA import flow through integration/migration/offline.
The process:
- Runs before integrated-server startup.
- Reads vanilla
region/andentities/directories. - Parallelizes independent region files with bounded worker counts.
- Produces one authoritative CIS snapshot per present chunk.
- Validates the migrated payload shape after writing.
- Retires a source
.mcafile as.backuponly when all present chunks were handled successfully.
- Normal runtime load expects current CIS semantics.
- Old CIS formats must be migrated before normal runtime use.
- MCA import is a forward takeover process, not a reversible conversion.
- If CIS data already exists, prelaunch logic may mark it authoritative and delete stale vanilla source files.
migration/src/main/java/io/liparakis/chunkis/migrator/CisVersionMap.javamigration/src/main/java/io/liparakis/chunkis/migrator/CisStorageMigrator.javafabric/src/main/java/io/liparakis/chunkis/integration/migration/offline/PreLaunchMigrationCoordinator.javafabric/src/main/java/io/liparakis/chunkis/integration/migration/offline/OfflineMcaCisTranslator.java