auki-maps
This page mirrors crates/auki-maps/README.md in the auki-sdk repo (branch develop).
The repository is the source of truth.
auki-maps materializes SDK Map Logs into deterministic in-memory state and
adapts changed voxel chunks into renderer-neutral instance buffers.
Current surface
VoxelMapAccumulator::new(map_ref, contract)validates and pins the exact content-addressed Map identity and itsVoxelMapRegistry body.VoxelMapAccumulator::apply(update)merges one sparse additiveMapUpdateor atomically replaces state when the update carries a checkpoint.VoxelMapAccumulator::checkpoint_update()produces a complete sparse checkpoint. A bounded retained log must retain at least one checkpoint and every later delta needed for the requested replay position. atomically and reports the changed chunks.viewer_snapshot(threshold)exposes the current sparse voxel state in Map frame coordinates.VoxelViewerAdapter::changed_chunks(...)emitsChunkRenderUpdate::ReplaceorChunkRenderUpdate::Removeoperations containing pickable cubeVoxelInstances.
Updates use additive occupancy evidence. Applying independent updates in any order produces the same state. Invalid coordinates, non-finite evidence, and unknown semantic classes are rejected without partially mutating the map.
This crate owns no renderer and performs no networking. A consumer opens an SDK Map Log stream, fetches its exact Map Registry entry, applies replay and live updates to the accumulator, and forwards the resulting chunk operations to its renderer. Viewer snapshots retain the Map Registry reference so several maps cannot be confused in one UI.