Skip to content

Conversation

@christian-byrne
Copy link
Contributor

@christian-byrne christian-byrne commented Oct 26, 2025

Summary

Use semantic tokens instead of colors

┆Issue is synchronized with this Notion page by Unito

@github-actions
Copy link

github-actions bot commented Oct 26, 2025

🎭 Playwright Test Results

⚠️ Tests passed with flaky tests

⏰ Completed at: 11/05/2025, 09:30:46 PM UTC

📈 Summary

  • Total Tests: 498
  • Passed: 464 ✅
  • Failed: 0
  • Flaky: 4 ⚠️
  • Skipped: 30 ⏭️

📊 Test Reports by Browser

  • chromium: View Report • ✅ 455 / ❌ 0 / ⚠️ 4 / ⏭️ 30
  • chromium-2x: View Report • ✅ 2 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • chromium-0.5x: View Report • ✅ 1 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • mobile-chrome: View Report • ✅ 6 / ❌ 0 / ⚠️ 0 / ⏭️ 0

🎉 Click on the links above to view detailed test results for each browser configuration.

@github-actions
Copy link

github-actions bot commented Oct 26, 2025

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 11/05/2025, 09:18:45 PM UTC

🔗 Links


🎉 Your Storybook is ready for review!

@github-actions
Copy link

github-actions bot commented Oct 26, 2025

Bundle Size Report

Summary

  • Raw size: 12.2 MB baseline 12.2 MB — 🔴 +1 B
  • Gzip: 2.49 MB baseline 2.49 MB — 🟢 -36 B
  • Brotli: 1.96 MB baseline 1.96 MB — 🟢 -118 B
  • Bundles: 58 current • 58 baseline • 13 added / 13 removed

Category Glance
App Entry Points 🔴 +1 B (3.25 MB) · Vendor & Third-Party ⚪ 0 B (5.32 MB) · Other ⚪ 0 B (2.55 MB) · Graph Workspace ⚪ 0 B (792 kB) · Panels & Settings ⚪ 0 B (293 kB) · UI Components ⚪ 0 B (12.6 kB) · + 3 more

Per-category breakdown
App Entry Points — 3.25 MB (baseline 3.25 MB) • 🔴 +1 B

Main entry bundles and manifests

File Before After Δ Raw Δ Gzip Δ Brotli
assets/index-BOeRJUEL.js (new) 2.86 MB 🔴 +2.86 MB 🔴 +593 kB 🔴 +449 kB
assets/index-7wCQ9CwS.js (removed) 2.86 MB 🟢 -2.86 MB 🟢 -593 kB 🟢 -449 kB
assets/index-DIDA-NHi.js (new) 382 kB 🔴 +382 kB 🔴 +76.6 kB 🔴 +62.1 kB
assets/index-DrUzIrQ1.js (removed) 382 kB 🟢 -382 kB 🟢 -76.6 kB 🟢 -62.1 kB
assets/index-CKS04YK4.js (removed) 1.75 kB 🟢 -1.75 kB 🟢 -579 B 🟢 -483 B
assets/index-l4sfQP7O.js (new) 1.75 kB 🔴 +1.75 kB 🔴 +577 B 🔴 +484 B

Status: 3 added / 3 removed

Graph Workspace — 792 kB (baseline 792 kB) • ⚪ 0 B

Graph editor runtime, canvas, workflow orchestration

File Before After Δ Raw Δ Gzip Δ Brotli
assets/GraphView-BNarRiLq.js (new) 792 kB 🔴 +792 kB 🔴 +155 kB 🔴 +119 kB
assets/GraphView-TEscGQ2j.js (removed) 792 kB 🟢 -792 kB 🟢 -155 kB 🟢 -119 kB

Status: 1 added / 1 removed

Views & Navigation — 8.18 kB (baseline 8.18 kB) • ⚪ 0 B

Top-level views, pages, and routed surfaces

File Before After Δ Raw Δ Gzip Δ Brotli
assets/UserSelectView-BjZ2tNEu.js (new) 8.18 kB 🔴 +8.18 kB 🔴 +2.48 kB 🔴 +2.17 kB
assets/UserSelectView-DsbIwbPh.js (removed) 8.18 kB 🟢 -8.18 kB 🟢 -2.48 kB 🟢 -2.18 kB

Status: 1 added / 1 removed

Panels & Settings — 293 kB (baseline 293 kB) • ⚪ 0 B

Configuration panels, inspectors, and settings screens

