pub struct AttachmentIntent {
pub attachment_id: AttachmentId,
pub session_id: String,
pub canonical_uri: String,
pub intent_at_epoch_ms: u64,
pub owner_kind: Option<AttachmentOwnerKind>,
pub owner_id: Option<String>,
}Expand description
A pending attachment write recorded before the bytes hit the
AttachmentStore backend.
The runtime calls AttachmentManifest::record_intent from the
SessionAttachmentStore
wrapper before each put, so the manifest is a durable record that
“some bytes are about to land at this URI.” When the turn that
references the attachment commits successfully via
SessionCommitStore::commit_runtime_state,
the same transaction
stamps committed_at_epoch_ms. Periodic GC sweeps manifest rows
whose intent has aged past a host-chosen threshold without ever
being committed and deletes the corresponding bytes — that’s how we
reconcile orphaned files left behind by crashes between put and
the next turn commit.
Fields§
§attachment_id: AttachmentId§session_id: String§canonical_uri: StringCanonical, stable identity for the session-owned physical object. Backends may map this identity onto their own path/key representation.
intent_at_epoch_ms: u64§owner_kind: Option<AttachmentOwnerKind>Stable durable owner that can eventually commit or release this intent. Both owner fields are absent for direct host puts made outside a runtime execution scope; those rows retain fallback timer semantics.
owner_id: Option<String>Trait Implementations§
Source§impl Clone for AttachmentIntent
impl Clone for AttachmentIntent
Source§fn clone(&self) -> AttachmentIntent
fn clone(&self) -> AttachmentIntent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more