OverviewFilesCommitsIssuesDocsReleasesPeers

P2P-Hiverelay / packages / blind-protocol / hiverelay-blind-store-v1.draft.cenc

638 lines · cenc ref:
&*BlindCellAtomicCommittedPutSpendSnapshotV1�3*BlindCellAtomicCommittedPutSpendSnapshotV1��BlindCellAtomicCommittedPutSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  declaredBlobHash:      32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    canonical profile-1 result-binding bytes[1..1024]
  declaredBytes:         u32
  resultIdentity:        32 nonzero bytes
  committedEpoch:        u32
  resultCell:            BlindCellHistoricalResultSnapshotV1
}#BlindCellHistoricalResultSnapshotV1BlindPreparedAdmissionStoreV1&BlindCellChargedReadPinEntrySnapshotV1��&BlindCellChargedReadPinEntrySnapshotV1��BlindCellChargedReadPinEntrySnapshotV1 {
  storageSlot:           32 nonzero bytes
  present:               u8[0..1]
  sizeClass:             u8[0..5]
  allocationEpoch:       u32
  leaseClass:            u8[0..4]
  leaseEpoch:            u32
  stateRevision:         u64
  policyRevision:        u64
  cellBlobHash:          32 bytes
  allocationCommitment:  32 bytes
  // absent entries require the exact all-zero state after storageSlot
}#BlindCellChargedReadRetrySnapshotV1��#BlindCellChargedReadRetrySnapshotV1�@BlindCellChargedReadRetrySnapshotV1 {
  version:               u8 = 1
  lifecycleState:        u8[1..3] // 1 pinned, 2 finalized, 3 expired
  operationId:           u8 in {2 GET,5 PROVE,6 BATCH_GET}
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  preparedAdmissionBytes:optional bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  receiptEpoch:          optional u32
  retryExpiresUnixMillis:u64 nonzero
  entries:               optional array[1..64] of BlindCellChargedReadPinEntrySnapshotV1
  resultCommitment:      optional 32 nonzero bytes
  committedEpoch:        u32
  terminalEpoch:         optional u32
}&BlindCellChargedReadPinEntrySnapshotV1BlindPreparedAdmissionStoreV1$BlindCellCommittedPutSpendSnapshotV1��$BlindCellCommittedPutSpendSnapshotV1�&BlindCellCommittedPutSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  declaredBlobHash:      32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  declaredBytes:         u32
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..1]
  reservedEpoch:         u32
  resultIdentity:        32 nonzero bytes
  committedEpoch:        u32
  resultCell:            BlindCellHistoricalResultSnapshotV1
}#BlindCellHistoricalResultSnapshotV1BlindPreparedAdmissionStoreV1&BlindCellCommittedRenewSpendSnapshotV1�@&BlindCellCommittedRenewSpendSnapshotV1��BlindCellCommittedRenewSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  expectedStateRevision: u64
  expectedLeaseEpoch:    u32
  requestedLeaseClass:   u8[1..4]
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  resultIdentity:        32 nonzero bytes
  committedEpoch:        u32
  resultCell:            BlindCellHistoricalResultSnapshotV1
}#BlindCellHistoricalResultSnapshotV1BlindPreparedAdmissionStoreV1 BlindCellControlGlobalSnapshotV1�� BlindCellControlGlobalSnapshotV1��BlindCellControlGlobalSnapshotV1 {
  version:               u8 = 1
  epochFloor:            u32
  clockUnsafe:           u8[0..1]
  recoveryGap:           u8[0..1]
  storedBytes:           u64
  stagingBytes:          u64
  controlBytes:          u64
  tombstoneBytes:        u64
  reservedCells:         u64
  cellCount:             u64
  spendCount:            u64
  commitmentCount:       u64
  requestResultCount:    u64
  chargedReadPinnedCount:u64
  chargedReadFinalizedCount:u64
  chargedReadExpiredCount:u64
  chargedReadPinnedEntryCount:u64
  profileStagingCount:   u32
  integrityEvidenceCount:u32
  controlRecordAccountingBytes:u16 = 512
  tombstoneRecordAccountingBytes:u16 = 512
}#BlindCellHistoricalResultSnapshotV1��#BlindCellHistoricalResultSnapshotV1��BlindCellHistoricalResultSnapshotV1 {
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  leaseEpoch:            u32
  stateRevision:         u64
  policyRevision:        u64
  cellBlobHash:          32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  objectState:           u8[1..2]
  policyState:           u8[1..2]
}$BlindCellIntegrityEvidenceSnapshotV1�$BlindCellIntegrityEvidenceSnapshotV1�BlindCellIntegrityEvidenceSnapshotV1 {
  version:               u8 = 1
  reason:                u8[1..3]
  detectedEpoch:         u32
  evidenceHash:          32 nonzero bytes
}	!BlindCellProfileStagingSnapshotV1�!BlindCellProfileStagingSnapshotV1�BlindCellProfileStagingSnapshotV1 {
  version:               u8 = 1
  profileId:             u16[1..65535]
  stagingBytes:          u64 nonzero
}
BlindCellRecordSnapshotV1��BlindCellRecordSnapshotV1�`BlindCellRecordSnapshotV1 {
  version:               u8 = 1
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  allocationLeaseClass:  u8[1..4]
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  leaseEpoch:            u32
  stateRevision:         u64
  policyRevision:        u64
  cellBlobHash:          32 nonzero bytes
  blobVirtualBucket:     u16
  blobObjectId:          32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  objectState:           u8[1..2]
  policyState:           u8[1..2]
  tombstoneReason:       optional u8[1..2]
  terminalEpoch:         optional u32
  createSpendTag:        32 nonzero bytes
  resultIdentity:        32 nonzero bytes
  createdEpoch:          u32
} BlindCellRequestResultSnapshotV1� BlindCellRequestResultSnapshotV1��BlindCellRequestResultSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  resultIdentity:        32 nonzero bytes
  committedEpoch:        u32
  resultCell:            BlindCellHistoricalResultSnapshotV1
}#BlindCellHistoricalResultSnapshotV1 BlindCellReservedSpendSnapshotV1�� BlindCellReservedSpendSnapshotV1��BlindCellReservedSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  declaredBlobHash:      32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  declaredBytes:         u32
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..2]
  reservedEpoch:         u32
}BlindPreparedAdmissionStoreV1
 BlindCellTerminalSpendSnapshotV1�# BlindCellTerminalSpendSnapshotV1��BlindCellTerminalSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  declaredBlobHash:      32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    optional canonical profile-1 result-binding bytes[1..1024]
  declaredBytes:         u32
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..2]
  reservedEpoch:         u32
  terminalReason:        u8[1..3]
  terminalEpoch:         u32
}BlindPreparedAdmissionStoreV1BlindControlStateSnapshotV1�$BlindControlStateSnapshotV1�BlindControlStateSnapshotV1 { // canonical external control snapshot
  version:               u8 = 1
  relayPublicKey:        32 bytes
  storeId:               32 bytes
  durabilityContinuityHash:32 bytes
  walSequence:           u64
  walHash:               32 bytes
  entries:               sorted array[0..16777216] of {
                           entryKind: u8[1..8],
                           key: bounded bytes[1..256],
                           value: bounded bytes[0..65535]
                         }
} BlindCoreControlGlobalSnapshotV1�� BlindCoreControlGlobalSnapshotV1��BlindCoreControlGlobalSnapshotV1 {
  version:               u8 = 1
  epochFloor:            u32
  clockUnsafe:           u8[0..1]
  recordCount:           u64
  reservedCount:         u64
  liveCount:             u64
  terminalCount:         u64
  spendIndexCount:       u64
  logicalIndexCount:     u64
  channelIndexCount:     u64
  resultCount:           u64
  snapshotRecordBytes:   u64
}'BlindCoreOpenReplicationRetrySnapshotV1�'BlindCoreOpenReplicationRetrySnapshotV1��BlindCoreOpenReplicationRetrySnapshotV1 {
  version:               u8 = 1
  lifecycleState:        u8[1..3] // 1 RESERVED, 2 LIVE, 3 TERMINAL
  logicalRetryKey:       32 nonzero bytes
  spendTag:              bounded bytes[1..128], nonzero
  requestCommitment:     32 nonzero bytes
  wireProfileHash:       32 nonzero bytes
  sessionClass:          u8[1..3]
  clientNonce:           32 bytes
  parentSessionId:       bounded bytes[1..256], nonzero
  controlChannelId:      u64 nonzero
  parentChannelBinding:  32 nonzero bytes
  streamId:              u64 nonzero
  maxSessionBytes:       u64 // exact session-class tuple
  idleMillis:            u32 // exact session-class tuple
  lifetimeMillis:        u32 // exact session-class tuple
  openedAtEpoch:         u32
  recordVirtualBucket:   u16 // virtualBucketDerivationV1(CORE, logicalRetryKey)
  resultBytes:           optional canonical signed open-result bytes[1..16384]
  terminalReason:        optional canonical printable ASCII bytes[1..64]
}BlindExternalAckFloorV1��BlindExternalAckFloorV1��BlindExternalAckFloorV1 { // external control-journal witness, not client wire
  version:               u8 = 1
  relayPublicKey:        32 bytes
  storeId:               32 bytes
  externalJournalId:     32 random nonzero bytes
  durabilityContinuityHash:32 bytes
  floorRevision:         u64
  previousFloorHash:     optional 32 bytes
  writerEpoch:           u64
  writerFenceTokenHash:  32 bytes
  externalLeaseRevision: u64
  walSequence:           u64
  walHash:               32 bytes
  descriptorSequence:    u64
  descriptorHash:        32 bytes
  witnessedUnixMillis:   u64
  witnessPublicKey:      32-byte Ed25519 public key
  signature:             64-byte Ed25519 signature
} BlindExternalControlCheckpointV1�r BlindExternalControlCheckpointV1�JBlindExternalControlCheckpointV1 { // witness-signed prune/restore anchor
  version:               u8 = 1
  relayPublicKey:        32 bytes
  storeId:               32 bytes
  externalJournalId:     32 random nonzero bytes
  durabilityContinuityHash:32 bytes
  checkpointRevision:    u64
  previousCheckpointHash:optional 32 bytes
  baseFloorRevision:     u64
  baseFloorHash:         32 bytes
  writerEpoch:           u64
  writerFenceTokenHash:  32 bytes
  externalLeaseRevision: u64
  walSequence:           u64
  walHash:               32 bytes
  descriptorSequence:    u64
  descriptorHash:        32 bytes
  snapshotByteLength:    u64
  snapshotHash:          32 bytes
  oldestRetainedFloorRevision:u64
  createdUnixMillis:     u64
  witnessPublicKey:      32-byte Ed25519 public key
  signature:             64-byte Ed25519 signature
}"BlindInboxCommittedSpendSnapshotV1��"BlindInboxCommittedSpendSnapshotV1��BlindInboxCommittedSpendSnapshotV1 {
  // committed charged-operation fields; remainingAttempts is 0..1
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  operation:             u8 in {1,2,4,5,6}
  profileId:             u16[1..65535]
  frameClass:            u8[0..3]
  frameHash:             optional 32 nonzero bytes
  requestedLeaseClass:   u8[0..4]
  declaredBytes:         u32
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..1]
  reservedEpoch:         u32
  resultIdentity:        32 nonzero bytes
  resultRevision:        u64
  committedEpoch:        u32
  resultLeaseClass:      optional u8[1..4] // present exactly for CREATE/RENEW
  resultLeaseEpoch:      optional u32 // present exactly for CREATE/RENEW
  resultBindingBytes:    canonical profile-1 result-binding bytes[1..1024]
  clientNonce:           32 nonzero bytes
  retentionClassAtAppend:optional u8[1..4] // present exactly for APPEND
  appendLeaseEpoch:      optional u32 // present exactly for APPEND
  expiresAtEpoch:        optional u32 // present exactly for APPEND
  ackSignature:          optional 64 nonzero bytes // finalized APPEND ACK
  resultCommitment:      optional 32 nonzero bytes // present for APPEND/READ/WATCH
  retryState:            u8[0..3] // zero exactly outside READ/WATCH
}!BlindInboxControlGlobalSnapshotV1�#!BlindInboxControlGlobalSnapshotV1��BlindInboxControlGlobalSnapshotV1 {
  version:               u8 = 1
  epochFloor:            u32
  clockUnsafe:           u8[0..1]
  recoveryGap:           u8[0..1]
  storedFrameBytes:      u64
  stagingFrameBytes:     u64
  controlBytes:          u64
  tombstoneBytes:        u64
  frameIndexBytes:       u64
  reservedFrames:        u64
  inboxCount:            u64
  frameCount:            u64
  spendCount:            u64
  commitmentCount:       u64
  requestResultCount:    u64
  retryRecordCount:      u64
  retryFramePinCount:    u64
  profileStagingCount:   u32
  integrityEvidenceCount:u32
  controlRecordAccountingBytes:u16 = 512
  tombstoneRecordAccountingBytes:u16 = 512
  frameIndexAccountingBytes:u16 = 256
  retryRecordAccountingBytes:u16 = 256
}&BlindInboxExpiredAppendSpendSnapshotV1�&BlindInboxExpiredAppendSpendSnapshotV1��BlindInboxExpiredAppendSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  profileId:             u16[1..65535]
  frameClass:            u8[1..3]
  frameHash:             32 nonzero bytes
  declaredBytes:         u32 // exact frame-class bytes
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..1]
  reservedEpoch:         u32
  resultIdentity:        32 nonzero bytes
  appendRevision:        u64 nonzero
  storedAtEpoch:         u32
  retentionClassAtAppend:u8[1..4]
  appendLeaseEpoch:      u32
  expiresAtEpoch:        u32
  expiredEpoch:          u32
  clientNonce:           32 nonzero bytes
  resultBindingBytes:    canonical profile-1 result-binding bytes[1..1024]
  ackSignature:          64 nonzero bytes
  resultCommitment:      32 nonzero bytes
}BlindInboxFrameSnapshotV1�BlindInboxFrameSnapshotV1��BlindInboxFrameSnapshotV1 {
  version:               u8 = 1
  physicalTopic:         32 nonzero bytes
  appendRevision:        u64 nonzero
  frameHash:             32 nonzero bytes
  frameClass:            u8[1..3]
  frameVirtualBucket:    u16
  frameObjectId:         32 nonzero bytes
  appendLeaseEpoch:      u32
  storedAtEpoch:         u32
  expiresAtEpoch:        u32
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  resultIdentity:        32 nonzero bytes
}%BlindInboxIntegrityEvidenceSnapshotV1�%BlindInboxIntegrityEvidenceSnapshotV1�BlindInboxIntegrityEvidenceSnapshotV1 {
  version:               u8 = 1
  reason:                u8[1..3]
  detectedEpoch:         u32
  evidenceHash:          32 nonzero bytes
}"BlindInboxProfileStagingSnapshotV1�"BlindInboxProfileStagingSnapshotV1�BlindInboxProfileStagingSnapshotV1 {
  version:               u8 = 1
  profileId:             u16[1..65535]
  stagingFrameBytes:     u64 nonzero
}BlindInboxRecordSnapshotV1��BlindInboxRecordSnapshotV1��BlindInboxRecordSnapshotV1 {
  version:               u8 = 1
  physicalTopic:         32 nonzero bytes
  metadataVirtualBucket: u16
  allocationEpoch:       u32
  allocationLeaseClass:  u8[1..4]
  frameClassBits:        u8[1..7]
  appendAuthMode:        u8[0..1]
  appendPublicKey:       optional 32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  closePublicKey:        32 nonzero bytes
  retentionClass:        u8[1..4]
  leaseClass:            u8[1..4]
  leaseEpoch:            u32
  stateRevision:         u64
  policyRevision:        u64
  appendRevision:        u64
  createCommitment:      32 nonzero bytes
  objectState:           u8[1..2]
  policyState:           u8[1..2]
  tombstoneReason:       optional u8[1..2]
  terminalEpoch:         optional u32
  createSpendTag:        32 nonzero bytes
  createRequestCommitment:32 nonzero bytes
  resultIdentity:        32 nonzero bytes
  createdEpoch:          u32
}!BlindInboxRequestResultSnapshotV1�
!BlindInboxRequestResultSnapshotV1��BlindInboxRequestResultSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  resultIdentity:        32 nonzero bytes
  resultRevision:        u64 nonzero
  committedEpoch:        u32
  resultBindingBytes:    canonical profile-1 result-binding bytes[1..1024]
  clientNonce:           32 nonzero bytes
  resultLeaseClass:      u8 = 0
  resultLeaseEpoch:      u32
}!BlindInboxReservedSpendSnapshotV1�?!BlindInboxReservedSpendSnapshotV1�BlindInboxReservedSpendSnapshotV1 {
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  operation:             u8 in {1 CREATE,2 RENEW,4 APPEND,5 READ,6 WATCH}
  profileId:             u16[1..65535]
  frameClass:            u8[0..3] // nonzero exactly for APPEND
  frameHash:             optional 32 nonzero bytes // present exactly for APPEND
  requestedLeaseClass:   u8[0..4] // nonzero exactly for CREATE/RENEW
  declaredBytes:         u32 // exact frame-class bytes for APPEND, otherwise zero
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..2]
  reservedEpoch:         u32
}!BlindInboxRetryFramePinSnapshotV1�!BlindInboxRetryFramePinSnapshotV1�BlindInboxRetryFramePinSnapshotV1 {
  version:               u8 = 1
  spendTag:              32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  appendRevision:        u64 nonzero
  frameHash:             32 nonzero bytes
}!BlindInboxRetryMaterialSnapshotV1�!BlindInboxRetryMaterialSnapshotV1�BlindInboxRetryMaterialSnapshotV1 {
  version:               u8 = 1
  spendTag:              32 nonzero bytes
  entriesCommitment:     32 nonzero bytes
  nextCursor:            optional bounded bytes[1..128]
}BlindInboxRetryReconstructionV1��BlindInboxRetryReconstructionV1�[BlindInboxRetryReconstructionV1 { // exactly 50 bytes; fits the generic 256-byte retry-record cap
  version:               u8 = 1
  firstAppendRevision:   u64 // zero exactly for an empty page
  lastAppendRevision:    u64 // zero exactly for an empty page
  entryCount:            u8[0..64]
  nextCursorHash:        32 bytes // zero means absent
}!BlindInboxTerminalSpendSnapshotV1��!BlindInboxTerminalSpendSnapshotV1��BlindInboxTerminalSpendSnapshotV1 {
  // terminal charged-operation fields
  version:               u8 = 1
  transactionId:         32 nonzero bytes
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  physicalTopic:         32 nonzero bytes
  operation:             u8 in {1,2,4,5,6}
  profileId:             u16[1..65535]
  frameClass:            u8[0..3]
  frameHash:             optional 32 nonzero bytes
  requestedLeaseClass:   u8[0..4]
  declaredBytes:         u32
  deadlineUnixMillis:    u64 nonzero
  remainingAttempts:     u8[0..2]
  reservedEpoch:         u32
  terminalReason:        u8[1..3]
  terminalEpoch:         u32
} BlindLocalCheckpointV1�BlindLocalCheckpointV1��BlindLocalCheckpointV1 { // canonical header; snapshot bytes are a separate hashed file
  magic:                 exact ASCII "HRBCKP01"
  checkpointVersion:     u16 = 1
  relayPublicKey:        32 bytes
  storeId:               32 random nonzero bytes
  durabilityProfileId:   u8
  durabilityContinuityHash:32 bytes
  durabilityProfileHash: 32 bytes
  formatMajor:           u16
  formatMinor:           u16
  storeFormatHash:       32 bytes
  specHash:              32 bytes
  abiHash:               32 bytes
  mapGeneration:         u64 nonzero
  bucketMapHash:         32 bytes
  writerEpoch:           u64 nonzero
  writerFenceTokenHash:  32 bytes
  checkpointRevision:    u64 nonzero
  previousCheckpointHash:optional 32 bytes // absent exactly at revision 1
  coveredWalSequence:    u64 nonzero
  coveredWalHash:        32 bytes
  epochFloor:            u32
  descriptorSequenceFloor:u64
  descriptorHashFloor:   32 bytes
  snapshotByteLength:    u64 nonzero
  snapshotHash:          32 bytes
}!BlindPreparedAdmissionStoreV1��BlindPreparedAdmissionStoreV1��BlindPreparedAdmissionStoreV1 { // INTERNAL_STORE; admission-sensitive at rest
  version:               u8 = 1
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  profileId:             u16[1..65535]
  schemeId:              u16[1..65535]
  parameterHash:         32 nonzero bytes
  resourceClass:         u16
  leaseClass:            u8
  costUnits:             u64
  walCommitRecord:       bounded bytes[1..16384]
}"BlindPutAtomicCommittedStoreV1�KBlindPutAtomicCommittedStoreV1�BlindPutAtomicCommittedStoreV1 { // INTERNAL_STORE; Cell WAL recordType 17 payload
  version:               u8 = 1
  spendTag:              32 nonzero bytes
  requestCommitment:     32 nonzero bytes
  requestFingerprint:    32 nonzero bytes
  storageSlot:           32 nonzero bytes
  allocationEpoch:       u32
  sizeClass:             u8[1..5]
  leaseClass:            u8[1..4]
  declaredBlobHash:      32 nonzero bytes
  createPublicKey:       32 nonzero bytes
  renewPublicKey:        32 nonzero bytes
  dropPublicKey:         32 nonzero bytes
  allocationCommitment:  32 nonzero bytes
  profileId:             u16[1..65535]
  preparedAdmissionBytes:bounded canonical BlindPreparedAdmissionStoreV1 bytes[1..17408]
  resultBindingBytes:    canonical profile-1 result-binding bytes[1..1024]
  declaredBytes:         u32
  blobObjectId:          32 nonzero bytes
  leaseEpoch:            u32
  stateRevision:         u64 = 0
  policyRevision:        u64 = 0
  resultIdentity:        32 nonzero bytes
  committedEpoch:        u32
}BlindPreparedAdmissionStoreV1#BlindStoreManifestV1�"BlindStoreManifestV1�BlindStoreManifestV1 { // internal, never served to clients
  magic:                 exact ASCII "HRBLIND1"
  manifestVersion:       u16 = 1
  storeId:               32 random nonzero bytes
  relayPublicKey:        32 bytes
  durabilityProfileId:   u8
  durabilityContinuityHash:32 bytes
  durabilityProfileHash: 32 bytes
  formatMajor:           u16
  formatMinor:           u16
  storeFormatHash:       32 bytes
  specHash:              32 bytes
  abiHash:               32 bytes
  mapGeneration:         u64
  bucketMapHash:         32 bytes
  checkpointWalSequence: u64
  checkpointHash:        32 bytes
  epochFloor:            u32
  writerEpoch:           u64
  writerFenceTokenHash:  32 bytes
  externalLeaseRevision: u64 // zero for durability profile 1
  externalJournalId:     32 bytes // zero for profile 1; nonzero for 2
  externalWitnessPublicKey:32 bytes // zero for profile 1
  restoreEvidenceFeedId: 32 bytes // nonzero only for profile-2 feed-bound/backed
  lastAckWalSequence:    u64 // zero for profile 1
  lastAckWalHash:        32 bytes // zero for profile 1
  externalCheckpointRevision:u64 // zero for profile 1
  externalCheckpointHash:32 bytes // zero for profile 1
  descriptorSequenceFloor:u64
  descriptorHashFloor:  32 bytes
  migrationState:        u8 // 0 stable, 1 prepared, 2 copying, 3 verifying, 4 switching
  sourceFormatMajor:     u16
  targetFormatMajor:     u16
  migrationCursorHash:   32 bytes
  previousManifestHash:  optional 32 bytes
  manifestRevision:      u64
  mac:                   32 bytes
}$BlindWalHeaderV2�1BlindWalHeaderV2�BlindWalHeaderV2 { // exact 192-byte prefix of each complete WAL frame
  0:   magic:                    4 bytes = ASCII "HRWL"
  4:   walVersion:               u8 = 2
  5:   recordType:               u8[1..255]
  6:   totalLength:              u32 = 224 + payloadLength
  10:  walSequence:              u64[1..2^64-1]
  18:  transactionId:            32 nonzero bytes
  50:  virtualBucket:            u16
  52:  mapGeneration:            u64[1..2^64-1]
  60:  writerFenceTokenHash:     32 nonzero bytes
  92:  payloadLength:            u32
  96:  previousWalHash:          32 bytes
  128: durabilityContinuityHash: 32 nonzero bytes
  160: payloadHash:              32 bytes = BLAKE2b-256(payload)
  192: payload:                  payloadLength bytes
  192 + payloadLength: checksum: 32 bytes
}%CellRecordV1��CellRecordV1��CellRecordV1 {
  version:          u8 = 1
  slot:             32 bytes pseudorandom/self-certifying
  allocationEpoch:  u32
  sizeClass:        u8
  leaseClass:       u8
  leaseEpoch:       u32
  stateRevision:    u64
  policyRevision:   u64
  cellBlobHash:     32 bytes
  cellBlob:         exact total bytes required by sizeClass
  createPublicKey:  32 random bytes
  renewPublicKey:   32 random bytes
  dropPublicKey:    32 random bytes
  allocationCommitment: 32 bytes
}&ChargedUnaryRetryV1��ChargedUnaryRetryV1��ChargedUnaryRetryV1 {
  version:          u8 = 1
  spendTag:         32 bytes
  requestCommitment:32 bytes
  familyId:         u8
  operationId:      u8
  locatorCommitment:32 bytes
  sourceRevision:   u64
  sourceCommitment: 32 bytes
  resultCommitment: 32 bytes
  reconstruction:   bounded canonical bytes[0..96]
  retryExpiresMinute:u64 // relay wall-minute deadline, never an app timestamp
  retryState:       u8      // 1 replayable, 2 visibility-revoked, 3 terminal
}