File Before After Δ Raw Δ Gzip Δ Brotli
assets/CreditsPanel-60BvcDKu.js (removed) 23 kB 🟢 -23 kB 🟢 -5.48 kB 🟢 -4.8 kB
assets/CreditsPanel-B2GRjb0-.js (new) 23 kB 🔴 +23 kB 🔴 +5.48 kB 🔴 +4.79 kB
assets/KeybindingPanel-CJGVxiy-.js (removed) 15.3 kB 🟢 -15.3 kB 🟢 -3.78 kB 🟢 -3.33 kB
assets/KeybindingPanel-msQZIruI.js (new) 15.3 kB 🔴 +15.3 kB 🔴 +3.77 kB 🔴 +3.32 kB
assets/ExtensionPanel-C_xZhiut.js (removed) 12.1 kB 🟢 -12.1 kB 🟢 -2.83 kB 🟢 -2.49 kB
assets/ExtensionPanel-D7bCgkAg.js (new) 12.1 kB 🔴 +12.1 kB 🔴 +2.84 kB 🔴 +2.5 kB
assets/AboutPanel-B3GU4t35.js (new) 10.3 kB 🔴 +10.3 kB 🔴 +2.67 kB 🔴 +2.35 kB
assets/AboutPanel-DPOey9iM.js (removed) 10.3 kB 🟢 -10.3 kB 🟢 -2.67 kB 🟢 -2.34 kB
assets/ServerConfigPanel-Bv9ymZei.js (new) 8.23 kB 🔴 +8.23 kB 🔴 +2.17 kB 🔴 +1.91 kB
assets/ServerConfigPanel-yCbLoGTr.js (removed) 8.23 kB 🟢 -8.23 kB 🟢 -2.17 kB 🟢 -1.91 kB
assets/UserPanel-BUfeKW1-.js (removed) 7.94 kB 🟢 -7.94 kB 🟢 -2.07 kB 🟢 -1.8 kB
assets/UserPanel-BZajpjms.js (new) 7.94 kB 🔴 +7.94 kB 🔴 +2.07 kB 🔴 +1.8 kB
assets/settings-0O6mq5to.js 24.3 kB 24.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-BYaBy7dC.js 20.4 kB 20.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-C3vygQN4.js 25.7 kB 25.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CbKYXyH0.js 22.7 kB 22.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CCholIsI.js 25 kB 25 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DFX7vRkK.js 19.8 kB 19.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-INJLrcmT.js 31.3 kB 31.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-iR6BKRXe.js 23.7 kB 23.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-YjQmudNE.js 23.5 kB 23.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 6 added / 6 removed

UI Components — 12.6 kB (baseline 12.6 kB) • ⚪ 0 B

Reusable component library chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/ComfyQueueButton-BkTG07Hk.js (new) 11.3 kB 🔴 +11.3 kB 🔴 +2.83 kB 🔴 +2.5 kB
assets/ComfyQueueButton-DLT-KddK.js (removed) 11.3 kB 🟢 -11.3 kB 🟢 -2.83 kB 🟢 -2.49 kB
assets/UserAvatar.vue_vue_type_script_setup_true_lang-D2s8tnS2.js 1.26 kB 1.26 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 1 added / 1 removed

Data & Services — 10.4 kB (baseline 10.4 kB) • ⚪ 0 B

Stores, services, APIs, and repositories

File Before After Δ Raw Δ Gzip Δ Brotli
assets/keybindingService-B5-p9Noa.js (removed) 7.6 kB 🟢 -7.6 kB 🟢 -1.84 kB 🟢 -1.59 kB
assets/keybindingService-QOKMnlKq.js (new) 7.6 kB 🔴 +7.6 kB 🔴 +1.84 kB 🔴 +1.58 kB
assets/serverConfigStore-C6-plV2F.js 2.79 kB 2.79 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 1 added / 1 removed

Utilities & Hooks — 1.07 kB (baseline 1.07 kB) • ⚪ 0 B

Helpers, composables, and utility bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/mathUtil-CTARWQ-l.js 1.07 kB 1.07 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
Vendor & Third-Party — 5.32 MB (baseline 5.32 MB) • ⚪ 0 B

External libraries and shared vendor chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/vendor-other-CI2CU2ff.js 3.22 MB 3.22 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-primevue-PESgPnbc.js 517 B 517 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-three-JDoAqkQm.js 1.37 MB 1.37 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-tiptap-BgnRckdA.js 232 kB 232 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-vue-C1cscJ7w.js 92.6 kB 92.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-xterm-BZLod3g9.js 407 kB 407 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
Other — 2.55 MB (baseline 2.55 MB) • ⚪ 0 B

