0.134.34
Fixed (DEFERRED-задачи §3.7 Memory/Embeddings/Reranker/KG, см. docs/audit/backend-2026-06.md §3.7)
- H-M-1
persistFactsN+1 embed-вызовов — batchEmbedвсех фактов одним вызовом. - H-M-2
_ = cosineMain— assignment-to-blank, не отключение (ложная тревога). Код убран. - H-M-3
ExtractRealtimeделал 2 LLM-вызова (gate + extract) — объединён в один extraction call. - H-M-4
persistFactsсериализовал embed по одному — переписан на batch (validate all → embed all → dedup loop). - H-M-5
askMergeблокировал actor-контекст —resolveConflictзапускает askMerge через goroutine с семафором (max 2 concurrent). - H-M-6
RunForAllScopessequential — переписан на concurrent scopes через WaitGroup + semaphore (max 2). - H-M-7 Dream execute N+1
GetFact—allFactsInScope/firstDupInScope/merge-supersede используют batchGetFactsByIDs. - H-M-8
analyzeпромпт рос линейно — chunking active facts по 50, каждый chunk — отдельный LLM-вызов. - H-M-9 Dream execute per-action embed — один batch
Embedдля всех create/update/merge действий. - H-M-10 KG GC N+1
GetFact(20k запросов) — одинGetActiveFactIDsByIDsвместо N вызовов. - H-M-11
findAndLinkSameAsembed 999 имён — заменён наFindSimilarEntities(Jaro-Winkler), нулевые embed-вызовы. - H-M-12 Pairwise cosine O(N²) — заменён на
FindSimilarEntitiesс порогом. - H-M-16 Cleanup удалял L0-факты —
last_used_by_l0_atколонка +TouchL0Facts+isStaleskip. - H-M-24 Ollama reranker N concurrent goroutines — sequential scoring (Ollama single-threaded).
Added
- Миграция 074 (
l0_last_used): колонкаlast_used_by_l0_atвmemory_facts(SQLite + PostgreSQL). - Store-методы:
GetActiveFactIDsByIDs,TouchL0Facts,ListL0FactIDs. ContextBuilder.buildL0ContextвызываетTouchL0Factsпри инъекции L0-абстрактов.Consolidator.resolveSem— semaphore channel (max 2) для askMerge concurrency.