Commit Graph

311 Commits

Author SHA1 Message Date
bymyself
ff0c15b119 merge main into rh-test 2025-09-28 15:33:29 -07:00
Richard Yu
9bd3d5cbe6 fix: replace uuids with displaynames rather than shas 2025-09-03 22:06:12 -07:00
Deep Roy
86e2b1fc61 Add analytics for workflow loading (#4966)
Needs to land after https://github.com/Comfy-Org/cloud/pull/398

## Description

- Adds a postCloudAnalytics method in `api.ts`
- Adds a workflow_loaded event
- The event contains 
  - the source (not file type, more like workflow format) one of: 
    - apiJson (I think this is the "prompt" format?)
    - graph (the richest type)
    - template: don't fully understand this but it works
- The actual data for the workflow, depends on the source type
- If available, missingModels and missingNodeTypes, so we can easily
query those

This talks to a new endpoint on the ingest server that is being added.  

## Tests
Tested manually with:
- loading an image from civitAI with missing models
- loading an image from comfy examples with no missing models
- opening a json file in the prompt format (I asked claude to generate
one - this is the format handled by the loadApiJson function)
- opening a template file (claude generated one - this is the format
handled by loadTemplateJson function)
- Testing these for both dragAndDrop and (menu --> open --> open
workflow)

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-4966-Add-analytics-for-workflow-loading-24e6d73d36508170acacefb3125b7017)
by [Unito](https://www.unito.io)
2025-08-29 02:30:34 -07:00
Robin Huang
c5c06b6ba8 Add client_id to query param. 2025-08-29 02:25:37 -07:00
Christian Byrne
cd444b6e59 [bugfix] Fix refresh node definitions for subgraph nodes (#5222)
The refreshComboInNodes function was only iterating over top-level nodes,
missing nodes inside subgraphs. This caused file lists and combo widget
options to not update properly when new models were added, unless users
created completely new nodes.

Changes:
- Replace graph.nodes iteration with forEachNode() for hierarchical traversal
- Import forEachNode utility from graphTraversalUtil
- Change early continue to early return for callback function

Fixes #5196

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

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-26 19:59:55 -07:00
Alexander Brown
6bf430b779 feat: support frontend node description (originally @melMass) (#5187) 2025-08-24 10:11:15 -07:00
Arjan Singh
ca0937479d [fix] #4468 gracefully handle Firebase auth failure (#5144)
* [fix] gracefully handle Firebase auth failure

* [test] Add failing tests to reproduce Firebase Auth network issue #4468

Add test cases that demonstrate the current problematic behavior where
Firebase Auth makes network requests when offline without graceful error
handling, causing toast error messages and degraded offline experience.

Tests reproduce:
- getIdToken() throwing auth/network-request-failed instead of returning null
- getAuthHeader() failing to fallback gracefully when Firebase token refresh fails

These tests currently pass by expecting the error to be thrown. After
implementing the fix, the tests should be updated to verify graceful
handling (returning null instead of throwing).

Related to issue #4468: Firebase Auth makes network requests when offline
without evicting token

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>

* [test] update firebaseAuthStore tests

They match the behavior of the implemented solution now

* [test] add firebaseAuthStore.getTokenId test for non-network errors

* [chore] code review feedback

* [test] use FirebaseError

Co-authored-by: Alexander Brown <drjkl@comfy.org>

* [fix] remove indentation and fix test

---------

Co-authored-by: snomiao <snomiao@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Alexander Brown <drjkl@comfy.org>
2025-08-22 18:15:04 +00:00
Christian Byrne
c42c9315f4 [refactor] Replace lodash with es-toolkit (#4935) 2025-08-12 12:22:09 -07:00
Christian Byrne
c4912dcd54 [fix] Add bounds checking for clipspace indices to prevent paste errors (#4849)
Co-authored-by: github-actions <github-actions@github.com>
2025-08-10 15:45:28 -07:00
AustinMroz
ba28fa4621 Support preview display on subgraphNodes (#4814) 2025-08-08 13:58:31 -07:00
Benjamin Lu
fef02e5f56 [refactor] Migrate litegraph imports from npm package to local subtree
- Updated all imports from '@comfyorg/litegraph' to '@/lib/litegraph/src/'
- Replaced deep dist imports with direct source paths
- Updated CSS import in main.ts
- All imports now use the @ alias consistently
2025-08-03 22:06:29 -04:00
Jin Yi
4c6e7f106b [fix] Detect missing nodes in subgraphs (#4639)
Co-authored-by: bymyself <cbyrne@comfy.org>
2025-08-02 19:45:05 -07:00
Christian Byrne
b125e0aa3a [feat] Move partial execution to the backend and make work with subgraphs (#4624) 2025-07-31 13:28:52 -07:00
Christian Byrne
4b75528c39 [fix] Fix graph configuration callbacks not reaching subgraph nodes (#4572) 2025-07-29 00:17:03 -07:00
Christian Byrne
98d694f7e3 [fix] Prevent incorrect 'frontend_only' badges in subgraphs (#4571) 2025-07-28 23:05:27 -07:00
filtered
4d0ba197a8 [Cleanup] Remove deprecated: node def validation (#4038) 2025-07-24 17:54:29 +10:00
brucew4yn3rp
83aa887456 [Feature] Enhanced MaskEditor to an Image Canvas (#4361)
Co-authored-by: duckcomfy <a@a.a>
2025-07-24 16:23:50 +10:00
Ferrah Aiko
37bfc53616 Add the ability to parse workflows from AVIF images (#4420) 2025-07-23 23:20:39 -07:00
Christian Byrne
c06bc63c6f [feat] Update node output system to use NodeLocatorIds (#4500) 2025-07-23 22:01:18 -07:00
filtered
b0968509f9 Fix progress stuck after execution interrupted (#4503) 2025-07-22 23:49:34 -07:00
guill
7eb3eb2473 Update the frontend to support async nodes. (#4382)
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Christian Byrne <cbyrne@comfy.org>
2025-07-23 13:46:00 +10:00
filtered
a7fb685290 Add Subgraphs (#3905)
Co-authored-by: github-actions <github-actions@github.com>
2025-06-28 15:37:23 -07:00
Christian Byrne
7620bb9063 [bugfix] Handle backend error messages with appended content (#4283) 2025-06-27 13:47:21 -07:00
filtered
f251af25cc Revert "[refactor] Refactor file handling" (#4103) 2025-06-08 07:20:15 +00:00
filtered
e2024c1e79 Revert "[fix] Remove dynamic import timing issue causing Playwright test flakiness" (#4102) 2025-06-07 23:57:29 -07:00
Christian Byrne
79a63de70e [docs] Remove deprecated comment from registerExtension (#4098) 2025-06-07 20:32:36 -07:00
Christian Byrne
b81c2f7cd2 [bugfix] Filter model metadata by current widget selection (#4021)
Co-authored-by: filtered <176114999+webfiltered@users.noreply.github.com>
2025-06-01 12:43:00 +10:00
Christian Byrne
afac449f41 [fix] Remove dynamic import timing issue causing Playwright test flakiness (#4031) 2025-05-31 14:01:13 +10:00
Christian Byrne
30ee669f5c [refactor] Refactor file handling (#3955) 2025-05-30 02:05:41 -07:00
filtered
38d3e15103 Never restore view when setting is disabled (#3975) 2025-05-24 22:47:08 +10:00
filtered
068279ec34 Replace reactive DragAndScale proxy with callback (#3915) 2025-05-16 21:58:21 -04:00
filtered
985dab7e1c Allow LGraph.configure to be made recursive (#3894) 2025-05-15 10:48:56 -04:00
filtered
7f2b8a5321 [CodeHealth] Add various minor fixes - logging, missed i18n (#3895)
Co-authored-by: github-actions <github-actions@github.com>
2025-05-15 22:04:48 +10:00
Christian Byrne
4cc6a15fde Fix refresh combos command fails on nodes using V2 spec (#3848) 2025-05-10 16:06:25 -04:00
Christian Byrne
34b1fd5a72 [API Node] Allow authentification via Comfy API key (#3815)
Co-authored-by: github-actions <github-actions@github.com>
2025-05-09 13:42:03 -04:00
thot experiment
aa46524829 add workflow parsing for mp3 and opus formats (#3832) 2025-05-09 13:40:50 -04:00
filtered
3bd87820eb Fix undo / redo resets viewport (#3834) 2025-05-09 18:55:34 +10:00
Chenlei Hu
2a297e512d Fit view on workflow load without extra.ds (#3822)
Co-authored-by: github-actions <github-actions@github.com>
2025-05-08 17:39:44 -04:00
Chenlei Hu
2019c1d877 Align reset_view param on json file load (#3823) 2025-05-08 16:00:13 -04:00
Chenlei Hu
2425e32d51 Partial execute to selected output nodes (#3818)
Co-authored-by: github-actions <github-actions@github.com>
2025-05-08 11:44:26 -04:00
filtered
3aea2c120a Update widget types to match Litegraph changes (#3808) 2025-05-08 06:56:53 +10:00
filtered
6601cf6959 Add setting to enable Litegraph trackpad gestures (#3751)
Co-authored-by: github-actions <github-actions@github.com>
2025-05-04 14:31:43 +10:00
Yiximail
cb9ec354e7 Implement mask editor undo/redo (#3708) 2025-05-03 19:55:37 -04:00
Christian Byrne
23d32282bc Fix: server fails to load SVG outputs when user has "Preview Format" setting specified (#3734) 2025-05-02 10:09:50 -07:00
thot experiment
878aedb4f7 add svg metadata loading (#3719)
Co-authored-by: filtered <176114999+webfiltered@users.noreply.github.com>
2025-05-02 09:26:24 +10:00
Chenlei Hu
4461210f43 Prune widgets on graph configure (#3716) 2025-05-01 16:07:42 -04:00
filtered
838acefd72 Fix graph.change called twice on keypress (#3695) 2025-04-30 17:59:01 +10:00
filtered
bd1890a422 [Refactor] Convert save viewport in workflow to watcher (#3673) 2025-04-29 06:49:41 +10:00
Chenlei Hu
b1a98437e4 [Auth] Warn insecure context on login (#3663)
Co-authored-by: github-actions <github-actions@github.com>
2025-04-27 22:04:19 -04:00
Christian Byrne
99cc587abf Load workflows from mp4/mov files (#3543)
Co-authored-by: github-actions <github-actions@github.com>
2025-04-26 12:31:29 -07:00