Enum StorageIntegrityIssueKind
Class of consistency violation surfaced by RunStorageIntegrityCheck(). Every value names an invariant that must hold across a healthy engine — a non-zero issue list is a hard durability / structural bug, not a warning.
public enum StorageIntegrityIssueKind : byte
Fields
ChainDirectoryMismatch = 2Typhon.Engine.Internals.LogicalSegment<TStore>'s forward header chain (via
LogicalSegmentNextRawDataPBID) reaches a different page count than the persisted Page Directory enumerates. Forward-chain canon is on each page header; Page Directory canon is on the root page's raw-data section. If they disagree, one of the two writes lost durability during a Grow.ChunkSegmentCapacity = 3Typhon.Engine.Internals.ChunkBasedSegment<TStore>'s computed capacity (
ChunkCapacity) ≠AllocatedChunkCount + FreeChunkCount. The segment's chunk free-list desynced from the chunk-occupancy bitmaps on its pages.PopcountOrphan = 0Occupancy bitmap has a bit set for a file page that no segment claims and is not a reserved root/reserve slot. Sign of a lost write — pages allocated to a segment but the segment's persisted page-list (root-page Page Directory + extension map pages) didn't capture them durably. The on-disk bitmap survived; the segment's directory append did not.
PopcountPhantom = 1A segment's
Pageslist references a file page whose occupancy bit is clear — the segment believes it owns a page that is actually free. Catastrophic; means a free could double-allocate that page.