Commit Graph

1000 Commits

Author SHA1 Message Date
Claude ba8b6d23e8 Fix LBM output never resized back to input dimensions
PIL Image.resize returns a new image; the result was discarded, so the
final output stayed at the snapped aspect-ratio bucket size instead of
being restored to the original input size.

https: //claude.ai/code/session_014QWKWgKvMevcuvfCnsYoT2
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 02:41:32 -04:00
Claude fd38a9bf63 Fix FreeU crash in ConsiStory script
Enabling FreeU called len() on the checkbox bool instead of the parsed
preset list, raising TypeError and aborting the run. Even without the
crash, all four FreeU parameters were passed the same value. Use the
parsed freeu_preset values, and log the invalid input before clearing it.

https: //claude.ai/code/session_014QWKWgKvMevcuvfCnsYoT2
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 02:41:32 -04:00
Claude cfcc7c7338 Fix MuLan negative prompt overwriting the positive prompt
When negative_prompt arrived as a list, the unwrap assigned it to
p.prompt instead of p.negative_prompt, replacing the user's prompt with
the negative prompt text and passing an unsupported list to the
pipeline.

https: //claude.ai/code/session_014QWKWgKvMevcuvfCnsYoT2
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 02:41:32 -04:00
Claude 7851afc707 Fix IP-Instruct crash in after() hook
The framework passes the script's ui values positionally, but after()
only accepted keyword args, so every run raised TypeError after
processing and the original pipeline was never restored. Accept *args
like sibling scripts.

https: //claude.ai/code/session_014QWKWgKvMevcuvfCnsYoT2
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 02:41:31 -04:00
Claude 00eff5e803 Fix PixelSmith proceeding on unsupported model types
The unsupported-model warning fell through and switched non-SDXL models
into PixelSmithXLPipeline with an SDXL VAE, corrupting the pipeline.
Return early like every sibling script does after this check.

https: //claude.ai/code/session_014QWKWgKvMevcuvfCnsYoT2
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 02:41:31 -04:00
Vladimir Mandic 745ccae962 Merge pull request #4904 from QualiaRain/fix/assorted-typos
Fix assorted small typos: dead __str__, unformatted messages, preview min-height
2026-06-11 08:20:07 +02:00
QualiaRain 2b9a387670 fix transposed tile dimensions in mixture tiling script
tile_width/tile_height and tile_col_overlap/tile_row_overlap were cross-assigned from p.height/p.width, transposing output geometry for every non-square tile size. Fixes #4902.
2026-06-11 02:04:14 -04:00
QualiaRain 148a7883a2 Fix assorted small typos: dead __str__, unformatted messages, preview min-height, tooltip
- processing.py: __str___ misspelled dunder never dispatched; rename to __str__
- demofusion.py: missing f-prefix printed literal {width}x{height} in user-facing error
- sparse_backend.py: missing f-prefix printed literal {size} in ValueError
- generation_parameters_copypaste.py: debug message typo 'Not not registered'
- progressBar.ts: live-preview gallery minHeight computed from naturalWidth; mirrors the adjacent maxHeight line (naturalHeight)
- settings.ts: stray } in settings-tab tooltip
2026-06-11 01:42:29 -04:00
Vladimir Mandic 84228f1657 update sampler behavior and user definable fallback
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-08 17:00:00 +02:00
Vladimir Mandic cad27637b4 schedulers validate ui sections
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-08 08:58:13 +02:00
Vladimir Mandic 5e99dee3c2 full codespell coverage
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-04 12:36:10 +02:00
Vladimir Mandic f25f325efb fixes based on full skills run
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-04 11:10:26 +02:00
Vladimir Mandic 35aa8c6422 fix openpose and add test-compile
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-02 17:06:18 +02:00
CalamitousFelicitousness f9ab0bf04d feat(api): add detailer postprocess script and /sdapi/v1/detail endpoint
Surface YoloRestorer.restore() as a standalone operation: a Detailer
postprocessing script in the Process tab and a thin /sdapi/v1/detail
endpoint, neither requiring a base generation pass.

- modules/postprocess/yolo.py: YoloRestorer.make_processing() builds the
  synthetic Img2Img processing object both entry points feed to restore(),
  resolving the seed so the inpaint passes are reproducible
