Skip to content

Reload the chat session based on the open project

Latest

Choose a tag to compare

@paul356 paul356 released this 27 Aug 07:57
1503c51

Features

  • #84 — per-project session persistence (feat(plugin)): sessions stamped with the owning .kicad_pro (schema v2) and auto-restored on first panel display for the currently open project; a 1 s two-tick-confirmed poll follows project switches in place (the panel swaps session instead of lingering or stacking windows); also fixes the None/mcp URL error (LLMClient.set_base_url())

Fixes

  • #76 — footprint Edge.Cuts geometry: expose footprint Edge.Cuts geometry through pcb-query
  • #78 — streamed LLM responses over subprocess: the SSL-fallback path (KiCad's embedded Python lacks ssl) now relays SSE deltas chunk-by-chunk instead of degrading to a one-shot non-streaming call; non-streaming timeouts unified 60 s → 300 s
  • #80 — reload KiCad on every turn exit: board reload was skipped when a tool call failed — failure paths now mark dirty paths and reach _auto_reload_modified_files
  • #82 — router pads: routing to duplicate-named pads (edge-connector fingers sharing a net) and edge-mounted pads; single-layer A* now filters obstacles by routing layer

新特性

  • #84 — 会话按项目持久化:会话与所属 .kicad_pro 项目文件绑定(存储 schema v2),面板首次显示时自动恢复当前打开项目的会话;以 1 秒一次的轮询、连续两次确认跟随项目切换并原地切换会话(面板直接切换会话,而不是残留或堆叠窗口);同时修复了 None/mcp URL 错误(LLMClient.set_base_url()

问题修复

  • #76 — 封装 Edge.Cuts 几何:通过 pcb-query 暴露封装内部的 Edge.Cuts 几何
  • #78 — 子进程流式转发 LLM 响应:SSL 回退路径(KiCad 内置 Python 缺少 ssl 模块)现在逐块转发 SSE 增量,而不是降级为一次性非流式调用;非流式调用超时统一从 60 秒提高到 300 秒
  • #80 — 每个回合结束时都重载 KiCad:此前工具调用失败时会跳过板子重载——现在失败路径也会标记脏路径并走到 _auto_reload_modified_files
  • #82 — 布线修复:支持布线到同名焊盘(共用网络的边缘连接器金手指)和板边安装焊盘;单层 A* 现在按布线层过滤障碍物