( ctx context.Context, selector memorySelector, )
| 1712 | } |
| 1713 | |
| 1714 | func (h *BaseHandlers) memoryRecallStoreForSelector( |
| 1715 | ctx context.Context, |
| 1716 | selector memorySelector, |
| 1717 | ) (*memory.Store, error) { |
| 1718 | if h.MemoryStore == nil { |
| 1719 | return nil, errors.New("memory store is not configured") |
| 1720 | } |
| 1721 | resolved, err := h.resolveMemorySelector(ctx, selector, false) |
| 1722 | if err != nil { |
| 1723 | return nil, err |
| 1724 | } |
| 1725 | store := h.MemoryStore |
| 1726 | needsWorkspaceStore := strings.TrimSpace(resolved.Workspace) != "" && |
| 1727 | (resolved.Scope == "" || |
| 1728 | resolved.Scope == memcontract.ScopeWorkspace || |
| 1729 | (resolved.Scope == memcontract.ScopeAgent && |
| 1730 | resolved.AgentTier.Normalize() == memcontract.AgentTierWorkspace)) |
| 1731 | if needsWorkspaceStore { |
| 1732 | store = store.ForWorkspace(resolved.Workspace) |
| 1733 | } |
| 1734 | if strings.TrimSpace(resolved.AgentName) != "" && resolved.AgentTier.Normalize() != "" { |
| 1735 | store = store.ForAgent(resolved.WorkspaceID, resolved.AgentName, resolved.AgentTier) |
| 1736 | } |
| 1737 | return store, nil |
| 1738 | } |
| 1739 | |
| 1740 | func (h *BaseHandlers) memoryStoreForLocation(ctx context.Context, location MemoryLocation) (*memory.Store, error) { |
| 1741 | return h.memoryStoreForSelector(ctx, memorySelector{ |
no test coverage detected