## ADDED Requirements ### Requirement: project.md 格式规范 project.md SHALL 遵循以下固定结构: ```markdown # <项目名称> ## 概述 (高度总结的项目信息) ## 关键信息 (从所有文档中提炼的核心要点) ## 文件索引 | 文件名 | 解析文件 | 最新归档 | 摘要 | |--------|----------|----------|------| ## 更新记录 ``` 初始化时概述和关键信息为空,文件索引表为空表头,更新记录为空。 #### Scenario: 初始化后的 project.md - **WHEN** 执行 `/lyxy-kb-init my-project` - **THEN** 生成的 project.md 包含 `# my-project` 标题、空的概述/关键信息段落、空的文件索引表(仅表头)和空的更新记录 ### Requirement: 增量追加模式 执行 ingest 时,系统 SHALL 以增量方式更新 project.md: - 在文件索引表中追加新解析文件的行(文件名、parsed 路径、最新 archive 路径、该文件的简要摘要) - 在更新记录中追加本次 ingest 的条目(时间和处理的文件列表) - 已有文件更新时:覆盖文件索引表中对应行的最新归档路径和摘要 - 概述和关键信息部分 SHALL NOT 在增量模式下自动更新 #### Scenario: 首次 ingest 追加索引 - **WHEN** 首次 ingest 解析了 `需求文档.docx` - **THEN** project.md 文件索引表中追加一行,更新记录中追加 `- 2026-02-18 16:00: 解析 需求文档.docx` #### Scenario: 已有文件更新时追加索引 - **WHEN** `技术方案.pdf` 第二次入库 - **THEN** project.md 文件索引表中该文件的最新归档路径和摘要被更新,更新记录追加新条目 ### Requirement: 全量重写模式 执行 rebuild 时,系统 SHALL 读取所有 `parsed/*.md` 文件,重新生成整个 project.md: - 概述:基于所有 parsed 文件内容重新生成高度总结 - 关键信息:重新提炼核心要点 - 文件索引:基于 manifest.json 和 parsed 文件重新生成完整索引表 - 更新记录:保留历史记录,追加本次 rebuild 条目 #### Scenario: 全量重写 - **WHEN** 用户执行 `/lyxy-kb-rebuild my-project`,项目中有 3 个 parsed 文件 - **THEN** 系统读取所有 3 个 parsed 文件,重新生成 project.md 的概述、关键信息和文件索引,更新记录追加 rebuild 条目