MCPcopy Create free account
hub / github.com/astercloud/aster / DeleteMemoryWithLineage

Method DeleteMemoryWithLineage

pkg/memory/semantic.go:338–356  ·  view source on GitHub ↗

DeleteMemoryWithLineage 删除记忆及其派生记忆。

(ctx context.Context, memoryID string, cascade bool)

Source from the content-addressed store, hash-verified

336
337// DeleteMemoryWithLineage 删除记忆及其派生记忆。
338func (sm *SemanticMemory) DeleteMemoryWithLineage(ctx context.Context, memoryID string, cascade bool) error {
339 if !sm.cfg.EnableProvenance || sm.cfg.LineageManager == nil {
340 // 直接删除
341 return sm.cfg.Store.Delete(ctx, []string{memoryID})
342 }
343
344 // 获取需要删除的记忆列表
345 deletedIDs, err := sm.cfg.LineageManager.DeleteMemoryWithLineage(ctx, memoryID, cascade)
346 if err != nil {
347 return fmt.Errorf("delete lineage: %w", err)
348 }
349
350 // 从向量存储中删除
351 if len(deletedIDs) > 0 {
352 return sm.cfg.Store.Delete(ctx, deletedIDs)
353 }
354
355 return nil
356}
357
358// GetMemoryProvenance 获取记忆的溯源信息。
359// 这需要先检索记忆,然后提取 Provenance。

Callers

nothing calls this directly

Calls 1

DeleteMethod · 0.65

Tested by

no test coverage detected