Skip to content

Conversation

snomiao
Copy link
Member

@snomiao snomiao commented Aug 22, 2025

Goal

Complete deprecation of Comfy-Org/ComfyUI_devtools by integrating it into the main frontend repository.

Summary

  • Integrates ComfyUI_devtools repository into the main frontend repository under tools/devtools/
  • Updates CI workflows to use integrated devtools instead of external repository checkout
  • Updates browser test documentation to reflect the new structure
  • Eliminates the need for separate versioning and repository management
  • Merged latest changes from main branch (2025-09-11)

Changes Made

  • New Directory: tools/devtools/ (refactored from src/devtools/) containing:
    • __init__.py - Server endpoints for /api/devtools/* routes
    • dev_nodes.py - Development and testing nodes
    • fake_model.safetensors - Test fixture
    • README.md - Documentation
  • CI Updates: Modified .github/workflows/test-ui.yaml and .github/workflows/i18n-custom-nodes.yaml to copy from local devtools instead of external checkout
  • Documentation: Updated browser_tests/README.md with new setup instructions
  • Location Refactoring: Moved devtools from src/ to tools/ for better organization (commit b809f58)
  • Dependencies: Added missing @primeuix/styles dependency for build (commit 2908309)

Benefits

  • Simplified development workflow (single repository to clone)
  • Unified release process and version consistency
  • Faster CI/CD builds (no external dependency checkout)
  • Reduced maintenance overhead
  • Better organization by placing development tools in tools/ directory

Test Plan

  • Verify devtools files are correctly copied to expected locations
  • CI workflows updated to use local devtools
  • Documentation updated for developers
  • Merged latest changes from main branch
  • Run browser tests to ensure functionality is preserved
  • Verify /api/devtools/* endpoints work correctly

Breaking Changes

None - this maintains backward compatibility with existing devtools API endpoints.

Fixes #4683

Copy link

github-actions bot commented Aug 22, 2025

🎭 Playwright Test Results

Tests completed successfully!

⏰ Completed at: 09/11/2025, 08:02:17 AM UTC

📊 Test Reports by Browser

  • chromium: Deployment failed
  • chromium-2x: Deployment failed
  • chromium-0.5x: Deployment failed
  • mobile-chrome: Deployment failed

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

Copy link

github-actions bot commented Aug 22, 2025

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 08/22/2025, 05:08:48 AM UTC

📊 Build Summary

  • Components: 13
  • Stories: 52
  • Visual changes: 0
  • Errors: 0

🔗 Links


🎉 Your Storybook is ready for review!

@DrJKL
Copy link
Contributor

DrJKL commented Aug 22, 2025

Instead of under /src, could you put them in /tools? I think if we do restructure as a monorepo it'll be better to have the python tools already in their own domain.

@christian-byrne
Copy link
Contributor

Yeah this shouldn't be in src as it is not build target.

@snomiao
Copy link
Member Author

snomiao commented Aug 26, 2025

let sno update this branch respects to last 2 comments

@snomiao
Copy link
Member Author

snomiao commented Aug 26, 2025

I've updated this branch to address the last 2 comments about moving devtools from /src to /tools.

Todo List:

  • Move devtools from src/devtools/ to tools/devtools/
  • Update CI workflows to reference tools/devtools instead of src/devtools
  • Update documentation references to use tools/devtools path
  • Test the changes to ensure functionality is preserved
  • Commit and push the changes
  • Update tracking comment with completion status

Summary of Changes

Successfully moved devtools from /src/devtools/ to /tools/devtools/

The changes include:

  • Moved all devtools files to the new location
  • Updated CI workflows (.github/workflows/test-ui.yaml and i18n-custom-nodes.yaml)
  • Updated documentation in browser_tests/README.md and tools/devtools/README.md
  • Verified no remaining references to src/devtools
  • Committed and pushed changes

The devtools functionality should remain exactly the same, just in a more appropriate directory structure as suggested by @DrJKL and @christian-byrne. 🎉

@snomiao snomiao mentioned this pull request Aug 27, 2025
@snomiao
Copy link
Member Author

snomiao commented Aug 27, 2025

Successfully rebased branch to "drjkl/migrate/pnpm"

📋 Rebase Todo List
  • Check if drjkl/migrate/pnpm branch exists and fetch latest
  • Create a backup of current branch state
  • Rebase current branch onto drjkl/migrate/pnpm
  • Resolve any merge conflicts that arise during rebase
  • Run tests to verify functionality after rebase
  • Force push the rebased branch
  • Update this comment with completion status

Summary of Completed Rebase

🎉 The branch has been successfully rebased onto drjkl/migrate/pnpm

Changes Applied:

  • ✅ Successfully rebased 2 commits from this branch onto the pnpm migration base
  • ✅ No merge conflicts encountered during rebase
  • ✅ CLAUDE.md automatically updated with pnpm commands (replacing npm commands)
  • ✅ Package dependencies reinstalled and verified working with pnpm
  • ✅ Force pushed rebased branch to origin
  • ✅ Backup branch created before rebase for safety

Key Updates from pnpm Migration:

  • All npm commands in CLAUDE.md now use pnpm (e.g., pnpm typecheck, pnpm lint, etc.)
  • Package scripts in package.json already properly configured for pnpm
  • Dependencies successfully installed with pnpm lockfile

The devtools integration functionality remains intact and the branch is now ready with the latest pnpm migration improvements! 🚀

@snomiao snomiao changed the base branch from main to drjkl/migrate/pnpm August 27, 2025 05:43
@snomiao snomiao force-pushed the issue-4683-merge-comfyui-devtools-and-comfyuifrontend branch from 4443cfd to 5e5f9d5 Compare August 27, 2025 05:47
Base automatically changed from drjkl/migrate/pnpm to main August 27, 2025 13:10
@snomiao
Copy link
Member Author

snomiao commented Aug 28, 2025

Let me rebase to origin and main

@snomiao
Copy link
Member Author

snomiao commented Aug 28, 2025

Successfully rebased branch to origin/main

📋 Rebase Todo List
  • Check current branch status and origin/main state
  • Create backup branch before rebase
  • Fetch latest changes from origin/main
  • Rebase current branch onto origin/main
  • Resolve any merge conflicts during rebase
  • Run tests to verify functionality after rebase
  • Force push the rebased branch to origin
  • Update tracking comment with completion status

Summary of Completed Rebase

🎉 The branch has been successfully rebased onto origin/main

Changes Applied:

  • ✅ Successfully rebased 2 commits from this branch onto the latest main (commit d0eee73)
  • ✅ Resolved multiple merge conflicts during rebase process:
    • package.json: Kept newer dependency versions and nx-based commands
    • pnpm-workspace.yaml: Merged nx dependency configuration
    • CONTRIBUTING.md: Updated to use pnpm instead of npm
    • CI workflows: Maintained pnpm lockfile references
  • ✅ Preserved all devtools integration functionality
  • ✅ Force pushed rebased branch to origin with --force-with-lease

Key Updates from Latest Main:

  • All npm/yarn commands now use pnpm across the codebase
  • Nx build system integration for improved monorepo support
  • Latest dependency versions and security updates
  • Enhanced CI/CD workflows with pnpm optimizations
  • Updated documentation reflecting pnpm migration

The devtools integration functionality remains intact and the branch is now fully up-to-date with the latest main branch improvements! 🚀

Latest commits on rebased branch:

  • b809f58 [refactor] Move devtools from src/ to tools/
  • 9f94c9f [feat] Merge ComfyUI_devtools into ComfyUI_frontend

DrJKL and others added 9 commits August 28, 2025 06:24
Step 1, package and lockfile
Step 6: PNPM installation in actions. This merge is going to be painful.
- Move devtools Python files to src/devtools/
- Update CI workflows to use integrated devtools
- Update browser test documentation
- Eliminate external repository dependency

Fixes #4683

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

Co-Authored-By: Claude <noreply@anthropic.com>
Address feedback from PR reviewers to move devtools out of src/ since it's not a build target.

- Move src/devtools/ to tools/devtools/
- Update CI workflows to reference tools/devtools instead of src/devtools
- Update documentation references to new path
- Maintain backward compatibility with existing devtools functionality

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

Co-Authored-By: Claude <noreply@anthropic.com>
@snomiao snomiao force-pushed the issue-4683-merge-comfyui-devtools-and-comfyuifrontend branch from 5e5f9d5 to b809f58 Compare August 28, 2025 06:31
Copy link

socket-security bot commented Aug 28, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​primeuix/​styles@​1.2.31001003590100
Updatedhusky@​9.0.11 ⏵ 9.1.7100 +110059 +178100
Updated@​pinia/​testing@​0.1.5 ⏵ 0.1.71001006684 +4100
Updatedextendable-media-recorder-wav-encoder@​7.0.129 ⏵ 7.0.13199100669080
Updated@​storybook/​vue3-vite@​9.1.1 ⏵ 9.1.599 +110068 +1100100
Updated@​storybook/​vue3@​9.1.1 ⏵ 9.1.510010069 +2100100
Updated@​tiptap/​extension-table-row@​2.10.4 ⏵ 2.26.11001006999100
Updated@​primevue/​forms@​4.2.5 ⏵ 4.3.9100 +110070 +195 +2100
Updated@​tailwindcss/​vite@​4.1.12 ⏵ 4.1.131001007099100
Updated@​tiptap/​extension-table-cell@​2.10.4 ⏵ 2.26.11001007099100
Updated@​tiptap/​extension-table-header@​2.10.4 ⏵ 2.26.11001007099100
Added@​primevue/​core@​4.3.91001007196100
Updated@​primevue/​themes@​4.2.5 ⏵ 4.3.910010072 -396 +5100
Updated@​tiptap/​starter-kit@​2.10.4 ⏵ 2.26.1991007299100
Updated@​types/​semver@​7.7.0 ⏵ 7.7.110010073 +183 -1100
Updated@​tiptap/​extension-table@​2.10.4 ⏵ 2.26.1100 +110075 +199100
Updated@​tiptap/​extension-link@​2.10.4 ⏵ 2.26.1100 +110075 +199100
Updated@​atlaskit/​pragmatic-drag-and-drop@​1.3.1 ⏵ 1.7.7100 +110075 +193 +10100
Updatedfuse.js@​7.0.0 ⏵ 7.1.0100 +110091 +177100
Updated@​tiptap/​core@​2.10.4 ⏵ 2.26.1100 +110079 +199100
Updated@​types/​node@​20.14.10 ⏵ 20.19.13100 +110080 +196100
Updatedjsondiffpatch@​0.6.0 ⏵ 0.6.2100 +1100100 +3180100
Updateddompurify@​3.2.5 ⏵ 3.2.6100 +11001008390
Updatedfs-extra@​7.0.1 ⏵ 11.3.1100 +110010084100
Updatedeslint-plugin-unused-imports@​4.1.4 ⏵ 4.2.010010089 +185100
Updatedhappy-dom@​15.11.0 ⏵ 15.11.79910088 +187100
Updatedeslint-plugin-vue@​9.27.0 ⏵ 9.33.099 +110088 +190100
Updatedfirebase@​11.6.0 ⏵ 11.10.099 +1100100 +19980
Updated@​playwright/​test@​1.52.0 ⏵ 1.55.01001001009980
Updated@​sentry/​vue@​8.48.0 ⏵ 8.55.0100 +110089 +1100100
Updated@​vitejs/​plugin-vue@​5.1.4 ⏵ 5.2.499 +110010090100
Updatedextendable-media-recorder@​9.2.27 ⏵ 9.2.2999 +11009190100
See 10 more rows in the dashboard

View full report

@christian-byrne
Copy link
Contributor

@snomiao Now that we are a monorepo, we can make this a package.

- Add @primeuix/styles to dependencies (required by PrimeVue)
- Add to knip ignore list as it's needed by importmap plugin
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.

Merge ComfyUI-devtools and ComfyUI_frontend
3 participants