Expand description
Scene format migrations.
SceneHeader.format_version is bumped whenever the on-disk layout
changes. Migrations are registered through inventory::submit! and
applied in chain at load time before the strategy decodes the payload.
Today no migrations are registered (every supported scene already
reads as format_version = 1). The framework is kept thin so a
future schema change can ship the migration alongside the format
bump without touching SerializationService.
Migration ordering: the runner sorts entries by from_version and
applies each whose from_version matches the current payload, then
bumps the working version to to_version and repeats. Two migrations
covering the same from_version is a configuration error — the
runner picks the first registered match and logs a warning.
Structs§
- Scene
Migration Registration - Inventory entry for plugin-registered migrations.
Enums§
- Migration
Error - Migration step failure. Wraps strategy-specific errors as text so the runner can keep its surface narrow.
Traits§
- Scene
Migration - One step of a scene-format migration. Receives the raw payload bytes emitted by the previous version’s strategy and returns the bytes the next version’s strategy expects.
Functions§
- migrate_
payload - Apply registered migrations to bring
payloadfromfrom_versionup toto_version. Returns the (possibly unchanged) payload bytes.