InvokeAI 6.14.0rc2__tar.gz → 6.14.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1091) hide show
  1. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/PKG-INFO +4 -3
  2. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/SOURCES.txt +14 -2
  3. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/requires.txt +3 -2
  4. {invokeai-6.14.0rc2 → invokeai-6.14.2}/PKG-INFO +4 -3
  5. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/auth_dependencies.py +100 -20
  6. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/_access.py +52 -7
  7. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/app_info.py +16 -16
  8. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/auth.py +160 -21
  9. invokeai-6.14.2/invokeai/app/api/routers/board_images.py +435 -0
  10. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/boards.py +5 -5
  11. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/client_state.py +5 -5
  12. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/custom_nodes.py +41 -9
  13. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/gallery.py +60 -4
  14. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/image_moves.py +3 -3
  15. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/images.py +185 -61
  16. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/model_manager.py +361 -187
  17. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/model_relationships.py +4 -4
  18. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/recall_parameters.py +2 -2
  19. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/session_queue.py +115 -62
  20. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/style_presets.py +41 -22
  21. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/system_prompts.py +5 -5
  22. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/utilities.py +288 -4
  23. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/videos.py +268 -68
  24. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/virtual_boards.py +15 -6
  25. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/workflows.py +16 -15
  26. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/sockets.py +550 -16
  27. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api_app.py +202 -18
  28. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/fields.py +37 -1
  29. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_denoise.py +237 -43
  30. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_vae_decode.py +9 -1
  31. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_vae_encode.py +16 -3
  32. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/image.py +45 -41
  33. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_denoise.py +225 -43
  34. invokeai-6.14.2/invokeai/app/invocations/krea2_style_reference.py +235 -0
  35. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_text_encoder.py +2 -68
  36. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/metadata_linked.py +78 -0
  37. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/primitives.py +15 -0
  38. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_image_to_latents.py +51 -17
  39. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_latents_to_image.py +43 -25
  40. invokeai-6.14.2/invokeai/app/invocations/qwen_image_text_encoder.py +493 -0
  41. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/spandrel_image_to_image.py +21 -12
  42. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_denoise.py +80 -20
  43. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_latents_to_video.py +83 -57
  44. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_video_denoise.py +26 -14
  45. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_denoise.py +6 -2
  46. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/auth/token_service.py +6 -0
  47. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_image_records/board_image_records_base.py +9 -2
  48. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_image_records/board_image_records_sqlite.py +12 -3
  49. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_images/board_images_base.py +3 -2
  50. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_images/board_images_default.py +3 -2
  51. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_records/board_records_sqlite.py +16 -13
  52. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/config/config_default.py +31 -0
  53. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/download/download_default.py +21 -5
  54. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/events/events_base.py +16 -0
  55. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/events/events_common.py +38 -2
  56. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/providers/alibabacloud.py +30 -23
  57. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/gallery/gallery_base.py +27 -1
  58. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/gallery/gallery_common.py +19 -1
  59. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/gallery/gallery_default.py +75 -12
  60. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_files/image_files_base.py +22 -2
  61. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_files/image_files_disk.py +244 -31
  62. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_moves/image_moves_default.py +239 -108
  63. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_records/image_records_base.py +23 -2
  64. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_records/image_records_sqlite.py +87 -44
  65. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/images/images_common.py +9 -4
  66. invokeai-6.14.2/invokeai/app/services/images/images_default.py +571 -0
  67. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_images/model_images_default.py +28 -4
  68. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_install/model_install_default.py +21 -1
  69. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_load/model_load_default.py +15 -4
  70. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_records/model_records_base.py +7 -0
  71. invokeai-6.14.2/invokeai/app/services/object_serializer/object_serializer_common.py +12 -0
  72. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/object_serializer/object_serializer_disk.py +21 -2
  73. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/object_serializer/object_serializer_forward_cache.py +6 -1
  74. invokeai-6.14.2/invokeai/app/services/orphaned_models/__init__.py +9 -0
  75. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/orphaned_models/orphaned_models_service.py +26 -7
  76. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/session_processor_base.py +11 -0
  77. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/session_processor_default.py +239 -9
  78. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_queue/session_queue_base.py +6 -0
  79. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_queue/session_queue_common.py +29 -0
  80. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_queue/session_queue_sqlite.py +57 -6
  81. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/invocation_context.py +52 -18
  82. invokeai-6.14.2/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_31_add_user_token_epoch.py +41 -0
  83. invokeai-6.14.2/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_08_08_demote_system_user.py +58 -0
  84. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_24.py +9 -1
  85. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_records/style_preset_records_common.py +22 -15
  86. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/urls/urls_default.py +4 -1
  87. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/users/users_base.py +4 -0
  88. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/users/users_common.py +32 -0
  89. invokeai-6.14.2/invokeai/app/services/users/users_default.py +444 -0
  90. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_records/video_records_base.py +11 -0
  91. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_records/video_records_sqlite.py +24 -11
  92. invokeai-6.14.2/invokeai/app/util/path_safety.py +89 -0
  93. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/ssrf.py +9 -6
  94. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/user_management.py +18 -0
  95. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/anima_transformer.py +33 -0
  96. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/denoise.py +46 -50
  97. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/ref_image_extension.py +18 -4
  98. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/sampling_utils.py +113 -0
  99. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/quantized_loading.py +5 -5
  100. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/krea2/attention.py +83 -13
  101. invokeai-6.14.2/invokeai/backend/krea2/style_reference.py +462 -0
  102. invokeai-6.14.2/invokeai/backend/krea2/style_reference_extension.py +186 -0
  103. invokeai-6.14.2/invokeai/backend/krea2/style_reference_rf.py +56 -0
  104. invokeai-6.14.2/invokeai/backend/krea2/text_encoding.py +126 -0
  105. invokeai-6.14.2/invokeai/backend/krea2/vae_compat.py +151 -0
  106. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/flux2_variant.py +20 -0
  107. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/lora.py +31 -10
  108. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/mistral_encoder.py +5 -1
  109. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/pid_decoder.py +13 -8
  110. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/qwen3_encoder.py +117 -57
  111. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/load_base.py +109 -15
  112. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/load_default.py +130 -19
  113. invokeai-6.14.2/invokeai/backend/model_manager/load/model_cache/cache_record.py +146 -0
  114. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/model_cache.py +1240 -181
  115. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/anima.py +47 -39
  116. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/flux.py +25 -22
  117. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/gemma2_encoder.py +2 -2
  118. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/ideogram4.py +9 -8
  119. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/krea2.py +14 -19
  120. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/mistral_encoder.py +17 -7
  121. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/qwen_image.py +8 -7
  122. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/vae.py +3 -2
  123. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/z_image.py +40 -14
  124. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/starter_models.py +0 -9
  125. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/util/lora_metadata_extractor.py +8 -0
  126. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/dora_layer.py +45 -11
  127. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/utils.py +2 -1
  128. invokeai-6.14.2/invokeai/backend/patches/lora_conversions/krea2_lora_constants.py +125 -0
  129. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/krea2_lora_conversion_utils.py +75 -9
  130. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/decode.py +7 -9
  131. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/gguf/ggml_tensor.py +7 -1
  132. invokeai-6.14.2/invokeai/backend/quantization/gguf/loaders.py +121 -0
  133. invokeai-6.14.2/invokeai/backend/quantization/sdnq/detection.py +93 -0
  134. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/sdnq/loaders.py +10 -8
  135. invokeai-6.14.2/invokeai/backend/util/attention.py +251 -0
  136. invokeai-6.14.2/invokeai/backend/util/state_dict_loading.py +145 -0
  137. invokeai-6.14.2/invokeai/backend/util/vae_working_memory.py +442 -0
  138. invokeai-6.14.2/invokeai/backend/wan/memory_optimization.py +253 -0
  139. invokeai-6.14.2/invokeai/backend/wan/vae_decode.py +31 -0
  140. invokeai-6.14.2/invokeai/frontend/web/dist/assets/App-DvlZKGz7.js +157 -0
  141. invokeai-6.14.2/invokeai/frontend/web/dist/assets/index-BuK6cFYB.js +444 -0
  142. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/index.html +1 -1
  143. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/en.json +30 -11
  144. invokeai-6.14.2/invokeai/version/invokeai_version.py +1 -0
  145. {invokeai-6.14.0rc2 → invokeai-6.14.2}/pyproject.toml +24 -5
  146. invokeai-6.14.2/tests/test_calibrate_wan_vae_working_memory.py +138 -0
  147. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_config.py +31 -0
  148. invokeai-6.14.2/tests/test_object_serializer_disk.py +386 -0
  149. invokeai-6.14.0rc2/invokeai/app/api/routers/board_images.py +0 -223
  150. invokeai-6.14.0rc2/invokeai/app/invocations/qwen_image_text_encoder.py +0 -325
  151. invokeai-6.14.0rc2/invokeai/app/services/images/images_default.py +0 -414
  152. invokeai-6.14.0rc2/invokeai/app/services/object_serializer/object_serializer_common.py +0 -5
  153. invokeai-6.14.0rc2/invokeai/app/services/orphaned_models/__init__.py +0 -5
  154. invokeai-6.14.0rc2/invokeai/app/services/users/users_default.py +0 -318
  155. invokeai-6.14.0rc2/invokeai/backend/krea2/vae_compat.py +0 -57
  156. invokeai-6.14.0rc2/invokeai/backend/model_manager/load/model_cache/cache_record.py +0 -53
  157. invokeai-6.14.0rc2/invokeai/backend/patches/lora_conversions/krea2_lora_constants.py +0 -8
  158. invokeai-6.14.0rc2/invokeai/backend/quantization/gguf/loaders.py +0 -57
  159. invokeai-6.14.0rc2/invokeai/backend/quantization/sdnq/detection.py +0 -62
  160. invokeai-6.14.0rc2/invokeai/backend/util/attention.py +0 -37
  161. invokeai-6.14.0rc2/invokeai/backend/util/vae_working_memory.py +0 -244
  162. invokeai-6.14.0rc2/invokeai/frontend/web/dist/assets/App-C6Vlujfv.js +0 -156
  163. invokeai-6.14.0rc2/invokeai/frontend/web/dist/assets/index-Bd6Mw58F.js +0 -444
  164. invokeai-6.14.0rc2/invokeai/version/invokeai_version.py +0 -1
  165. invokeai-6.14.0rc2/tests/test_object_serializer_disk.py +0 -188
  166. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/dependency_links.txt +0 -0
  167. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/entry_points.txt +0 -0
  168. {invokeai-6.14.0rc2 → invokeai-6.14.2}/InvokeAI.egg-info/top_level.txt +0 -0
  169. {invokeai-6.14.0rc2 → invokeai-6.14.2}/LICENSE +0 -0
  170. {invokeai-6.14.0rc2 → invokeai-6.14.2}/LICENSE-HiDiffusion.txt +0 -0
  171. {invokeai-6.14.0rc2 → invokeai-6.14.2}/LICENSE-PiD.txt +0 -0
  172. {invokeai-6.14.0rc2 → invokeai-6.14.2}/LICENSE-SD1+SD2.txt +0 -0
  173. {invokeai-6.14.0rc2 → invokeai-6.14.2}/LICENSE-SDXL.txt +0 -0
  174. {invokeai-6.14.0rc2 → invokeai-6.14.2}/README.md +0 -0
  175. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/__init__.py +0 -0
  176. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/dependencies.py +0 -0
  177. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/extract_metadata_from_image.py +0 -0
  178. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/no_cache_staticfiles.py +0 -0
  179. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/api/routers/image_move_maintenance.py +0 -0
  180. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/assets/images/caution.png +0 -0
  181. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/__init__.py +0 -0
  182. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_denoise.py +0 -0
  183. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_image_to_latents.py +0 -0
  184. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_latents_to_image.py +0 -0
  185. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_lllite.py +0 -0
  186. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_lora_loader.py +0 -0
  187. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_model_loader.py +0 -0
  188. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/anima_text_encoder.py +0 -0
  189. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/baseinvocation.py +0 -0
  190. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/batch.py +0 -0
  191. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/blend_latents.py +0 -0
  192. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/call_saved_workflow.py +0 -0
  193. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/canny.py +0 -0
  194. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/canvas.py +0 -0
  195. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cogview4_denoise.py +0 -0
  196. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cogview4_image_to_latents.py +0 -0
  197. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cogview4_latents_to_image.py +0 -0
  198. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cogview4_model_loader.py +0 -0
  199. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cogview4_text_encoder.py +0 -0
  200. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/collections.py +0 -0
  201. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/color_map.py +0 -0
  202. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/compel.py +0 -0
  203. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/composition-nodes.py +0 -0
  204. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/constants.py +0 -0
  205. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/content_shuffle.py +0 -0
  206. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/controlnet.py +0 -0
  207. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/create_denoise_mask.py +0 -0
  208. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/create_gradient_mask.py +0 -0
  209. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/crop_latents.py +0 -0
  210. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/custom_nodes/README.md +0 -0
  211. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/cv.py +0 -0
  212. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/denoise_latents.py +0 -0
  213. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/depth_anything.py +0 -0
  214. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/dw_openpose.py +0 -0
  215. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ernie_image_denoise.py +0 -0
  216. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ernie_image_model_loader.py +0 -0
  217. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ernie_image_prompt_enhancer.py +0 -0
  218. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ernie_image_text_encoder.py +0 -0
  219. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ernie_image_vae_decode.py +0 -0
  220. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/external_image_generation.py +0 -0
  221. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/facetools.py +0 -0
  222. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_dev_lora_loader.py +0 -0
  223. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_dev_model_loader.py +0 -0
  224. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_dev_text_encoder.py +0 -0
  225. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_klein_lora_loader.py +0 -0
  226. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_klein_model_loader.py +0 -0
  227. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_klein_text_encoder.py +0 -0
  228. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux2_pid_decode.py +0 -0
  229. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_control_lora_loader.py +0 -0
  230. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_controlnet.py +0 -0
  231. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_denoise.py +0 -0
  232. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_fill.py +0 -0
  233. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_ip_adapter.py +0 -0
  234. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_kontext.py +0 -0
  235. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_lora_loader.py +0 -0
  236. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_model_loader.py +0 -0
  237. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_pid_decode.py +0 -0
  238. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_redux.py +0 -0
  239. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_text_encoder.py +0 -0
  240. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_vae_decode.py +0 -0
  241. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/flux_vae_encode.py +0 -0
  242. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/gemma2_encoder_loader.py +0 -0
  243. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/grounding_dino.py +0 -0
  244. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/hed.py +0 -0
  245. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideal_size.py +0 -0
  246. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideogram4_caption.py +0 -0
  247. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideogram4_denoise.py +0 -0
  248. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideogram4_latents_to_image.py +0 -0
  249. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideogram4_model_loader.py +0 -0
  250. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ideogram4_text_encoder.py +0 -0
  251. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/image_panels.py +0 -0
  252. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/image_to_latents.py +0 -0
  253. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/infill.py +0 -0
  254. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/ip_adapter.py +0 -0
  255. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_conditioning_rebalance.py +0 -0
  256. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_lora_loader.py +0 -0
  257. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_model_loader.py +0 -0
  258. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/krea2_seed_variance.py +0 -0
  259. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/latent_noise.py +0 -0
  260. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/latents_to_image.py +0 -0
  261. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/lineart.py +0 -0
  262. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/lineart_anime.py +0 -0
  263. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/llava_onevision_vllm.py +0 -0
  264. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/load_custom_nodes.py +0 -0
  265. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/logic.py +0 -0
  266. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/mask.py +0 -0
  267. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/math.py +0 -0
  268. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/mediapipe_face.py +0 -0
  269. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/metadata.py +0 -0
  270. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/mlsd.py +0 -0
  271. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/model.py +0 -0
  272. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/noise.py +0 -0
  273. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/normal_bae.py +0 -0
  274. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/param_easing.py +0 -0
  275. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/pbr_maps.py +0 -0
  276. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/pid_decoder_loader.py +0 -0
  277. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/pid_upscale.py +0 -0
  278. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/pidi.py +0 -0
  279. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/prompt.py +0 -0
  280. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/prompt_template.py +0 -0
  281. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_denoise.py +0 -0
  282. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_lora_loader.py +0 -0
  283. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_model_loader.py +0 -0
  284. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/qwen_image_pid_decode.py +0 -0
  285. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/resize_latents.py +0 -0
  286. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/scheduler.py +0 -0
  287. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_denoise.py +0 -0
  288. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_image_to_latents.py +0 -0
  289. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_latents_to_image.py +0 -0
  290. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_model_loader.py +0 -0
  291. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_pid_decode.py +0 -0
  292. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sd3_text_encoder.py +0 -0
  293. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sdxl.py +0 -0
  294. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/sdxl_pid_decode.py +0 -0
  295. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/segment_anything.py +0 -0
  296. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/strings.py +0 -0
  297. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/t2i_adapter.py +0 -0
  298. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/text_llm.py +0 -0
  299. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/tiled_multi_diffusion_denoise_latents.py +0 -0
  300. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/tiles.py +0 -0
  301. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/upscale.py +0 -0
  302. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/util.py +0 -0
  303. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/video_concat.py +0 -0
  304. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/video_frame_extract.py +0 -0
  305. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/video_frame_extract_range.py +0 -0
  306. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_ideal_dimensions.py +0 -0
  307. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_image_to_latents.py +0 -0
  308. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_latents_to_image.py +0 -0
  309. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_lora_loader.py +0 -0
  310. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_model_loader.py +0 -0
  311. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_ref_image_encoder.py +0 -0
  312. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/wan_text_encoder.py +0 -0
  313. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/workflow_return.py +0 -0
  314. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_control.py +0 -0
  315. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_image_to_latents.py +0 -0
  316. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_latents_to_image.py +0 -0
  317. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_lora_loader.py +0 -0
  318. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_model_loader.py +0 -0
  319. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_pid_decode.py +0 -0
  320. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_seed_variance_enhancer.py +0 -0
  321. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/invocations/z_image_text_encoder.py +0 -0
  322. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/run_app.py +0 -0
  323. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/__init__.py +0 -0
  324. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/app_settings/__init__.py +0 -0
  325. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/app_settings/app_settings_service.py +0 -0
  326. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/auth/__init__.py +0 -0
  327. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/auth/password_utils.py +0 -0
  328. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_image_records/__init__.py +0 -0
  329. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_images/__init__.py +0 -0
  330. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_images/board_images_common.py +0 -0
  331. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_records/board_records_base.py +0 -0
  332. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_records/board_records_common.py +0 -0
  333. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_video_records/__init__.py +0 -0
  334. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_video_records/board_video_records_base.py +0 -0
  335. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/board_video_records/board_video_records_sqlite.py +0 -0
  336. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/boards/__init__.py +0 -0
  337. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/boards/boards_base.py +0 -0
  338. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/boards/boards_common.py +0 -0
  339. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/boards/boards_default.py +0 -0
  340. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/bulk_download/__init__.py +0 -0
  341. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/bulk_download/bulk_download_base.py +0 -0
  342. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/bulk_download/bulk_download_common.py +0 -0
  343. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/bulk_download/bulk_download_default.py +0 -0
  344. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/client_state_persistence/client_state_persistence_base.py +0 -0
  345. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/client_state_persistence/client_state_persistence_sqlite.py +0 -0
  346. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/config/__init__.py +0 -0
  347. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/config/config_common.py +0 -0
  348. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/download/__init__.py +0 -0
  349. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/download/download_base.py +0 -0
  350. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/events/__init__.py +0 -0
  351. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/events/events_fastapievents.py +0 -0
  352. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/__init__.py +0 -0
  353. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/errors.py +0 -0
  354. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/external_generation_base.py +0 -0
  355. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/external_generation_common.py +0 -0
  356. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/external_generation_default.py +0 -0
  357. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/image_utils.py +0 -0
  358. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/providers/__init__.py +0 -0
  359. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/providers/gemini.py +0 -0
  360. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/providers/openai.py +0 -0
  361. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/providers/seedream.py +0 -0
  362. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/external_generation/startup.py +0 -0
  363. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/gallery/__init__.py +0 -0
  364. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_files/__init__.py +0 -0
  365. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_files/image_files_common.py +0 -0
  366. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_files/image_subfolder_strategy.py +0 -0
  367. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_moves/__init__.py +0 -0
  368. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_records/__init__.py +0 -0
  369. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/image_records/image_records_common.py +0 -0
  370. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/images/__init__.py +0 -0
  371. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/images/images_base.py +0 -0
  372. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_cache/__init__.py +0 -0
  373. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_cache/invocation_cache_base.py +0 -0
  374. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_cache/invocation_cache_common.py +0 -0
  375. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_cache/invocation_cache_memory.py +0 -0
  376. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_services.py +0 -0
  377. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_stats/__init__.py +0 -0
  378. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_stats/invocation_stats_base.py +0 -0
  379. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_stats/invocation_stats_common.py +0 -0
  380. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invocation_stats/invocation_stats_default.py +0 -0
  381. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/invoker.py +0 -0
  382. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/item_storage/__init__.py +0 -0
  383. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/item_storage/item_storage_base.py +0 -0
  384. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/item_storage/item_storage_common.py +0 -0
  385. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/item_storage/item_storage_memory.py +0 -0
  386. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_images/model_images_base.py +0 -0
  387. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_images/model_images_common.py +0 -0
  388. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_install/__init__.py +0 -0
  389. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_install/model_install_base.py +0 -0
  390. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_install/model_install_common.py +0 -0
  391. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_load/__init__.py +0 -0
  392. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_load/model_load_base.py +0 -0
  393. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_manager/__init__.py +0 -0
  394. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_manager/model_manager_base.py +0 -0
  395. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_manager/model_manager_common.py +0 -0
  396. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_manager/model_manager_default.py +0 -0
  397. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_records/__init__.py +0 -0
  398. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_records/model_records_sql.py +0 -0
  399. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_relationship_records/model_relationship_records_base.py +0 -0
  400. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_relationship_records/model_relationship_records_sqlite.py +0 -0
  401. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_relationships/model_relationships_base.py +0 -0
  402. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_relationships/model_relationships_common.py +0 -0
  403. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/model_relationships/model_relationships_default.py +0 -0
  404. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/names/__init__.py +0 -0
  405. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/names/names_base.py +0 -0
  406. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/names/names_common.py +0 -0
  407. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/names/names_default.py +0 -0
  408. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/object_serializer/object_serializer_base.py +0 -0
  409. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/__init__.py +0 -0
  410. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/session_processor_common.py +0 -0
  411. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/workflow_call_batch.py +0 -0
  412. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_processor/workflow_call_runtime.py +0 -0
  413. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/session_queue/__init__.py +0 -0
  414. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/__init__.py +0 -0
  415. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/graph.py +0 -0
  416. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/pagination.py +0 -0
  417. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite/__init__.py +0 -0
  418. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite/sqlite_common.py +0 -0
  419. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite/sqlite_database.py +0 -0
  420. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite/sqlite_util.py +0 -0
  421. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/__init__.py +0 -0
  422. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migration_loader.py +0 -0
  423. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/__init__.py +0 -0
  424. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_1.py +0 -0
  425. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_10.py +0 -0
  426. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_11.py +0 -0
  427. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_12.py +0 -0
  428. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_13.py +0 -0
  429. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_14.py +0 -0
  430. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_15.py +0 -0
  431. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_16.py +0 -0
  432. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_17.py +0 -0
  433. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_18.py +0 -0
  434. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_19.py +0 -0
  435. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2.py +0 -0
  436. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_20.py +0 -0
  437. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_01_add_session_queue_device.py +0 -0
  438. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_01_add_videos_tables.py +0 -0
  439. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_01_add_workflow_call_queue_metadata.py +0 -0
  440. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_03_round_robin_indexes.py +0 -0
  441. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_10_create_system_prompts.py +0 -0
  442. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_21.py +0 -0
  443. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_22.py +0 -0
  444. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_23.py +0 -0
  445. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_25.py +0 -0
  446. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_26.py +0 -0
  447. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_27.py +0 -0
  448. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_28.py +0 -0
  449. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_29.py +0 -0
  450. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_3.py +0 -0
  451. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_30.py +0 -0
  452. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_31.py +0 -0
  453. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_32.py +0 -0
  454. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_33.py +0 -0
  455. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_4.py +0 -0
  456. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_5.py +0 -0
  457. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_6.py +0 -0
  458. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_7.py +0 -0
  459. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_8.py +0 -0
  460. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_9.py +0 -0
  461. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_common.py +0 -0
  462. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_impl.py +0 -0
  463. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/workflow_call_compatibility.py +0 -0
  464. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/workflow_call_compatibility_common.py +0 -0
  465. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/shared/workflow_graph_builder.py +0 -0
  466. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Anime.png +0 -0
  467. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Architectural Visualization.png +0 -0
  468. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Character).png +0 -0
  469. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Fantasy).png +0 -0
  470. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Painterly).png +0 -0
  471. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Sci-Fi).png +0 -0
  472. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Environment Art.png +0 -0
  473. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Illustration.png +0 -0
  474. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Interior Design (Visualization).png +0 -0
  475. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Line Art.png +0 -0
  476. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Black and White).png +0 -0
  477. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (General).png +0 -0
  478. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Landscape).png +0 -0
  479. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Portrait).png +0 -0
  480. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Studio Lighting).png +0 -0
  481. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Product Rendering.png +0 -0
  482. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Sketch.png +0 -0
  483. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/Vehicles.png +0 -0
  484. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/default_style_preset_images/__init__.py +0 -0
  485. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/style_preset_images_base.py +0 -0
  486. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/style_preset_images_common.py +0 -0
  487. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_images/style_preset_images_disk.py +0 -0
  488. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_records/__init__.py +0 -0
  489. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_records/default_style_presets.json +0 -0
  490. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_records/style_preset_records_base.py +0 -0
  491. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/style_preset_records/style_preset_records_sqlite.py +0 -0
  492. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/system_prompt_records/__init__.py +0 -0
  493. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/system_prompt_records/system_prompt_records_base.py +0 -0
  494. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/system_prompt_records/system_prompt_records_common.py +0 -0
  495. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/system_prompt_records/system_prompt_records_sqlite.py +0 -0
  496. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/urls/__init__.py +0 -0
  497. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/urls/urls_base.py +0 -0
  498. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/users/__init__.py +0 -0
  499. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_files/__init__.py +0 -0
  500. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_files/video_files_base.py +0 -0
  501. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_files/video_files_common.py +0 -0
  502. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_files/video_files_disk.py +0 -0
  503. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_records/__init__.py +0 -0
  504. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/video_records/video_records_common.py +0 -0
  505. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/videos/__init__.py +0 -0
  506. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/videos/videos_base.py +0 -0
  507. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/videos/videos_common.py +0 -0
  508. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/videos/videos_default.py +0 -0
  509. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/virtual_boards/__init__.py +0 -0
  510. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/virtual_boards/virtual_boards_common.py +0 -0
  511. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/__init__.py +0 -0
  512. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/CogView4_TextToImage.json +0 -0
  513. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/ESRGAN Upscaling with Canny ControlNet.json +0 -0
  514. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Extend Video - Wan 2.2 Lightning w_ Concept LoRAs.json +0 -0
  515. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Extend Video - Wan 2.2 Lightning.json +0 -0
  516. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Extend Video to Image - Wan 2.2 Lightning.json +0 -0
  517. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/FLUX Image to Image.json +0 -0
  518. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Face Detailer with IP-Adapter & Canny (See Note in Details).json +0 -0
  519. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Flux Text to Image.json +0 -0
  520. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Image to Video - Wan 2.2 Lightning w_ Concept LoRAs.json +0 -0
  521. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Image to Video - Wan 2.2 Lightning.json +0 -0
  522. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Image to Video - Wan 2.2 TI2V-5B (Low Quality).json +0 -0
  523. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Interpolate 2 Images to Video - Wan 2.2 Lightning.json +0 -0
  524. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Multi ControlNet (Canny & Depth).json +0 -0
  525. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/MultiDiffusion SD1.5.json +0 -0
  526. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/MultiDiffusion SDXL.json +0 -0
  527. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Prompt from File.json +0 -0
  528. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/SD3.5 Text to Image.json +0 -0
  529. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SD1.5.json +0 -0
  530. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SDXL.json +0 -0
  531. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Image with LoRA.json +0 -0
  532. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Video - Wan 2.2 Lightning w_ Concept LoRAs.json +0 -0
  533. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Video - Wan 2.2 Lightning.json +0 -0
  534. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Text to Video - Wan 2.2 TI2V-5B (Low Quality).json +0 -0
  535. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Tiled Upscaling (Beta).json +0 -0
  536. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Wan 2.2 Image to Image.json +0 -0
  537. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/default_workflows/Wan 2.2 Text to Image.json +0 -0
  538. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/workflow_records_base.py +0 -0
  539. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/workflow_records_common.py +0 -0
  540. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_records/workflow_records_sqlite.py +0 -0
  541. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_base.py +0 -0
  542. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_common.py +0 -0
  543. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_disk.py +0 -0
  544. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/shared/__init__.py +0 -0
  545. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/shared/models.py +0 -0
  546. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/__init__.py +0 -0
  547. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/controlnet_utils.py +0 -0
  548. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/custom_openapi.py +0 -0
  549. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/dynamicprompts.py +0 -0
  550. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/metaenum.py +0 -0
  551. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/misc.py +0 -0
  552. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/model_exclude_null.py +0 -0
  553. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/profiler.py +0 -0
  554. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/startup_utils.py +0 -0
  555. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/step_callback.py +0 -0
  556. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/suppress_output.py +0 -0
  557. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/t5_model_identifier.py +0 -0
  558. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/thumbnails.py +0 -0
  559. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/ti_utils.py +0 -0
  560. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/torch_cuda_allocator.py +0 -0
  561. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/video_decode_worker.py +0 -0
  562. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/video_encoding.py +0 -0
  563. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/app/util/video_thumbnails.py +0 -0
  564. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/assets/fonts/inter/Inter-Regular.ttf +0 -0
  565. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/__init__.py +0 -0
  566. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/__init__.py +0 -0
  567. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/anima_transformer_patch.py +0 -0
  568. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/conditioning_data.py +0 -0
  569. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/control_net_lllite.py +0 -0
  570. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/regional_prompting.py +0 -0
  571. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/anima/scheduler_driver.py +0 -0
  572. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ernie_image/__init__.py +0 -0
  573. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ernie_image/denoise.py +0 -0
  574. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ernie_image/sampling_utils.py +0 -0
  575. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/__init__.py +0 -0
  576. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/controlnet_flux_output.py +0 -0
  577. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/instantx_controlnet_flux.py +0 -0
  578. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/state_dict_utils.py +0 -0
  579. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/xlabs_controlnet_flux.py +0 -0
  580. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/controlnet/zero_module.py +0 -0
  581. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/custom_block_processor.py +0 -0
  582. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/denoise.py +0 -0
  583. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/dype/__init__.py +0 -0
  584. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/dype/base.py +0 -0
  585. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/dype/embed.py +0 -0
  586. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/dype/presets.py +0 -0
  587. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/dype/rope.py +0 -0
  588. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/__init__.py +0 -0
  589. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/base_controlnet_extension.py +0 -0
  590. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/dype_extension.py +0 -0
  591. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/instantx_controlnet_extension.py +0 -0
  592. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/kontext_extension.py +0 -0
  593. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/regional_prompting_extension.py +0 -0
  594. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/xlabs_controlnet_extension.py +0 -0
  595. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/extensions/xlabs_ip_adapter_extension.py +0 -0
  596. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/flux_state_dict_utils.py +0 -0
  597. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/ip_adapter/__init__.py +0 -0
  598. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/ip_adapter/ip_double_stream_block_processor.py +0 -0
  599. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/ip_adapter/state_dict_utils.py +0 -0
  600. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/ip_adapter/xlabs_ip_adapter_flux.py +0 -0
  601. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/math.py +0 -0
  602. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/model.py +0 -0
  603. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/modules/autoencoder.py +0 -0
  604. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/modules/conditioner.py +0 -0
  605. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/modules/layers.py +0 -0
  606. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/redux/flux_redux_model.py +0 -0
  607. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/redux/flux_redux_state_dict_utils.py +0 -0
  608. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/sampling_utils.py +0 -0
  609. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/schedulers.py +0 -0
  610. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/text_conditioning.py +0 -0
  611. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux/util.py +0 -0
  612. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/__init__.py +0 -0
  613. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/extensions/__init__.py +0 -0
  614. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/extensions/regional_prompting_extension.py +0 -0
  615. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/flux2/text_conditioning.py +0 -0
  616. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/hidiffusion/__init__.py +0 -0
  617. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/hidiffusion/hidiffusion.py +0 -0
  618. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/hidiffusion/sd_module_key/sd15_module_key.txt +0 -0
  619. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/hidiffusion/sd_module_key/sdxl_module_key.txt +0 -0
  620. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/hidiffusion/utils.py +0 -0
  621. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/__init__.py +0 -0
  622. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/autoencoder.py +0 -0
  623. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/caption.py +0 -0
  624. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/constants.py +0 -0
  625. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/denoise.py +0 -0
  626. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/latent_norm.py +0 -0
  627. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/modeling_ideogram4.py +0 -0
  628. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/sampler_configs.py +0 -0
  629. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/sampling_utils.py +0 -0
  630. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/scheduler.py +0 -0
  631. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/text_encoding.py +0 -0
  632. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ideogram4/transformer_pair.py +0 -0
  633. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/__init__.py +0 -0
  634. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/assets/CIELab_to_UPLab.icc +0 -0
  635. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/basicsr/__init__.py +0 -0
  636. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/basicsr/arch_util.py +0 -0
  637. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/basicsr/rrdbnet_arch.py +0 -0
  638. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/canny.py +0 -0
  639. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/color_conversion.py +0 -0
  640. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/composition.py +0 -0
  641. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/content_shuffle.py +0 -0
  642. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/controlnet_processor.py +0 -0
  643. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/depth_anything/depth_anything_pipeline.py +0 -0
  644. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/dw_openpose/__init__.py +0 -0
  645. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/dw_openpose/onnxdet.py +0 -0
  646. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/dw_openpose/onnxpose.py +0 -0
  647. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/dw_openpose/utils.py +0 -0
  648. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/grounding_dino/__init__.py +0 -0
  649. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/grounding_dino/detection_result.py +0 -0
  650. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/grounding_dino/grounding_dino_pipeline.py +0 -0
  651. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/hed.py +0 -0
  652. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/imwatermark/vendor.py +0 -0
  653. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/infill_methods/cv2_inpaint.py +0 -0
  654. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/infill_methods/lama.py +0 -0
  655. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/infill_methods/mosaic.py +0 -0
  656. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/infill_methods/patchmatch.py +0 -0
  657. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/infill_methods/tile.py +0 -0
  658. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/invisible_watermark.py +0 -0
  659. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/lineart.py +0 -0
  660. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/lineart_anime.py +0 -0
  661. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mediapipe_face/__init__.py +0 -0
  662. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mediapipe_face/mediapipe_face_common.py +0 -0
  663. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mlsd/__init__.py +0 -0
  664. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mlsd/models/__init__.py +0 -0
  665. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mlsd/models/mbv2_mlsd_large.py +0 -0
  666. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mlsd/models/mbv2_mlsd_tiny.py +0 -0
  667. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/mlsd/utils.py +0 -0
  668. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/__init__.py +0 -0
  669. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/NNET.py +0 -0
  670. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/__init__.py +0 -0
  671. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/baseline.py +0 -0
  672. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/__init__.py +0 -0
  673. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/decoder.py +0 -0
  674. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/__init__.py +0 -0
  675. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/caffe2_benchmark.py +0 -0
  676. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/caffe2_validate.py +0 -0
  677. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/__init__.py +0 -0
  678. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py +0 -0
  679. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py +0 -0
  680. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py +0 -0
  681. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py +0 -0
  682. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/config.py +0 -0
  683. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py +0 -0
  684. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py +0 -0
  685. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py +0 -0
  686. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/helpers.py +0 -0
  687. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py +0 -0
  688. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/model_factory.py +0 -0
  689. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/version.py +0 -0
  690. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/hubconf.py +0 -0
  691. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_export.py +0 -0
  692. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_optimize.py +0 -0
  693. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_to_caffe.py +0 -0
  694. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_validate.py +0 -0
  695. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/setup.py +0 -0
  696. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/utils.py +0 -0
  697. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/validate.py +0 -0
  698. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/encoder.py +0 -0
  699. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/normal_bae/nets/submodules/submodules.py +0 -0
  700. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pbr_maps/architecture/block.py +0 -0
  701. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pbr_maps/architecture/pbr_rrdb_net.py +0 -0
  702. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pbr_maps/pbr_maps.py +0 -0
  703. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pbr_maps/utils/image_ops.py +0 -0
  704. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pidi/__init__.py +0 -0
  705. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pidi/model.py +0 -0
  706. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/pngwriter.py +0 -0
  707. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/realesrgan/__init__.py +0 -0
  708. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/realesrgan/realesrgan.py +0 -0
  709. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/safety_checker.py +0 -0
  710. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/segment_anything/__init__.py +0 -0
  711. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/segment_anything/mask_refinement.py +0 -0
  712. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/segment_anything/segment_anything_2_pipeline.py +0 -0
  713. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/segment_anything/segment_anything_pipeline.py +0 -0
  714. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/segment_anything/shared.py +0 -0
  715. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/image_util/util.py +0 -0
  716. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ip_adapter/__init__.py +0 -0
  717. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ip_adapter/ip_adapter.py +0 -0
  718. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ip_adapter/ip_attention_weights.py +0 -0
  719. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/ip_adapter/resampler.py +0 -0
  720. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/krea2/__init__.py +0 -0
  721. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/krea2/regional_prompting.py +0 -0
  722. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/krea2/sampling_utils.py +0 -0
  723. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/llava_onevision_pipeline.py +0 -0
  724. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_hash/hash_validator.py +0 -0
  725. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_hash/model_hash.py +0 -0
  726. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/__init__.py +0 -0
  727. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/__init__.py +0 -0
  728. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/base.py +0 -0
  729. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/clip_embed.py +0 -0
  730. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/clip_vision.py +0 -0
  731. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/controlnet.py +0 -0
  732. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/external_api.py +0 -0
  733. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/factory.py +0 -0
  734. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/flux_redux.py +0 -0
  735. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/gemma2_encoder.py +0 -0
  736. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/identification_utils.py +0 -0
  737. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/ip_adapter.py +0 -0
  738. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/llava_onevision.py +0 -0
  739. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/main.py +0 -0
  740. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/qwen3_vl_encoder.py +0 -0
  741. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/qwen_vl_encoder.py +0 -0
  742. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/siglip.py +0 -0
  743. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/spandrel.py +0 -0
  744. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/t2i_adapter.py +0 -0
  745. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/t5_encoder.py +0 -0
  746. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/text_llm.py +0 -0
  747. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/textual_inversion.py +0 -0
  748. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/unknown.py +0 -0
  749. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/vae.py +0 -0
  750. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/configs/wan_t5_encoder.py +0 -0
  751. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/__init__.py +0 -0
  752. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/memory_snapshot.py +0 -0
  753. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/__init__.py +0 -0
  754. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/cache_stats.py +0 -0
  755. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/cached_model/cached_model_only_full_load.py +0 -0
  756. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/cached_model/cached_model_with_partial_load.py +0 -0
  757. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/dev_utils.py +0 -0
  758. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/ram_budget.py +0 -0
  759. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/shared_cpu_weights.py +0 -0
  760. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/__init__.py +0 -0
  761. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/cast_to_device.py +0 -0
  762. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/__init__.py +0 -0
  763. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_conv1d.py +0 -0
  764. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_conv2d.py +0 -0
  765. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_diffusers_rms_norm.py +0 -0
  766. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_embedding.py +0 -0
  767. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_flux_rms_norm.py +0 -0
  768. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_group_norm.py +0 -0
  769. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_invoke_linear_8_bit_lt.py +0 -0
  770. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_invoke_linear_nf4.py +0 -0
  771. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_layer_norm.py +0 -0
  772. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_linear.py +0 -0
  773. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_module_mixin.py +0 -0
  774. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/utils.py +0 -0
  775. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/torch_module_autocast.py +0 -0
  776. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_cache/utils.py +0 -0
  777. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loader_registry.py +0 -0
  778. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/__init__.py +0 -0
  779. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/clip_vision.py +0 -0
  780. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/cogview4.py +0 -0
  781. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/comfyui_state_dict_utils.py +0 -0
  782. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/controlnet.py +0 -0
  783. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/ernie_image.py +0 -0
  784. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/flux2_state_dict_utils.py +0 -0
  785. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/generic_diffusers.py +0 -0
  786. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/ip_adapter.py +0 -0
  787. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/llava_onevision.py +0 -0
  788. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/lora.py +0 -0
  789. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/onnx.py +0 -0
  790. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/pid_decoder.py +0 -0
  791. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/sig_lip.py +0 -0
  792. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/spandrel_image_to_image.py +0 -0
  793. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/stable_diffusion.py +0 -0
  794. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/text_llm.py +0 -0
  795. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/textual_inversion.py +0 -0
  796. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_loaders/wan.py +0 -0
  797. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/model_util.py +0 -0
  798. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/load/optimizations.py +0 -0
  799. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/metadata/__init__.py +0 -0
  800. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/metadata/fetch/__init__.py +0 -0
  801. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/metadata/fetch/fetch_base.py +0 -0
  802. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/metadata/fetch/huggingface.py +0 -0
  803. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/metadata/metadata_base.py +0 -0
  804. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/model_on_disk.py +0 -0
  805. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/__init__.py +0 -0
  806. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/omi.py +0 -0
  807. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/__init__.py +0 -0
  808. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/__init__.py +0 -0
  809. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/__init__.py +0 -0
  810. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/convert_clip.py +0 -0
  811. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/convert_flux_lora.py +0 -0
  812. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/convert_lora_util.py +0 -0
  813. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/convert_sdxl_lora.py +0 -0
  814. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/convert/lora/convert_t5.py +0 -0
  815. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/model_spec/__init__.py +0 -0
  816. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/omi/vendor/model_spec/architecture.py +0 -0
  817. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/search.py +0 -0
  818. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/single_file_config_files.py +0 -0
  819. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/taxonomy.py +0 -0
  820. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/util/libc_util.py +0 -0
  821. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/util/model_util.py +0 -0
  822. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_manager/util/select_hf_files.py +0 -0
  823. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/model_patcher.py +0 -0
  824. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/onnx/onnx_runtime.py +0 -0
  825. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/__init__.py +0 -0
  826. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layer_patcher.py +0 -0
  827. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/__init__.py +0 -0
  828. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/base_layer_patch.py +0 -0
  829. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/flux_control_lora_layer.py +0 -0
  830. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/full_layer.py +0 -0
  831. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/ia3_layer.py +0 -0
  832. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/loha_layer.py +0 -0
  833. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/lokr_layer.py +0 -0
  834. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/lora_layer.py +0 -0
  835. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/lora_layer_base.py +0 -0
  836. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/merged_layer_patch.py +0 -0
  837. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/norm_layer.py +0 -0
  838. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/param_shape_utils.py +0 -0
  839. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/layers/set_parameter_layer.py +0 -0
  840. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/__init__.py +0 -0
  841. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/anima_lora_constants.py +0 -0
  842. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/anima_lora_conversion_utils.py +0 -0
  843. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_aitoolkit_lora_conversion_utils.py +0 -0
  844. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_bfl_peft_lora_conversion_utils.py +0 -0
  845. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_control_lora_utils.py +0 -0
  846. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_diffusers_lora_conversion_utils.py +0 -0
  847. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_kohya_lora_conversion_utils.py +0 -0
  848. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_lora_constants.py +0 -0
  849. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_onetrainer_bfl_lora_conversion_utils.py +0 -0
  850. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_onetrainer_lora_conversion_utils.py +0 -0
  851. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/flux_xlabs_lora_conversion_utils.py +0 -0
  852. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/formats.py +0 -0
  853. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/kohya_key_utils.py +0 -0
  854. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/peft_adapter_utils.py +0 -0
  855. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/qwen_image_lora_constants.py +0 -0
  856. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/qwen_image_lora_conversion_utils.py +0 -0
  857. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/sd_lora_conversion_utils.py +0 -0
  858. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/sdxl_lora_conversion_utils.py +0 -0
  859. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/wan_lora_constants.py +0 -0
  860. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/wan_lora_conversion_utils.py +0 -0
  861. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/z_image_lora_constants.py +0 -0
  862. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/lora_conversions/z_image_lora_conversion_utils.py +0 -0
  863. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/model_patch_raw.py +0 -0
  864. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/patches/pad_with_zeros.py +0 -0
  865. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/__init__.py +0 -0
  866. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/__init__.py +0 -0
  867. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/__init__.py +0 -0
  868. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/lazy_config/__init__.py +0 -0
  869. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/lazy_config/file_io.py +0 -0
  870. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/lazy_config/instantiate.py +0 -0
  871. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/lazy_config/lazy.py +0 -0
  872. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/lazy_config/registry.py +0 -0
  873. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/model.py +0 -0
  874. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/__init__.py +0 -0
  875. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/count_params.py +0 -0
  876. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/device.py +0 -0
  877. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/distributed.py +0 -0
  878. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/log.py +0 -0
  879. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_ext/imaginaire/utils/misc.py +0 -0
  880. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/__init__.py +0 -0
  881. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/inference/__init__.py +0 -0
  882. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/inference/checkpoint_registry.py +0 -0
  883. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/inference/pipeline_registry.py +0 -0
  884. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/models/__init__.py +0 -0
  885. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/models/pid_distill_model.py +0 -0
  886. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/models/pid_model.py +0 -0
  887. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/models/pixeldit_model.py +0 -0
  888. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/modules/__init__.py +0 -0
  889. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/modules/conditioner.py +0 -0
  890. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/networks/__init__.py +0 -0
  891. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/networks/lq_projection_2d.py +0 -0
  892. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/networks/pid_net.py +0 -0
  893. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/networks/pixeldit_official.py +0 -0
  894. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/utils/__init__.py +0 -0
  895. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/_src/utils/context_parallel.py +0 -0
  896. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/pid/state_dict_utils.py +0 -0
  897. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/__init__.py +0 -0
  898. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/bnb_llm_int8.py +0 -0
  899. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/bnb_nf4.py +0 -0
  900. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/gguf/utils.py +0 -0
  901. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/scripts/load_flux_model_bnb_llm_int8.py +0 -0
  902. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/scripts/load_flux_model_bnb_nf4.py +0 -0
  903. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/scripts/quantize_t5_xxl_bnb_llm_int8.py +0 -0
  904. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/sdnq/__init__.py +0 -0
  905. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/sdnq/sdnq_tensor.py +0 -0
  906. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/quantization/sdnq/utils.py +0 -0
  907. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/qwen3/__init__.py +0 -0
  908. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/qwen3/qwen3_tokenizer.py +0 -0
  909. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/qwen3/tokenizer/special_tokens_map.json +0 -0
  910. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/qwen3/tokenizer/tokenizer.json.gz +0 -0
  911. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/qwen3/tokenizer/tokenizer_config.json +0 -0
  912. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/raw_model.py +0 -0
  913. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/rectified_flow/__init__.py +0 -0
  914. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/rectified_flow/er_sde_scheduler.py +0 -0
  915. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/rectified_flow/rectified_flow_inpaint_extension.py +0 -0
  916. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/sig_lip/sig_lip_pipeline.py +0 -0
  917. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/spandrel_image_to_image_model.py +0 -0
  918. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/__init__.py +0 -0
  919. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/denoise_context.py +0 -0
  920. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusers_pipeline.py +0 -0
  921. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/__init__.py +0 -0
  922. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/conditioning_data.py +0 -0
  923. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/custom_atttention.py +0 -0
  924. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/regional_ip_data.py +0 -0
  925. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/regional_prompt_data.py +0 -0
  926. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/shared_invokeai_diffusion.py +0 -0
  927. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion/unet_attention_patcher.py +0 -0
  928. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/diffusion_backend.py +0 -0
  929. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extension_callback_type.py +0 -0
  930. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/base.py +0 -0
  931. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/controlnet.py +0 -0
  932. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/freeu.py +0 -0
  933. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/hidiffusion.py +0 -0
  934. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/inpaint.py +0 -0
  935. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/inpaint_model.py +0 -0
  936. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/lora.py +0 -0
  937. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/preview.py +0 -0
  938. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/rescale_cfg.py +0 -0
  939. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/seamless.py +0 -0
  940. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions/t2i_adapter.py +0 -0
  941. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/extensions_manager.py +0 -0
  942. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/hidiffusion_utils.py +0 -0
  943. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/multi_diffusion_pipeline.py +0 -0
  944. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/schedulers/__init__.py +0 -0
  945. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/schedulers/schedulers.py +0 -0
  946. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/stable_diffusion/vae_tiling.py +0 -0
  947. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/t5/__init__.py +0 -0
  948. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/t5/t5_tokenizer.py +0 -0
  949. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/t5/tokenizer/special_tokens_map.json +0 -0
  950. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/t5/tokenizer/tokenizer.json +0 -0
  951. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/t5/tokenizer/tokenizer_config.json +0 -0
  952. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/text_llm_pipeline.py +0 -0
  953. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/textual_inversion.py +0 -0
  954. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/tiles/__init__.py +0 -0
  955. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/tiles/tiles.py +0 -0
  956. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/tiles/utils.py +0 -0
  957. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/__init__.py +0 -0
  958. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/build_line.py +0 -0
  959. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/calc_tensor_size.py +0 -0
  960. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/catch_sigint.py +0 -0
  961. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/device_pool.py +0 -0
  962. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/devices.py +0 -0
  963. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/fp8.py +0 -0
  964. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/gallery_maintenance.py +0 -0
  965. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/hotfixes.py +0 -0
  966. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/level_zero.py +0 -0
  967. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/logging.py +0 -0
  968. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/mask.py +0 -0
  969. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/original_weights_storage.py +0 -0
  970. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/prefix_logger_adapter.py +0 -0
  971. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/silence_warnings.py +0 -0
  972. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/test_utils.py +0 -0
  973. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/util/util.py +0 -0
  974. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/wan/__init__.py +0 -0
  975. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/wan/extensions/__init__.py +0 -0
  976. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/wan/extensions/wan_ref_image_extension.py +0 -0
  977. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/wan/rocm_causal_conv3d.py +0 -0
  978. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/wan/sampling_utils.py +0 -0
  979. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/__init__.py +0 -0
  980. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/extensions/__init__.py +0 -0
  981. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/extensions/regional_prompting_extension.py +0 -0
  982. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/text_conditioning.py +0 -0
  983. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/z_image_control_adapter.py +0 -0
  984. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/z_image_control_transformer.py +0 -0
  985. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/z_image_controlnet_extension.py +0 -0
  986. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/z_image_patchify_utils.py +0 -0
  987. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/backend/z_image/z_image_transformer_patch.py +0 -0
  988. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/controlnet/cldm_v15.yaml +0 -0
  989. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/controlnet/cldm_v21.yaml +0 -0
  990. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/sd_xl_base.yaml +0 -0
  991. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/sd_xl_inpaint.yaml +0 -0
  992. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/sd_xl_refiner.yaml +0 -0
  993. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-finetune.yaml +0 -0
  994. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-finetune_style.yaml +0 -0
  995. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-inference-v.yaml +0 -0
  996. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-inference.yaml +0 -0
  997. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-inpainting-inference.yaml +0 -0
  998. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v1-m1-finetune.yaml +0 -0
  999. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v2-inference-v.yaml +0 -0
  1000. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v2-inference.yaml +0 -0
  1001. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v2-inpainting-inference-v.yaml +0 -0
  1002. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v2-inpainting-inference.yaml +0 -0
  1003. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/configs/stable-diffusion/v2-midas-inference.yaml +0 -0
  1004. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/__init__.py +0 -0
  1005. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/cli/__init__.py +0 -0
  1006. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/cli/arg_parser.py +0 -0
  1007. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/install/__init__.py +0 -0
  1008. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/install/import_images.py +0 -0
  1009. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/__init__.py +0 -0
  1010. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/App-tn1JZtBo.css +0 -0
  1011. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/browser-ponyfill-BpMPqZAt.js +0 -0
  1012. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/chunk-jRWAZmH_.js +0 -0
  1013. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/denoising-strength-4mznP2tj.png +0 -0
  1014. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/commercial-license-bg.png +0 -0
  1015. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/denoising-strength.png +0 -0
  1016. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-alert-favicon.svg +0 -0
  1017. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-avatar-circle.svg +0 -0
  1018. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-avatar-square.svg +0 -0
  1019. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-favicon.png +0 -0
  1020. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-favicon.svg +0 -0
  1021. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-key-char-lrg.svg +0 -0
  1022. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-key-char-sml.svg +0 -0
  1023. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-lrg.svg +0 -0
  1024. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-sml.svg +0 -0
  1025. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-lrg.svg +0 -0
  1026. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-sml.svg +0 -0
  1027. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-lrg.svg +0 -0
  1028. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-sml.svg +0 -0
  1029. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-ylw-lrg.svg +0 -0
  1030. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-lrg.svg +0 -0
  1031. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-sml.svg +0 -0
  1032. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-tag-lrg.svg +0 -0
  1033. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-tag-sml.svg +0 -0
  1034. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-charcoal.svg +0 -0
  1035. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-white.svg +0 -0
  1036. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/images/mask.svg +0 -0
  1037. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
  1038. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
  1039. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
  1040. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
  1041. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  1042. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  1043. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  1044. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/assets/worker-DrJIfe_t.js +0 -0
  1045. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/ar.json +0 -0
  1046. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/az.json +0 -0
  1047. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/bg.json +0 -0
  1048. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/de.json +0 -0
  1049. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/en-GB.json +0 -0
  1050. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/es.json +0 -0
  1051. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/fi.json +0 -0
  1052. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/fr.json +0 -0
  1053. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/he.json +0 -0
  1054. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/hu.json +0 -0
  1055. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/it.json +0 -0
  1056. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/ja.json +0 -0
  1057. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/ko.json +0 -0
  1058. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/mn.json +0 -0
  1059. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/nl.json +0 -0
  1060. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/pl.json +0 -0
  1061. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/pt-BR.json +0 -0
  1062. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/pt.json +0 -0
  1063. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/ro.json +0 -0
  1064. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/ru.json +0 -0
  1065. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/sv.json +0 -0
  1066. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/tr.json +0 -0
  1067. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/uk.json +0 -0
  1068. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/vi.json +0 -0
  1069. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/zh-CN.json +0 -0
  1070. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/dist/locales/zh-Hant.json +0 -0
  1071. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/scripts/clean_translations.py +0 -0
  1072. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/frontend/web/static/docs/invoke-favicon-docs.svg +0 -0
  1073. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/invocation_api/__init__.py +0 -0
  1074. {invokeai-6.14.0rc2 → invokeai-6.14.2}/invokeai/version/__init__.py +0 -0
  1075. {invokeai-6.14.0rc2 → invokeai-6.14.2}/setup.cfg +0 -0
  1076. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_asyncio_shutdown.py +0 -0
  1077. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_check_pins.py +0 -0
  1078. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_dangerously_run_function_in_subprocess.py +0 -0
  1079. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_docs_json_export.py +0 -0
  1080. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_graph_execution_state.py +0 -0
  1081. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_imports.py +0 -0
  1082. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_invocation_cache_memory.py +0 -0
  1083. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_item_storage_memory.py +0 -0
  1084. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_model_hash.py +0 -0
  1085. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_model_search.py +0 -0
  1086. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_node_graph.py +0 -0
  1087. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_nodes.py +0 -0
  1088. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_path.py +0 -0
  1089. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_profiler.py +0 -0
  1090. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_session_queue.py +0 -0
  1091. {invokeai-6.14.0rc2 → invokeai-6.14.2}/tests/test_sqlite_migrator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: InvokeAI
