跳到正文

v0.10.3

相比 v0.10.2 的变更

新功能

  • 多日分时协议: 新增 fetchTimeShareRange、多日请求/响应 DTO 与 TimeShareRangeCapability,支持按截止交易日和交易日数量请求分时数据。
  • 多日分时存储: 新增不可变 TimeShareRangeStore、TimeShareDay 和 TimeShareRange,按交易日保留 tradingDate、preClose 和分时点,并为现有渲染链派生扁平数据。
  • 分时范围查询能力: Provider、数据源和品种描述可声明 timeShareRange.maxTradingDays,前端可据此决定是否提供多日分时入口。
  • 多源 Mock 品种目录: Mock Provider 提供可搜索的品种数据,覆盖统一品种模型和能力声明。
  • 比较图例品种名称: 比较视图图例显示品种代码和名称,例如 601360 三六零,并将名称暴露给外部 legend slot。

Bug 修复

  • 分时状态与重绘同步: 修复分时数据、昨收基准与图表重绘没有同步更新的问题。
  • 分时内联数据基准: TimeShareBuffer.setInlineData 现在以数据和昨收作为同一输入写入,避免沿用上一次范围数据的昨收。
  • 比较视图 K 线叠加元素: 比较视图隐藏最新价虚线以及 O/H/L/C/Vol 图例行,避免为归一化比较序列展示无意义的主 K 线数据。
  • Vue 库构建外部依赖: 使用 Vite 8 的 rolldownOptions.external 标记 Core 和 Vue 依赖,修复 Rolldown 解析 Core market-data 子路径失败。
  • 协议 Provider 测试修复: 修复仍引用已删除 MarketDataV1Transport 类型的 Provider 测试。

架构与重构

  • 移除 Legacy Fetcher 兼容层: 图表运行时统一通过 MarketDataProvider 和 SourceRouter 加载 K 线与分时数据;删除旧 registry、router、Legacy Adapter 及 Fetcher 实现。
  • 破坏性 API 变更: 移除 dataFetcher、setDataFetcher、routerDataFetcher 及相关 Fetcher 导出;迁移至 MarketDataProvider。
  • 数据状态原子快照: 活动 Buffer 切换通过 applyActiveBufferSnapshot 一次发布 key、数据、loading、范围和昨收,消除字段级写入造成的短暂状态不一致。
  • Buffer 契约收敛: 移除共享 DataBufferLike 的 setInlineData,由 K 线与分时 Buffer 分别定义各自的结构化写入契约;无活动 Buffer 时使用显式空 key 快照。
  • 协议去版本化命名: 将 Transport、Provider Factory 和拒绝码等类型/工厂从 V1 命名迁移为通用命名;V1 仅保留给 wire metadata、版本和 /api/v1 路径。
  • 复用领域能力模型: 协议层复用领域 InstrumentCapabilities 与相关能力类型,减少结构重复和跨层转换。
  • 框架绑定清理: Vue、React、Angular、Web Component、Electron 与 AI runtime 移除旧 Fetcher 控制器字段、mock 和导出,改为与统一 Provider 契约一致。
  • 最新价虚线模式投影: 最新价虚线注册为 @Indicator,由 dataViews: ['kline'] 和系统模式实例统一控制图层可见性。

文档

  • 多日分时与状态设计文档: 新增多日分时存储、分时 StateKernel 归属和旧 Fetcher 移除的设计决策文档。
  • Provider 文档与跨框架兼容性: 更新 MarketDataProvider、数据包 README、主 README、属性片段和跨框架兼容性说明,移除旧 Fetcher 配置。
  • 代码评审技能: 新增覆盖状态一致性、边界职责、模型契约和变更传播的代码评审准则。

本页内容