- modules/api/process.py: post_detail handler exposes the full detailer
  parameter set and returns the detailed image plus optional annotations
  as base64
- scripts/postprocessing_detailer.py: reuses shared.yolo.ui('extras') and
  runs through make_processing()
- modules/postprocessing.py: run_extras takes a per-script script_args
  dict, also letting the extras API drive other scripts such as Remove
  background; omitting it leaves existing callers unchanged
- modules/api/models.py: ReqDetail / ResDetail
- modules/processing_info.py: guard create_infotext's Image/Hires CFG
  reporting against an unset (None) cfg_image, matching the is-not-None
  checks the other cfg_image readers use; the detailer inpaint pass runs
  with it unset
- test/test-detailer-api.py: covers both paths; effect tests measure the
  diff inside the detected region with extreme isolated parameter values,
  and the suite disables model quantization for the run and restores the
  original settings afterward
2026-06-01 00:25:59 +01:00
Vladimir Mandic d2d9f7caea captioning improvements and cleanup
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-29 21:10:56 +02:00
Vladimir Mandic 60e6c37e24 fix script params
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-22 18:28:22 +02:00
Vladimir Mandic 082498e6bd prompt-enhance-v2 with steering
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-22 16:58:23 +02:00
Vladimir Mandic a56d1d299e add wildcards to image metadata and note separate template from prompt field
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-19 09:45:20 +02:00
Vladimir Mandic f67562b912 - all guidance values set to -1 to enable using model defaults
- log default values used if not overriden by user
- rename inconsistent guidance variables:

p.cfg_scale
p.image_cfg_scale -> p.cfg_image
p.diffusers_guidance_rescale -> p.cfg_rescale
p.pag_scale -> p.cfg_true
p.pag_adaptive -> p.cfg_adaptive

Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-16 11:06:23 +02:00
Vladimir Mandic 62a3653b49 ty lint
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-11 09:34:17 +02:00
Vladimir Mandic feeafc6286 strict ruff without exclude
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-11 08:36:49 +02:00
Vladimir Mandic c8d6fd5cf8 Revert "much stricter ruff linting"
This reverts commit 310dbf1574.
2026-05-11 08:13:57 +02:00
Vladimir Mandic 8296d07ff8 Revert "stricter pylint"
This reverts commit c27481e45a.
2026-05-11 08:13:48 +02:00
Vladimir Mandic c27481e45a stricter pylint
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-11 07:51:47 +02:00
Vladimir Mandic 310dbf1574 much stricter ruff linting
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-11 07:15:37 +02:00
CalamitousFelicitousness f2227d7785 feat(autocomplete): apply keep-underscores setting to insertion
Rename `autocomplete_replace_underscores` to `autocomplete_keep_underscores`
(default false) so both autocomplete toggles read as "keep" semantics.
`insertTag` now honors the setting for both tag and artist modes, matching
the dropdown display. Embedding insertion always preserves underscores
because the names are filesystem identifiers.

- ui_definitions: rename option, flip default, update label
- scripts/autocomplete: rename handler, checkbox, and config-bridge keys
- javascript/autocomplete: invert render polarity; insertTag takes a `kind`
  parameter; drop the artist-mode hardcoded underscore replacement so the
  setting controls tags and artists uniformly

Closes #4827
2026-05-10 19:47:54 +01:00
Vladimir Mandic 74fc05c9f9 add sd-ultimate-upscale
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-08 10:16:17 +02:00
Vladimir Mandic 57f5bf5bd5 add missing js files
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-02 10:56:52 +02:00
Vladimir Mandic 823058b15a add prompt-enhance info to metadata
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-05-02 10:41:01 +02:00
Vladimir Mandic ff5bdd1b62 update diffusers and extra lint
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-04-28 08:58:49 +02:00
Vladimir Mandic bd7cfe1a57 Merge pull request #4804 from awsr/rocm-adv-update
ROCm Adv Mgr: Only autoload if config file exists
2026-04-27 20:23:02 +02:00
awsr 0cb7f426f9 Only autoload if config file exists. 2026-04-27 10:55:53 -07:00
Vladimir Mandic a654ece3cb Merge pull request #4798 from vladmandic/feat/rife-upgrade
Feat/rife upgrade
2026-04-27 07:17:47 +02:00
CalamitousFelicitousness ba4436916d fix(control): prevent duplicate save_video and unmask video module shadow
When a video script (animatediff, text2video, image2video, stablevideodiffusion)
runs via Control tab, both the script's save and control_run's end-of-run save
fired. The latter crashed silently because the local `video` cv2 capture name at
control_run:584 shadowed the modules.video import, so the duplicate was hidden
and the gallery video link never propagated.