3
- Version: 6.14.0rc2
3
+ Version: 6.14.2
4
4
  Summary: A full-featured AI-assisted image generation environment designed for creatives and enthusiasts.
5
5
  Author-email: Invoke <support@invoke.ai>
6
6
  License: Apache License
@@ -214,7 +214,7 @@ License-File: LICENSE-SDXL.txt
214
214
  Requires-Dist: accelerate
215
215
  Requires-Dist: bitsandbytes; sys_platform != "darwin"
216
216
  Requires-Dist: compel<3,>=2.4.0
217
- Requires-Dist: diffusers[torch]==0.39.0
217
+ Requires-Dist: diffusers[torch]==0.40.0
218
218
  Requires-Dist: gguf
219
219
  Requires-Dist: mediapipe==0.10.14
220
220
  Requires-Dist: mistral-common<2,>=1.5.4
@@ -233,7 +233,7 @@ Requires-Dist: torchsde
233
233
  Requires-Dist: torchvision
234
234
  Requires-Dist: transformers<5.6,>=5.5
235
235
  Requires-Dist: fastapi-events
236
- Requires-Dist: fastapi==0.118.3
236
+ Requires-Dist: fastapi<0.142,>=0.141.1
237
237
  Requires-Dist: huggingface-hub
238
238
  Requires-Dist: networkx
