diff --git a/.claude/memory/MEMORY.md b/.claude/memory/MEMORY.md index fe0252a..6adc0ef 100644 --- a/.claude/memory/MEMORY.md +++ b/.claude/memory/MEMORY.md @@ -1,9 +1,9 @@ # Memory Index -> _Last synced: 2026-05-08 | Base commit: `9c91382`_ +> _Last synced: 2026-05-10 | Base commit: `f26e741`_ | 文件 | 描述 | 类型 | 引用 | Commit | |------|------|------|------|--------| -| decisions.md | 关键架构决策:无版本号/userConfig/Bearer Token/SKILL.md规范/路径锁定 | project | 1 | 9c91382 | -| project_overview.md | 项目定位、目录结构、插件规范、发布流程(huanxi/memcore/obsidian) | project | 1 | 9c91382 | +| decisions.md | 关键架构决策:无版本号/userConfig/Bearer Token/SKILL.md规范/路径锁定/memcore三项优化决策 | project | 1 | f26e741 | +| project_overview.md | 项目定位、目录结构、插件规范、发布流程(huanxi/memcore/obsidian) | project | 1 | f26e741 | | feedback_plugin_dev.md | 插件开发协作规范:同步四处/路径解析/工具签名对照 | feedback | 0 | 0c46ed0 | | lint_report.md | memory-lint 最新执行结果 | lint | 0 | 0c46ed0 | diff --git a/.claude/memory/decisions.md b/.claude/memory/decisions.md index 2aaab4c..02f7b56 100644 --- a/.claude/memory/decisions.md +++ b/.claude/memory/decisions.md @@ -2,8 +2,8 @@ name: 架构决策 description: Marketplace 设计中的关键技术决策及其原因 type: project -last_updated: 2026-05-08 -commit: 9c91382 +last_updated: 2026-05-10 +commit: f26e741 --- # 关键架构决策 @@ -63,6 +63,38 @@ commit: 9c91382 --- +## memcore:synonyms.md 作为独立等价词表文件 + +**结论**:等价表述清单以独立的 `synonyms.md`(`type: reference`)存放于 `.claude/memory/`,而非内嵌到 feedback.md。 + +**Why**:feedback.md 存放协作规范(含 Why + How to apply),语义上属于"决策";synonyms.md 是纯配置数据,在 lint Phase 4 矛盾检测前作为输入加载。两者职责不同,混放会让 lint 的加载逻辑复杂化。`type: reference` 符合"外部参考资料"语义,且该类型已在 frontmatter 枚举中。 + +**How to apply**:新建项目记忆体系时,若项目有领域专有术语缩写(如 PG/PostgreSQL、KT/Kotlin),在 `.claude/memory/synonyms.md` 中维护等价组(每行逗号分隔)。幽灵检测自动排除该文件,不纳入 MEMORY.md 索引。 + +**See Also**:[[decisions.md#memcore memory-update/lint 路径锁定:禁止写入系统自动记忆路径]] + +--- + +## memcore:synthesis 三触发分工——快扫 vs 精扫 + +**结论**:synthesis 升级触发拆为三路:A 会话内主动、B Phase 3C 即时快扫(每次 memory-update 必跑)、C lint Top 反向触发(月度运行)。 + +**Why**:原双触发中,B 路径依赖 lint 生成 `lint_report.md` 的「条目级高频引用 Top」段,短会话或任务型对话中 lint 常被跳过,导致高频引用条目长期未升级为 synthesis。Phase 3C 快扫在每次 memory-update 结束时强制执行,覆盖短会话盲区;lint 精扫按源文件去重计数,用于月度深度检查。两者以 `**Synthesized:**` 标记作为唯一判重依据,不重复创建文件。 + +**How to apply**:实现新的 memory-update 类技能时,引用计数类检查应分"即时快扫"和"月度精扫"两档,分别对应"覆盖率"和"准确率"的不同优先级。 + +--- + +## memcore memory-sync:冲突检测必须先于 git commit + +**结论**:memory-sync Phase 0 重构为两步:Step 1 冲突优先检测(`diff --diff-filter=U`)→ Step 2 普通变更提交。冲突语义合并完成后才允许 commit,再进入 Phase 1。 + +**Why**:原设计中 Phase 0 先执行 `git add + commit`,Phase 0.5 才检测冲突。若文件存在 git merge conflict markers,`git commit` 会静默失败(git 拒绝提交含冲突标记的文件),整个 sync 流程进入不确定状态且无明显报错。改为"先检测再提交"消除了这条静默失败路径。 + +**How to apply**:设计任何含"检测 + 操作"两步的流程时,检测必须先于操作,且检测结果应作为操作的前置条件,而非事后处理。 + +--- + ## SKILL.md frontmatter 只保留 name 和 description **结论**:SKILL.md frontmatter 只写 `name` 和 `description` 两个字段,去掉 `version`。 diff --git a/.claude/memory/lint_report.md b/.claude/memory/lint_report.md index 0a35e96..fc90455 100644 --- a/.claude/memory/lint_report.md +++ b/.claude/memory/lint_report.md @@ -2,12 +2,12 @@ name: 记忆健康检查报告 description: memory-lint 最新一次执行的检查结果与待处理项 type: lint -last_updated: 2026-05-08 +last_updated: 2026-05-10 --- # 记忆健康检查报告 -> _执行时间: 2026-05-08 | Base commit: `9c91382` | Last synced: 2026-05-08_ +> _执行时间: 2026-05-10 | Base commit: `f26e741` | Last synced: 2026-05-10_ ## 健康概览 @@ -29,3 +29,11 @@ last_updated: 2026-05-08 ## 条目级高频引用 Top(供 /memory-update 消费) 无候选(所有条目跨文件引用次数 < 3) + +--- + +## NEED-HUMAN 待处理清单 + +✅ 全部通过,无待处理项。 + +**备注**:`synonyms.md` 不存在,矛盾检测使用保守模式(仅检测直接数值/版本冲突)。如项目有领域术语缩写,建议创建 `.claude/memory/synonyms.md`。 diff --git a/.claude/memory/project_overview.md b/.claude/memory/project_overview.md index d28afb3..404ee29 100644 --- a/.claude/memory/project_overview.md +++ b/.claude/memory/project_overview.md @@ -2,8 +2,8 @@ name: 项目概述 description: yixiong-claude-marketplace 的定位、目录结构、插件规范和发布流程 type: project -last_updated: 2026-05-08 -commit: 9c91382 +last_updated: 2026-05-10 +commit: f26e741 --- # 蚁熊内部 Claude Code Marketplace @@ -61,7 +61,7 @@ description: "触发描述(用户实际口语,不用内部视角)" | 插件 | 技能 | 特性 | |------|------|------| | `huanxi` | 6 个(report/leader/task/weekly/org/shared) | userConfig Bearer Token + MCP Server | -| `memcore` | 3 个(memory-sync/lint/update) | 纯技能,无 MCP | +| `memcore` | 3 个(memory-sync/lint/update) | 纯技能,无 MCP;支持 synonyms.md 等价词表、Phase 3C 即时引用快扫、Phase 0 并发冲突保护 | | `obsidian` | 9 个(obsidian/bases/daily/history/meta/plugins/search/tasks/workflow-pkm) | 纯技能,无 MCP | **See Also**:[[decisions.md#huanxi plugin 使用 userConfig 而非环境变量传 Token]]