- alias import as video_module to bypass the shadow
- p.video_saved marker set by each script
- control_run skips its end-of-run save when the marker is set
2026-04-27 01:32:30 +01:00
Vladimir Mandic 40ac6fd981 Merge pull request #4796 from vladmandic/feat/autocomplete-upgrade
feat(autocomplete): additional features for autocomplete
2026-04-26 07:31:40 +02:00
CalamitousFelicitousness 7d77b01c3d feat(video): wire scripts and control to video_interpolate field
Set p.video_interpolate at run() entry so process_images_inner picks up
the helper. Save calls keep their existing kwargs; the sentinel guard
skips re-interpolation when the helper already ran.

- animatediff, text2video, image2video, stablevideodiffusion route
  mp4_interpolate into p.video_interpolate
- modules/control/run.py routes the request video_interpolate arg
- xyz_grid intentionally untouched: its end-of-axis save_video stitches
  the cell slideshow, not per-cell videos; a future video_interpolate
  axis would set p.video_interpolate per cell via axis_options
2026-04-26 03:09:27 +01:00
CalamitousFelicitousness bf0f26cad5 feat(grading): record applied params in postprocess metadata
Color grading mutated pp.image but never wrote to pp.info, so the
chosen brightness/contrast/gamma/LUT/etc. were invisible in the
saved file's postprocessing/extras chunks and in the live Output
panel — unlike every other postprocessor (Upscale, Rembg, NudeNet,
PixelArt) which all stamp their settings.

Stamp every non-default GradingParams field as 'Grading <name>' so
the trail is consistent with the rest of the Process tab. LUT file
is recorded by basename rather than full path to keep the metadata
string compact.
2026-04-25 23:32:50 +01:00
CalamitousFelicitousness 54fba340ae feat(autocomplete): translations opt-in + companion skip filters
- new autocomplete_translations setting (default off); checkbox in script accordion + locale hint
- get_cached gates companion load on the opt; toggle-flip auto-syncs missing files in a background thread
- list_all_sync, local_names and config_json filter out *.translations.json so companion files never surface as selectable dicts
- one-time per-name warning when opt is on but companion is missing locally
2026-04-25 16:13:15 +01:00
CalamitousFelicitousness a60f215791 feat(autocomplete): @-prefix artist filter mode for Anima 2026-04-25 13:44:42 +01:00
vladmandic 40e550f1c3 add timer info
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-23 12:49:41 +02:00
CalamitousFelicitousness d04915a83f fix(grading): skip None kwargs so dataclass defaults apply 2026-04-14 00:10:43 +01:00
Vladimir Mandic b3f09aa417 Merge pull request #4707 from vladmandic/feat/tag-dictionaries
Feat/tag dictionaries
2026-04-13 11:57:48 +02:00
vladmandic a6c726f8d6 update tag-autocomplete
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-13 11:54:59 +02:00
vladmandic b103c2c1ff add gemma-4 heretic variant
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-12 19:06:08 +02:00
vladmandic 91bba59c0d fix lint
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-12 19:06:08 +02:00
resonantsky a48136bc78 Cleared default paths. 2026-04-10 19:36:51 +02:00
resonantsky 5696ffefde Linux wheel \bin\ folder to \lib\ folder fix 2026-04-10 14:05:51 +02:00
vladmandic 6a10fca1d0 update image guard
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-09 14:33:35 +02:00
vladmandic 14ba5e4ce7 update nudenet
Signed-off-by: vladmandic <mandic00@live.com>
2026-04-09 13:48:54 +02:00
resonantsky e7ca946381 Merge branch 'vladmandic:dev' into dev 2026-04-09 08:43:58 +02:00