239
239
  Requires-Dist: pydantic-settings
@@ -247,6 +247,7 @@ Requires-Dist: dnspython
247
247
  Requires-Dist: dynamicprompts
248
248
  Requires-Dist: einops
249
249
  Requires-Dist: email-validator>=2.0.0
250
+ Requires-Dist: fonttools[woff]
250
251
  Requires-Dist: passlib[bcrypt]>=1.7.4
251
252
  Requires-Dist: picklescan
252
253
  Requires-Dist: pillow
@@ -124,6 +124,7 @@ invokeai/app/invocations/krea2_denoise.py
124
124
  invokeai/app/invocations/krea2_lora_loader.py
125
125
  invokeai/app/invocations/krea2_model_loader.py
126
126
  invokeai/app/invocations/krea2_seed_variance.py
127
+ invokeai/app/invocations/krea2_style_reference.py
127
128
  invokeai/app/invocations/krea2_text_encoder.py
128
129
  invokeai/app/invocations/latent_noise.py
129
130
  invokeai/app/invocations/latents_to_image.py
@@ -359,6 +360,8 @@ invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_01_add
359
360
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_01_add_workflow_call_queue_metadata.py
360
361
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_03_round_robin_indexes.py
361
362
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_10_create_system_prompts.py
363
+ invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_07_31_add_user_token_epoch.py
364
+ invokeai/app/services/shared/sqlite_migrator/migrations/migration_2026_08_08_demote_system_user.py
362
365
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_21.py
363
366
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_22.py
364
367
  invokeai/app/services/shared/sqlite_migrator/migrations/migration_23.py
@@ -473,6 +476,7 @@ invokeai/app/util/dynamicprompts.py
473
476
  invokeai/app/util/metaenum.py
474
477
  invokeai/app/util/misc.py
475
478
  invokeai/app/util/model_exclude_null.py
479
+ invokeai/app/util/path_safety.py
476
480
  invokeai/app/util/profiler.py
477
481
  invokeai/app/util/ssrf.py
478
482
  invokeai/app/util/startup_utils.py
@@ -657,6 +661,10 @@ invokeai/backend/krea2/__init__.py
657
661
  invokeai/backend/krea2/attention.py
658
662
  invokeai/backend/krea2/regional_prompting.py
659
663
  invokeai/backend/krea2/sampling_utils.py
664
+ invokeai/backend/krea2/style_reference.py
665
+ invokeai/backend/krea2/style_reference_extension.py
666
+ invokeai/backend/krea2/style_reference_rf.py
667
+ invokeai/backend/krea2/text_encoding.py
660
668
  invokeai/backend/krea2/vae_compat.py
661
669
  invokeai/backend/model_hash/hash_validator.py
662
670
  invokeai/backend/model_hash/model_hash.py
@@ -931,12 +939,15 @@ invokeai/backend/util/mask.py
931
939
  invokeai/backend/util/original_weights_storage.py
932
940
  invokeai/backend/util/prefix_logger_adapter.py
933
941
  invokeai/backend/util/silence_warnings.py
942
+ invokeai/backend/util/state_dict_loading.py
934
943
  invokeai/backend/util/test_utils.py
935
944
  invokeai/backend/util/util.py
936
945
  invokeai/backend/util/vae_working_memory.py
937
946
  invokeai/backend/wan/__init__.py
947
+ invokeai/backend/wan/memory_optimization.py
938
948
  invokeai/backend/wan/rocm_causal_conv3d.py
939
949
  invokeai/backend/wan/sampling_utils.py
950
+ invokeai/backend/wan/vae_decode.py
940
951
  invokeai/backend/wan/extensions/__init__.py
941
952
  invokeai/backend/wan/extensions/wan_ref_image_extension.py
942
953
  invokeai/backend/z_image/__init__.py
@@ -971,12 +982,12 @@ invokeai/frontend/install/__init__.py
971
982
  invokeai/frontend/install/import_images.py
972
983
  invokeai/frontend/web/__init__.py
973
984
  invokeai/frontend/web/dist/index.html
974
- invokeai/frontend/web/dist/assets/App-C6Vlujfv.js
985
+ invokeai/frontend/web/dist/assets/App-DvlZKGz7.js
975
986
  invokeai/frontend/web/dist/assets/App-tn1JZtBo.css
976
987
  invokeai/frontend/web/dist/assets/browser-ponyfill-BpMPqZAt.js
977
988
  invokeai/frontend/web/dist/assets/chunk-jRWAZmH_.js
978
989
  invokeai/frontend/web/dist/assets/denoising-strength-4mznP2tj.png
979
- invokeai/frontend/web/dist/assets/index-Bd6Mw58F.js
990
+ invokeai/frontend/web/dist/assets/index-BuK6cFYB.js
980
991
  invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2
981
992
  invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2
982
993
  invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2
@@ -1041,6 +1052,7 @@ invokeai/invocation_api/__init__.py
1041
1052
  invokeai/version/__init__.py
1042
1053
  invokeai/version/invokeai_version.py
1043
1054
  tests/test_asyncio_shutdown.py
1055
+ tests/test_calibrate_wan_vae_working_memory.py
1044
1056
  tests/test_check_pins.py
1045
1057
  tests/test_config.py
1046
1058
  tests/test_dangerously_run_function_in_subprocess.py
@@ -1,6 +1,6 @@
1
1
  accelerate
2
2
  compel<3,>=2.4.0
3
- diffusers[torch]==0.39.0
3
+ diffusers[torch]==0.40.0
4
4
  gguf
5
5
  mediapipe==0.10.14
6
6
  mistral-common<2,>=1.5.4
@@ -17,7 +17,7 @@ torchsde
17
17
  torchvision
18
18
  transformers<5.6,>=5.5
19
19
  fastapi-events
20
- fastapi==0.118.3
20
+ fastapi<0.142,>=0.141.1
21
21
  huggingface-hub
22
22
  networkx
23
23
  pydantic-settings
@@ -31,6 +31,7 @@ dnspython
31
31
  dynamicprompts
32
32
  einops
33
33
  email-validator>=2.0.0
34
+ fonttools[woff]
34
35
  passlib[bcrypt]>=1.7.4
35
36
  picklescan
36
37
  pillow
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: InvokeAI
3
- Version: 6.14.0rc2
3
+ Version: 6.14.2
4
4
  Summary: A full-featured AI-assisted image generation environment designed for creatives and enthusiasts.
5
5
  Author-email: Invoke <support@invoke.ai>
6
6
  License: Apache License
@@ -214,7 +214,7 @@ License-File: LICENSE-SDXL.txt
214
214
  Requires-Dist: accelerate
215
215
  Requires-Dist: bitsandbytes; sys_platform != "darwin"
216
216
  Requires-Dist: compel<3,>=2.4.0
217
- Requires-Dist: diffusers[torch]==0.39.0
217
+ Requires-Dist: diffusers[torch]==0.40.0
218
218
  Requires-Dist: gguf
219
219
  Requires-Dist: mediapipe==0.10.14
220
220
  Requires-Dist: mistral-common<2,>=1.5.4
@@ -233,7 +233,7 @@ Requires-Dist: torchsde
233
233
  Requires-Dist: torchvision
234
234
  Requires-Dist: transformers<5.6,>=5.5
235
235
  Requires-Dist: fastapi-events
236
- Requires-Dist: fastapi==0.118.3
236
+ Requires-Dist: fastapi<0.142,>=0.141.1
237
237
  Requires-Dist: huggingface-hub
238
238
  Requires-Dist: networkx
239
239
  Requires-Dist: pydantic-settings
@@ -247,6 +247,7 @@ Requires-Dist: dnspython
247
247
  Requires-Dist: dynamicprompts
248
248
  Requires-Dist: einops
249
249
  Requires-Dist: email-validator>=2.0.0
250
+ Requires-Dist: fonttools[woff]
250
251
  Requires-Dist: passlib[bcrypt]>=1.7.4
251
252
  Requires-Dist: picklescan
252
253
  Requires-Dist: pillow
@@ -1,19 +1,73 @@
1
1
  """FastAPI dependencies for authentication."""
2
2
 
3
- from typing import Annotated
3
+ from typing import TYPE_CHECKING, Annotated
4
4
 
5
5
  from fastapi import Cookie, Depends, HTTPException, status
6
6
  from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer
7
7
 
8
8
  from invokeai.app.api.dependencies import ApiDependencies
9
9
  from invokeai.app.services.auth.token_service import TokenData, verify_token
