28 Commits
Author SHA1 Message Date
digital-divas-admin 1c4266fc9d Merge pull request #12 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Switch to synchronous fal.ai API to fix queue polling hang
2026-02-11 21:04:54 -05:00
Claude 67a305b061 Switch to synchronous fal.ai API to fix queue polling hang
The queue API (queue.fal.run) for the /edit endpoint gets stuck at
IN_PROGRESS indefinitely. Switch to the synchronous API (fal.run)
which blocks until the result is ready in a single HTTP call.

Also adds diagnostic logging to the ComfyUI console.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 01:58:39 +00:00
digital-divas-admin b03da50a41 Merge pull request #11 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Fix safety_tolerance type: API expects string, not integer
2026-02-11 20:43:02 -05:00
Claude 8aa0e17741 Fix safety_tolerance type: API expects string, not integer
The fal.ai nano-banana-pro/edit endpoint expects safety_tolerance as a
string (e.g. "4"), not an integer. Sending an integer caused the backend
to silently hang at IN_PROGRESS indefinitely.

Also:
- Add "auto" to ASPECT_RATIOS (the API default for edit, preserves
  input image dimensions)
- Replace invalid "9:21" with "4:5" to match the API's enum
- Default the edit node's aspect_ratio to "auto"

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 01:42:13 +00:00
digital-divas-admin 4ccf1a0d6b Merge pull request #10 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Upload images to fal.ai CDN instead of embedding base64 data URIs
2026-02-11 20:25:29 -05:00
Claude eafa6e64ec Upload images to fal.ai CDN instead of embedding base64 data URIs
Large base64 data URIs in the JSON payload were causing fal.ai to hang
at IN_PROGRESS indefinitely. Now we upload images to fal.media CDN
first and pass the resulting URLs in the image_urls array.

Also removes debug logging from the previous commit.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 00:54:02 +00:00
digital-divas-admin f7694d87d0 Merge pull request #9 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Add debug logging to queue polling to diagnose timeout
2026-02-11 19:37:39 -05:00
Claude 157b3c9ef3 Add debug logging to queue polling to diagnose timeout
Prints the queue submission response (to see what URLs fal.ai provides)
and the first 5 + every 15th poll status to the ComfyUI console.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 00:36:31 +00:00
digital-divas-admin 63cd52cd9d Merge pull request #8 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Use fal.ai-provided status_url/response_url for queue polling
2026-02-11 19:27:19 -05:00
Claude da94323e5d Use fal.ai-provided status_url/response_url for queue polling
The queue submission response includes `status_url` and `response_url`
with the correct app path. Previously we stripped the `/edit` route from
the endpoint to build these URLs ourselves, which could cause polling to
target the wrong path and time out.

Now we use the URLs fal.ai returns directly, falling back to
full-endpoint construction if they're absent.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 00:16:40 +00:00
digital-divas-admin 1dd1b67de6 Merge pull request #7 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Fix image edit payload: use image_urls array instead of image_url
2026-02-11 19:08:13 -05:00
Claude 79c9d50a0d Fix image edit payload: use image_urls array instead of image_url
The fal.ai nano-banana-pro/edit endpoint expects an `image_urls` array
containing all reference images, not separate `image_url`, `image_2_url`,
`image_3_url` fields. This was causing a 422 validation error:
  {"detail":[{"loc":["body","image_urls"],"msg":"field required"}]}

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 00:07:45 +00:00
digital-divas-admin 5a77de80a4 Merge pull request #6 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Improve error reporting to show fal.ai response body on failures
2026-02-11 19:04:07 -05:00
Claude d273a6f14e Improve error reporting to show fal.ai response body on failures
Instead of raise_for_status() which discards the response body,
check resp.ok and include the response text in the error message.
This will reveal the actual validation error from fal.ai.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-12 00:03:33 +00:00
digital-divas-admin 1fc2fea347 Merge pull request #5 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Fix 405 error on image edit status polling
2026-02-11 19:00:08 -05:00
Claude 4d9bed096e Fix 405 error on image edit status polling
The fal.ai queue status/result URLs must use only the base app ID
(owner/name), not the full endpoint path. The /edit route was being
included in the polling URLs, causing a 405 Method Not Allowed.

Submit URL: queue.fal.run/fal-ai/nano-banana-pro/edit (correct)
Status URL: queue.fal.run/fal-ai/nano-banana-pro/requests/{id}/status
  (was incorrectly: .../nano-banana-pro/edit/requests/{id}/status)

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-11 23:59:10 +00:00
digital-divas-admin a81e1d0aff Merge pull request #4 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Fix safety_tolerance to render as INT spinner instead of broken dropdown
2026-02-11 18:53:21 -05:00
Claude f3d533c1fd Fix safety_tolerance to render as INT spinner instead of broken dropdown
The string-list combo was rendering as an INT widget defaulting to 300
(the timeout value). Changed to a proper INT type with min=1, max=6,
default=4 so it renders correctly in the ComfyUI UI.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-11 23:50:32 +00:00
digital-divas-admin 0de552d4ea Merge pull request #3 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Add fal_api_key input field to both nodes
2026-02-11 18:41:20 -05:00
Claude 0aaae1366e Add fal_api_key input field to both nodes
Users can now paste their fal.ai API key directly on the node
instead of setting the FAL_KEY environment variable. The env var
is still supported as a fallback when the field is left empty.

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-11 23:39:54 +00:00
digital-divas-admin af5b3a0bd1 Merge pull request #2 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Add requirements.txt for ComfyUI-Manager auto-install
2026-02-11 18:20:22 -05:00
Claude 903f236033 Add requirements.txt for ComfyUI-Manager auto-install
https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-11 23:18:13 +00:00
digital-divas-admin a7ed48ee7a Merge pull request #1 from digital-divas-admin/claude/create-nbp-branch-1-GurPt
Add nodes.py with Text-to-Image and Image Edit node implementations
2026-02-11 18:15:24 -05:00
Claude dc6fe72cc4 Add nodes.py with Text-to-Image and Image Edit node implementations
Implements the two ComfyUI custom nodes for fal.ai Nano Banana Pro:
- NanoBananaProTextToImage: text-to-image generation via fal-ai/nano-banana-pro
- NanoBananaProImageEdit: image editing with safety_tolerance (1-6) via fal-ai/nano-banana-pro/edit

Uses fal.ai queue API with polling, supports all parameters from README
(aspect ratio, resolution, seed, web search, output format, etc).

https://claude.ai/code/session_01VtRzQMdLschx9awGyTGGH7
2026-02-11 23:13:38 +00:00
digital-divas-admin 6c243e7a1f Create README.md 2026-02-11 18:09:11 -05:00
digital-divas-admin d02feb2bef uploading nodes, readme and init 2026-02-11 18:08:30 -05:00
digital-divas-admin 5ac0507979 Delete README.md
About to upload another readme
2026-02-11 18:07:26 -05:00
digital-divas-admin b4e3d949b7 Initial commit 2026-02-11 18:06:13 -05:00