Commit Graph
59 Commits
Author SHA1 Message Date
Claude e439214b76 MXFP8: drop the claim that a forced compute dtype costs the speed (measured: same step times)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tw9fjWwkXVabCNSQ53xaW1
2026-10-29 11:21:09 +00:00
Claude 9278d17f8b MXFP8: also allowed with weight dtype bf16 (the usual setting for a bf16 file)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tw9fjWwkXVabCNSQ53xaW1
2026-10-29 11:10:57 +00:00
Claude 51acdb1c12 Diffusion Model Loader: MXFP8 result goes to the log, not only the status output
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tw9fjWwkXVabCNSQ53xaW1
2026-10-29 11:07:48 +00:00
Claude 3837d585e0 VAE Loader: optional decode-only VAE (Sol-H3-VAE, X2 Detail) while the main VAE encodes
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tw9fjW75aYB8UyVRZo6fCr
2026-10-29 10:59:06 +00:00
Claude b108d4f4f5 H3 loader: MXFP8 option for the middle blocks (Sol-H3 recipe), credit in README
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tw9fjW75aYB8UyVRZo6fCr
2026-10-29 09:44:49 +00:00
Claude f8955c2ef2 Keep ComfyUI's console on disk (Previous run in the Log window) and log memory at LoRA load and sampler start
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BzJLJWVu7RZnbRqm3nYAnX
2026-10-27 09:03:30 +00:00
Claude 9f8705dd63 Shot camera and SLA need H3-only traits: hidden on LTX (node fields can now require a trait)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BzJLJWVu7RZnbRqm3nYAnX
2026-10-27 08:29:22 +00:00
Claude a9f5c9f35d VAE loader: pass the file header to the VAE (audio VAEs need their config)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BzJLJWVu7RZnbRqm3nYAnX
2026-10-27 08:06:34 +00:00
Claude 2ce29a0998 SLA rising sparsity: note the first real H3 result
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0176SHndmQj7T1VtWAWZiNcq
2026-10-25 16:16:02 +00:00
Claude 5bc3ce3f95 SLA: test that the rising-share field is drawn only for the sla method
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0176SHndmQj7T1VtWAWZiNcq
2026-10-25 16:06:31 +00:00
Claude 527d368c82 SLA: optional rising sparsity (sla_sparsity_start), GSRS idea; CPU test env script
Skip fewer attention blocks on early steps and more on late ones, in a straight
line up to sla_sparsity. Off at 0, untested on H3. Credit GSRS (arXiv 2610.21129).
tools/test_env.sh and tools/cpuforce.py set up the suite on a GPU-less machine.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0176SHndmQj7T1VtWAWZiNcq
2026-10-25 16:05:33 +00:00
Claude 3adebb731f Rename FunPack to FunUI (5.0.3 Classy Chopper): /fun endpoint, wink logo, load-time migration of old names
Old project/workflow names and browser settings migrate on load; /funpack redirects to /fun.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016acRss69eH1235eRdFTZHY
2026-10-25 13:11:03 +00:00
Claude 156f86e618 fix: checkpoint loader reports a missing VAE; a start picture no pipeline slot takes is named as unused
Tests: VAE, LoRA (7 key dialects), CLIP and checkpoint loaders; every preset x every kind of picked file is used or named.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WP6HMLLhRYcghAEXK4KLwK
2026-10-21 04:36:20 +00:00
Claude c089fe3a9a test: every diffusion loader option loads a tiny H3 file; every reference kind reaches its H3 socket and passes ComfyUI validation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WP6HMLLhRYcghAEXK4KLwK
2026-10-21 04:29:20 +00:00
Claude ab100f85a4 LoRA training add-on: sets, tagger, trainer node on ComfyUI's Train LoRA, H3 support
Backend only (window follows). Switched on in Settings > Modules. H3 repairs proven on a tiny H3 on CPU, UNTESTED on real weights.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MpnF7GwNGMbngU11wjym7P
2026-10-17 15:05:57 +00:00
digital-garbageandClaude Sonnet 5.5 eeaf72ba31 fix: the fp32-over-bf16 warning says it runs slowly
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 03:21:20 +03:00
digital-garbageandClaude Sonnet 5.5 ad6d6b54e6 fix: plainer loader warning for fp32 compute over bf16 weights
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 03:20:57 +03:00
digital-garbageandClaude Sonnet 5.5 69eaa15ce0 fix: the fp32-over-bf16 loader note no longer claims it does not run
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 03:20:01 +03:00
digital-garbageandClaude Sonnet 5.5 4549ffc2b3 feat: Diffusion Model Loader says when fp32 compute is picked over bf16 weights
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 03:19:36 +03:00
digital-garbageandClaude Sonnet 5.5 6e5035671a fix: provider errors say 'failed while' once; import guard covers class/for/match bodies; diffusion picker lists .gguf again so a saved pick gets the install message; stale-module wording true for broken modules (attacker round 17)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 22:58:01 +03:00
digital-garbageandClaude Sonnet 5.5 5c2588a9b2 fix: import guard sees every import form and is shown to fail; diffusion picker hides .gguf with no backend; provider errors are logged; stale module ids said at the modifiers node too (attacker round 16)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 22:36:30 +03:00
digital-garbageandClaude Sonnet 5.5 a88b814b28 fix: modules no longer import each other (shared taste helper is a plain file); UI gates match real ids and are tested; boot cannot stall; empty pipelines refused; truncated .gguf listing says so (attacker round 15)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 22:10:20 +03:00
digital-garbageandClaude Sonnet 5.5 0f86ffd909 fix: .gguf listing walks by folder identity (sibling cycles, root links, case); dangling links not listed (attacker round 14)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 20:26:47 +03:00
digital-garbageandClaude Sonnet 5.5 3042532c0c fix: a symlinked folder aliasing a sibling is listed under both names; an undequantizable gguf tensor type names the file (attacker round 13)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 19:28:02 +03:00
digital-garbageandClaude Sonnet 5.5 76d534adb7 fix: symlink loops no longer stall the .gguf listing; a name with .. is refused after a link too (attacker round 12)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 19:17:23 +03:00
digital-garbageandClaude Sonnet 5.5 6416c1b032 fix: a symlinked .gguf inside the model folder loads again (attacker round 11)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 19:09:22 +03:00
digital-garbageandClaude Sonnet 5.5 b08fba7d58 fix: .gguf loading stays inside the model folder, ignores a Manager-disabled pack, keeps big fp32 values finite; text-encoder picker hides .gguf without the pack; truthful refusal text (attacker round 10)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 19:03:32 +03:00
digital-garbageandClaude Sonnet 5.5 40c3366214 fix: a text encoder with vision tensors beside mapped text loads; clear messages for a pack missing its gguf library and for pack breakage (attacker round 9)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 18:53:45 +03:00
digital-garbageandClaude Sonnet 5.5 dfa8f8edf2 fix: a vision-projector .gguf is not accepted as a text encoder; a pack whose gguf library is missing says how to fix it (attacker round 8)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 18:41:18 +03:00
digital-garbageandClaude Sonnet 5.5 f37a647d85 fix: the ComfyUI-GGUF pack's (state dict, extras) result is unpacked; a text-encoder .gguf with no backend says the pack, not pip; the Enhance picker hides .gguf encoders without the pack; docs name the pack requirement, restart, thresholds (attacker round 7)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 18:33:07 +03:00
digital-garbageandClaude Sonnet 5.5 e5568ec02b fix: a text-encoder .gguf is refused when ComfyUI-GGUF is absent too; docs no longer overclaim Ready to generate, failure behaviour, rating thresholds, Export; Start shots hint shortened (attacker round 6)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 18:22:38 +03:00
digital-garbageandClaude Sonnet 5.5 08550e3569 fix: H3 second-pass preset held back; unsupported .gguf text encoders are refused instead of loading as the wrong model; Start shots hint is true for H3; LTX module titled UNTESTED; docs corrected (failure behaviour, Taste key location, install caution, gguf, second pass) (attacker round 5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 18:10:57 +03:00
digital-garbage 41a75c3cd6 fix: server messages name the right Settings pages; effect, add-on, shot camera, LoRA, VAE, erase and SLA hints say what they do 2026-10-15 13:08:08 +03:00
digital-garbageandClaude Opus 5.5 8ce237dcdd feat: loader logs the file's real weight format (int8 file at bf16 says int8); warns when a cu12 torch on Blackwell halves int8 speed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 18:34:58 +03:00
digital-garbageandClaude Haiku 5.5 77748b7a7e fix: dense steps '0' means none, as the tooltip and the earlier commit say (was flagged as a bad token)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-10 16:15:51 +03:00
digital-garbageandClaude Haiku 5.5 78a418812b fix: SLA light references on comfy_kitchen pool in plain torch, so they run without Triton
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-10 16:13:15 +03:00
digital-garbageandClaude Opus 5.5 f313ed6ef6 fix: Triton SLA no longer falls back to dense when K arrives in another layout than Q
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:52:37 +03:00
digital-garbageandClaude Opus 5.5 71892d05fd fix: SLA dense steps count from 1 like a person does ('1' is the first; 0 means none in both fields); the run log names the steps that ran at full attention
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:49:15 +03:00
digital-garbageandClaude Opus 5.5 8fabfe3b3f feat: the model loader's fields read in order: file, storage, attention, then SLA as its choices narrow it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:40:01 +03:00
digital-garbageandClaude Opus 5.5 fc92e5869b feat: the model loader shows each SLA field only in the mode it belongs to (sparsity for sla/vsa, tau for sol-attn, block size and stabilize for Triton, tail for comfy_kitchen)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:38:45 +03:00
digital-garbageandClaude Opus 5.5 8eaf5be5f4 feat: SLA method choice (sla / sol-attn / vsa via ComfyUI's Model Sparse Attention); first step dense by default; dense steps read from the schedule, so a cancel or a two-call sampler no longer shifts them
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:30:59 +03:00
digital-garbageandClaude Opus 5.5 91f9cdb70d feat: SLA gains comfy_kitchen's int8 sol_attn engine, precise word/audio protection, reference tiers, dense steps, block 32, tail, stabilize motion; later wrappers no longer skipped
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:00:58 +03:00
digital-garbageandClaude Opus 5.5 837a4215a4 fix: v4 regressions before the rental: taste judge trains under inference mode; LoRA keys unwrapped, misfits dropped, no-match said; unsupported dtype said; missed run finish read from history; prompt nudge no longer holds the model
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 03:08:29 +03:00
digital-garbageandClaude Sonnet 5.5 054f18a525 fix: Generate reads the live screen, not a save; autosave delay is a setting that waits for typing; H3 preset always carries a LoRA loader (None = untouched)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 15:51:40 +03:00
digital-garbageandClaude Sonnet 5.5 d3f43c31e5 fix: shot camera cut times, rating undo, locked memory, re-roll caching; int8 speed caveat declared
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 14:21:10 +03:00
digital-garbageandClaude Sonnet 5.5 b9717ed1cc feat: int8_convrot option on the diffusion model loader (H3 bf16 file -> int8 + rotation at load)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 14:09:24 +03:00
digital-garbageandClaude Sonnet 5.5 639b29e697 fix: LTX temporal styles scaled nothing (core hands the wrapper a bare frame_rate); identity transfer on guided latents; context-window overlap cut below the window; fault record survives model clones
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-03 11:08:28 +03:00
digital-garbageandClaude Sonnet 5.5 f41136e3e0 fix: learners teach only from pushes that were felt, per setup; sla counter ignores throwaway calls; camera frame change; shot memory amount 0
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-02 09:44:24 +03:00
digital-garbageandClaude Sonnet 5 06621bb2e3 docs: note has_block's contains-not-is limit on SLA's H3 gate
Round 2 of extensive_testing on 548d99a found no exploitable defect --
has_block's "contains, not is" semantics are shared with minimax_h3's
own equally consequential is_h3() gate, and nothing in this codebase
nests diffusion_model in a wrapper that could trigger a false positive
today. Recorded as a one-line limit rather than left implicit, per the
round's only (non-blocking) suggestion.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 15:24:29 +03:00
digital-garbageandClaude Sonnet 5 548d99a39b fix: SLA's H3 gate now matches the qualified class, not a bare name
Round 1 of extensive_testing on 79ca8cf found is_h3_model() matched on
diffusion_model's bare class name ("MiniMaxH3Model"), inherited
unchanged from v4. This codebase's own core/traits.py.has_block()
documents exactly why that's unsafe for a name this generic: a
same-named class from an unrelated custom node or a future FunPack
model would be silently treated as H3 and sparsified at 0.90 with
H3-specific audio-prefix pinning -- the identical LTX-collision risk
this file's own docstring already warns about, just not guarded
against strongly enough. modules/models/minimax_h3 already qualifies
its own identical check (MODEL_CLASS = the dotted path); this port
carried over the private, weaker duplicate instead of reusing that
pattern.

Switched to core/traits.py's has_block() with the same qualified dotted
name, kept as a local string (not an import of modules/models/minimax_h3
itself, which pulls in comfy_extras at import time -- this file
deliberately stays importable without ComfyUI on the path). Added a
test exercising the exact collision the bare match would have missed:
a class named MiniMaxH3Model from an unrelated module.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 15:20:51 +03:00