10
+ from invokeai.app.services.users.users_common import SYSTEM_USER_ID
10
11
  from invokeai.backend.util.logging import logging
11
12
 
13
+ if TYPE_CHECKING:
14
+ from invokeai.app.services.users.users_common import UserDTO
15
+
12
16
  logger = logging.getLogger(__name__)
13
17
 
14
18
  # HTTP Bearer token security scheme
15
19
  security = HTTPBearer(auto_error=False)
16
20
  MEDIA_TOKEN_COOKIE = "invokeai_media_token"
21
+ # Deliberately indistinguishable from an ordinary expiry to a client: a token that fails
22
+ # the epoch check is simply no longer valid, and saying *why* would tell a holder of a
23
+ # stolen token that the account's password was just rotated.
24
+ TOKEN_REVOKED_DETAIL = "Invalid or expired authentication token"
25
+
26
+
27
+ def resolve_authorized_user(token_data: TokenData) -> "UserDTO | None":
28
+ """Return the account a verified token still grants access to, or None.
29
+
30
+ This is the single place that decides whether a syntactically valid token is still
31
+ honored, and every authenticated entry point must go through it: the REST
32
+ dependencies below, the Socket.IO handshake, and the video-upload ASGI gate. Keeping
33
+ the rules in one function is deliberate — they were previously repeated at each call
34
+ site, and a check added to some copies but not others is indistinguishable from no
35
+ check at all on the paths that were missed.
36
+
37
+ A token is honored when all four hold:
38
+
39
+ - it does not claim the internal ``system`` account,
40
+ - the account still exists,
41
+ - it is active,
42
+ - and the token carries the account's current revocation epoch. Any mismatch counts
43
+ as revoked: the token was not issued from the record as it now stands. Tokens
44
+ predating the claim decode to 0 and so remain valid against a record that has never
45
+ been bumped, which is why upgrading logs nobody out.
46
+
47
+ Raises whatever the user service raises; callers that must fail closed should catch.
48
+ """
49
+ # `system` owns everything carried over from before multiuser support, and is not a
50
+ # login account: `UserService.authenticate` refuses it and the migration clears any
51
+ # password left on the row. Neither of those reaches a token that was *already issued*
52
+ # — on an instance that set a password through the old `PATCH /auth/users/system` hole
53
+ # and logged in before it was closed, the JWT survives the upgrade, and nothing else
54
+ # here would reject it: the row is deliberately kept active and its epoch still
55
+ # matches, so the sliding-window middleware would renew it indefinitely. Refusing the
56
+ # id is what actually ends those sessions, and it holds for databases that applied an
57
+ # earlier revision of the migration too.
58
+ #
59
+ # Single-user mode, where everything legitimately runs as `system`, never reaches here:
60
+ # its dependencies synthesize the TokenData and return before resolving anything (see
61
+ # `get_current_user_or_default`, `get_current_media_user_or_default`, and
62
+ # `_identify_video_upload_user`). So this refuses only real, minted tokens.
63
+ if token_data.user_id == SYSTEM_USER_ID:
64
+ return None
65
+ user = ApiDependencies.invoker.services.users.get(token_data.user_id)
66
+ if user is None or not user.is_active:
67
+ return None
68
+ if token_data.token_epoch != user.token_epoch:
69
+ return None
70
+ return user
17
71
 
18
72
 
19
73
  def _validate_token(token: str, invalid_detail: str) -> TokenData:
@@ -21,13 +75,34 @@ def _validate_token(token: str, invalid_detail: str) -> TokenData:
21
75
  if token_data is None:
22
76
  raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail=invalid_detail)
23
77
 
24
- user = ApiDependencies.invoker.services.users.get(token_data.user_id)
25
- if user is None or not user.is_active:
78
+ user = resolve_authorized_user(token_data)
79
+ if user is None:
26
80
  raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="User not found or inactive")
27
- return token_data
81
+ return _db_derived_token_data(token_data, user)
82
+
83
+
84
+ def _db_derived_token_data(token_data: TokenData, user: "UserDTO") -> TokenData:
85
+ """Build TokenData whose authorization fields come from the database record.
86
+
87
+ The JWT proves *identity* only. Authorization (``is_admin``) must reflect the
88
+ current database state on every request; otherwise a demoted administrator
89
+ keeps admin rights until their token expires — and sliding-window refresh
90
+ would renew that stale claim indefinitely. A promoted user symmetrically
91
+ gains admin rights on their next request without re-login.
92
+
93
+ The epoch is carried through from the record so a refreshed token stays valid
94
+ (callers only reach here once ``_token_epoch_is_current`` has passed).
95
+ """
96
+ return TokenData(
97
+ user_id=user.user_id,
98
+ email=user.email,
99
+ is_admin=user.is_admin,
100
+ remember_me=token_data.remember_me,
101
+ token_epoch=user.token_epoch,
102
+ )
28
103
 
29
104
 
