Skip to content

fix: stabilize node flows and dashboard tabs - #2979

Merged
numnx merged 1 commit into
devfrom
fix/node-page-stability
Jul 12, 2026
Merged

fix: stabilize node flows and dashboard tabs#2979
numnx merged 1 commit into
devfrom
fix/node-page-stability

Conversation

@numnx

@numnx numnx commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

Summary

Fixes the Nodes page validation failure and intermittent dashboard freezes, especially when several dashboard tabs are open or a tab has spent time in the background.

Root causes

  • Legacy canvas starter nodes were imported with obsolete node types and port handles, producing the three graph validation errors.
  • The node-definition detail endpoint returned a flattened catalog summary while the inspector expected the full nested manifest, which could trigger a render failure loop.
  • Canvas dragging propagated a full-page state update on every pointer event.
  • Background tabs retained WebGL animation, realtime sockets, and fallback polling, allowing resource contention to accumulate across tabs.
  • Overlapping asynchronous flow loads and validations could apply stale results after navigation or project changes.

Changes

  • Migrate legacy canvas node types, handles, and safe metadata to current registered definitions.
  • Return the full node manifest from the detail endpoint while preserving the compact catalog response.
  • Make the inspector tolerant of older flattened responses.
  • Keep drag previews local, coalesce pointer movement with animation frames, and commit graph state on release.
  • Suspend animated backgrounds on the Nodes page and release WebGL/realtime/polling resources while tabs are hidden.
  • Guard node-flow actions and validation against stale or unmounted requests.
  • Document node-flow compatibility and dashboard background-tab behavior.
  • Add backend and dashboard regression coverage for each failure mode.

Validation

  • pnpm run lint
  • pnpm run test:backend — 5,451 passed, 7 skipped
  • pnpm run test:dashboard — 2,149 passed, 2 skipped
  • pnpm run build
  • Feature-enabled production build with Nodes, node-flow backend, and automation security enabled
  • Live three-tab dashboard check: no page errors, no retained WebGL canvases, and responsive tab switching
  • Live add-node, drag, navigate away, and return check: responsive with no page errors

Risk and rollback

Risk is localized to node-flow serialization/detail responses and dashboard resource lifecycle behavior. The catalog list contract remains unchanged, and the inspector retains compatibility with flattened detail data. Roll back this commit if node-definition consumers or tab reconnection behavior regress.

@numnx
numnx marked this pull request as ready for review July 12, 2026 19:11
@numnx
numnx merged commit 4e3495c into dev Jul 12, 2026
40 checks passed
@numnx
numnx deleted the fix/node-page-stability branch July 12, 2026 19:17
@numnx numnx mentioned this pull request Jul 14, 2026
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