Skip to main content

CHANGELOG.md

# Changelog

## 0.5.0 - 2026-05-31

- 新增 `CMDCRAGArcana.Graph.Profile` / `Graph.Policy`,GraphRAG 必须按 collection 显式 opt-in,默认仍走 plain RAG。
- 新增 `CMDCRAGArcana.Graph.Preflight`,检查 Arcana graph config、repo、graph tables、extractor、entity embedding、community summary LLM、collection ACL 与 citation provenance。
- 新增 `CMDCRAGArcana.Graph.Maintenance` / `Graph.BuildRun`,包装 `rebuild_graph/2``embed_entities/2``detect_communities/2``summarize_communities/2`,只供后台 job / release hook 使用。
- 新增 `CMDCRAGArcana.Tool.GraphStatus` (`rag_graph_status`) 与 `CMDCRAGArcana.Graph.Status`,只读返回 graph preflight、counts、summary 状态、stale 标记和 build run metadata。
- 新增 `CMDCRAGArcana.Tool.GraphSearch` (`rag_graph_search`) 与 `CMDCRAGArcana.Graph.Evidence`,只读启用 Arcana graph/fusion search,返回 citation、entity / relationship / path / community support。
- 新增 `CMDCRAGArcana.Graph.TelemetryBridge`,桥接 Arcana graph / GraphStore telemetry 到 CMDC `:rag_graph_progress` / `:rag_graph_audit` event。
- 新增 `CMDCRAGArcana.Eval.GraphRAG`,提供 entity recall、relationship recall、path support、community relevance、graph delta、citation grounding 与越权泄漏门禁。
- 明确 RAG runtime 不引入 Python Sidecar;Python 仅用于后续蒸馏、训练和离线模型实验。

## 0.4.0 - 2026-05-31

- 新增 `CMDCRAGArcana.Pipeline.StepSpec` / `Pipeline.Preset` / `Pipeline.Policy`,
  用静态白名单治理 Arcana Pipeline step、module 与 option。
- 新增 `CMDCRAGArcana.Tool.PipelineAnswer` (`rag_pipeline_answer`),Agent 只能选择
  `preset_id` 与 collection scope,不能动态拼 Pipeline。
- 新增 `CMDCRAGArcana.Pipeline.RunSummary`,Tool 输出
  `metadata.pipeline_run_summary`,记录 step plan、citation、grounding、fail mode
  与降级/复核状态。
- 新增 `CMDCRAGArcana.Pipeline.TelemetryBridge`,把 Arcana Pipeline telemetry
  转成 `:rag_pipeline_step` CMDC plugin event,默认不记录 chunk 原文和长 prompt。
- 新增 grounding / citation fail mode:`:block``:search_only`  `:answer_with_warning``:needs_review`
## 0.3.0 - 2026-05-31

- 新增 `CMDCRAGArcana.Eval.ArcanaAdapter`,把 Arcana Evaluation test case / run /
  metrics 转为 `CMDCEval.Case``Run.metadata` 友好结构。
- 新增 Arcana Evaluation retriever presets,支持评估 `Arcana.search``Arcana.ask`
  与 pipeline preset。
- 新增 `CMDCRAGArcana.Eval.TelemetryBridge`,监听 Arcana evaluation telemetry 并广播
  `:rag_eval_progress` CMDC plugin event。
- 新增 `CMDCRAGArcana.Eval.Gate`,提供 RAG Eval + Tool Calling Eval + Safety Eval
  发布门禁 recipe 和阈值检查。
- 依赖 `cmdc_eval ~> 0.2`,复用其 `assert/3` context 与通用 RAG assertions。

## 0.2.1 - 2026-05-31

- 新增 `CMDCRAGArcana.Ingestion.ParsedDocument` / `ParsedPage` / `ParsedTable`,定义 OCR、版面解析、表格抽取可输出的 ingestion artifact。
- 新增 `CMDCRAGArcana.CitationSpan`,citation 可携带 page / section / paragraph / table_id / bbox / char offset provenance。
- `CMDCRAGArcana.Ingestion.run/2` 支持 preprocessor 返回 rich parsed artifact,并归一化为 Arcana ingest text + metadata。
- 新增 `CMDCRAGArcana.ProgressEvent`,统一 ingestion / reembed / graph 后台任务 progress payload 与 EventBus 事件形状。
- 文档补充 parser/OCR artifact 边界、citation span 输出和 progress event contract。

## 0.2.0 - 2026-05-31

- 新增 Knowledge Control Plane 契约 struct:Collection / Document / DocumentVersion / IngestionRun / IndexStatus / SourceMapping。
- 新增 `CMDCRAGArcana.Tool.IngestStatus` 只读工具,通过 `StatusBackend` 查询 collection/document/version/graph 索引状态。
- 新增 `CMDCRAGArcana.Ingestion` adapter contract,供 Oban worker 调用 Arcana ingest,支持 preprocessor hook 与 version metadata。
- 新增 `CMDCRAGArcana.Maintenance.reembed/2` wrapper,统一 telemetry 与 EventBus 进度事件。
- 新增 `guides/knowledge_control_plane.md`,给出 Ecto schema 草案、Oban worker skeleton、Arcana dashboard 生产边界与 maintenance 用法。

## 0.1.1 - 2026-05-31

- 安全加固:配置归一化不再为未知 string key 创建动态 atom。
- 安全加固:`rag_search` / `rag_answer` 默认 fail closed,未显式配置 collection allowlist / policy 时拒绝访问。
- 文档补充:README 标明开发环境如需放行可显式设置 `default_allow?: true`
## 0.1.0 - 2026-05-31

- 新增 `rag_search` / `rag_answer` 两个 CMDC Tool。
- 新增 collection ACL 与 citation audit 两个 CMDC Plugin。
- 新增 Arcana backend wrapper、typed structs、telemetry contract 与单元测试。