Skip to content

Render branch diffs and a detail panel with field-level changes - #3

Open
andredlng wants to merge 4 commits into
mainfrom
semantic-change-requests
Open

Render branch diffs and a detail panel with field-level changes#3
andredlng wants to merge 4 commits into
mainfrom
semantic-change-requests

Conversation

@andredlng

Copy link
Copy Markdown
Contributor

Summary

Diff rendering for graphs served from a semantic branch, plus the detail panel that explains a change.

  • Nodes, properties and edges carry an add | modify | remove mark: coloured ring and corner badge on concept cards, chips on pill nodes, dashed coloured edges. A changes only toolbar toggle keeps changed elements and their direct neighbours.
  • The detail panel opens beside the canvas (not over it) for nodes, properties and edges. With diffDetail it renders field-by-field before/after, three-way against a base when one is given, plus evidence, consumers and overlap sections when the host supplies them.
  • New init(options) entry point for hosts that fetch the graph themselves: container, graphData, changesOnly, focus, onSelect (return true to claim the click and suppress the built-in panel); returns { update }. The auto-mount path is unchanged and opts into the filter with data-changes-only="true".
  • Leftovers of an earlier in-bundle review panel removed; README.md documents the graph contract.

Used by datamesh-manager/entropy-data (semantic change requests).

Remove the committed build artifact under src/main/resources, the unused review-panel styles, the
RelationshipChangesSection that nothing fed, the review.* locale tree and other unreferenced keys,
and un-export DETAIL_PANEL_SHARE. Move diff.base under detail.diff where the code reads it, and add
the detail.shared key both locales lacked.

changesOnly now defaults to off; the auto-mount opts in via data-changes-only="true" and init()
keeps its explicit option. init() returns an update() that merges graphData, focus, changesOnly and
onSelect before re-rendering.

Replace the stale sample-review.json with a fixture on the current graph contract and let
index.html load it via ?sample=review.
@andredlng andredlng self-assigned this Sep 3, 2026
The evidence chip is gone from the node (the detail panel still says when a
change cites nothing), and the remaining warnings sit after the name with
the diff word.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant