pub struct Entity {Show 14 fields
pub id: Uuid,
pub namespace: String,
pub kind: String,
pub entity_type: Option<String>,
pub name: String,
pub description: Option<String>,
pub properties: Option<Value>,
pub tags: Vec<String>,
pub created_at: i64,
pub updated_at: i64,
pub deleted_at: Option<i64>,
pub merged_into: Option<Uuid>,
pub merge_event_id: Option<Uuid>,
pub content_ref: Option<String>,
}Expand description
Storage-level entity record. Flat SQL-friendly representation.
Maps to the entities substrate table.
Fields§
§id: Uuid§namespace: String§kind: String§entity_type: Option<String>Pack-governed subtype token. Maps to entities.entity_type column.
name: String§description: Option<String>§properties: Option<Value>§created_at: i64§updated_at: i64§deleted_at: Option<i64>§merged_into: Option<Uuid>When this entity was tombstoned by a merge, the into entity’s ID.
merge_event_id: Option<Uuid>Opaque event ID for the merge that tombstoned this entity.
content_ref: Option<String>Content-addressed reference into a BlobStore (khive#292), stored as
the raw hex digest string. None when this entity has no attached
binary payload. Storage does not validate that the referenced blob
actually exists — callers publish the blob before setting this field
(see docs/adr BlobStore ADR “publish-then-reference” ordering).
Implementations§
Source§impl Entity
impl Entity
Sourcepub fn new(
namespace: impl Into<String>,
kind: impl Into<String>,
name: impl Into<String>,
) -> Self
pub fn new( namespace: impl Into<String>, kind: impl Into<String>, name: impl Into<String>, ) -> Self
Create a new entity with a generated UUID and current timestamp.
Sourcepub fn with_content_ref(self, content_ref: impl Into<String>) -> Self
pub fn with_content_ref(self, content_ref: impl Into<String>) -> Self
Set the content-addressed blob reference (khive#292).
Sourcepub fn with_entity_type(self, t: Option<impl Into<String>>) -> Self
pub fn with_entity_type(self, t: Option<impl Into<String>>) -> Self
Set the pack-governed entity subtype token.
Sourcepub fn with_description(self, d: impl Into<String>) -> Self
pub fn with_description(self, d: impl Into<String>) -> Self
Set the entity description.
Sourcepub fn with_properties(self, p: Value) -> Self
pub fn with_properties(self, p: Value) -> Self
Set the entity properties JSON blob.
Set the entity tags.