Skip to main content

Module event

Module event 

Source
Expand description

Event data model for the bones event log.

This module defines the core Event struct, the EventType enum covering all 11 event types, typed payload data structs, and the canonical JSON serialization helper needed for deterministic event hashing.

§TSJSON Format

Events are stored in TSJSON (tab-separated fields with JSON payload):

wall_ts_us \t agent \t itc \t parents \t type \t item_id \t data \t event_hash

The Event struct maps 1:1 to a TSJSON line. Parsing and writing TSJSON lines is handled by the parser/writer modules (separate beads).

Re-exports§

pub use canonical::canonicalize_json;
pub use canonical::canonicalize_json_str;
pub use data::AssignAction;
pub use data::AssignData;
pub use data::CommentData;
pub use data::CompactData;
pub use data::CreateData;
pub use data::DataParseError;
pub use data::DeleteData;
pub use data::EventData;
pub use data::LinkData;
pub use data::MoveData;
pub use data::RedactData;
pub use data::SnapshotData;
pub use data::UnlinkData;
pub use data::UpdateData;
pub use migrate::RawEvent;
pub use migrate::migrate_event;
pub use parser::CURRENT_VERSION;
pub use parser::FIELD_COMMENT;
pub use parser::ParseError;
pub use parser::ParsedLine;
pub use parser::PartialEvent;
pub use parser::PartialParsedLine;
pub use parser::SHARD_HEADER;
pub use parser::detect_version;
pub use parser::parse_line;
pub use parser::parse_line_partial;
pub use parser::parse_lines;
pub use types::EventType;
pub use types::UnknownEventType;

Modules§

canonical
Canonical JSON serialization.
data
Typed payload data structs for each event type.
hash_text
Text encoding/decoding helpers for BLAKE3 hashes.
migrate
Event format migration helpers.
parser
Zero-copy TSJSON line parser.
types
Event type enum covering all 11 TSJSON event types.
validate
Event format validation and hardening.
writer
TSJSON event writer/serializer.

Structs§

Event
A single event in the bones event log.