Bundles that do not match a named category

File Before After Δ Raw Δ Gzip Δ Brotli
assets/commands-B2KZRBmX.js 15.1 kB 15.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-Bw-ckyga.js 13.9 kB 13.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-C_NmM85I.js 13.8 kB 13.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CuozCW4W.js 14 kB 14 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DGfVUJCR.js 16.2 kB 16.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-dOJNDogK.js 14.5 kB 14.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DwiE551e.js 14.7 kB 14.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-Fw7mvqSy.js 13.1 kB 13.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-FXnO1W4Q.js 13.2 kB 13.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-B28vuueQ.js 58.7 kB 58.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-B5DMAz5p.js 76.3 kB 76.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-B9oeRB3u.js 66.2 kB 66.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-BfxLm2q9.js 68.4 kB 68.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-Bqw7zi8p.js 92.9 kB 92.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-CxXcIMmb.js 80.3 kB 80.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DbrkzQIr.js 70.6 kB 70.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DwpdJL5U.js 67.5 kB 67.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-mC3TQk_1.js 59.4 kB 59.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-3I1vPgv4.js 181 kB 181 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-B2huPGKQ.js 190 kB 190 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-BWugyUzd.js 215 kB 215 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-bXqu6Stq.js 194 kB 194 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CtB2M3sY.js 229 kB 229 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-D-rCrn-T.js 200 kB 200 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-D38DSnl1.js 179 kB 179 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DAsU52ON.js 192 kB 192 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DnGONaA_.js 196 kB 196 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

christian-byrne added a commit that referenced this pull request Oct 27, 2025
…6320)

## Summary

Fixes `trackTemplate` calls to use raw template ID instead of translated
workflow name for analytics tracking.

## Problem

When users load templates with non-English locale, the `workflow_name`
field was being tracked in their language (e.g., "默认工作流" for Chinese
users) instead of English. This makes statistical analysis difficult.

## Changes

- Updated both `trackTemplate` calls in `useTemplateWorkflows.ts` to use
raw `id` instead of translated `workflowName`
- The translated name is still used for display purposes in
`loadGraphData`

**Before:**
```typescript
useTelemetry()?.trackTemplate({
  workflow_name: workflowName, // Could be "默认工作流"
  template_source: sourceModule
})
```

**After:**
```typescript
useTelemetry()?.trackTemplate({
  workflow_name: id, // Always "default"
  template_source: sourceModule
})
```

## Testing

- [x] Type checking passes
- [x] Verified translated names still used for display

## Related

Part of comprehensive i18n audit for telemetry tracking. Related to
template metadata English tracking in PR #6304.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-6320-bugfix-use-raw-template-ID-for-workflow_name-in-telemetry-tracking-2996d73d365081d8aef3fa2529a10247)
by [Unito](https://www.unito.io)
github-actions bot pushed a commit that referenced this pull request Oct 27, 2025
…6320)

## Summary

Fixes `trackTemplate` calls to use raw template ID instead of translated
workflow name for analytics tracking.

## Problem

When users load templates with non-English locale, the `workflow_name`
field was being tracked in their language (e.g., "默认工作流" for Chinese
users) instead of English. This makes statistical analysis difficult.

## Changes

- Updated both `trackTemplate` calls in `useTemplateWorkflows.ts` to use
raw `id` instead of translated `workflowName`
- The translated name is still used for display purposes in
`loadGraphData`

**Before:**
```typescript
useTelemetry()?.trackTemplate({
  workflow_name: workflowName, // Could be "默认工作流"
  template_source: sourceModule
})
```

**After:**
```typescript
useTelemetry()?.trackTemplate({
  workflow_name: id, // Always "default"
  template_source: sourceModule
})
```

## Testing

- [x] Type checking passes
- [x] Verified translated names still used for display

## Related

Part of comprehensive i18n audit for telemetry tracking. Related to
template metadata English tracking in PR #6304.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-6320-bugfix-use-raw-template-ID-for-workflow_name-in-telemetry-tracking-2996d73d365081d8aef3fa2529a10247)
by [Unito](https://www.unito.io)
christian-byrne and others added 2 commits October 26, 2025 22:13
Complete the semantic token migration by updating final hard-coded colors
in widget components to use design system tokens:

- MultiSelect.vue: text-neutral-400 → text-secondary
- Ensure consistent text-primary/text-secondary usage across all widgets
- Remove hard-coded zinc, neutral, and other color values

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Complete the semantic token migration by updating final hard-coded colors
in widget components to use design system tokens:

- FormSelectButton.vue: use text-primary/text-secondary consistently
- FormDropdownMenuFilter.vue: use text-secondary for default text
- FormDropdownMenuItem.vue: use text-secondary for metadata
- AudioPreviewPlayer.vue: use text-secondary for icons
- Remove hard-coded zinc, neutral, and other color values from vueNodes

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@christian-byrne christian-byrne force-pushed the vue-node/style/improvements branch from 033c50e to 20015cc Compare October 27, 2025 05:13
@github-actions
Copy link

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 10/27/2025, 05:15:19 AM UTC

🔗 Links


🎉 Your Storybook is ready for review!

Update test expectations to use semantic color tokens instead of hard-coded classes:
- bg-white → bg-interface-menu-component-surface-selected
- text-neutral-900 → text-primary/text-secondary
- hover:bg-zinc-200/50 → hover:bg-interface-menu-component-surface-hovered
Update test expectations to use semantic color tokens instead of hard-coded classes:
- bg-white → bg-interface-menu-component-surface-selected (25 instances)
- text-neutral-900 → text-primary (3 instances)
- hover:bg-zinc-200/50 → hover:bg-interface-menu-component-surface-hovered (2 instances)
@christian-byrne christian-byrne marked this pull request as ready for review October 27, 2025 06:46
@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Oct 27, 2025
@viva-jinyi
Copy link
Member

LGTM

viva-jinyi
viva-jinyi previously approved these changes Oct 27, 2025
Restore the semantic token migration for MultiSelect.vue:
- text-neutral-400 dark-theme:text-zinc-500 → text-secondary

This completes the semantic token migration across all components.
christian-byrne and others added 5 commits October 27, 2025 08:31
…elect.vue

- Disable eslint-plugin-tailwindcss due to TailwindCSS v4 incompatibility
- Revert MultiSelect.vue changes as they were not part of vueNodes scope

The eslint-plugin-tailwindcss v4.0.0-beta.0 is incompatible with TailwindCSS v4.1.12
as it tries to load v3 file structure that no longer exists.
…n knip

Due to TailwindCSS v4 compatibility issues with eslint-plugin-tailwindcss v4.0.0-beta.0,
we temporarily disabled the plugin in eslint.config.ts. This causes knip to detect
these dependencies as unused, so we add them to ignoreDependencies until the
compatibility issue is resolved.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Update semantic token usage to match current design system conventions:
- Use bg-component-node-widget-background (main's naming)
- Use text-base-foreground for primary text (main's convention)
- Use text-secondary for icons and secondary text (semantic token)
- Use bg-interface-stroke and bg-button-icon (semantic tokens)
- Use hover:bg-interface-menu-component-surface-hovered
- Use bg-interface-menu-component-surface-selected

This preserves the PR's intent of migrating to semantic tokens while
adopting the evolved token names from main.
Comment on lines 18 to 25
{
'bg-white': isSelected(option) && !disabled,
'hover:bg-zinc-200/50': !isSelected(option) && !disabled,
'bg-interface-menu-component-surface-selected':
isSelected(option) && !disabled,
'hover:bg-interface-menu-component-surface-hovered':
!isSelected(option) && !disabled,
'opacity-50 cursor-not-allowed': disabled,
'cursor-pointer': !disabled
},
Copy link
Contributor

Choose a reason for hiding this comment

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

Optional:

Suggested change
{
'bg-white': isSelected(option) && !disabled,
'hover:bg-zinc-200/50': !isSelected(option) && !disabled,
'bg-interface-menu-component-surface-selected':
isSelected(option) && !disabled,
'hover:bg-interface-menu-component-surface-hovered':
!isSelected(option) && !disabled,
'opacity-50 cursor-not-allowed': disabled,
'cursor-pointer': !disabled
},
disabled ? 'opacity-50 cursor-not-allowed' : 'cursor-pointer',
!disabled && (isSelected(option) ? 'bg-interface-menu-component-surface-selected' : 'hover:bg-interface-menu-component-surface-hovered',

@DrJKL DrJKL merged commit 90c2c0f into main Nov 6, 2025
27 checks passed
@DrJKL DrJKL deleted the vue-node/style/improvements branch November 6, 2025 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:vue-migration size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants