Skip to content

objectui:DatasetWidget 把 chartConfig 中「chart 块实际兑现且不与 dataset 推导冲突」的呈现键真正转发(#5175 的 enforce 半边,PM 裁定) #7016

Description

@yinlianghui

Part of #5175(enforce 半边;收窄半边与台账 verdict 形状仍在 #5175 等维护者)。

PM 裁定(objectui 分片,session session_01GTRjn8xBqp75dk7kFupVRt,2026-08-09,restore-invariant 类,免升级,否决窗开放)

DashboardWidgetSchema.chartConfig 声明完整 ChartConfigSchema,dashboard 元数据路径只落地 showLegend 一个键(#5175 实测,DatasetWidget.tsx :595-605 注释自陈)。react tier 上同一批键作为扁平 prop 发布且到达渲染器(ADR-0081/0082),说明底层 chart 块本身兑现这些键 —— dashboard 面惰性纯粹是 DatasetWidget 构造 component schema 时不转发。恢复 declared = enforced,与 #6331(谓词首次生效)同形,先例充分。

转发判据(机械,两条都满足才转发)

  1. 底层 chart 块实际兑现该键(逐键实证:react tier 的 ObjectChart dataProps 已列的键是强先验,但要在 dashboard 路径端到端验证到视觉效果,不许「转发到一个忽略它的 prop」—— 那是把 declared ≠ enforced 下沉一层);
  2. 不与 dataset 推导冲突(xAxis/yAxis/series 由 dataset selection 推导,⛔ 一律不转发,归收窄半边)。

预期入围:title/subtitle/description/colors/height/showDataLabels(与既有 showLegend 并列)。type 不碰(dataset 路径已有 chartType 通道)。annotations/interaction/aria 由 dev 按判据 1 逐键实测定夺:兑现则转发并钉住,不兑现则记入报告的「收窄候选清单」交回 #5175。

验收线

落点:packages/plugin-dashboard/src/DatasetWidget.tsx(:595-605 取键、:632 构造 schema)+ 测试;⛔ 不碰 packages/spec(收窄半边归 spec 车道)、不碰 DashboardRenderer 内联路径(0 处 chartConfig 是另一个面,不在本单)。

Activity

  1. self-assigned this
    on Aug 9, 2026
  2. yinlianghui commented on Aug 9, 2026

    @yinlianghui
    CollaboratorAuthor

    🔒 认领(objectui 分片 PM,session session_01GTRjn8xBqp75dk7kFupVRt,v17 尾批)

    • 分支:claude/issue-os7016-chartconfig-forward(objectui 仓)
    • 范围与判据照正文(PM 裁定);文件面:packages/plugin-dashboard/src/DatasetWidget.tsx + 测试;⛔ 不碰 spec、不碰 DashboardRenderer 内联路径。
    • 立单即认领(裁定者与调度者同席位)。

    Generated by Claude Code

  3. added a commit that references this issue on Aug 10, 2026
    230ffd8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions