开发日志 2026-08-12

文章目录

开发日志 2026-08-12(周三)

今日概览

今天共产生 15 个 Codex 会话,主要工作:

  1. 桌面客户端批量任务失败重试 + 生产空白页修复 + 0.1.4 / 0.1.5 安装包打包
  2. 国产化报告下载前端化(后端 Pandoc 转换服务下线)
  3. LLM 分类提示词升级与分类 ID 层级校验
  4. LLM 用量数据与上下文切分线校准分析
  5. skill 仓库更新(release 输出配置修改内容、md-export 表格线框 / 仿宋、新增 dev-doc)
  6. crawlab AGENTS.md 贡献指南
  7. release-arm64 分支 Drone 构建监控(一次失败后重跑成功)
  8. llm-token-server 模型映射与滚动更新确认
  9. 子代理协作(spawn / wait)与 DeepSeek 消息信封已知问题

一、桌面客户端:批量任务失败重试与生产空白页修复(客户项目A)

背景

用户反馈:批量开始任务无法处理,只能一个个点击;生产环境安装包打开后是空白页。

排查过程(假设-验证)

  • 拉取生产数据库分析「失败任务」逻辑:上一批批处理程序崩溃退出后,未运行到的任务没有 agent session,批量开始按钮无法处理它们;
  • 确认规则:批量任务中没有 session ID 的(即上一批还没处理到的)可以直接处理,不需要兜底 / 保留策略;
  • 空白页根因:安装包默认配置指向本地环境,生产机连不上自然白屏。

修复与产出

  • config.yaml 默认改为 production(提交 fa24860,推送 origin/main);
  • Parallels Windows 虚拟机拉取代码后用 bun 构建,产出 NSIS x64 安装包 0.1.4(约 211MB,记录 SHA256);
  • 生产机处理:覆盖安装(沿用安装路径、保留数据目录),或先设 profile 环境变量指向 production 立即恢复;
  • 后续把「第 0 步:打包前先升版本号」写进 AGENTS.md 的 Windows 打包流程,并打出 0.1.5 安装包(与 VM 产物逐字节核对一致,未触发多余重建)。

附带

  • 答疑:worktrees 的使用场景;
  • 盘点项目里旧数据的迁移代码。

二、国产化报告下载前端化(客户项目A)

背景

国产化报告 PDF 导出沿用后端 Pandoc 转换服务,目标与 8/10 已完成的业务模块报告一致:改由前端下载,后端服务下线。

做法

  • 对照 8/10 已合入的前端 PDF 实现(pdf.tsx)确认能力已具备,避免重复造轮子;
  • 确认对应前端页面后接前端下载,后端 Pandoc 转换服务下线删除;
  • 相关修复一并入库:结构化数据状态筛选兼容 NULL 历史记录、列表增加创建时间筛选等。

产出

后端仓库A / 前端仓库A 提交推送完成,工作区干净。

三、LLM 分类提示词升级 + 分类 ID 层级校验(客户项目A)

背景

提交 80d7a4c 的提示词升级没有同步到配置数据库。

旧提示词暴露的问题

  • 容易按「应用场景」分类(用途 ≠ 器件类型);
  • 层级规则不清晰,模型被迫编造三级分类 ID;
  • 分类 ID 可能被编造或「串枝」(合法但挂在错误父级下);
  • 型号识别过严或过松,模型编造型号;
  • 返回格式示例硬编码了真实答案,模型会直接照抄。

修复

  • 3 个分类模板 v1 → v3:明确「分类依据是器件本身是什么,不是用在哪里」,强信号优先级为标题/产品名 → 摘要/Features → 核心参数;某级无证据填 0;ID/名称必须来自给定分类树、一一对应、禁止编造;型号允许空数组;示例改用占位符;
  • normalizeCategoryIDs 改为级联校验:一级必须是根分类、二级的父必须是一级、三级同理,违规路径逐级清 0,并加 WARN 日志;
  • 新增 529 行测试覆盖提示词渲染与 ID 规整场景。

思路

分类 ID 只校验「存在且未软删」不够------「合法但串枝」的 ID 会让下游 schema 生成失败或套错参数模板,所以必须校验层级链路。

产出

数据库提示词已更新并验证。

四、LLM 用量数据 vs 上下文切分线校准(客户项目A)

输入

