pub struct LogEntry {Show 14 fields
pub message_id: String,
pub received_at_ms: i64,
pub sender: String,
pub message_type: String,
pub raw_payload: Vec<u8>,
pub entry_kind: EntryKind,
pub session_id: String,
pub mode: String,
pub macp_version: String,
pub timestamp_unix_ms: i64,
pub bound_mode_version: Option<String>,
pub semantics_rev: u32,
pub bound_max_suspend_ms: Option<i64>,
pub compacted_incoming_ordinals: u64,
}Fields§
§message_id: String§received_at_ms: i64§sender: String§message_type: String§raw_payload: Vec<u8>§entry_kind: EntryKind§session_id: String§mode: String§macp_version: String§timestamp_unix_ms: i64Original envelope timestamp for replay determinism.
bound_mode_version: Option<String>Mode version bound at SessionStart acceptance when the payload’s own
mode_version was empty (non-strict extension modes take the registered
descriptor’s version). Replay uses this recorded binding and never
re-derives it from the live registry. None on legacy entries and on
entries whose payload carried the version explicitly — legacy histories
keep their original (empty-version) binding semantics.
semantics_rev: u32Session-semantics revision recorded on the SessionStart entry (see
macp_core::session::CURRENT_SEMANTICS_REV). Legacy entries
deserialize as 0; replay applies the recorded revision so old
histories keep the acceptance-time behavior they were written under.
bound_max_suspend_ms: Option<i64>Suspension cap resolved and bound at SessionStart acceptance
(payload value, or the runtime default when the payload carried 0).
Replay uses this recorded value, never live configuration
(RFC-MACP-0003 §2). None on legacy entries — those sessions keep
default-cap semantics.
compacted_incoming_ordinals: u64On Checkpoint entries produced by log compaction: how many accepted
(Incoming) envelope ordinals the compaction discarded. Ordinals of
entries after the checkpoint continue from this base, keeping the
passive-subscribe sequence stable across compaction and restart.
0 on all other entries and on legacy checkpoints.