Skip to content

docs(logs): add fifth project log for commit ingestion prototype (2026-05-27)

赵烜熠 requested to merge zxy into main

📝 变更概述 (Overview)

本次提交属于文档更新,主要归档了“灵枢(LingShu)”项目的第五篇开发日志(Log 05)。本阶段工作重心从“原型流程可运行”正式向“数据真实可用”过渡,重点完成了 Linux upstream commit 采集脚本的元数据字段设计、结构化标签提取思路以及样例数据结构验证。

🔍 详细变更列表 (Changes)

1. 完善 scripts/ingest_commits.py 原型设计

  • 输入定义:明确以 Linux upstream 仓库 v3.10 之后的百万级 commit 作为初始采集范围。
  • 流水线衔接:规划了 GitPython 仓库读取、v3.10 tag 定位及增量/断点续跑的基础处理流程。

2. 精细化 Commit 元数据字段与标签设计

  • 基础字段:设计了包含 commit_hash, parent_hashes, modified_files 等 19 个核心维度的结构化字段,预留了用于后续向量化的 embedding_text
  • 特征工程与过滤
    • 设计了基于多 parent 的 is_merge 识别逻辑,用于后续过滤 Merge commit。
    • 引入针对 Fixes:, Cc: stable, Reported-by 等关键内核维护标签的正则匹配方案。
    • 设计了基于文件路径(如 mm/, fs/)的粗粒度内核子系统(Subsystems)推断规则。

3. 规范化样例 JSON 结构验证

  • 输出了符合 src/lingshu/schemas.py 约定的最小可行性 JSON 样例,用于在不引入 Milvus 的前提下,直接替换 retrieval/ 模块的内置硬编码数据,确保端到端 Pipeline 能够闭环消费真实 Commit 数据。

📂 目录结构确认

新日志已安全归档至规范目录下:

  • docs/logs/2026-05-27-log05-commit-ingestion-prototype.md

注:请审查人注意,本次合并仅涉及 docs/ 目录下的开发日志更新,不包含任何业务逻辑代码修改。

Merge request reports