LLM 用量记录 CSV 共 31.8 万条(分类 1,283 / 提取 4,265 / 审核 1,988),与 LLM 网关配置 中 智能路由 的上下文切分线对比。

分析结论

  • 设备硬上限:单请求输入+输出 ≤ 200k tokens;
  • 任务级切分预算:提取有效线 ≈ 77k(实际最大 77,065 恰好顶线,切分逻辑精确生效);审核 ≈ 102k;分类无自身切分线;
  • 分类业务离 200k 线极远(最大 38.5k,占线 19.3%),无需切分;提取是唯一「贴线走」的业务,参数设置合理。

五、skill 仓库更新(工作区:skill)

  • release skill:发版输出新增「配置修改内容」------发版分支落后主分支,若主分支新增/修改了配置的使用方式(不是参数值),发版完成后需告知;
  • md-export skill:导出的 Word 表格需内外部完整线框,默认字体改为仿宋_GB2312;
  • 新增 dev-doc skill;移除旧的 feature-test 系列;补充 AGENTS.md 与规则文档;
  • 推送 5 个提交到 main;Windows 侧只拉取(不能 push)。

六、crawlab AGENTS.md

合并贡献者指南约 50 行:项目结构、构建 / 测试命令、编码风格、测试要求、提交 / PR 约定、agent 相关说明,原有 memory-rules 保留。

七、release-arm64 Drone 构建监控(客户项目A)

使用 drone-ci skill 只读监控三个仓库的 release-arm64 构建:

  • 后端仓库A #87:失败(镜像构建 / 推送步骤失败),按用户要求未做修复重跑;
  • 前端仓库A #177:成功(约 194 秒);
  • 后端仓库A #88:成功(约 377 秒,镜像按 release-arm64-88 约定产出)。

监控全程只读,未触发或改动任何构建。

八、llm-token-server 模型映射与滚动更新

  • 确认新增目标模型及与网关模型名的映射方式;
  • 检查 12-llm-token-server.yaml 是否启用滚动更新;
  • 解决「改完模型总忘记同步 tokenizer 估算服务」:在 AGENTS.md 固化提醒规则(修改 LLM 网关配置 模型后同步 tokenizer 服务);
  • 顺带排查 LLM 用量记录入库失败(json 类型语法错误)。

九、子代理协作与已知问题

  • 多会话并行分派(spawn_agent / followup_task / wait_agent)完成打包监听、构建监控等任务;
  • 遇到 DeepSeek provider 下消息信封无法送达的已知 bug:子代理收空任务,打包检查改由主链路直接完成;
  • 清理遗留的监听代理,释放线程槽位。

复盘与后续

可复用经验:

  • 生产环境空白页优先查「默认配置指向」;
  • 提示词模板升级要点:占位符示例(防照抄)、禁止编造 ID/型号、层级级联校验;
  • 用量数据贴线分析能验证切分参数是否精确生效。

待办:

  • 后端仓库A release-arm64 #87 失败原因跟进(#88 已重跑成功,需确认镜像产物);
  • 0.1.5 安装包部署到生产机;
  • tokenizer 模型同步流程固化到 AGENTS.md 后的落地执行。
相关推荐
light blue bird2 个月前
3C 数码电子BOM 协同工作台组件
java·开发语言·jvm·windows·.net·桌面端
light blue bird2 个月前
支组汇总主子节点工序路径图表
前端·jvm·.net·桌面端·gdi绘图
三声三视3 个月前
Electron鸿蒙桌面应用打包部署完全指南(含自动更新)
前端·electron·前端框架·harmonyos·鸿蒙·桌面端
light blue bird4 个月前
主从执行端动机模块工序协同组件
jvm·数据库·.net·桌面端
light blue bird5 个月前
多Tab页签高索引组轴可视化图表
jvm·数据库·.net·桌面端·ai大数据
低调滴开发6 个月前
Tauri开发桌面端服务,配置指定防火墙端口
rust·tauri·桌面端·windows防火墙规则
似水流年QC10 个月前
Electron 实战|Vue 桌面端开发从入门到上线
vue.js·electron·桌面端
EndingCoder1 年前
Electron 新特性:2025 版本更新解读
前端·javascript·缓存·electron·前端框架·node.js·桌面端
EndingCoder1 年前
Electron 原生模块集成:使用 N-API
javascript·electron·node.js·桌面端