xiaowei
f286348ad8
fix: gap auto-close + conflict_muchen handler
...
- GapDetector.RecordHit(topic): recall 命中后自动关闭该 topic 的 open gap
- GapDetector.ClearMisses(topic): 清除 miss 计数,避免重复触发
- SetGlobalGapDetector / GetGlobalGapDetector: 全局实例注册,供 recall 回调使用
- recall handler (core.go): 命中时调用 RecordHit + ClearMisses 实现 gap auto-close
- conflict_muchen handler (server.go): 注册处理器,自动裁决 pending conflict(latest_wins / primary_wins / dismiss)
- fix: server_sqlite_nowindows.go 修复 osGetenv → os.Getenv (pre-existing)
2026-06-08 00:54:40 +08:00
xiaowei
5927f7d740
fix(selfoptimize): repair 3 dashboard metrics that were stuck at 0
...
1. gap_closure_rate: RecordMiss now increments Dash.TotalGaps; Close
calls Dash.RecordGapClosed(). Previously denominator was never written.
2. auto_resolve_rate: scanConflicts now calls Dash.RecordConflictResolved
after each AutoResolve. Previously consolidation path bypassed Dashboard.
3. avg_distill_loss: merge-count heuristic scaled from 0.01 to 0.002
with 0.05 cap. Previously 50 merges = 0.50 loss (same weight as 50 LLM
distillations), corrupting the average.
2026-05-30 18:03:49 +08:00
xiaowei
9d2bae3324
feat: 自优化7项全部补齐
...
P0: avg_distill_loss 接入 Dashboard
- RecordDistillLoss(loss) 在蒸馏回调中写入 Dash
- loss = 1 - Overall, 归一化 0-1
P1: V 值反哺召回排序
- storage.VValueProvider 注入(server.go → VProp.GetMemVValue)
- lancedb_ipc.go Search() 排序公式:30%V值+30%importance+40%QL
P1: PassiveValidator 写回 quality_score
- 蒸馏回调中 GetRecords() 遍历并 ldb.Update quality_score
P2: CausalTracker Redis 持久化 + 自动触发
- EnableCausalRedisPersistence() 启动加载
- persistCausal() 每次 RecordVersion/AddDependency 后同步
- commit 路径自动 RecordVersion(memID, content, agent, 'commit')
P2: GapDetector 自动 repair
- t_gap 触发器除关闭过期缺口外,对开放缺口调用 AutoRepair
- 修复成功后 RecordGapClosed
P3: Skill 结晶接入
- RecordTrial(name, success) 程序化接口
- 蒸馏/合并触发器中 RecordTrial('auto_distill', true)
P3: 指标采集 6h → 30min
测试: 全部重启持久化验证通过
2026-05-30 12:08:16 +08:00
xiaowei
945e5dfc66
feat: 自优化5项全链路补齐
...
P1: GapDetector Redis 持久化
- 13个缺口字段序列化为 JSON 写入 zhiyi:gaps HASH
- misses 计数器写入 zhiyi:gap_misses
- RecordMiss/Close 后自动 persist + 启动时 loadFromRedis
- 重启不丢缺口记录
P2: VPropagator Redis 持久化 + useful/not-useful 接入
- 决策记录写入 zhiyi:vprop_decisions HASH
- V 值写入 zhiyi:vprop_values HASH
- RecordDecision 后自动 persist
- feedback/useful → success, feedback/not-useful → failure
P3: 中文分类改进
- classifyGap 降级时检测中文同义词标记(又称/别名/aka)
- 含标记的 query 归为 GapSynonym(B) 而非 GapUnknown(A)
P4: QualityDropMonitor 阈值 5→2 + 蒸馏质量分
- minFeedbacks 从 5 降至 2,更早触发质量监控
P5: CoOccurTracker Redis 持久化
- RedisCoOccurPersist() 写入 zhiyi:cooccur HASH
- RecordRecall 中调用 ct.persist() 持久化每条边
- recall pipeline 中独立 goroutine 触发共访追踪
- LoadCoOccurFromRedis() 启动时加载
测试: 全部 5 项重启验证通过
2026-05-30 12:01:37 +08:00
xiaowei
c861171031
fix: PassiveValidator GetRecords 返回 [] 而非 null
2026-05-30 11:53:42 +08:00
xiaowei
bceb5fb059
feat: 自优化4大链路补齐
...
1. GapDetector 自动接入 recall 路径
- MissRecorder callback → RecallPipeline
- 0 结果时自动 RecordMiss(query)
- server.go 中 gapDetector 初始化后挂载
2. Dashboard 持久化到 Redis
- EnableRedisPersistence() 启动时加载
- persist() 每次 mutate 后同步 13 个计数器到 Redis HASH
- 重启不丢指标
3. PassiveValidator 接入 commit 路径
- 新记忆提交后自动 P1/P2/P3 匹配验证
- 复用 Validator.Validate 逻辑
4. VPropagator 接入 feedback/correct
- 用户修正时记录决策 V 值
- 使用 user_correct 来源 + success 结果
Closes: 10% 缺失代码 + 40% 缺失链路
2026-05-30 11:27:27 +08:00
xiaowei
08848607fd
v3.8 完整代码: Go API + Rust sidecar + ONNX BGE + Client SDK
...
- 4 大修复: 缺口分类向量化 + Schema 23字段 + Consolidation走Rust IPC + Client SDK
- BGE ONNX: deploy/bge_embed_server.py + systemd unit,1024维本地推理
- Rust sidecar: 8模块完整,DBSCAN/衰减/修剪/质量回溯/整合报告
- Go: zhiyid 7821端口,37个API端点,多Agent架构
2026-05-29 01:07:05 +08:00
xiaowei
bedbe55ad5
fix: 6项设计差距补全 — 逐节对照50项→0差距
...
G1 Recall图谱+预取 (2.6 Step 5-6):
- RecallPipeline: SetGraphExpander + SetPrefetchPusher
- GraphExpander接口: 结果<5条时BFS扩展1跳
- PrefetchBridge: CO_OCCURS权重>0.6→WS推送prefetch.push
- graph_expander.go: InMemoryGraph实现接口
G2 RateLimit (2.7):
- auth.go: 滑动窗口限流, 429带Retry-After/X-RateLimit-Reset
- 120 req/min per agent
G3 WS事件 (2.8):
- ws_events.go: prefetch.push/gap.filled/memory.updated/quality.drop
- gap关闭时自动推送gap.filled
G4 自动蒸馏 (3.1):
- auto_distill.go: commit后→硬规则过滤→蒸馏→图谱更新→冲突→验证
- 降级蒸馏: 关键词提取 (无需LLM)
G5 version_history (3.3.3):
- CausalTracker.Entries() 暴露版本历史
- feedback/correct 路由层自动调用FillVersionHistory+因果链通知
G6 ephemeral命名空间 (1.3):
- /api/v1/admin/ephemeral/clean 端点
- 10分钟定时清理循环
go build: 0 errors, go test: 60 passed
2026-05-28 19:01:23 +08:00
xiaowei
a2cda57f6b
feat: M10 对照设计补齐 — 24项缺失功能全部实现
...
🔴 结构缺失 → 已实现:
- PassiveValidator: P1/P2/P3 三层匹配 (validator.go)
- 5条自动化流程: commit/gap/correct/consolidate 串联 (pipeline.go)
- Consolidation 流水线 Step 1-4 完整实现 (consolidation_pipe.go)
- V值反向传播: 决策链路追踪+时间衰减 (vprop.go)
- 触发器执行器: 8类自动循环检查+冷却 (executor.go)
- Go Client SDK: ZhiYiClient 完整API (client.go)
- Unix Socket IPC: 帧协议 Go→Rust (ipc.go)
🟡 简化实现 → 完整版:
- 知识图谱自动更新: 蒸馏→实体→节点/边/冲突边 (graph_auto.go)
- 缺口自动修复: Type B同义词映射, Type C阈值重试 (gap_repair.go)
- Skill贝叶斯: Beta-Bernoulli α/β后验+active/probation/retired (skill_bayes.go)
- Obsidian Carriers: 9类模板+自动append+mtime冲突检测 (obsidian_carrier.go)
⚪ 未集成 → 已挂载:
- Prometheus /metrics 端点注册
- 搜索缓存: SHA256 key + LRU + 1h TTL (searchcache.go)
- 后台引擎自动启动: Flow+Executor
总计: 49 Go文件, 7920行, 60 tests, 0 build errors
2026-05-28 18:53:00 +08:00
xiaowei
ffb13f830a
perf: 34 benchmarks + 性能报告 — i5-11260H
...
基准覆盖 (4 files):
- storage: cosine similarity (254ns), MMR rerank (847μs), memory alloc (6.3μs)
- governance: conflict scan 100 (2.2μs), graph navigate 2000 (485μs), prune (135μs)
- selfoptimize: dashboard metrics (187ns), gap detect (39ns), causal chain (74μs), prefetch (181ns)
- distributed: CRDT merge (325ns), rate limiter (79ns), event bus (304ns)
综合评估: 所有纯 CPU 操作纳秒/微秒级,远超设计目标。
瓶颈在外部 I/O(LanceDB + Embedding 推理)。
报告: BENCHMARK.md
2026-05-28 18:41:11 +08:00
xiaowei
cda13e7d17
test: 60 tests — governance/selfoptimize/routes/integration/edge
...
测试覆盖 (4 files, 1233 lines):
- governance_test.go: 15 tests — 冲突检测/遗忘策略/图谱导航/CRDT
- selfoptimize_test.go: 18 tests — 仪表盘/缺口检测/因果追踪/预取/并发
- routes_test.go: 18 tests — HTTP handler 状态码/JSON/Agent 注册/验证
- integration_test.go: 9 tests — 全链路/边界/空输入/大 payload/无认证
go test ./... → 60 passed, 12 packages, 0 failures
2026-05-28 18:35:19 +08:00
xiaowei
ef2ef5069c
feat: M9 功能补全 — 30+ 新端点 + 自调参闭环
...
新增路由层 (10 files):
- graph.go: GET /graph/stats, POST /graph/query, POST /graph/navigate
- feedback.go: POST /feedback/useful|not-useful|deprecate|correct
- gaps.go: GET /gaps, POST /gaps/detect, POST /gaps/close
- conflicts.go: GET /conflicts, POST /conflicts/resolve
- agent.go: POST /agents/register, GET /agents
- admin.go: DELETE /distilled, GET /memory/versions, POST /admin/forget|backup, GET /admin/audit
- l3.go: GET|POST /l3/worldmodel
- triggers.go: GET /triggers, POST /triggers/fire, GET /skills, POST /skills/trial
- eval.go: POST /eval/run, GET /eval/history, POST /eval/generate
- tuning.go: GET /tuning/status, POST /tuning/run, POST /tuning/analytics
- obsidian.go: POST /obsidian/push|pull, GET /obsidian/status
引擎增强:
- governance: InMemoryGraph (零外部依赖) + ListActive/Resolve/DB
- selfoptimize: RecordDeprecation/Correction/GapClosed/ConflictResolved
- storage: IncrementUseful/NotUseful, UpdateMemoryContent, GetVersionHistory,
GetCandidatesForForgetting, Backup, GetAuditLog
总计: 17 files, 1915+ lines, 35 endpoints, go build 0 errors
2026-05-28 18:25:43 +08:00
xiaowei
bf105f0fd9
feat(M3-M6): 核心API + 蒸馏 + 治理 + 自优化引擎
...
M3 核心 API (core.go 173行):/api/v1/commit /recall /bootstrap /stats /batch-commit
M3 SSE推送 (ws.go 117行):零外部依赖,Server-Sent Events
M3 server.go:注册全部7条路由
M4 蒸馏引擎 (distill/engine.go 150行):
- Layer1硬规则过滤 + Layer2 LLM蒸馏
- 每日50次限额 + 降级策略(LLM不可用→规则提取)
- /api/v1/feedback/useful /not-useful
M5 治理 (governance/governance.go 222行):
- 冲突检测:entity/fact/decision三种 + 否定词启发式
- 遗忘策略:线性衰减 + core记忆保护
- 知识图谱:SQLite + 双向BFS多跳导航 + 修剪
M6 自优化 (selfoptimize/selfoptimize.go 272行):
- 自优化仪表盘:7项指标 + 告警阈值
- 知识缺口检测:连续3次miss→typeA/B/C/D自动分类
- 因果追踪:版本链 + 依赖链 + 来源信任度
- 记忆预取:共访关系图谱 >60%概率推送
M2修复:lancedb.go 补充 InsertEpisode/GetTopByQuality/InsertMemory/LanceDB别名
全部零外部依赖,100%标准库实现
2026-05-28 17:42:47 +08:00