Skip to content

Support Gantt intervals and Y-axis range slider metadata - #40

Merged
ecarreras merged 1 commit into
mainfrom
feat/graph-gantt-y-range
Sep 24, 2026
Merged

ecarreras merged 1 commit into
mainfrom
feat/graph-gantt-y-range

Conversation

@mguellsegarra

@mguellsegarra mguellsegarra commented Sep 23, 2026 •

Copy link
Copy Markdown
Member

Summary

Extend the graph data contract with two XML capabilities:

  • y_range="slider" returns vertical range metadata for line and bar graphs while preserving the existing line-axis properties.
  • graph type="gantt" returns one start/end interval per record, including record identity and optional grouping labels. Records with the same task name remain separate intervals.

Existing graph definitions keep their current output when neither option is used. The graph processing API remains independent of the client renderer.

Validation

  • 142 Mamba examples pass, including legacy graph output, slider metadata, selection and relational labels, duplicate task names, empty results and invalid Gantt definitions.
  • Python compilation and git diff --check pass.

Related to gisce/webclient#1110 and gisce/webclient#1240.

Dependencies

This PR has no upstream PR dependency and can merge independently. The ERP and client changes for gisce/webclient#1110 and gisce/webclient#1240 must consume a release containing this contract.

@mguellsegarra mguellsegarra added the minor Create a Minor version label Sep 23, 2026
@ecarreras
ecarreras requested a review from giscebot September 24, 2026 07:46

@giscebot giscebot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the public graph-processing contract and the related webclient consumers.

  • Gantt parsing enforces exactly one X field plus one start and one end field, preserves record identity, and keeps duplicate task names as separate intervals.
  • Optional selection/many2one grouping labels and empty/ungrouped results are covered.
  • y_range="slider" is opt-in and preserves the existing line yAxisProps payload while adding the renderer-facing metadata for line/bar graphs.
  • No dependency, schema, migration, or deployment coupling is introduced in this package.
  • Validation: 142 Mamba examples pass on both Python 2.7 and Python 3.11; git diff --check passes.

@ecarreras
ecarreras merged commit 81fb5e3 into main Sep 24, 2026
1 check passed
@ecarreras
ecarreras deleted the feat/graph-gantt-y-range branch September 24, 2026 07:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor Create a Minor version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants