Repository navigation
v0.11.0-alpha.7
·
291 commits
to main
since this release
相比 v0.11.0-alpha.6 的变更 / Changes since v0.11.0-alpha.6
✨ 新功能 / Features
- 全局绘图锁定: 新增全局绘图锁定开关,一次冻结所有图元的几何拖动;锁定只影响移动,删除、撤销/重做、样式、显隐与命中测试保持可用。
- Global drawing lock: Adds a global drawing lock toggle that freezes movement of every drawing through one pure predicate, leaving deletion, undo/redo, style, visibility, and hit-testing intact.
- 绘图设置与文本控件: 新增绘图设置弹窗与颜色、文本控件,按种类持久化模板,并将工具选择与分组展开拆分。
- Drawing settings and text controls: Adds a drawing settings dialog with color and text controls, persists per-kind templates, and separates tool selection from group expansion.
- 图表级绘图撤销/重做(破坏性): 每张图维护单一绘图历史,交互、控制器、门面与 Agent 编辑共用同一撤销序列,并在左侧工具栏暴露撤销与重做。
- Chart-wide drawing undo and redo (breaking): Keeps one drawing history per chart so interaction, controller, facade, and Agent edits share a single undo sequence, exposed in the left toolbar.
- 价格轴锁定价 K 线比例(破坏性): 将锁定的显示范围存入 StateKernel,使水平平移时主价格轴保持稳定,并以
mainPriceAxisRangeMode取代disableMainPaneVerticalScroll。 - Locked price-to-candle ratio (breaking): Stores the locked display range in StateKernel to keep the main price axis stable while panning, replacing
disableMainPaneVerticalScrollwithmainPriceAxisRangeMode. - 最新价标签涨跌着色与收线倒计时: 最新价标签按涨跌方向着色,并在支持的分钟、4 小时与日线周期上显示当前 K 线收线倒计时,随秒边界刷新。
- Trend-colored last price and close countdown: Colors the last price label by trend and shows the current bar close countdown on supported intraday and daily periods, refreshed on second boundaries.
- 4 小时周期档位: 在周期单一事实来源与 Core 初始窗口策略中新增
4h。 - 4-hour period level: Adds
4hto the period single source of truth and the core initial-window policy. - 欧洲传统 K 线聚合: 在协议与 Core 中新增欧洲传统 K 线聚合取值。
- Europe-traditional bar aggregation: Adds the Europe-traditional bar aggregation value to the protocol and core.
- Agent 面板启动器与引用角标重做: 面板启动器改为贴边条带并补充悬浮提示,引用角标改为中性灰胶囊。
- Agent panel launcher and citation restyle: Restyles the panel launcher as an edge strip with a tooltip and renders citation markers as neutral gray pills.
- Agent 会话操作弹窗化: 会话重命名与删除改用样式统一的基础弹窗,取代
window.prompt/window.confirm。 - Agent session modals: Replaces
window.prompt/window.confirmwith styled base modals for session rename and delete. - 绘图锚点数量提示: 从领域实现推导各图元的锚点数量,并在
drawing_create/drawing_update工具描述中说明。 - Per-kind anchor counts: Derives per-kind anchor counts from the domain and states them in the
drawing_create/drawing_updatetool descriptions. - 左边界增量加载集中化: 将左边界缺口触发的历史增量加载集中到
Chart。 - Centralized left-gap loading: Centralizes left-gap incremental history loading in
Chart. - 数据源后端安装脚本更名: 将
pnpm setup更名为pnpm setup:backends,并为安装输出加入分层着色。 - Backend setup script rename: Renames
pnpm setuptopnpm setup:backendsand adds layered ANSI coloring to the install output.
🐛 Bug 修复 / Fixes
- 绘图锁定语义修正(破坏性): 锁定图元改为仅冻结拖动与删除,重新接受样式、参数、标签、显隐与 z-index 写入。
- Drawing lock semantics (breaking): Locked drawings now only block drag and removal, accepting style, params, labels, visibility, and z-index writes again.
- 轴刻度平移跟随: 垂直网格线锚定到可读价格值,使标签与网格线在垂直平移时同步移动。
- Axis ticks follow panning: Anchors vertical grid marks to readable price values so the label and gridline move together during vertical panning.
- 双击切换分时能力校验: 双击切换分时前校验品种能力,对不支持分时的数据源写入既有品种错误态,而非抛出未捕获异常。
- Double-click time-share guard: Validates the symbol capability before double-click switching to time-share, writing to the existing symbol error state instead of throwing on unsupported sources.
- 指标定义分类与挂载渲染: 修复指标定义的分类与按挂载模式渲染。
- Indicator definition classification: Fixes indicator definition classification and mode-mounted rendering.
- WebGPU 空帧清屏: 修复 WebGPU 在空帧时未清屏的问题。
- WebGPU empty-frame clear: Clears the WebGPU surface on empty frames.
- 绘图锚点日期失败按原因区分: 交易日期解析返回带判别信息的结果,按原因抛出不同错误码,并在越界详情中携带已加载区间。
- Drawing anchor date causes: Resolves trading dates to a discriminated result and raises a distinct error code per cause, carrying the loaded range in out-of-range details.
- 绘图标签拒绝非索引键: 在标签对象与映射两层拒绝多余键,避免非索引键通过校验后在归一化阶段崩溃。
- Drawing label key validation: Rejects extra keys at both the label object and map level so non-index keys no longer pass validation and crash normalization.
- Agent Web 搜索密钥引导与存储: 引导 Web 搜索密钥配置,并将 Exa 密钥改为全局存储并迁移旧配置,避免切换配置后搜索失效。
- Agent web search keys: Guides web search key setup and stores Exa keys globally with legacy profile-key migration so configured search survives a profile switch.
- Agent 工具失败分类与结果高度: 对工具失败进行分类,并限制工具结果内容高度。
- Agent tool failures and result height: Classifies tool failures and caps tool result content height.
- 工具栏滚动与分组菜单: 优化工具栏滚动与分组工具菜单行为。
- Toolbar scrolling and grouped menu: Refines toolbar scrolling and grouped tool menu behavior.
- Agent 面板开关对齐: 修正 Agent 面板开关控件对齐。
- Agent panel toggle alignment: Aligns the agent panel toggle controls.
- 当前品种选中不再空转加载: 忽略数据管理器对未变化选中项的空操作,避免品种标签停留在加载中。
- No-op symbol selection: Ignores the data manager's no-op active selection so the symbol chip does not stay pending.
- dev connector 进程树关闭: 在
SIGINT/SIGTERM时关闭整个 connector 进程树,并等待退出后再返回提示符。 - dev connector shutdown: Kills the whole connector process tree on
SIGINT/SIGTERMand waits for shutdown before returning the prompt. - bench 别名与独显: 修复基准测试配置的 Core 源码别名,并强制使用独立 GPU。
- bench aliases and discrete GPU: Resolves core source aliases in the benchmark config and forces the discrete GPU.
🏗️ 架构与重构 / Architecture & Refactoring
- 绘图模块语义分层(破坏性): 将绘图模块拆分为
model/session/geometry/interaction/render子模块并收敛为单一 barrel,同时把图元领域模型移出foundation。 - Drawing module semantic layout (breaking): Splits the drawing module into
model/session/geometry/interaction/rendersubmodules with a single barrel, and moves the primitive domain model out offoundation. - 移除 semantic 配置 API(破坏性): 删除已废弃的 JSON 语义图表配置与
./semantic子路径导出,并将标记形状渲染迁至engine/marker/shape。 - Remove semantic config API (breaking): Deletes the deprecated JSON semantic chart config and the
./semanticsubpath export, moving marker shape rendering toengine/marker/shape. - Core 模块语义布局: 将 modes、scale、replay/chartTypes、alerts、高级图表组件、plugin 与 agent 功能模块迁移到
<module>/types.ts + impl/布局。 - Core semantic module layout: Migrates modes, scale, replay/chartTypes, alerts, advanced chart components, plugin, and the agent feature module to the
<module>/types.ts + impl/layout. - Controllers 语义模块化: 让控制器公共导出经由语义模块,并迁移工具栏、指标选择器、绘图与图表控制器。
- Controller semantic modules: Routes controller public exports through semantic modules and migrates the toolbar, indicator selector, drawing, and chart controllers.
- Agent / agent-runtime 语义布局: 整理 agent 功能模块,拆分 provider 设置契约,模块化浏览器桥,并将搜索实现与 Pi 运行驱动移入
impl/。 - Agent and agent-runtime layout: Organizes agent feature modules, separates provider settings contracts, modularizes the browser bridge, and moves search implementations and the Pi run driver into
impl/. - 价格刻度类型词汇统一: 统一价格刻度类型词汇。
- Price scale vocabulary: Centralizes price scale type vocabulary.
- 绘图标签键不变量归入领域: 将绘图标签键不变量移入领域,并将会话浮层更名为
DrawingSessionOverlay。 - Drawing label key invariant: Moves the drawing label key invariant into the domain and renames the session overlay to
DrawingSessionOverlay. - 导入别名统一: 以
@别名替换相对../..导入。 - Import alias cleanup: Replaces relative
../..imports with@aliases.
⚡ 性能 / Performance
- WebGPU 线条几何缓存: 对未变化的线条跳过顶点重建与上传数据比较,同时在几何、DPR 或垂直线滚动位置变化时保留像素对齐重建。
- WebGPU line geometry cache: Skips rebuilding wide-line vertices and upload-data comparison for unchanged strips while preserving pixel-aligned rebuilds when geometry, DPR, or vertical-line scroll position changes.
- WebGPU 渲染路径减负: 按 float32 位比较已上传线条几何以避免哈希碰撞,并将延迟缓冲回收批量放到队列完成之后。
- WebGPU render path: Compares uploaded strip geometry by float32 bits and batches deferred buffer retirement behind queue completion.
- K 线帧准备减负: 复用物理像素坐标,并在标记不可见时跳过量价分析。
- Candle frame preparation: Reuses physical pixel coordinates and avoids volume-price analysis when markers cannot be visible.
- 日期与提示框复用: 跨渲染帧复用日历索引,并跳过高频交互更新中冗余的提示框显示写入。
- Date and tooltip reuse: Reuses calendar indexes across render frames and skips redundant tooltip display writes during high-frequency interaction.
🔧 工程 / Engineering
- 样式 Token 调整: 将涨/跌 K 线配色调整为
#089981/#f23645。 - Style tokens: Recolors candle up/down to
#089981/#f23645. - 清理失效 lint 配置: 删除已失效的 ESLint、OxLint 与 Prettier 配置。
- Dead lint configs: Drops dead ESLint, OxLint, and Prettier configs.
- Pi 升级至 0.87.1: 将
pi-agent-core、pi-ai与pi-session-backend-sqlite-node升级至 0.87.1。 - Pi 0.87.1: Bumps
pi-agent-core,pi-ai, andpi-session-backend-sqlite-nodeto 0.87.1. - CI 触发范围: 将 library CI 的 push 触发限制在
main。 - CI push scope: Restricts the library CI push trigger to
main. - CodeGraph 使用规范: 强化 CodeGraph 使用规范并调整 MCP 服务配置。
- CodeGraph rules: Hardens the CodeGraph usage rules and adjusts the MCP server config.
- 测试夹具统一: 通过共享工厂构建轴刻度窗格夹具,并在脱敏测试中覆盖 Web 搜索密钥保存路径。
- Shared test fixtures: Builds the axis tick pane fixture via a shared factory and covers the web-search key save path in redaction tests.
📚 文档 / Documentation
- 绘图子模块 README: 为绘图子模块补充模块级 README。
- Drawing submodule READMEs: Adds module-level READMEs for the drawing submodules.
- 性能数据更新: 更新 README 中 200 Hz 独立显卡下的性能数据。
- Performance data refresh: Refreshes the README performance data on a 200 Hz discrete GPU.
- AGENT.md 更新: 更新 Agent 指南。
- AGENT.md refresh: Refreshes the agent guide.