30
- async def get_current_user(
105
+ def get_current_user(
31
106
  credentials: Annotated[HTTPAuthorizationCredentials | None, Depends(security)],
32
107
  ) -> TokenData:
33
108
  """Get current authenticated user from Bearer token.
@@ -62,21 +137,20 @@ async def get_current_user(
62
137
  headers={"WWW-Authenticate": "Bearer"},
63
138
  )
64
139
 
65
- # Verify user still exists and is active
66
- user_service = ApiDependencies.invoker.services.users
67
- user = user_service.get(token_data.user_id)
140
+ # Verify the token still grants access: user exists, is active, epoch is current.
141
+ user = resolve_authorized_user(token_data)
68
142
 
69
- if user is None or not user.is_active:
143
+ if user is None:
70
144
  raise HTTPException(
71
145
  status_code=status.HTTP_401_UNAUTHORIZED,
72
146
  detail="User account is inactive or does not exist",
73
147
  headers={"WWW-Authenticate": "Bearer"},
74
148
  )
75
149
 
76
- return token_data
150
+ return _db_derived_token_data(token_data, user)
77
151
 
78
152
 
79
- async def get_current_user_or_default(
153
+ def get_current_user_or_default(
80
154
  credentials: Annotated[HTTPAuthorizationCredentials | None, Depends(security)],
81
155
  ) -> TokenData:
82
156
  """Get current authenticated user from Bearer token, or return a default system user if not authenticated.
@@ -117,18 +191,17 @@ async def get_current_user_or_default(
117
191
  # Invalid token in multiuser mode - reject
118
192
  raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid or expired token")
119
193
 
120
- # Verify user still exists and is active
121
- user_service = ApiDependencies.invoker.services.users
122
- user = user_service.get(token_data.user_id)
194
+ # Verify the token still grants access: user exists, is active, epoch is current.
195
+ user = resolve_authorized_user(token_data)
123
196
 
124
- if user is None or not user.is_active:
125
- # User doesn't exist or is inactive in multiuser mode - reject
197
+ if user is None:
198
+ # Missing, inactive, or revoked in multiuser mode - reject
126
199
  raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="User not found or inactive")
127
200
 
128
- return token_data
201
+ return _db_derived_token_data(token_data, user)
129
202
 
130
203
 
131
- async def get_current_media_user_or_default(
204
+ def get_current_media_user_or_default(
132
205
  credentials: Annotated[HTTPAuthorizationCredentials | None, Depends(security)],
133
206
  media_token: Annotated[str | None, Cookie(alias=MEDIA_TOKEN_COOKIE)] = None,
134
207
  ) -> TokenData:
@@ -141,11 +214,16 @@ async def get_current_media_user_or_default(
141
214
  return _validate_token(token, "Invalid or expired token")
142
215
 
143
216
 
144
- async def require_admin(
217
+ def require_admin(
145
218
  current_user: Annotated[TokenData, Depends(get_current_user)],
146
219
  ) -> TokenData:
147
220
  """Require admin role for the current user.
148
221
 
222
+ Stays `async def`, unlike the dependencies it builds on: this only reads a field off the
223
+ already-resolved token data. Declaring it `def` would buy a threadpool round-trip per admin
224
+ request and nothing else. The `users.get` that can block lives in `get_current_user`, which
225
+ is synchronous for that reason.
226
+
149
227
  Args:
150
228
  current_user: The current authenticated user's token data
151
229
 
@@ -160,11 +238,13 @@ async def require_admin(
160
238
  return current_user
161
239
 
162
240
 
163
- async def require_admin_or_default(
241
+ def require_admin_or_default(
164
242
  current_user: Annotated[TokenData, Depends(get_current_user_or_default)],
165
243
  ) -> TokenData:
166
244
  """Require admin role for the current user, or return default system admin in single-user mode.
167
245
 
246
+ `async def` for the same reason as `require_admin`: it does no blocking work of its own.
247
+
168
248
  This dependency is useful for admin-only endpoints that should work in both single-user and multiuser modes.
169
249
 
170
250
  When multiuser mode is disabled (default), this always returns a system user with admin privileges.
@@ -8,7 +8,10 @@ from fastapi import HTTPException
8
8
 
9
9
  from invokeai.app.api.auth_dependencies import CurrentUserOrDefault
10
10
  from invokeai.app.api.dependencies import ApiDependencies
11
- from invokeai.app.services.board_records.board_records_common import BoardVisibility
11
+ from invokeai.app.services.board_records.board_records_common import (
12
+ BoardRecordNotFoundException,
13
+ BoardVisibility,
14
+ )
12
15
 
13
16
 
14
17
  def assert_image_owner(image_name: str, current_user: CurrentUserOrDefault) -> None:
@@ -28,18 +31,56 @@ def assert_image_owner(image_name: str, current_user: CurrentUserOrDefault) -> N
28
31
 
29
32
  board_id = ApiDependencies.invoker.services.board_image_records.get_board_for_image(image_name)
30
33
  if board_id is not None:
34
+ # The board *record*, not its DTO: the decision needs only the owner and the
35
+ # visibility, and the DTO would drag in cover-image resolution plus three COUNT
36
+ # aggregates — five extra queries and five extra ways to fail per name.
37
+ #
38
+ # Only a board positively known to be gone falls through to the 403. A storage error
39
+ # propagates instead of being caught here: `board_records.get` deliberately does not
40
+ # translate sqlite errors into not-found, and a caller that cannot decide ownership
41
+ # must not report the name as an ordinary permission denial — the batch loops treat a
42
+ # 403 as a silent auth skip, which turned a locked database into images dropped from
43
+ # the response with no failure reported at all.
31
44
  try:
32
- board = ApiDependencies.invoker.services.boards.get_dto(board_id=board_id)
45
+ board = ApiDependencies.invoker.services.board_records.get(board_id)
46
+ except BoardRecordNotFoundException:
47
+ pass
48
+ else:
33
49
  if board.user_id == current_user.user_id:
34
50
  return
35
51
  if board.board_visibility == BoardVisibility.Public:
36
52
  return
37
- except Exception:
38
- pass
39
53
 
40
54
  raise HTTPException(status_code=403, detail="Not authorized to modify this image")
41
55
 
42
56
 
57
+ def _assert_image_record_exists(image_name: str) -> None:
58
+ """Turn a refusal into a 404 when the image is positively gone.
59
+
60
+ The two refusals mean opposite things to a client holding a reference to the image — a
61
+ workflow's image field, a reference image on a canvas layer. Gone is permanent, and the
62
+ reference should be dropped. Denied is a permission decision that can be reversed (a board
63
+ flipped back to Shared, an owner re-granting access), and dropping the reference over one
64
+ destroys work the user cannot get back by restoring the permission.
65
+
66
+ Nothing above can tell them apart: the ownership test rests on `images.user_id`, which is
67
+ gone with the row, so a deleted image reaches that same 403 as a foreign one. So the
68
+ distinction is made here, on the refusal path only — the happy path pays nothing for it.
69
+
70
+ A storage error propagates rather than answering either, so an unreadable database cannot
71
+ present as a deleted image and take the user's references down with it. `exists` is a bare
72
+ row probe rather than `get` for the same reason from the other side: `get` deserializes, so
73
+ a row written by a newer version — an enum value this one does not know — would fail exactly
74
+ as absence does, and a live image would be reported gone.
75
+
76
+ The cost is that an authenticated caller can now tell an absent image from one they may not
77
+ read. Image names are generated UUIDs, so this buys an attacker nothing they could enumerate,
78
+ and it is the answer admins have always received.
79
+ """
80
+ if not ApiDependencies.invoker.services.image_records.exists(image_name):
81
+ raise HTTPException(status_code=404, detail="Image not found")
82
+
83
+
43
84
  def assert_image_read_access(image_name: str, current_user: CurrentUserOrDefault) -> None:
44
85
  """Raise 403 if the current user may not view the image.
45
86
 
@@ -57,13 +98,17 @@ def assert_image_read_access(image_name: str, current_user: CurrentUserOrDefault
57
98
 
58
99
  board_id = ApiDependencies.invoker.services.board_image_records.get_board_for_image(image_name)
59
100
  if board_id is not None:
101
+ # See `assert_image_owner` for why this reads the board record and catches only
102
+ # not-found: a lookup that cannot be decided must not present as a permission decision.
60
103
  try:
61
- board = ApiDependencies.invoker.services.boards.get_dto(board_id=board_id)
104
+ board = ApiDependencies.invoker.services.board_records.get(board_id)
105
+ except BoardRecordNotFoundException:
106
+ pass
107
+ else:
62
108
  if board.board_visibility in (BoardVisibility.Shared, BoardVisibility.Public):
63
109
  return
64
- except Exception:
65
- pass
66
110
 
111
+ _assert_image_record_exists(image_name)
67
112
  raise HTTPException(status_code=403, detail="Not authorized to access this image")
68
113
 
69
114
 
@@ -52,12 +52,12 @@ class AppVersion(BaseModel):
52
52
 
53
53
 
54
54
  @app_router.get("/version", operation_id="app_version", status_code=200, response_model=AppVersion)
55
- async def get_version() -> AppVersion:
55
+ def get_version() -> AppVersion:
56
56
  return AppVersion(version=__version__)
57
57
 
58
58
 
59
59
  @app_router.get("/app_deps", operation_id="get_app_deps", status_code=200, response_model=dict[str, str])
60
- async def get_app_deps(current_user: CurrentUserOrDefault) -> dict[str, str]:
60
+ def get_app_deps(current_user: CurrentUserOrDefault) -> dict[str, str]:
61
61
  deps: dict[str, str] = {dist.metadata["Name"]: dist.version for dist in distributions()}
62
62
  try:
63
63
  cuda = getattr(getattr(torch, "version", None), "cuda", None) or "N/A" # pyright: ignore[reportAttributeAccessIssue]
@@ -72,7 +72,7 @@ async def get_app_deps(current_user: CurrentUserOrDefault) -> dict[str, str]:
72
72
 
73
73
 
74
74
  @app_router.get("/patchmatch_status", operation_id="get_patchmatch_status", status_code=200, response_model=bool)
75
- async def get_patchmatch_status(current_user: CurrentUserOrDefault) -> bool:
75
+ def get_patchmatch_status(current_user: CurrentUserOrDefault) -> bool:
76
76
  return PatchMatch.patchmatch_available()
77
77
 
78
78
 
@@ -217,7 +217,7 @@ def _redact_config_secrets(config: InvokeAIAppConfig) -> InvokeAIAppConfig:
217
217
  status_code=200,
218
218
  response_model=list[GenerationDeviceOption],
219
219
  )
220
- async def get_generation_device_options(current_user: CurrentUserOrDefault) -> list[GenerationDeviceOption]:
220
+ def get_generation_device_options(current_user: CurrentUserOrDefault) -> list[GenerationDeviceOption]:
221
221
  """List the devices available for generation, for use with the `generation_devices` setting."""
222
222
  options: list[GenerationDeviceOption] = []
223
223
  if torch.cuda.is_available():
@@ -246,7 +246,7 @@ async def get_generation_device_options(current_user: CurrentUserOrDefault) -> l
246
246
  @app_router.get(
247
247
  "/runtime_config", operation_id="get_runtime_config", status_code=200, response_model=InvokeAIAppConfigWithSetFields
248
248
  )
249
- async def get_runtime_config(current_admin: AdminUserOrDefault) -> InvokeAIAppConfigWithSetFields:
249
+ def get_runtime_config(current_admin: AdminUserOrDefault) -> InvokeAIAppConfigWithSetFields:
250
250
  config = get_config()
251
251
  return InvokeAIAppConfigWithSetFields(set_fields=config.model_fields_set, config=_redact_config_secrets(config))
252
252
 
@@ -257,7 +257,7 @@ async def get_runtime_config(current_admin: AdminUserOrDefault) -> InvokeAIAppCo
257
257
  status_code=200,
258
258
  response_model=InvokeAIAppConfigWithSetFields,
259
259
  )
260
- async def update_runtime_config(
260
+ def update_runtime_config(
261
261
  _: AdminUserOrDefault,
262
262
  changes: UpdateAppGenerationSettingsRequest = Body(description="Writable runtime configuration changes"),
263
263
  ) -> InvokeAIAppConfigWithSetFields:
@@ -290,7 +290,7 @@ async def update_runtime_config(
290
290
  status_code=200,
291
291
  response_model=list[ExternalProviderStatusModel],
292
292
  )
293
- async def get_external_provider_statuses(current_user: CurrentUserOrDefault) -> list[ExternalProviderStatusModel]:
293
+ def get_external_provider_statuses(current_user: CurrentUserOrDefault) -> list[ExternalProviderStatusModel]:
294
294
  statuses = ApiDependencies.invoker.services.external_generation.get_provider_statuses()
295
295
  return [status_to_model(status) for status in statuses.values()]
296
296
 
@@ -301,7 +301,7 @@ async def get_external_provider_statuses(current_user: CurrentUserOrDefault) ->
301
301
  status_code=200,
302
302
  response_model=list[ExternalProviderConfigModel],
303
303
  )
304
- async def get_external_provider_configs(current_admin: AdminUserOrDefault) -> list[ExternalProviderConfigModel]:
304
+ def get_external_provider_configs(current_admin: AdminUserOrDefault) -> list[ExternalProviderConfigModel]:
305
305
  config = get_config()
306
306
  return [_build_external_provider_config(provider_id, config) for provider_id in EXTERNAL_PROVIDER_FIELDS]
307
307
 
@@ -312,7 +312,7 @@ async def get_external_provider_configs(current_admin: AdminUserOrDefault) -> li
312
312
  status_code=200,
313
313
  response_model=ExternalProviderConfigModel,
314
314
  )
315
- async def set_external_provider_config(
315
+ def set_external_provider_config(
316
316
  _: AdminUserOrDefault,
317
317
  provider_id: str = Path(description="The external provider identifier"),
318
318
  update: ExternalProviderConfigUpdate = Body(description="External provider configuration settings"),
@@ -343,7 +343,7 @@ async def set_external_provider_config(
343
343
  status_code=200,
344
344
  response_model=ExternalProviderConfigModel,
345
345
  )
346
- async def reset_external_provider_config(
346
+ def reset_external_provider_config(
347
347
  _: AdminUserOrDefault,
348
348
  provider_id: str = Path(description="The external provider identifier"),
349
349
  ) -> ExternalProviderConfigModel:
@@ -452,7 +452,7 @@ def _remove_external_models_for_provider(provider_id: str) -> None:
452
452
  responses={200: {"description": "The operation was successful"}},
453
453
  response_model=LogLevel,
454
454
  )
455
- async def get_log_level(current_admin: AdminUserOrDefault) -> LogLevel:
455
+ def get_log_level(current_admin: AdminUserOrDefault) -> LogLevel:
456
456
  """Returns the log level"""
457
457
  return LogLevel(ApiDependencies.invoker.services.logger.level)
458
458
 
@@ -463,7 +463,7 @@ async def get_log_level(current_admin: AdminUserOrDefault) -> LogLevel:
463
463
  responses={200: {"description": "The operation was successful"}},
464
464
  response_model=LogLevel,
465
465
  )
466
- async def set_log_level(
466
+ def set_log_level(
467
467
  current_admin: AdminUserOrDefault,
468
468
  level: LogLevel = Body(description="New log verbosity level"),
469
469
  ) -> LogLevel:
@@ -477,7 +477,7 @@ async def set_log_level(
477
477
  operation_id="clear_invocation_cache",
478
478
  responses={200: {"description": "The operation was successful"}},
479
479
  )
480
- async def clear_invocation_cache(current_admin: AdminUserOrDefault) -> None:
480
+ def clear_invocation_cache(current_admin: AdminUserOrDefault) -> None:
481
481
  """Clears the invocation cache"""
482
482
  ApiDependencies.invoker.services.invocation_cache.clear()
483
483
 
@@ -487,7 +487,7 @@ async def clear_invocation_cache(current_admin: AdminUserOrDefault) -> None:
487
487
  operation_id="enable_invocation_cache",
488
488
  responses={200: {"description": "The operation was successful"}},
489
489
  )
490
- async def enable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
490
+ def enable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
491
491
  """Clears the invocation cache"""
492
492
  ApiDependencies.invoker.services.invocation_cache.enable()
493
493
 
@@ -497,7 +497,7 @@ async def enable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
497
497
  operation_id="disable_invocation_cache",
498
498
  responses={200: {"description": "The operation was successful"}},
499
499
  )
500
- async def disable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
500
+ def disable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
501
501
  """Clears the invocation cache"""
502
502
  ApiDependencies.invoker.services.invocation_cache.disable()
503
503
 
@@ -507,6 +507,6 @@ async def disable_invocation_cache(current_admin: AdminUserOrDefault) -> None:
507
507
  operation_id="get_invocation_cache_status",
508
508
  responses={200: {"model": InvocationCacheStatus}},
509
509
  )
510
- async def get_invocation_cache_status(current_admin: AdminUserOrDefault) -> InvocationCacheStatus:
510
+ def get_invocation_cache_status(current_admin: AdminUserOrDefault) -> InvocationCacheStatus:
511
511
  """Clears the invocation cache"""
512
512
  return ApiDependencies.invoker.services.invocation_cache.get_status()