idea_world_labDEV JOURNAL
2026年6月27日星期六

2026 年 6 月 27 日

  • 26 日编写的 docs/roadmaps/2026-06-26-source-to-ast-input-flow.md 再次阅读后,判断整篇文档的一致性不足
  • 最初编写的 27 日文档中对象说明和结构说明较多,实际追踪输入如何流动比较困难
    • 之后依据 PR 反馈重新确定文档方向
    • # <相对路径> 展开的输入中,具体写明哪个文件的哪一行进入 AST Parser
    • player.gd 的 E020‑E034 那样,以实际行范围为依据,整理出该段正文部分如何通过 Retriever 检索并由 LLM 判断的流程
    • 文件路径仅用于追踪,Retriever 检索时只会使用代码/正文片段的 chunkText,重新固定此原则
  • docs_chunksapi_mappinglabel_prototypes 不作特殊处理,采用相同方式检索,由 LLM 再次验证检索候选的流程
  • 今日工作旨在在实际实现前,先通过文档固定输入与输出在何处以及如何衔接,防止 AI 任意更改范围或以抽象结构说明为主
  • 为了验证文档整理的流程,实现了 Source Flow Debugger 网页工具
    • 在本地通过 http://127.0.0.1:8010/ 运行,直接查看 Godot 项目输入
    • # <相对路径> 展开的项目输入按文件拆分,.gd 视为 AST 类型的 chunk,.godot.tscn 视为 direct chunk 进行拆解
    • 放入一个小型 Godot 项目后,确认被拆解为 5 files14 chunksAST 9Direct 5
    • 将类似 README.md 的文档文件排除在 source‑analysis 模式外,并在界面上显示排除的事实与原因
  • 为每个 chunk 添加调试 UI
    • 在每个 chunk 下方放置 docs_chunks 搜索api_mapping 搜索label_prototypes 搜索Validate JSONL 按钮
    • 采用在当前 chunk 直接下方执行表格搜索的方式,而非全局表格复选框
    • Retriever 输入仅显示 { "chunkText": "..." },去除文件路径、行号、提示等信息
    • Qwen 验证仅在 prompt + chunkText + retrieved JSONL 步骤中使用,进行分离
  • 在实际使用网页调试器时发现的问题并修复
    • 移除页面加载时自动插入示例 Godot 代码的问题
    • 即使再次上传相同文件/文件夹,也让浏览器的 change 事件重新触发,上传输入在点击时即清空值
    • 为防止旧的 JS 残留,在静态文件响应中加入 cache-control: no-store
    • 在 PostgreSQL 搜索路径中,即使 client 创建/连接失败,也确保通过防御性调用 client.end() 使 cleanup 安全执行
  • 将实际实现结果截图并另存为文档
  • 以当前为基准,认为 chunk 级别的拆解已基本成功,接下来重点是如何实际执行 DB 检索
    • 需要仅凭 chunkText 检查 docs_chunksapi_mappinglabel_prototypes 中返回的 JSONL 候选
    • 还要在 Qwen 验证阶段判断检索到的 JSONL 是否与当前 chunk 相关,并决定是否废弃
  • 在接入 DB 检索之前,使用 GPT 生成了用于演示的 Godot chunk 相关/无关 JSONL,实验匹配提示词
    • 最初询问 “这个 JSONL 是否包含源码对应的内容,只回答是/否”,结果相关和无关的 JSONL 都返回 “是”
    • 随后限定只有 source_apisource_patternmatch_termsrequired_when_seen_in_codebefore_code 中的任意一项与实际 SOURCE_CODE 字符串/API 调用直接匹配时才返回 “是”
    • 不再依赖宽泛的词义相似或 LLM 的 Godot 先验知识,只看 JSONL 中的字符串依据:相关 JSONL 为 “是”,无关 JSONL 为 “否”
    • 通过此实验得到的结论是,DB 检索后的 Qwen 验证阶段应先判断 “检索到的 JSONL 中是否包含与当前 chunk 直接匹配的字符串依据”,而不是判断 “似乎合理的语义相似度”
    • 观察日志: 基于 JSONL 收集现状的测试仓库选择观察日志
    • 观察日志: JSONL 依据匹配提示词观察
    • 回顾: docs/retrospectives/2026-06-27.md
  • 明日计划制作多个 Godot chunk 相关/无关的 JSONL 演示集,反复测试 Qwen 基于何种依据给出 “是”/“否” 的判断