Skip to content

Retire dashboard chartConfig.type / xAxis / yAxis: spec 17.5.0 refuses them and it blocks cloud's framework re-cut #1964

Description

@hotlong

Source

Floor 1 of the cloud framework re-cut (objectstack-ai/cloud#2332, PR objectstack-ai/cloud#2423). The maintainer's ruling recorded on objectstack-ai/cloud#2332 on 2026-09-28 (verbatim) is 「改 HotCRM 再抬版本(推荐)」: fix HotCRM, then move cloud's .hotcrm-sha. Tracked under epic objectstack-ai/cloud#2440.

What breaks

At objectstack main (spec 17.5.0), MetadataPlugin._parseAndRegisterArtifact refuses retired dashboard keys:

`dashboard.widgets[].chartConfig.type`  was removed in @objectstack/spec 17.5.0
`dashboard.widgets[].chartConfig.xAxis` was removed in @objectstack/spec 17.5.0
`dashboard.widgets[].chartConfig.yAxis` was removed in @objectstack/spec 17.5.0

Because of that, cloud's blocking gate apps/objectos-ee test:hotcrm-acceptance fails: serve exits during boot with code 1 against the pinned hotcrm 427c98535de3. That is the only red check on PR objectstack-ai/cloud#2423.

Measured on hotcrm main 2f7b2326 (2026-09-28)

There are 16 chartConfig: { blocks, all in dashboard sources:

file blocks
src/sales/dashboards/activity.dashboard.ts 4
src/sales/dashboards/crm.dashboard.ts 3
src/sales/dashboards/sales.dashboard.ts 4
src/service/dashboards/service.dashboard.ts 5

Command: git grep -n "chartConfig: {" origin/main -- src/. The @objectstack/spec dependency is still 17.4.0.

The dev on objectstack-ai/cloud#2332 probed a hosted tenant kernel at the new pin with this artifact. It registered all 5 dashboards, so the refusal sits on the EE composed-artifact boot path only.

Direction

Remove the three retired keys, and any chartConfig block that is left empty or inert, from those widgets. Verify against the spec 17.5.0 dashboard schema at objectstack main which chartConfig keys survive; do not assume. Dataset-bound widgets already take their chart type from the widget itself (see the comment in src/sales/dashboards/shared-widgets.ts). Keep what each dashboard shows unchanged. Do not route around a platform gap inside hotcrm: if a removed key carried behaviour that nothing else can express, stop and report it.

Acceptance

  1. git grep -nE "chartConfig" -- src/ shows none of type / xAxis / yAxis under chartConfig.
  2. hotcrm's own build and tests pass, and the changeset gate is satisfied.
  3. The composed hotcrm artifact boots on objectstack main. The acceptance proof is cloud's test:hotcrm-acceptance passing once cloud's .hotcrm-sha moves to the merge commit, which happens on objectstack-ai/cloud#2332.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions