Repository navigation
v1.55.14
·
24 commits
to core/1.55
since this release
What's Changed
- fix: reinstate pointer-events on card "..." popover under a modal Reka dialog by @huntcsg in #17933
- fix(agent-crdt): keep the ghost placement flag out of the document by @claude[bot] in #18191
- fix: retarget new agent chat to the workflow tab on screen by @claude[bot] in #18196
- fix: pasted nodes reach the agent doc at the pasted position, not [10, 10] by @claude[bot] in #18071
- FE-2484 fix(billing): recover pending operations through the SDK lifecycle by @dante01yoon in #18135
- test(agent): failing repro for agent connect skipping slot type check by @claude[bot] in #18107
- fix: stop dropping a later completed download after a premature failed status (PM-1302) by @claude[bot] in #18082
- fix(agent): restore user attachment previews from history by @claude[bot] in #18192
- fix(agent-crdt): skip re-minting add_node for a node this port already relayed by @claude[bot] in #18175
- FE-2468 fix(billing): payment recovery reads on the subscription rail by @dante01yoon in #18060
- test: repro agent set_widget silently dropped on DynamicCombo mode by @claude[bot] in #18193
- test(agent): repro canvas blanking for a run turn's duration after a mid-turn doc reset by @claude[bot] in #18179
- refactor(assets): pin the asset feed page size to a named constant by @christian-byrne in #18046
- test: stabilize workshop workspace-switch Website E2E by @huang47 in #18055
- feat(website): launch Qwen-Image 2.1 by @bertfy in #18178
- test(agent): let the host fixture refuse a doc_subscribe by @christian-byrne in #18213
- fix(agent): gate persisted workflow tab bindings on document identity by @claude[bot] in #18077
- FE-2476 test(billing): browser E2E for the six reads on the SDK reader rail by @dante01yoon in #18140
- feat(website): swap in the updated Qwen-Image 2.1 hero sizzle by @bertfy in #18217
- chore: enable no-unnecessary-condition for groupNode.ts by @DrJKL in #17895
- chore: enable no-unnecessary-condition for widget files by @DrJKL in #17897
- chore: enable no-unnecessary-condition for metadata parsers by @DrJKL in #17900
- fix(agent-crdt): keep human-added frontend-only nodes across a workflow tab switch by @claude[bot] in #18078
- fix(agent-crdt): keep a human delete across a workflow tab switch by @claude[bot] in #18063
- FE-2482 fix(billing): subscription panel reads the SDK store by @dante01yoon in #18133
- FE-2471 refactor(billing): one status transport for the cloud subscription store by @dante01yoon in #18092
- chore(agent): address post-merge review nits from #16856 by @christian-byrne in #18204
- FE-2472 test(billing): table-driven rail x checkoutType x outcome net by @dante01yoon in #18137
- FE-2474 refactor(billing): top-up dialog reads through its adapter by @dante01yoon in #18132
- FE-2477 test(billing): browser E2E for resubscribe and the payment portal by @dante01yoon in #18139
- docs(browser_tests): note that the agent flag-off cases need a production build by @christian-byrne in #18177
- test(missing-model): pin userinfo URLs against Hugging Face trust confusion by @christian-byrne in #18147
- test(agent-crdt): pin seq-0 doc_update parsing (adopts the settled seq-0 ack contract) by @christian-byrne in #16452
- chore(agent): adopt multiplayer 0.3.0 in frontend by @christian-byrne in #18163
- chore(agent): close the minor review threads from #16856 by @christian-byrne in #18230
- docs(website): add an agent guide plus building-web-prs and fixing-web-prs skills for the design team by @anupreet-comfy in #17950
- test: preserve distinct attachment previews after reload by @christian-byrne in #18244
- test: exercise saved workflow reload and agent reattachment by @christian-byrne in #18243
- fix: preserve prompt height beside generated image previews by @christian-byrne in #18200
- test(autogrow): grown slots and their links survive a round-trip by @christian-byrne in #17521
- test(perf): baseline DOM widget ordering workloads by @christian-byrne in #16138
- fix(agent): apply the run permission choice without a save step by @christian-byrne in #18115
- fix(agent): redact sensitive CRDT dev event details by @christian-byrne in #16926
- fix(agent): preserve drafts when Enter is pressed during runs by @christian-byrne in #17628
- fix(agent): carry provider-neutral error metadata by @christian-byrne in #16491
- test: record extension lifecycle browser performance baselines by @christian-byrne in #16139
- test: adopt website auth and billing automocks by @DrJKL in #18020
- Remove Claude instruction redirects by @DrJKL in #18225
- test(agent-crdt): reproduce node-type-change current risk by @christian-byrne in #16626
- fix(agent): document dev-panel typed-array broadening (#16344) by @christian-byrne in #16547
- test: follow-up to #16378 — colocate R-78 collision characterization by @christian-byrne in #16548
- feat(models): warn when first and last frames have different aspect ratios by @mariana953 in #18024
- fix(website): keep the banner pagination inside the card and settle two edges by @mariana953 in #18131
- fix: keep a new agent chat from inheriting a stale canvas (binding adoption, op coalescing) + contract e2e by @claude[bot] in #18064
- 1.55.12 by @comfy-pr-bot in #18232
- fix(manager): clarify version choices and report installation failures by @ltdrdata in #18083
- [chore] Update Comfy Registry API types from cloud@cddf1cd by @comfy-pr-bot in #17368
- test(agent-crdt): pin insert_workflow dropping promoted host widgets by @claude[bot] in #18270
- FE-2033: test: cover agent subgraph follower in browser by @christian-byrne in #17585
- fix: guard reportError against re-entrant reports from Sentry normalization by @claude[bot] in #18041
- fix: release an agent workflow binding the server disowns by @claude[bot] in #18280
- fix(billing): round cents to credits on exact integer math by @dante01yoon in #18285
- fix: hide provider moderation controls from generation forms by @mariana953 in #18288
- fix(website): align homepage CTAs and split cards by @bertfy in #18226
- chore: lint root scripts/ with ESLint and oxlint by @DrJKL in #17910
- refactor(website): stop using i18n keys as prefixes of other keys by @DrJKL in #17992
- ci: add the i18n: Update Website workflow by @DrJKL in #17996
- test(assets): partial graph cleanup by @christian-byrne in #16248
- feat: add simple design system components by @DrJKL in #16259
- fix: gate cloud bootstrap on authentication by @huang47 in #18049
- test: add second automock foundation batch by @DrJKL in #17958
- test: preserve visible edits after rejected nested widget writes by @christian-byrne in #18263
- fix(website): handle unreadable model inputs and capture client exceptions by @benjcooley in #18293
- fix: run each repo-wide pre-commit check once per commit by @mariana953 in #18295
- test(agent): order turn completion after acceptance by @christian-byrne in #18261
- test(agent): judge agent layout from what the browser draws by @christian-byrne in #17901
- fix(website): align the NEW badge on top-level mobile nav rows by @bertfy in #18227
- feat: add selectionStore and derive canvasStore selection (FE-2040) by @DrJKL in #17048
- test: cover follower projection replay failures by @christian-byrne in #17602
- ci(dependabot): ignore Comfy-Org/github-workflows so a caller's two pins stay together by @mattmillerai in #17973
- PM-856: fix(agent): scope selected nodes to their workflow by @christian-byrne in #17327
- fix: retain visible autogrow slots after tab return by @christian-byrne in #18249
- test(assets): partial bulk insertion by @christian-byrne in #16252
- test(assets): cover list keyboard activation by @christian-byrne in #16308
- feat(website): report Models browser outcomes to Datadog by @benjcooley in #18307
- fix(agent): keep Retry-After parsing in contract and cover the admission message seam by @christian-byrne in #18229
- test(agent-crdt): characterize malformed follower updates by @christian-byrne in #16664
- fix(workflow): drop missing entries from openWorkflows by @claude[bot] in #18033
- fix: stop agent turn on Escape after submitting via mouse click on Send by @claude[bot] in #18296
- FE-2414: fix: derive Compare Images from stores instead of widget state by @jtydhr88 in #17806
- test(agent): pin silent exhaustion of doc-subscribe refusal retries by @christian-byrne in #18272
- fix: copy/paste beside the agent panel by @claude[bot] in #18062
- fix: keep hand-wired autogrow connections on their real slot after an agent slot sync (PM-1449) by @claude[bot] in #18279
- fix(linear-mode): follow-up to #14865 — hide Cloud billing controls off Cloud by @christian-byrne in #16584
- fix(workflow): stop workflow activation crashing on a null active state by @christian-byrne in #18190
- test(undo): pin navigation recovery to the deepest surviving subgraph by @christian-byrne in #18235
- fix: avoid unpolyfilled ES2023 array methods in runtime code by @christian-byrne in #18251
- fix(agent-crdt): scope layout mint ops to the bound document's root graph by @claude[bot] in #18109
- fix: read the root graph from one nullable source in executionErrorStore by @DrJKL in #18059
- fix: avoid TDZ crash restoring saved multiline widget value by @claude[bot] in #18324
- fix(agent): bound attachment upload contract by @christian-byrne in #16985
- fix: flag a freshly created, unsaved tab as unbound for the agent (PM-1430) by @claude[bot] in #18278
- feat(website): restructure Comfy Router landing page to v3 copy by @claude[bot] in #17754
- feat(website): add a right-click menu on the header logo by @bertfy in #17953
- test: cover mouse-driven autogrow reference alignment by @claude[bot] in #18101
- fix: explain legacy dialog errors with catalog messages by @jaeone94 in #18214
- feat: float workflow tabs and soften canvas dividers by @PabloWiedemann in #18236
- refactor: complete vue node review follow-ups by @christian-byrne in #18260
- fix: agent composer paste no longer also pastes the last copied node by @claude[bot] in #18068
- fix: restore Impact, WAS Pause, and RefMod compatibility by @DrJKL in #18301
- fix: guard asset list-view thumbnail against native image drag NotSupportedError by @claude[bot] in #18323
- Revert "feat(website): restructure Comfy Router landing page to v3 copy" by @anupreet-comfy in #18365
- MiniMax template wiring (PM-993): preserve agent workflow connections after dynamic input reordering by @ryan-di in #17221
- fix: autogrow slot can't be reconnected after disconnect without refresh (PM-1496) by @claude[bot] in #18289
- fix(agent-crdt): preserve a hand-wired autogrow link across the follower's own CRDT echo by @claude[bot] in #18375
- test(agent): cover hand-wired autogrow link surviving a later agent turn by @claude[bot] in #18327
- test(agent): fix two local-rig agent spec failures; document canvas baselines by @christian-byrne in #18209
- FE-2033: fix(agent): project define_subgraph definitions cleanly by @christian-byrne in #17458
- fix: don't leave agent-panel selection-restore guard armed on empty restore by @claude[bot] in #18400
- feat(agent): report a node-id write dropped by CRDT last-write-wins by @claude[bot] in #18353
- test(agent): black-box cover the ghost placement flag regression (#18191) by @christian-byrne in #18240
- fix(agent): don't let CRDT reconcile clobber a fresher live widget value by @claude[bot] in #18361
- test: add third automock foundation batch by @DrJKL in #18010
- fix(agent): defer What's New popup while agent onboarding runs by @MaanilVerma in #18287
- test(billing): complete E2E coverage of the billing SDK M1 QA plan by @dante01yoon in #18312
- FE-2620 test(billing-web): drive the checkout from quote through payment to the result page by @dante01yoon in #18315
- fix(billing): show the server's refusal message on the SDK subscription rail by @dante01yoon in #18297
- feat(website): send the onboarding source to the platform's API-keys page (DES-1082) by @shrimbly in #17884
- fix: forward agent telemetry to desktop host by @huntcsg in #18376
- test(agent): cover spare autogrow input across a tab switch by @christian-byrne in #18246
- fix(telemetry): drop extension tab messaging noise by @christian-byrne in #18387
- test: report all RefMod reload regressions by @DrJKL in #18406
- test: replace unnecessary primitive component mocks with real components by @DrJKL in #18022
- chore: enable no-unnecessary-condition for app.ts by @DrJKL in #17896
- fix(website): re-anchor PP Formula so its caps sit where they are centred by @mariana953 in #17843
- feat(assets): open the Assets panel from an ?assets=1 deep link by @mariana953 in #18442
- fix: derive shortcut blocking from rendered modals by @DrJKL in #18199
- fix: tolerate non-cloneable extension fields when serializing nodes by @christian-byrne in #18252
- chore(agent): bump comfy-multi-player to 0.3.3 by @christian-byrne in #18455
- fix(agent): remove workflow timing display by @christian-byrne in #18348
- test: cover asset panel drag onto existing Load Image node bypassing upload by @claude[bot] in #18180
- 1.55.13 by @comfy-pr-bot in #18321
- refactor: validate shared translations with the Responses API by @benceruleanlu in #17899
- test: establish a shared scripts/app automock by @DrJKL in #18018
- chore(knip): drop two suppressions that no longer suppress anything by @DrJKL in #18457
- fix(website): validate model inputs before generation by @benjcooley in #18450
- refactor: delete unused CustomNodesPanel and marketingImage by @huang47 in #16559
- fix(agent-crdt): realign named input links across multiple autogrow groups by @claude[bot] in #18275
- test: reproduce outbound link-position-vs-name corruption on agent CRDT apply (no fix) by @claude[bot] in #18332
- fix: send the workspace token when downloading a cloud asset by @christian-byrne in #18421
- ci: bump pr-risk to github-workflows@ba2e67b by @cloud-code-bot[bot] in #15379
- Fix subgraph definition ID scan edge cases by @christian-byrne in #18453
- fix: report invalid subgraph unpack mappings by @DrJKL in #17374
- fix: make reported E2E coverage trustworthy over time by @DrJKL in #18259
- test: characterize pointer gestures for FE-2040 by @DrJKL in #17109
- fix: complete Vue node context menu coverage and behavior by @DrJKL in #16104
- chore: enable no-unnecessary-condition for changeTracker, api, and ui by @DrJKL in #17904
- test: automate Workshop live smoke and release acceptance by @benjcooley in #18313
- docs(skills): add the verify skill for driving the cloud app against a real backend by @dante01yoon in #18299
- fix(billing): settle a reattached subscription operation like the legacy poller by @dante01yoon in #18310
- test(billing): cover the billing SDK rail outcomes the live QA pass left unvalidated by @dante01yoon in #18309
- fix(agent): signal the onboarding overlay only while a coach card is on screen by @MaanilVerma in #18439
- test(agent): pin remote apply acceptance failures by @DrJKL in #18187
- fix: keep template busy state and error handling in the loader by @benceruleanlu in #17801
- fix: materialize insert_workflow links with numeric ids by @claude[bot] in #18458
- fix: mint disjoint-range node ids for CRDT-bound graphs to prevent agent/frontend id collision by @claude[bot] in #18095
- fix: keep released subgraph definitions consistent across convert-to-subgraph by @claude[bot] in #18040
- fix(touch): stop a lost touchend from permanently freezing the canvas by @DrJKL in #17916
- fix(agent): wait for the general onboarding before offering Agent consent by @MaanilVerma in #18431
- FE-2006: test: characterize agent extension containment failures by @DrJKL in #16794
- refactor: consolidate Agent chip presentation (FE-2410) by @DrJKL in #17767
- test(agent-crdt): repro schema-gate latch leaving canvas at zero nodes by @claude[bot] in #18099
- fix(cicd): resolve the version the bump PR will actually produce by @christian-byrne in #15004
- perf: cut lint and typecheck time and memory (manual, lint-staged, CI) by @DrJKL in #18495
- test: migrate workbench platform mocks by @DrJKL in #18501
- fix(agent): flag LoadImage's image input as upload-capable in agent replay fixtures by @claude[bot] in #18338
- feat: restore tool-call work summary on reload and chat switch by @claude[bot] in #18282
- fix(agent): dismiss resolved paywalls by @christian-byrne in #18405
- test: add regression guard for node mode across workflow tab switches (#18441) by @claude[bot] in #18468
- fix: lock the canvas to selection-only while agent node picking is active by @claude[bot] in #18066
- chore: replace comfy-multi-player tarball pin with 0.3.5 by @christian-byrne in #18552
- [chore] Update Ingest API types from cloud@8d19cb1 by @comfy-pr-bot in #17930
- fix(e2e): stage devtools readable, and say so when it did not load by @christian-byrne in #18237
- test: migrate cloud auth telemetry automocks by @DrJKL in #18500
- fix(agent): drop the draft version from the turn request contract by @christian-byrne in #18224
- fix: agent tool-call chat completion lags canvas materialization (PM-1575/PM-1576) by @claude[bot] in #18391
- FE-2646 feat(account): the workspace deep-link contract, ?workspace= shared by the auth and billing SDKs by @dante01yoon in #18341
- test(agent): verify restored tool calls after chat switching by @christian-byrne in #18581
- fix: render widgets on insert_workflow-materialized nodes by @claude[bot] in #18598
- fix: insert_workflow nodes still render no widgets when execId derivation fails (PM-1580 follow-up) by @claude[bot] in #18604
- fix(website): handle missing abort APIs and label Workshop failures by @benjcooley in #18482
- feat(website): show which Router models route through which providers (DES-1106) by @shrimbly in #18489
- feat(website): add /share-news 307 redirects to the Router share page by @deepme987 in #18611
- fix(partner-gate): wait for API key validation and tag raw auth sessions by @MaanilVerma in #18597
- Update launches banner to promote Comfy Router by @robinjhuang in #18613
- FE-2767 feat(account): read Firebase configuration from the Cloud features endpoint by @dante01yoon in #18454
- test(queue): pin the system hour cycle when no clock preference is given by @christian-byrne in #18231
- test(agent): 35-case insert_workflow integration suite (widgets, links, subgraphs, templates) by @claude[bot] in #18607
- fix: resolve real LGraphNode for insert_workflow node ids in locator/callback path by @claude[bot] in #18616
- chore: convert the root scripts/*.js files to TypeScript by @DrJKL in #18560
- chore: enable low-count type-aware oxlint rules by @DrJKL in #18561
- fix(onboarding): report three onboarding failures that were silent by @MaanilVerma in #18603
- FE-2767 feat(billing): source the Stripe publishable key from the Cloud features endpoint by @dante01yoon in #18469
- chore: bump comfy-multi-player to 0.3.6 by @claude[bot] in #18626
- test: assert unpack telemetry and restored links for subgraph conversion by @christian-byrne in #18578
- test(agent): alternating-write (A -> B -> A) case for promoted subgraph widgets by @claude[bot] in #18629
- [backport core/1.55] fix(billing): drive the 3DS challenge in-session when the auth state lags by @comfy-pr-bot in #18749
- [backport core/1.55] fix(agent): use a neutral color palette and lighter text in the agent panel by @comfy-pr-bot in #18795
- [backport core/1.55] fix(agent): stop remote setWidget ops clobbering an in-progress local edit (#18766) by @christian-byrne in #18812
- [backport core/1.55] fix(agent): derive paywall visibility from current billing state (#18590) by @christian-byrne in #18813
- [backport core/1.55] FE-2767 fix(billing-web): confirm scheduled plan changes without a card form by @comfy-pr-bot in #18786
- [backport core/1.55] fix(billing-web): drive failed-payment recovery from the server's recovery_action by @comfy-pr-bot in #18776
- [backport core/1.55] feat(agent): update consent card launch video by @comfy-pr-bot in #18784
- [backport core/1.55] fix(billing-web): ship the design-system Inter faces in the build by @comfy-pr-bot in #18788
- [backport core/1.55] fix(billing-web): show when a cancelled plan ends by @comfy-pr-bot in #18832
- [backport core/1.55] fix(billing): stop offering Continue verification after the 3DS challenge completes by @comfy-pr-bot in #18820
- [backport core/1.55] fix(billing-web): theme Stripe Elements from the checkout's own theme scope by @comfy-pr-bot in #18791
- [backport core/1.55] FE-2891 fix(flags): guard the dev-override storage read by @dante01yoon in #18761
- [backport core/1.55] fix(billing): tell the customer when Billing & invoices is blocked instead of minting more portal sessions by @dante01yoon in #18799
- [backport core/1.55] test(agent): pin the nested-subgraph-instance insert_workflow gap (PR #18607 follow-up) by @comfy-pr-bot in #18676
- [backport core/1.55] fix(website): bump the Router catalog model count to 212 by @dante01yoon in #18844
- [backport core/1.55] fix: subgraph-interior widgets don't render in Vue mode after insert_workflow by @comfy-pr-bot in #18677
- [backport core/1.55] FE-3012 fix(billing): show the subscription progress toast on the SDK rail by @comfy-pr-bot in #18863
- [backport core/1.55] FE-2892 feat(account-core): web session client and session error codes by @comfy-pr-bot in #18846
- [backport core/1.55] fix(billing): refuse a subscribe over a pending operation this tab did not issue by @comfy-pr-bot in #18902
- [backport core/1.55] fix(billing): lock other plans while an earlier payment awaits bank verification by @comfy-pr-bot in #18895
- [backport core/1.55] fix(billing-web): price team plans by their credit stop by @comfy-pr-bot in #18905
- [backport core/1.55] fix(account-ui): re-theme Stripe Elements when the theme changes after mount by @dante01yoon in #18826
- [backport core/1.55] fix(billing-web): show the refusal instead of a blank page when a tab's workspace is gone by @comfy-pr-bot in #18929
- [backport core/1.55] [chore] Update Ingest API types from cloud@a2730a5 by @christian-byrne in #18919
- [backport core/1.55] FE-2895 feat(account-core): requestAuth authorize() for cookie requests by @dante01yoon in #18940
- [backport core/1.55] fix(agent): give the composer one soft edge and align the cursor with the hint by @comfy-pr-bot in #18956
- [backport core/1.55] fix(agent): change panel badge from alpha to beta by @comfy-pr-bot in #18960
- [backport core/1.55] fix(agent): match user bubble line spacing to reply text and remove outline by @comfy-pr-bot in #18964
- [backport core/1.55] FE-2900 feat(account-core): lazy workspace-token mint from the web session by @dante01yoon in #19000
- [backport core/1.55] fix(billing): bound fast polling for customer-blocked operations without an action by @comfy-pr-bot in #19043
- [backport core/1.55] fix(billing-web): offer a way back to ComfyUI when the entry workspace is refused by @comfy-pr-bot in #19046
- [backport core/1.55] FE-2894 feat(account-core): session-backed identity source and boot rules by @dante01yoon in #19018
- [backport core/1.55] FE-2897 feat(account-core): session lifecycle, create on sign-in, delete on sign-out, heartbeat by @dante01yoon in #19020
- [backport core/1.55] fix(agent): combine adjacent fragmented assets without reordering captioned assets by @comfy-pr-bot in #19079
- [backport core/1.55] fix(agent): show onboarding after first scoped consent (#19061) by @claude[bot] in #19083
- [backport core/1.55] fix(agent): omit redundant workflow name in bound run approvals (#19054) by @claude[bot] in #19086
- [backport core/1.55] fix(assets): open API-submitted jobs as workflows from the asset menu (#13957) by @christian-byrne in #19133
- [backport core/1.55] fix(VirtualGrid): correctly clamp visible range when item list shrinks or column count grows (#18588) by @christian-byrne in #19134
- [backport core/1.55] fix(security): harden sanitization against attribute breakout, form injection, and javascript: URLs (#18594) by @christian-byrne in #19138
- [backport core/1.55] fix(TextPreviewWidget): preserve bracket-delimited text instead of parsing it as HTML (#18589) by @christian-byrne in #19136
- [backport core/1.55] fix(groupNode): pair widget values to their originating node during subgraph conversion (#18596) by @christian-byrne in #19140
- [backport core/1.55] FE-2767 feat(billing): read the billing-web origin from the Cloud features endpoint by @comfy-pr-bot in #18668
- [core/1.55] fix(agent): keep the expanded agent panel inside the window (#18182) by @christian-byrne in #19037
- [backport core/1.55] FE-3013 fix(pricing): stop showing the catalog credits_cents as the credit grant (#18867) by @christian-byrne in #19161
- [backport core/1.55] fix: correctly hide run button on cloud when free tier is disabled (#18239) by @christian-byrne in #19163
- [backport core/1.55] fix(agent): stop retrying a permanently refused CRDT doc subscribe (#18704) by @christian-byrne in #19165
- [backport core/1.55] fix(agent): resolve the agent gate off /features by @christian-byrne in #19175
- [backport core/1.55] fix(agent): scroll restored conversation to latest by @christian-byrne in #19157
- [backport core/1.55] perf: skip document-wide modal scans while typing (#19057) by @christian-byrne in #19190
- [backport core/1.55] FE-3045 docs(adr): billing-web hosts checkout only; hosts own plan selection by @comfy-pr-bot in #19199
- [backport core/1.55] FE-3012 test(billing): hold billing progress toasts equal across the legacy and SDK rails by @comfy-pr-bot in #19203
- [backport core/1.55] FE-3013 test(billing): express plan catalog grants in cents in E2E fixtures by @comfy-pr-bot in #19200
- [backport core/1.55] FE-3045 refactor(billing-web): drop the billing-web plan grid; hosts own plan selection by @comfy-pr-bot in #19208
- [backport core/1.55] FE-3051 fix(billing): resume a parked checkout from Complete your payment by @comfy-pr-bot in #19206
- [backport core/1.55] FE-3054 fix(billing): refresh the app on every return from a hosted billing tab by @comfy-pr-bot in #19216
- [backport core/1.55] Fix agent delete-all recovery (#18404) by @christian-byrne in #19229
- [backport core/1.55] FE-3046 refactor(design-system): move buttonVariants into @comfyorg/design-system by @comfy-pr-bot in #19231
- [backport core/1.55] Fix agent gate auth lifecycle (#19219) by @christian-byrne in #19259
- [backport core/1.55] FE-2642 show server refusal reason (#19185) by @christian-byrne in #19305
- [backport core/1.55] FE-3046 feat(account-ui): shared checkout confirm, saved-method selector, card form and success by @comfy-pr-bot in #19308
- [backport core/1.55] FE-3018 feat(billing-web): full-page checkout page state and pure transition by @comfy-pr-bot in #19317
- [backport core/1.55] FE-3067 feat(billing-web): gate /v1/checkout on the billing_web_checkout_ui flag by @comfy-pr-bot in #19294
- [backport core/1.55] fix(agent): defer the consent offer past the first-run screen instead of dropping it by @christian-byrne in #19352
- [backport core/1.55] fix: keep template search working when custom node templates share a name by @comfy-pr-bot in #19407
- [backport core/1.55] test(agent): make the grant no-persistence check order-independent and pin the sign-out clear by @comfy-pr-bot in #19397
- [backport core/1.55] FE-3046 billing-web shared embedded checkout (#19099, #19100, #19101, #19104) by @dante01yoon in #19442
- [backport core/1.55] FE-1656 refactor(billing): remove the unconfirmed team subscription checkout util by @comfy-pr-bot in #19295
- [backport core/1.55] FE-3057 feat(billing): show the payment progress in the app while billing-web takes the payment by @comfy-pr-bot in #19438
- [backport core/1.55] Report approval asks the panel never delivered (#18952) by @christian-byrne in #19346
- [backport core/1.55] feat(agent): attach user id to agent feedback Typeform hidden fields by @comfy-pr-bot in #19371
- [backport core/1.55] FE-3052 fix(billing-web): explain a cancel refused while a plan change is in progress by @comfy-pr-bot in #19440
- [backport core/1.55] feat(agent): record every consent request outcome (#19430) by @christian-byrne in #19472
- [backport core/1.55] fix(agent): harden undeliverable ask telemetry by @christian-byrne in #19474
- [backport core/1.55] FE-3056 fix(billing-web): re-quote a stale subscribe quote the way the app does by @dante01yoon in #19481
- [backport core/1.55] feat(agent): instrument starter-prompt clicks and sends (#18991) by @christian-byrne in #19489
- [backport core/1.55] feat(agent): emit app:agent_error telemetry (TEL-8) (#16628) by @christian-byrne in #19496
- [backport core/1.55] fix(agent): address TEL-8 review findings by @christian-byrne in #19539
- [backport core/1.55] feat(agent): show the credits paywall when the workspace runs out by @christian-byrne in #19518
- [backport core/1.55] FE-3018 / FE-3019 / FE-3020 / FE-3021 / FE-3022 feat(billing-web): Milestone 3 full-page checkout behind billing_web_checkout_ui by @comfy-pr-bot in #19459
- [backport core/1.55] feat(agent): tailor starter prompts to cloud and local (#19283) by @christian-byrne in #19569
- refactor(agent): carry graph API rewrite to core/1.55 by @christian-byrne in #19583
- fix(agent): simplify active tab handling on core/1.55 by @christian-byrne in #19586
- [backport core/1.55] fix: start typing from anywhere in the agent composer prompt area by @christian-byrne in #19576
- [Backport core/1.55] Fix agent sender retry accounting and transport recovery by @christian-byrne in #19590
- [Backport core/1.55] Settle outstanding agent operations during detach by @christian-byrne in #19602
- [backport core/1.55] feat(agent): keep panel open through activation by @christian-byrne in #19631
- [backport core/1.55] fix(website): bump router catalog model count to 213 (#19574) by @christian-byrne in #19642
- [backport core/1.55] fix(billing-web): re-quote on QUOTE_STALE in the full-page checkout by @christian-byrne in #19643
- [backport core/1.55] fix(agent): sequence consent tour before held send by @christian-byrne in #19660
- [backport core/1.55] fix(agent): restore standing paywall after graph rewrite by @christian-byrne in #19662
- [backport core/1.55] feat: use generated ToolCallSummary type for persisted tool-call schema (#19585) by @claude[bot] in #19609
- [backport core/1.55] test: restore abandoned-slice browser coverage (#18840) by @christian-byrne in #19702
- [backport core/1.55] fix(agent): keep the turn live across a socket reconnect by @christian-byrne in #19694
- [backport core/1.55] FE-3113 fix(billing): report a terminal when a downgrade to personal needs reconciliation by @comfy-pr-bot in #19646
- [backport core/1.55] Complete 1.54 parity sweep by @christian-byrne in #19789
- [backport core/1.55] FE-3135 fix(billing): show Subscription paused copy for payment_failed renewals (#19677) by @christian-byrne in #19746
- [Backport core/1.55] fix(agent): make op sender teardown failure-safe by @christian-byrne in #19831
- [backport core/1.55] fix(agent): reconcile a hydrated streaming turn from REST after a refresh by @christian-byrne in #19846
- [backport core/1.55] Contain reentrant sender recovery (#19852) by @christian-byrne in #19853
- [backport core/1.55] Preserve seal ordering under reentry (#19860) by @christian-byrne in #19861
- [backport core/1.55] feat(agent): run the free-use messaging placement experiment (#19712) by @christian-byrne in #19836
- [backport core/1.55] test(agent): correct op sender seal expectations that never held (#19874) by @christian-byrne in #19900
- [backport core/1.55] fix: accept the Stripe custom billing portal domain by @comfy-pr-bot in #19903
- [backport core/1.55] fix(website): drop live docs catalog count test by @christian-byrne in #19952
- [backport core/1.55] refactor(canvas): centralize viewport lifecycle and framing by @christian-byrne in #19959
- [backport core/1.55] feat: cancel cloud asset downloads (#19281) by @christian-byrne in #19858
- [backport core/1.55] FE-3174 fix(cloud): read the login free-runs offer from the server by @comfy-pr-bot in #19955
- [backport core/1.55] FE-3129 feat(billing): gate Members credit limits behind their own flag (#19641) by @dante01yoon in #20006
- [backport core/1.55] FE-3013 feat(pricing): read the plan's raw credit grant from the catalog by @comfy-pr-bot in #19658
- [backport core/1.55] feat: download node outputs and asset selections as one zip (CORE-454) by @comfy-pr-bot in #19993
- [backport core/1.55] feat(telemetry): send client_message_id on the turn POST so the activation funnel joins (#18970) by @christian-byrne in #19995
- [backport core/1.55] fix: keep the partner nodes education card closed after the user dismisses it by @comfy-pr-bot in #20026
- [backport core/1.55] fix: harden task cancellation reconciliation (#20031) by @christian-byrne in #20044
- fix(core/1.55): guard keybind Escape target by @christian-byrne in #20064
- [backport core/1.55] fix: treat node error
detailsas optional, matching the backend contract by @comfy-pr-bot in #20081 - [backport core/1.55] fix(agent): release minimap graph-activity layer reliably on unmount by @comfy-pr-bot in #20075
- [backport core/1.55] fix(agent): make agent panel teardown total (#20078) by @christian-byrne in #20101
- [backport core/1.55] FE-3201 fix(workspace): keep Delete locked until a cancelled plan ends by @comfy-pr-bot in #20112
- [backport core/1.55] fix(assets): resolve hierarchical model categories by @comfy-pr-bot in #20127
- [backport core/1.55] fix(litegraph): recover graph ID allocation safely (#19239) by @christian-byrne in #20132
- [backport core/1.55] fix(load3d): apply workspace inset to every viewer by @christian-byrne in #20137
- [backport core/1.55] fix: close cancellation reconciliation review gaps (#20133) by @christian-byrne in #20160
- [backport core/1.55] fix: derive Create Bounding Boxes sources from stores by @comfy-pr-bot in #20188
- [backport core/1.55] feat(camera-angle): 3D camera angle picker widget for the CameraAngle node by @comfy-pr-bot in #20186
- [backport core/1.55] fix(dialog): keep modal size independent of the docked Agent panel by @comfy-pr-bot in #20125
- [backport core/1.55] fix(assets): resolve hierarchical legacy model categories (#19982) by @christian-byrne in #20248
- [backport core/1.55] feat(load3d): read the 3D save and preview nodes… by @jtydhr88 in #20250
- [backport core/1.55] perf(telemetry): split extension loading bootstrap timings by @christian-byrne in #20230
- [backport core/1.55] FE-3194 fix(billing): a blocked billing portal tab no longer shows legacy cancel success (#20036) by @dante01yoon in #20266
- 1.55.14 by @comfy-pr-bot in #20371
New Contributors
- @anupreet-comfy made their first contribution in #17950
Full Changelog: v1.55.11...v1.55.14