| fix: make ingest() write to session buffer to prevent compact empty_buffer
OperatorAgent calls compact() before after_turn(), which meant the session
buffer was always empty at compact time. Now ingest() writes messages to the
session buffer, and after_turn() deduplicates against ingest-written messages
to avoid double-writing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
| 26 天前 |
| feat: attribute internal tool usage
| 11 天前 |
| refactor(providers): move json import to module level in SQLRelationStore
Move import json from inside _parse_relations_json() to the
top-level imports — stdlib module with no circular-import risk.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
| 5 天前 |
| feat: add BM25 hybrid retrieval, dream lifecycle, and extraction improvements
- Add BM25 keyword index with Vector-Anchored Fusion for hybrid seed retrieval
- Add DreamService lifecycle subsystem with RecallTracker, SQLRecallStore, and LightDreaming phase
- Merge dual-run extraction results by (category, routing_key) to reduce duplicates
- Raise extraction confidence threshold from 0.5 to 0.6
- Remove L1 (overview) level from index records, enrich metadata with when/who/where
- Add list_archives_since to SQLSessionArchiveStore for dream recall queries
- Integrate recall tracking into RetrievalPipeline and MemoryService
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
| 21 天前 |
| chore: bootstrap ContextEngine agent team scaffold v2
团队协调文件:
- CLAUDE.md: 完整 v3.1 设计(URI规范/写入策略/检索规则/接触点/commit规范/待决事项)
- team/tasks.md: Phase 0/1/2/3 全量任务(含 providers + service + 里程碑 commit 任务)
- team/roles/: 五个 Teammate 详细角色说明
- team/LEADER_PROMPT.md: Leader 分阶段 spawn/解散 Teammate 的完整操作说明
项目骨架:
- core/ extraction/ commit/ index/ retrieval/ providers/ service/ tests/ 目录结构
- agfs/: OpenViking AGFS(git@github.com:c4pt0r/agfs.git)
- pyproject.toml + .gitignore + 各包 __init__.py
| 2 个月前 |
| feat(extraction): dual-run extraction with different temperatures
Run each span twice (default temp + temp=0) to improve extraction coverage.
Update tests and config defaults accordingly.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
| 26 天前 |
| perf: add local_cache tracking methods to TokenTracker/UsageTracker
- Add record_local_cache_hit(tokens_saved) and record_local_cache_miss()
to UsageTracker (global counters) and TokenTracker (bucket stack sync)
- Add local_cache_hits/misses/saved_tokens fields to TokenUsageSnapshot,
TokenBucket, and to_attribution_dict()
- Add merge_tool_stats() to UsageTracker for legacy tool stats merging
(correctly computes total_tokens = prompt + completion)
- Fix TokenTracker.record_local_cache_* to call super() before bucket
update so global counters are always accurate
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
| 7 天前 |
| Merge upstream/dev into dev
Conflicts resolved:
- docker/Dockerfile.standalone: keep local (perf module)
- providers/token_tracker.py: keep local (bucket stack)
- server/memory_service.py: keep upstream (error handling)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
| 7 天前 |