pub struct ForgetReport {
pub episodes_deleted: u64,
pub triples_deleted: u64,
pub chunks_deleted: u64,
pub triples_orphan_null_source: u64,
pub hnsw_rebuilt: bool,
pub audit_admin_row_id: i64,
}Expand description
What forget_principal did. Returned to callers (typically the CLI
solo gdpr forget subcommand) for surfacing in the user-visible
summary and for downstream tests / scripting.
Fields§
§episodes_deleted: u64Rows deleted from episodes.
triples_deleted: u64Rows deleted from triples whose source_episode_id referenced
one of the forgotten episodes (v0.8.1 P1 cascade — was always 0
in v0.8.0 because the FK column didn’t exist).
chunks_deleted: u64Rows deleted from document_chunks.
triples_orphan_null_source: u64Triples that referenced the forgotten subject’s domain but had
source_episode_id IS NULL (pre-v0.8.1 rows whose provenance
didn’t backfill against a live episode, plus any pre-v0.8.0
rows). These are orphans-by-design — the GDPR cascade cannot
attribute them to the deleted principal without an FK.
Surfaced for operator visibility.
hnsw_rebuilt: boolDid the post-tx HNSW rebuild run? false iff no rows were
deleted (absent-subject idempotent case).
audit_admin_row_id: i64audit_id of the row written to
tenants_index.db::audit_events_admin. Always present — even
the no-op (count=0) case emits a row so the compliance trail
records the attempt.
Trait Implementations§
Source§impl Clone for ForgetReport
impl Clone for ForgetReport
Source§fn clone(&self) -> ForgetReport
fn clone(&self) -> ForgetReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ForgetReport
impl Debug for ForgetReport
Source§impl PartialEq for ForgetReport
impl PartialEq for ForgetReport
Source§fn eq(&self, other: &ForgetReport) -> bool
fn eq(&self, other: &ForgetReport) -> bool
self and other values to be equal, and is used by ==.impl Eq for ForgetReport
impl StructuralPartialEq for ForgetReport
Auto Trait Implementations§
impl Freeze for ForgetReport
impl RefUnwindSafe for ForgetReport
impl Send for ForgetReport
impl Sync for ForgetReport
impl Unpin for ForgetReport
impl UnsafeUnpin for ForgetReport
impl UnwindSafe for ForgetReport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more