Skip to content

feat(flow): complete Dify node design system - #2

Open
1012839419a-alt wants to merge 1 commit into
codex/local-codex-agent-runtimefrom
codex/dify-node-design-system
Open

feat(flow): complete Dify node design system#2
1012839419a-alt wants to merge 1 commit into
codex/local-codex-agent-runtimefrom
codex/dify-node-design-system

Conversation

@1012839419a-alt

@1012839419a-alt 1012839419a-alt commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replaces the workflow-node visual monolith with composable node primitives, fixed 240px-width geometry, status/package-state styling, Lucide icon lookup, and typed IN/OUT interface rows.
  • Shares workflow-node geometry between rendering, pre-measure placement, collision detection, and layout; canvas density now uses one low/mid/high contract.
  • Moves image-workspace actions and map/runtime/relationship detail from the canvas node into the Inspector, preserving the existing Image Studio query parameters.
  • Adds node-design regression assertions and a Canvas Playwright scenario covering geometry, handles, density, keyboard port menus, Inspector image actions, and light/dark screenshots.

Deliberate non-goals

  • No change to workflow semantics, canonical/runtime data, port direction, or graph layout direction.
  • No app-wide component-library replacement or redesign of other node types.
  • No inline image authoring, asset gallery, full prompts, debug values, or mini-networks inside workflow nodes; those details remain in the Inspector/workspace.

Verification

Recorded in the implementation spec on 2026-08-28:

  • npm --prefix frontend run lint — passed with 0 errors (2 existing warnings).
  • npm --prefix frontend run build — passed, including TypeScript and SSR/static generation.
  • npm --prefix frontend run check:workflow — passed; npm --prefix frontend run check:workflow-image — 9/9 passed.
  • npm --prefix frontend run test:smoke -- workflow-node-design.spec.mjs — passed against a fresh frontend dev server at 127.0.0.1:3001.
  • Manual Canvas check covered light/dark surfaces, fixed 240px nodes, visible port metadata, Lucide icons, and port anchors.

Review order

  1. frontend/lib/flow/node-geometry.ts, then its consumers in collision, layout, store, and to-react-flow.
  2. frontend/components/flow/nodes/workflow-node.tsx for contract resolution and node composition.
  3. frontend/components/flow/nodes/workflow-node-primitives.tsx for handle semantics, keyboard menu access, and remeasurement.
  4. frontend/components/flow/workflow-canvas-surface.tsx and frontend/app/flow-canvas.css for density and composable visual states.
  5. frontend/components/flow/inspector.tsx, then icons and regression coverage.

Stack

This PR is stacked directly on PR 2233admin#80: its parent is 7c2d19790890da5835292b82f1e1607766d6748b, and this change is ef80e8f3a311ec46ed6f54544e74156c4417d834. Review the delta against that parent; land or rebase this PR after 2233admin#80.

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