Skip to content

spec(types): ObjectChartSchema.chartType declares 8 chart families on both faces while the installed spec's ChartTypeSchema declares more and plugin-charts draws them; align the face to the spec (preparation for objectui#11466) #11513

Description

@objectstack-fleet

This card carries objectui#11466's report Q1 (object-chart half). It is a child of objectui#11466, filed with its domain:spec and priority:p2. objectui#11466 (V1, PR #11512) is pm:blocked until this card and its siblings land.

Filing-gate category: ① a contract gap with a named landing point and a measured reach.

  • Reach, measured by objectui#11466's dev (report 5962392382, open_questions[0]):
    • the dashboard's object-chart producer emits families the face does not declare (funnel, treemap, sankey, combo and radar among them);
    • plugin-charts draws them;
    • under V1 the producer cannot name ObjectChartSchema with no cast, so V1 cannot land.
  • Reader: the domain:spec @ objectui seat (objectui#10217) dispatches it, and an os-dev executes it.

What the seat read (objectui origin/main, objectstack main 535d1d25)

  • TS face: packages/types/src/objectql.ts (about :5301) declares chartType?: 'bar' | 'column' | 'horizontal-bar' | 'line' | 'area' | 'pie' | 'donut' | 'scatter';, with the zod mirror in packages/types/src/zod/objectql.zod.ts.
  • The spec: packages/spec/src/ui/chart.zod.ts's ChartTypeSchema on objectstack main lists bar, horizontal-bar, column, line, area, pie, donut, funnel, scatter, treemap, sankey, combo, gauge, solid-gauge, metric, kpi and more. ⛔ The installed version (@objectstack/spec ^17.5.0 / 17.6.0) is the one that binds. The claim re-reads it.

Seat ruling: A (non-escalation; governing text cited)

Governing text: the pm-dispatch skill's 〈升级与决策〉, 「协议为基准:spec 与代码不一致默认改代码对齐」, and its 基本裁决原则, 「spec 声明 > 实现 > 文档面」.

  • ObjectChartSchema.chartType declares the installed spec's chart families that plugin-charts draws, on both faces, by reference to the spec's ChartTypeSchema where the sets coincide.
  • Measure first: for each spec family, does plugin-charts draw it, measured through the real renderer with a control?
    • A spec family plugin-charts does not draw stays undeclared, and is reported as a finding with its family name. ⛔ No declaration of a family nothing draws.
  • Rejected options:
    • B (keep the face at 8, and have the dashboard map or refuse) drops spec-legal families.
    • C (a second chart node) forks the contract.
  • Clause-②: yes (widening) is stated at claim.

Constraints

Dedupe

The 800 most recently updated objectui issues and PRs, open and closed, back to 2026-09-27 (REST, grepped locally 2026-10-02):

Dedupe words: ObjectChartSchema chartType spec families · object-chart funnel treemap sankey undeclared · chartType align ChartTypeSchema


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

domain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lanepriority:p2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions