mirror of
https://github.com/tiennm99/goclaw.git
synced 2026-10-11 12:18:59 +00:00
* feat(channelmemory): add passive extraction tuning * feat(ui): expose passive memory tuning controls * docs(memory): document passive extraction tuning --------- Co-authored-by: Collective Developer <man@collective.dev>
49 lines
1.4 KiB
Go
49 lines
1.4 KiB
Go
package consolidation
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/google/uuid"
|
|
"github.com/nextlevelbuilder/goclaw/internal/knowledgegraph"
|
|
"github.com/nextlevelbuilder/goclaw/internal/providers"
|
|
)
|
|
|
|
// testRegistry creates a Registry with the given provider registered under MasterTenantID.
|
|
// This allows tests to use the new registry-based provider resolution.
|
|
func testRegistry(p providers.Provider) *providers.Registry {
|
|
r := providers.NewRegistry(func(ctx context.Context) uuid.UUID {
|
|
return providers.MasterTenantID
|
|
})
|
|
r.Register(p)
|
|
return r
|
|
}
|
|
|
|
// mockExtractor implements EntityExtractor for testing.
|
|
type mockExtractor struct {
|
|
result *knowledgegraph.ExtractionResult
|
|
err error
|
|
inputs []string
|
|
}
|
|
|
|
func (m *mockExtractor) Extract(_ context.Context, text string) (*knowledgegraph.ExtractionResult, error) {
|
|
m.inputs = append(m.inputs, text)
|
|
return m.result, m.err
|
|
}
|
|
|
|
// mockProvider implements providers.Provider for testing LLM calls.
|
|
type mockProvider struct {
|
|
chatResp *providers.ChatResponse
|
|
chatErr error
|
|
}
|
|
|
|
func (m *mockProvider) Chat(_ context.Context, _ providers.ChatRequest) (*providers.ChatResponse, error) {
|
|
return m.chatResp, m.chatErr
|
|
}
|
|
|
|
func (m *mockProvider) ChatStream(_ context.Context, _ providers.ChatRequest, _ func(providers.StreamChunk)) (*providers.ChatResponse, error) {
|
|
return m.chatResp, m.chatErr
|
|
}
|
|
|
|
func (m *mockProvider) Name() string { return "mock" }
|
|
func (m *mockProvider) DefaultModel() string { return "mock-model" }
|