The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
This report presents the forensic synthetic code analysis of Comfy-Org/ComfyUI, a Python project with 120,648 GitHub stars. SynthScan v2.0 examined 512,366 lines of code across 905 source files, recording 3268 pattern matches distributed across 21 syntactic categories. The overall adjusted score of 7.4 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 3268 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server.py | 69 | def _remove_sensitive_from_queue(queue: list) -> list: | CODE |
| LOW | server.py | 74 | async def send_socket_catch_exception(function, message): | CODE |
| LOW | server.py | 159 | def create_origin_only_middleware(): | CODE |
| LOW | server.py | 200 | def create_block_external_middleware(): | CODE |
| LOW | server.py | 202 | async def block_external_middleware(request: web.Request, handler): | CODE |
| LOW | cuda_malloc.py | 114 | def get_torch_version_noimport(): | CODE |
| LOW | execution.py | 229 | async def resolve_map_node_over_list_results(results): | CODE |
| LOW | execution.py | 241 | async def _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, func, allow_interrupt=False, execution_bl | CODE |
| LOW | execution.py | 1310 | def get_current_queue_volatile(self): | CODE |
| LOW | folder_paths.py | 158 | def get_system_user_directory(name: str = "system") -> str: | CODE |
| LOW | folder_paths.py | 189 | def get_public_user_directory(user_id: str) -> str | None: | CODE |
| LOW | folder_paths.py | 227 | def filter_files_content_types(files: list[str], content_types: List[Literal["image", "video", "audio", "model"]]) -> li | CODE |
| LOW | folder_paths.py | 287 | def is_dangerous_content_type(content_type: str | None) -> bool: | CODE |
| LOW | folder_paths.py | 341 | def exists_annotated_filepath(name) -> bool: | CODE |
| LOW | latent_preview.py | 35 | def decode_latent_to_preview_image(self, preview_format, x0): | CODE |
| LOW | node_helpers.py | 25 | def conditioning_set_values_with_timestep_range(conditioning, values={}, start_percent=0.0, end_percent=1.0): | CODE |
| LOW⚡ | nodes.py | 2323 | async def init_external_custom_nodes(): | CODE |
| LOW | main.py | 97 | def handle_comfyui_manager_unavailable(): | CODE |
| LOW | main.py | 163 | def execute_prestartup_script(): | CODE |
| LOW | main.py | 284 | def _collect_output_absolute_paths(history_result: dict) -> list[str]: | CODE |
| LOW | comfy/model_sampling.py | 5 | def rescale_zero_terminal_snr_sigmas(sigmas): | CODE |
| LOW | comfy/context_windows.py | 711 | def combine_context_window_results(self, x_in: torch.Tensor, sub_conds_out, sub_conds, window: IndexListContextWindo | CODE |
| LOW | comfy/context_windows.py | 741 | def _prepare_sampling_wrapper(executor, model, noise_shape: torch.Tensor, conds, *args, **kwargs): | CODE |
| LOW | comfy/context_windows.py | 759 | def create_prepare_sampling_wrapper(model: ModelPatcher): | CODE |
| LOW | comfy/context_windows.py | 782 | def create_sampler_sample_wrapper(model: ModelPatcher): | CODE |
| LOW | comfy/context_windows.py | 816 | def create_windows_uniform_looped(num_frames: int, handler: IndexListContextHandler, model_options: dict[str]): | CODE |
| LOW | comfy/context_windows.py | 835 | def create_windows_uniform_standard(num_frames: int, handler: IndexListContextHandler, model_options: dict[str]): | CODE |
| LOW | comfy/context_windows.py | 883 | def create_windows_static_standard(num_frames: int, handler: IndexListContextHandler, model_options: dict[str]): | CODE |
| LOW | comfy/context_windows.py | 927 | def get_matching_context_schedule(context_schedule: str) -> ContextSchedule: | CODE |
| LOW | comfy/context_windows.py | 954 | def create_weights_overlap_linear(length: int, full_length: int, idxs: list[int], context_overlap: int, **kwargs): | CODE |
| LOW | comfy/memory_management.py | 18 | def read_tensor_file_slice_into(tensor, destination, stream=None, destination2=None): | CODE |
| LOW | comfy/memory_management.py | 178 | def set_ram_cache_release_state(callback, headroom): | CODE |
| LOW | comfy/model_prefetch.py | 8 | def cleanup_prefetched_modules(comfy_modules): | CODE |
| LOW | comfy/hooks.py | 350 | def get_hooks_for_clip_schedule(self): | CODE |
| LOW | comfy/hooks.py | 434 | def get_effective_guarantee_steps(self, max_sigma: torch.Tensor): | CODE |
| LOW | comfy/hooks.py | 591 | def create_transformer_options_from_hooks(model: ModelPatcher, hooks: HookGroup, transformer_options: dict[str]=None): | CODE |
| LOW | comfy/hooks.py | 609 | def create_hook_model_as_lora(weights_model, weights_clip, strength_model: float, strength_clip: float): | CODE |
| LOW | comfy/hooks.py | 628 | def get_patch_weights_from_model(model: ModelPatcher, discard_model_sampling=True): | CODE |
| LOW | comfy/hooks.py | 640 | def load_hook_lora_for_models(model: ModelPatcher, clip: CLIP, lora: dict[str, torch.Tensor], | CODE |
| LOW | comfy/hooks.py | 672 | def _combine_hooks_from_values(c_dict: dict[str, HookGroup], values: dict[str, HookGroup], cache: dict[tuple[HookGroup, | CODE |
| LOW | comfy/hooks.py | 692 | def conditioning_set_values_with_hooks(conditioning, values={}, append_hooks=True, | CODE |
| LOW⚡ | comfy/hooks.py | 708 | def set_hooks_for_conditioning(cond, hooks: HookGroup, append_hooks=True, cache: dict[tuple[HookGroup, HookGroup], HookG | CODE |
| LOW⚡ | comfy/hooks.py | 713 | def set_timesteps_for_conditioning(cond, timestep_range: tuple[float,float]): | CODE |
| LOW⚡ | comfy/hooks.py | 719 | def set_mask_for_conditioning(cond, mask: torch.Tensor, set_cond_area: str, strength: float): | CODE |
| LOW | comfy/hooks.py | 758 | def set_conds_props_and_combine(conds: list, new_conds: list, strength: float=1.0, set_cond_area: str="default", | CODE |
| LOW | comfy/hooks.py | 773 | def set_default_conds_and_combine(conds: list, new_conds: list, | CODE |
| LOW | comfy/controlnet.py | 185 | def inference_memory_requirements(self, dtype): | CODE |
| LOW | comfy/controlnet.py | 489 | def inference_memory_requirements(self, dtype): | CODE |
| LOW | comfy/controlnet.py | 512 | def controlnet_load_state_dict(control_model, sd): | CODE |
| LOW | comfy/controlnet.py | 620 | def load_controlnet_hunyuandit(controlnet_data, model_options={}): | CODE |
| LOW | comfy/controlnet.py | 631 | def load_controlnet_flux_xlabs_mistoline(sd, mistoline=False, model_options={}): | CODE |
| LOW | comfy/controlnet.py | 640 | def load_controlnet_flux_instantx(sd, model_options={}): | CODE |
| LOW | comfy/controlnet.py | 664 | def load_controlnet_qwen_instantx(sd, model_options={}): | CODE |
| LOW | comfy/controlnet.py | 731 | def load_controlnet_state_dict(state_dict, model=None, model_options={}): | CODE |
| LOW⚡ | comfy/model_patcher.py | 66 | def set_model_options_post_cfg_function(model_options, post_cfg_function, disable_cfg1_optimization=False): | CODE |
| LOW⚡ | comfy/model_patcher.py | 72 | def set_model_options_pre_cfg_function(model_options, pre_cfg_function, disable_cfg1_optimization=False): | CODE |
| LOW⚡ | comfy/model_patcher.py | 78 | def create_model_options_clone(orig_model_options: dict): | CODE |
| LOW⚡ | comfy/model_patcher.py | 81 | def create_hook_patches_clone(orig_hook_patches, copy_tuples=False): | CODE |
| LOW⚡ | comfy/model_patcher.py | 593 | def set_model_sampler_cfg_function(self, sampler_cfg_function, disable_cfg1_optimization=False): | CODE |
| LOW⚡ | comfy/model_patcher.py | 601 | def set_model_sampler_post_cfg_function(self, post_cfg_function, disable_cfg1_optimization=False): | CODE |
| 1237 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | .spectral.yaml | 12 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 14 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 23 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 25 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM | .spectral.yaml | 47 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM | .spectral.yaml | 49 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 69 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 71 | # ----------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/hooks.py | 21 | # ------------------- | COMMENT |
| MEDIUM | comfy/ops.py | 901 | # ============================================================================== | COMMENT |
| MEDIUM | comfy/ops.py | 903 | # ============================================================================== | COMMENT |
| MEDIUM | comfy/quant_ops.py | 106 | # ============================================================================== | COMMENT |
| MEDIUM | comfy/quant_ops.py | 108 | # ============================================================================== | COMMENT |
| MEDIUM | comfy/quant_ops.py | 217 | # ============================================================================== | COMMENT |
| MEDIUM | comfy/quant_ops.py | 219 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | comfy/quant_ops.py | 272 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | comfy/quant_ops.py | 274 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | comfy/k_diffusion/deis.py | 10 | #---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | comfy/k_diffusion/deis.py | 20 | #---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | comfy/k_diffusion/deis.py | 30 | #---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | comfy/k_diffusion/deis.py | 36 | #---------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/k_diffusion/deis.py | 52 | #---------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/image_encoders/dino2.py | 122 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/image_encoders/dino2.py | 124 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/image_encoders/dino2.py | 369 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | comfy/image_encoders/dino2.py | 371 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | comfy/cldm/cldm.py | 332 | #----------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 24 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 26 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 139 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 141 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 350 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 352 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 456 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 458 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 690 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/rt_detr/rtdetr_v4.py | 692 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lumina/model.py | 1026 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | comfy/ldm/lumina/model.py | 1029 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 17 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 20 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 176 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 229 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 231 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 313 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vocoders/vocoder.py | 315 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 100 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 102 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 163 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 165 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 306 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/dpt.py | 308 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | comfy/ldm/depth_anything_3/ray_pose.py | 36 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | comfy/ldm/depth_anything_3/ray_pose.py | 38 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/ray_pose.py | 155 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/ray_pose.py | 157 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/preprocess.py | 64 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/preprocess.py | 66 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | comfy/ldm/depth_anything_3/camera.py | 13 | # ----------------------------------------------------------------------- | COMMENT |
| 65 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server.py | 133 | CODE | |
| LOW | server.py | 216 | CODE | |
| LOW | server.py | 270 | CODE | |
| LOW | server.py | 397 | CODE | |
| LOW | server.py | 471 | CODE | |
| LOW | server.py | 517 | CODE | |
| LOW | server.py | 1063 | CODE | |
| LOW | server.py | 474 | CODE | |
| LOW | cuda_malloc.py | 54 | CODE | |
| LOW | execution.py | 157 | CODE | |
| LOW | execution.py | 241 | CODE | |
| LOW | execution.py | 320 | CODE | |
| LOW | execution.py | 349 | CODE | |
| LOW | execution.py | 436 | CODE | |
| LOW | execution.py | 839 | CODE | |
| LOW | execution.py | 1121 | CODE | |
| LOW | execution.py | 255 | CODE | |
| LOW | execution.py | 711 | CODE | |
| LOW | execution.py | 727 | CODE | |
| LOW | execution.py | 1344 | CODE | |
| LOW | execution.py | 1357 | CODE | |
| LOW | latent_preview.py | 78 | CODE | |
| LOW | node_helpers.py | 9 | CODE | |
| LOW | nodes.py | 2227 | CODE | |
| LOW | nodes.py | 2323 | CODE | |
| LOW | nodes.py | 636 | CODE | |
| LOW | nodes.py | 759 | CODE | |
| LOW | nodes.py | 780 | CODE | |
| LOW | nodes.py | 1676 | CODE | |
| LOW | nodes.py | 2005 | CODE | |
| LOW | main.py | 163 | CODE | |
| LOW | main.py | 284 | CODE | |
| LOW | main.py | 316 | CODE | |
| LOW | main.py | 460 | CODE | |
| LOW | comfy/conds.py | 7 | CODE | |
| LOW | comfy/context_windows.py | 113 | CODE | |
| LOW | comfy/context_windows.py | 475 | CODE | |
| LOW | comfy/context_windows.py | 572 | CODE | |
| LOW | comfy/clip_vision.py | 111 | CODE | |
| LOW | comfy/memory_management.py | 18 | CODE | |
| LOW | comfy/model_prefetch.py | 34 | CODE | |
| LOW | comfy/hooks.py | 350 | CODE | |
| LOW | comfy/hooks.py | 505 | CODE | |
| LOW | comfy/hooks.py | 549 | CODE | |
| LOW | comfy/sd1_clip.py | 320 | CODE | |
| LOW | comfy/sd1_clip.py | 348 | CODE | |
| LOW | comfy/sd1_clip.py | 378 | CODE | |
| LOW | comfy/sd1_clip.py | 415 | CODE | |
| LOW | comfy/sd1_clip.py | 28 | CODE | |
| LOW | comfy/sd1_clip.py | 172 | CODE | |
| LOW | comfy/sd1_clip.py | 572 | CODE | |
| LOW | comfy/controlnet.py | 731 | CODE | |
| LOW | comfy/controlnet.py | 964 | CODE | |
| LOW | comfy/controlnet.py | 190 | CODE | |
| LOW | comfy/controlnet.py | 253 | CODE | |
| LOW | comfy/model_patcher.py | 81 | CODE | |
| LOW | comfy/model_patcher.py | 507 | CODE | |
| LOW | comfy/model_patcher.py | 719 | CODE | |
| LOW | comfy/model_patcher.py | 740 | CODE | |
| LOW | comfy/model_patcher.py | 764 | CODE | |
| 326 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | execution.py | 153 | CODE | |
| LOW | nodes.py | 675 | CODE | |
| LOW | comfy/context_windows.py | 342 | CODE | |
| LOW | comfy/sd1_clip.py | 88 | CODE | |
| LOW | comfy/sd1_clip.py | 487 | CODE | |
| LOW | comfy/sd1_clip.py | 744 | CODE | |
| LOW | comfy/sd1_clip.py | 749 | CODE | |
| LOW | comfy/controlnet.py | 236 | CODE | |
| LOW | comfy/controlnet.py | 487 | CODE | |
| LOW | comfy/controlnet.py | 393 | CODE | |
| LOW | comfy/supported_models.py | 335 | CODE | |
| LOW | comfy/supported_models.py | 356 | CODE | |
| LOW | comfy/supported_models.py | 373 | CODE | |
| LOW | comfy/supported_models.py | 401 | CODE | |
| LOW | comfy/supported_models.py | 432 | CODE | |
| LOW | comfy/supported_models.py | 475 | CODE | |
| LOW | comfy/supported_models.py | 498 | CODE | |
| LOW | comfy/supported_models.py | 563 | CODE | |
| LOW | comfy/supported_models.py | 652 | CODE | |
| LOW | comfy/supported_models.py | 713 | CODE | |
| LOW | comfy/supported_models.py | 760 | CODE | |
| LOW | comfy/supported_models.py | 789 | CODE | |
| LOW | comfy/supported_models.py | 814 | CODE | |
| LOW | comfy/supported_models.py | 902 | CODE | |
| LOW | comfy/supported_models.py | 934 | CODE | |
| LOW | comfy/supported_models.py | 954 | CODE | |
| LOW | comfy/supported_models.py | 977 | CODE | |
| LOW | comfy/supported_models.py | 1014 | CODE | |
| LOW | comfy/supported_models.py | 1024 | CODE | |
| LOW | comfy/supported_models.py | 1050 | CODE | |
| LOW | comfy/supported_models.py | 1065 | CODE | |
| LOW | comfy/supported_models.py | 1092 | CODE | |
| LOW | comfy/supported_models.py | 1118 | CODE | |
| LOW | comfy/supported_models.py | 1139 | CODE | |
| LOW | comfy/supported_models.py | 1163 | CODE | |
| LOW | comfy/supported_models.py | 1302 | CODE | |
| LOW | comfy/supported_models.py | 1337 | CODE | |
| LOW | comfy/supported_models.py | 1348 | CODE | |
| LOW | comfy/supported_models.py | 1359 | CODE | |
| LOW | comfy/supported_models.py | 1370 | CODE | |
| LOW | comfy/supported_models.py | 1384 | CODE | |
| LOW | comfy/supported_models.py | 1394 | CODE | |
| LOW | comfy/supported_models.py | 1407 | CODE | |
| LOW | comfy/supported_models.py | 1420 | CODE | |
| LOW | comfy/supported_models.py | 1433 | CODE | |
| LOW | comfy/supported_models.py | 1443 | CODE | |
| LOW | comfy/supported_models.py | 1453 | CODE | |
| LOW | comfy/supported_models.py | 1464 | CODE | |
| LOW | comfy/supported_models.py | 1479 | CODE | |
| LOW | comfy/supported_models.py | 1531 | CODE | |
| LOW | comfy/supported_models.py | 1545 | CODE | |
| LOW | comfy/supported_models.py | 1603 | CODE | |
| LOW | comfy/supported_models.py | 1681 | CODE | |
| LOW | comfy/supported_models.py | 1717 | CODE | |
| LOW | comfy/supported_models.py | 1758 | CODE | |
| LOW | comfy/supported_models.py | 1790 | CODE | |
| LOW | comfy/supported_models.py | 1811 | CODE | |
| LOW | comfy/supported_models.py | 1849 | CODE | |
| LOW | comfy/supported_models.py | 1878 | CODE | |
| LOW | comfy/supported_models.py | 1907 | CODE | |
| 305 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server.py | 621 | or 'application/octet-stream' | COMMENT |
| LOW | alembic.ini | 1 | # A generic, single database configuration. | COMMENT |
| LOW | alembic.ini | 21 | # Any required deps can installed by adding `alembic[tz]` to the pip requirements | COMMENT |
| LOW | alembic.ini | 41 | # The path separator used here should be the separator specified by "version_path_separator" below. | COMMENT |
| LOW | alembic.ini | 61 | COMMENT | |
| LOW | alembic.ini | 81 | # hooks = ruff | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 8161 | ##9 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 8601 | ##2015 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 8821 | ##bo | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 9161 | 2019 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 9341 | ##46 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 9741 | ##king | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 9761 | ##マ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 10141 | ofweek | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 10281 | vcd | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 11081 | ##atic | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 11361 | ##ack | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 11581 | 328 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 12401 | ##gas | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 12501 | sylvia | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 12941 | diary | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13061 | ##mes | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13121 | 828 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13301 | ##anda | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13321 | ##$ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13341 | ##\ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13361 | ##¼ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13381 | ##α | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13401 | ##χ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13421 | ##х | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13441 | ##ي | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13461 | ##ᄇ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13481 | ##ᅯ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13501 | ##‥ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13521 | ##ⅱ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13541 | ##∼ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13561 | ##⑤ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13581 | ##┆ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13601 | ##▇ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13621 | ##☕ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13641 | ##✿ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13661 | ##〓 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13681 | ##ァ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13701 | ##ヨ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13721 | ##ㄤ | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13741 | ##专 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13761 | ##丫 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13781 | ##乌 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13801 | ##买 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13821 | ##些 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13841 | ##亿 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13861 | ##仙 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13881 | ##伊 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13901 | ##伯 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13921 | ##佗 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13941 | ##佶 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13961 | ##侦 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 13981 | ##俚 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 14001 | ##個 | COMMENT |
| LOW | comfy/text_encoders/hydit_clip_tokenizer/vocab.txt | 14021 | ##倭 | COMMENT |
| 395 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | comfy/context_windows.py | 1 | CODE | |
| LOW | comfy/hooks.py | 1 | CODE | |
| LOW | comfy/controlnet.py | 18 | CODE | |
| LOW | comfy/model_patcher.py | 19 | CODE | |
| LOW | comfy/model_base.py | 85 | CODE | |
| LOW | comfy/sampler_helpers.py | 1 | CODE | |
| LOW | comfy/multigpu.py | 1 | CODE | |
| LOW | comfy/quant_ops.py | 24 | CODE | |
| LOW | comfy/quant_ops.py | 24 | CODE | |
| LOW | comfy/quant_ops.py | 24 | CODE | |
| LOW | comfy/quant_ops.py | 24 | CODE | |
| LOW | comfy/samplers.py | 1 | CODE | |
| LOW | comfy/model_management.py | 18 | CODE | |
| LOW | comfy/model_management.py | 138 | CODE | |
| LOW | comfy/model_management.py | 145 | CODE | |
| LOW | comfy/text_encoders/gpt_oss.py | 3 | CODE | |
| LOW | comfy/weight_adapter/__init__.py | 1 | CODE | |
| LOW | comfy/weight_adapter/__init__.py | 8 | CODE | |
| LOW | comfy/weight_adapter/__init__.py | 8 | CODE | |
| LOW | comfy/weight_adapter/__init__.py | 8 | CODE | |
| LOW | comfy/ldm/colormap.py | 3 | CODE | |
| LOW | comfy/ldm/ideogram4/model.py | 7 | CODE | |
| LOW | comfy/ldm/lens/model.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/dpt.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/reference_view_selector.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/ray_pose.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/preprocess.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/model.py | 1 | CODE | |
| LOW | comfy/ldm/depth_anything_3/camera.py | 3 | CODE | |
| LOW | comfy/ldm/depth_anything_3/transform.py | 3 | CODE | |
| LOW | app/node_replace_manager.py | 1 | CODE | |
| LOW | app/subgraph_manager.py | 1 | CODE | |
| LOW | app/database/db.py | 23 | CODE | |
| LOW | app/assets/database/models.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 1 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| LOW | app/assets/database/queries/__init__.py | 11 | CODE | |
| 210 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | server.py | 1151 | def post_interrupt(request): | CODE |
| LOW | server.py | 322 | except Exception as e: | CODE |
| LOW | server.py | 457 | except Exception: | CODE |
| LOW | server.py | 798 | except Exception: | CODE |
| LOW | server.py | 1244 | except Exception as exc: | CODE |
| LOW | server.py | 1453 | except Exception: | CODE |
| LOW | execution.py | 94 | except Exception as e: | CODE |
| LOW | execution.py | 459 | except Exception as ex: | CODE |
| LOW | execution.py | 626 | except Exception as ex: | CODE |
| LOW | execution.py | 721 | except Exception as e: | CODE |
| LOW | execution.py | 955 | except Exception as ex: | CODE |
| LOW | execution.py | 997 | except Exception as ex: | CODE |
| LOW | execution.py | 1180 | except Exception as ex: | CODE |
| LOW | nodes.py | 2267 | except Exception as e: | CODE |
| LOW⚡ | nodes.py | 2312 | except Exception as e: | CODE |
| LOW⚡ | nodes.py | 2318 | except Exception as e: | CODE |
| LOW | main.py | 174 | except Exception as e: | CODE |
| LOW | main.py | 467 | except Exception as e: | CODE |
| MEDIUM | main.py | 460 | def setup_database(): | CODE |
| LOW | comfy/conds.py | 21 | except Exception: | CODE |
| LOW | comfy/sd1_clip.py | 458 | except Exception: | CODE |
| LOW⚡ | comfy/model_patcher.py | 2025 | except Exception as e: | CODE |
| LOW | comfy/model_patcher.py | 1225 | except Exception as e: | CODE |
| LOW | comfy/deploy_environment.py | 31 | except Exception as e: | CODE |
| LOW | comfy/ops.py | 867 | except Exception as e: | CODE |
| LOW | comfy/model_detection.py | 551 | except Exception: | CODE |
| LOW | comfy/utils.py | 142 | except Exception as e: | CODE |
| LOW | comfy/sd.py | 1126 | except Exception as e: | CODE |
| LOW | comfy/sd.py | 1221 | except Exception as e: | CODE |
| LOW | comfy/multigpu.py | 41 | except Exception as e: | CODE |
| LOW | comfy/multigpu.py | 59 | except Exception as e: | CODE |
| LOW | comfy/quant_ops.py | 15 | except Exception: | CODE |
| LOW | comfy/samplers.py | 533 | except Exception as e: | CODE |
| LOW | comfy/text_encoders/ace.py | 82 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/loha.py | 294 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/glora.py | 139 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/lokr.py | 362 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/oft.py | 250 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/boft.py | 130 | except Exception as e: | CODE |
| LOW | comfy/weight_adapter/lora.py | 284 | except Exception as e: | CODE |
| LOW | comfy/ldm/hunyuan3d/vae.py | 324 | except Exception: | CODE |
| LOW | comfy/ldm/modules/attention.py | 415 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/attention.py | 597 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/attention.py | 684 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/attention.py | 759 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/sub_quadratic_attention.py | 172 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/diffusionmodules/model.py | 263 | except Exception as e: | CODE |
| LOW | comfy/ldm/modules/diffusionmodules/model.py | 320 | except Exception as e: | CODE |
| LOW⚡ | app/frontend_management.py | 55 | except Exception: | CODE |
| LOW⚡ | app/frontend_management.py | 219 | except Exception: | CODE |
| LOW | app/frontend_management.py | 275 | except Exception as exc: | STRING |
| LOW | app/frontend_management.py | 286 | except Exception as exc: | STRING |
| LOW | app/frontend_management.py | 430 | except Exception as e: | CODE |
| MEDIUM | app/frontend_management.py | 232 | def default_frontend_path(cls) -> str: | CODE |
| LOW | app/user_manager.py | 244 | except Exception as e: | CODE |
| LOW | app/model_manager.py | 172 | except Exception as e: | CODE |
| LOW | app/database/db.py | 172 | except Exception as e: | CODE |
| LOW | app/assets/scanner.py | 209 | except Exception as e: | CODE |
| LOW | app/assets/scanner.py | 216 | except Exception as e: | CODE |
| LOW⚡ | app/assets/scanner.py | 249 | except Exception as e: | CODE |
| 108 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | comfyui_version.py | 1 | # This file is automatically generated by the build process when version is | COMMENT |
| MEDIUM | comfy/lora.py | 401 | # Create a new tensor filled with zeros | COMMENT |
| MEDIUM | comfy/weight_adapter/base.py | 335 | # Create a new tensor filled with zeros | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vae/dual_conv3d.py | 46 | # Define the size of the channels after the first convolution | COMMENT |
| MEDIUM | comfy/ldm/lightricks/vae/dual_conv3d.py | 197 | # Create an instance of the DualConv3d class | COMMENT |
| MEDIUM | comfy/ldm/chroma_radiance/layers.py | 68 | # Create a 2D meshgrid of coordinates. | COMMENT |
| MEDIUM | comfy/ldm/chroma_radiance/layers.py | 76 | # Create a 1D tensor of frequency values from 0 to max_freqs-1. | COMMENT |
| MEDIUM | comfy_execution/progress.py | 89 | # Create a new tqdm progress bar | COMMENT |
| MEDIUM⚡ | tests/execution/test_async_nodes.py | 202 | # Create an async node that will error | COMMENT |
| MEDIUM | tests/execution/test_async_nodes.py | 142 | # Create a test node with async validation | COMMENT |
| MEDIUM | tests/execution/test_async_nodes.py | 186 | # Create a node with async check_lazy_status | COMMENT |
| MEDIUM | tests/execution/test_progress_isolation.py | 212 | # Create a simple workflow | COMMENT |
| MEDIUM⚡ | tests/execution/test_execution.py | 723 | # Create a processing chain with an OUTPUT_NODE that has socket outputs | COMMENT |
| MEDIUM⚡ | tests/execution/test_execution.py | 732 | # Create the final output | COMMENT |
| MEDIUM | tests/execution/test_execution.py | 451 | # Creating the nodes in this specific order previously caused a bug | COMMENT |
| MEDIUM | tests/execution/test_execution.py | 618 | # Create a TestParallelSleep node that expands into multiple TestSleep nodes | COMMENT |
| MEDIUM | tests/execution/test_execution.py | 784 | # Create a chain of OUTPUT_NODEs | COMMENT |
| MEDIUM | …execution/testing_nodes/testing-pack/specific_tests.py | 300 | # Create the cyle | COMMENT |
| MEDIUM | …execution/testing_nodes/testing-pack/specific_tests.py | 365 | # Create a basic image generation workflow using the input model, clip and vae | COMMENT |
| MEDIUM | …execution/testing_nodes/testing-pack/specific_tests.py | 447 | # Create a graph dynamically with three TestSleep nodes | COMMENT |
| MEDIUM | comfy_api_nodes/util/request_logger.py | 142 | # Create a local temp dir for testing if needed | COMMENT |
| MEDIUM | comfy_extras/nodes_save_3d.py | 300 | # Create the GLB header (a 4-byte ASCII magic identifier glTF) | COMMENT |
| MEDIUM | comfy_extras/nodes_wanmove.py | 200 | # Create a single RGBA overlay for all tracks in this frame | COMMENT |
| MEDIUM | comfy_api/v0_0_2/__init__.py | 31 | # Create a synchronous version of the API | COMMENT |
| MEDIUM⚡ | comfy_api/internal/async_to_sync.py | 246 | # Create a sync version of this attribute | COMMENT |
| MEDIUM⚡ | comfy_api/internal/async_to_sync.py | 268 | # Create an instance of the inner class | COMMENT |
| MEDIUM⚡ | comfy_api/internal/async_to_sync.py | 301 | # Create a sync version of this nested class | COMMENT |
| MEDIUM | comfy_api/internal/async_to_sync.py | 150 | # Create the coroutine within the context | COMMENT |
| MEDIUM | comfy_api/internal/async_to_sync.py | 210 | # Create a proper class with docstrings and proper base classes | COMMENT |
| MEDIUM | comfy_api/internal/async_to_sync.py | 368 | # Create the class | COMMENT |
| MEDIUM | comfy_api/internal/async_to_sync.py | 815 | # Create a type tracker for this stub generation | COMMENT |
| MEDIUM | comfy_api/latest/__init__.py | 154 | # Create a synchronous version of the API | COMMENT |
| MEDIUM | comfy_api/latest/_input_impl/video_types.py | 552 | # Create a video stream | COMMENT |
| MEDIUM | comfy_api/latest/_input_impl/video_types.py | 559 | # Create an audio stream | COMMENT |
| MEDIUM | comfy_api/v0_0_1/__init__.py | 28 | # Create a synchronous version of the API | COMMENT |
| MEDIUM | .github/workflows/update-version.yml | 46 | f.write("# This file is automatically generated by the build process when version is\n") | CODE |
| MEDIUM | tests-unit/assets_test/test_assets_missing_sync.py | 22 | # Create a file directly under input/unit-tests/<case>. Backend tags only | COMMENT |
| MEDIUM | tests-unit/assets_test/test_assets_missing_sync.py | 189 | # Create a second on-disk copy under the same root but different subfolder | COMMENT |
| MEDIUM | tests-unit/assets_test/test_tags_api.py | 50 | # Create a short-lived asset under input with a unique custom tag | COMMENT |
| MEDIUM | tests-unit/assets_test/test_crud.py | 90 | # Create a second reference to the same asset via from-hash | COMMENT |
| MEDIUM | tests-unit/assets_test/services/test_ingest.py | 170 | # Create a preview asset and reference | COMMENT |
| MEDIUM | tests-unit/server/utils/file_operations_test.py | 7 | # Create a temporary directory structure | COMMENT |
| MEDIUM | …s-unit/prompt_server_test/system_user_endpoint_test.py | 115 | # Create a file in System User directory | COMMENT |
| MEDIUM | tests-unit/prompt_server_test/user_manager_test.py | 280 | # Create a directory with a space in its name and a file inside | COMMENT |
| MEDIUM | tests-unit/folder_paths_test/misc_test.py | 9 | # Create a nested folder structure | COMMENT |
| MEDIUM | tests-unit/folder_paths_test/misc_test.py | 20 | # Create the folders | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | comfy/controlnet.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/model_patcher.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/supported_models_base.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/model_base.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/utils.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/lora.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/model_management.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ops.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/controlnet.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/stage_a.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/common.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/stage_c.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/stage_b.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy/ldm/cascade/stage_c_coder.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | comfy_extras/nodes_stable_cascade.py | 0 | this file is part of comfyui. copyright (c) 2024 stability ai this program is free software: you can redistribute it and | STRING |
| HIGH | script_examples/basic_api_example.py | 0 | { "3": { "class_type": "ksampler", "inputs": { "cfg": 8, "denoise": 1, "latent_image": [ "5", 0 ], "model": [ "4", 0 ], | STRING |
| HIGH | script_examples/websockets_api_example.py | 0 | { "3": { "class_type": "ksampler", "inputs": { "cfg": 8, "denoise": 1, "latent_image": [ "5", 0 ], "model": [ "4", 0 ], | STRING |
| HIGH | script_examples/websockets_api_example_ws_images.py | 0 | { "3": { "class_type": "ksampler", "inputs": { "cfg": 8, "denoise": 1, "latent_image": [ "5", 0 ], "model": [ "4", 0 ], | STRING |
| HIGH | comfy_extras/nodes_optimalsteps.py | 0 | performs log-linear interpolation of a given array of decreasing numbers. | STRING |
| HIGH | comfy_extras/nodes_gits.py | 0 | performs log-linear interpolation of a given array of decreasing numbers. | STRING |
| HIGH | comfy_extras/nodes_align_your_steps.py | 0 | performs log-linear interpolation of a given array of decreasing numbers. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | comfy/sd.py | 664 | self.first_stage_model = comfy.ldm.genmo.vae.model.VideoVAE() | CODE |
| CRITICAL | comfy/sd.py | 686 | self.first_stage_model = comfy.ldm.lightricks.vae.causal_video_autoencoder.VideoVAE(version=version, con | CODE |
| CRITICAL | comfy/sd.py | 808 | self.first_stage_model = comfy.ldm.ace.vae.music_dcae_pipeline.MusicDCAE(source_sample_rate=44100) | CODE |
| CRITICAL | comfy/sd.py | 839 | self.first_stage_model = comfy.ldm.mmaudio.vae.autoencoder.AudioAutoencoder(mode=mode) | CODE |
| CRITICAL | comfy/sd.py | 881 | self.first_stage_model = comfy.ldm.lightricks.vae.audio_vae.AudioVAE(metadata=metadata) | CODE |
| CRITICAL | comfy/cldm/mmdit.py | 24 | self.pos_embed_input = comfy.ldm.modules.diffusionmodules.mmdit.PatchEmbed( | CODE |
| CRITICAL | comfy/ldm/hunyuan_video/model.py | 224 | self.img_in = comfy.ldm.modules.diffusionmodules.mmdit.PatchEmbed(None, self.patch_size, self.in_channels, self. | CODE |
| CRITICAL⚡ | tests-unit/comfy_quant/test_mixed_precision.py | 116 | self.assertEqual(model.layer1.weight._params.scale.item(), 2.0) | CODE |
| CRITICAL⚡ | tests-unit/comfy_quant/test_mixed_precision.py | 117 | self.assertEqual(model.layer3.weight._params.scale.item(), 1.5) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | folder_paths.py | 159 | Get the path to a System User directory. System User directories (prefixed with '__') are only accessible via | STRING |
| HIGH | nodes.py | 2206 | Returns the module name based on the given module path. Examples: get_module_name("C:/Users/username/Co | STRING |
| HIGH | comfy/ldm/cosmos/predict2.py | 752 | Prepares an embedded sequence tensor by applying positional embeddings and handling padding masks. Arg | STRING |
| HIGH | comfy/ldm/cosmos/model.py | 258 | Prepares an embedded sequence tensor by applying positional embeddings and handling padding masks. Arg | STRING |
| HIGH | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 23 | Convert a string, enum instance, or None to the appropriate enum member. Args: value: Can | STRING |
| HIGH | comfy/ldm/hydit/attn_layers.py | 8 | Reshape frequency tensor for broadcasting it with another tensor. This function reshapes the frequency tensor | STRING |
| HIGH | comfy/ldm/ace/lyric_encoder.py | 454 | Create mask for subsequent steps (size, size). This mask is used only in decoder which works in an auto-regressive | STRING |
| HIGH | comfy/ldm/ace/lyric_encoder.py | 492 | Create mask for subsequent steps (size, size) with chunk size, this is for streaming encoder Args: s | STRING |
| HIGH | comfy/ldm/ace/lyric_encoder.py | 890 | Make mask tensor containing indices of padded part. See description of make_non_pad_mask. Args: length | STRING |
| HIGH | app/frontend_management.py | 335 | Args: value (str): The version string to parse. Returns: tuple[str, str]: A tu | STRING |
| HIGH | app/frontend_management.py | 356 | Initializes the frontend for the specified version. Args: version_string (str): The versio | STRING |
| HIGH | app/assets/api/upload.py | 28 | Parse a multipart/form-data upload request. Args: request: The aiohttp request check_hash_exis | STRING |
| HIGH | comfy_api_nodes/nodes_openai.py | 59 | Validates and casts a response to a torch.Tensor. Args: response: The response to validate and cast. | STRING |
| HIGH | comfy_api_nodes/util/conversions.py | 20 | Converts image data from BytesIO to a torch.Tensor. Args: image_bytesio: BytesIO object containing the imag | STRING |
| HIGH | comfy_extras/nodes_train.py | 649 | Validate conditioning count matches image count, expand if needed. Args: positive: Conditioning list | STRING |
| HIGH | comfy_extras/nodes_train.py | 868 | Create optimizer based on name. Args: optimizer_name: Name of optimizer ("Adam", "AdamW", "SGD", "RMSprop") | STRING |
| HIGH | comfy_config/config_parser.py | 51 | Extract configuration from a custom node directory's pyproject.toml file or a Python file. This function reads and par | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | comfy_api_nodes/nodes_tripo.py | 843 | $face := (widgets.face_limit != null) ? widgets.face_limit : -1; | CODE |
| HIGH⚡ | comfy_api_nodes/nodes_tripo.py | 844 | $texSize := (widgets.texture_size != null) ? widgets.texture_size : 4096; | CODE |
| HIGH⚡ | comfy_api_nodes/nodes_tripo.py | 845 | $flatThresh := (widgets.flatten_bottom_threshold != null) ? widgets.flatten_bottom_threshold : 0; | CODE |
| HIGH⚡ | comfy_api_nodes/nodes_tripo.py | 846 | $scale := (widgets.scale_factor != null) ? widgets.scale_factor : 1; | CODE |
| HIGH | tests-unit/assets_test/test_assets_missing_sync.py | 343 | # one hashed AssetInfo (asset_hash == h) + one seed AssetInfo (asset_hash == null) | COMMENT |
| HIGH | tests-unit/assets_test/test_metadata_filters.py | 136 | # a1: key missing; a2: explicit null; a3: concrete value | COMMENT |
| HIGH | tests-unit/assets_test/test_metadata_filters.py | 318 | # Filtering by unknown key with None should return both (missing key OR null) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | folder_paths.py | 120 | def set_output_directory(output_dir: str) -> None: | CODE |
| LOW⚡ | folder_paths.py | 124 | def set_temp_directory(temp_dir: str) -> None: | CODE |
| LOW⚡ | folder_paths.py | 128 | def set_input_directory(input_dir: str) -> None: | CODE |
| LOW | folder_paths.py | 147 | def set_user_directory(user_dir: str) -> None: | CODE |
| LOW | comfy/deploy_environment.py | 5 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | comfy/quant_ops.py | 276 | __all__ = [ | CODE |
| LOW | comfy/text_encoders/longcat_image.py | 8 | logger = logging.getLogger(__name__) | CODE |
| LOW | comfy/weight_adapter/__init__.py | 34 | __all__ = [ | CODE |
| LOW | comfy/comfy_types/__init__.py | 36 | __all__ = [ | CODE |
| LOW | comfy/ldm/lightricks/model.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | blueprints/.glsl/update_blueprints.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | app/assets/database/queries/__init__.py | 72 | __all__ = [ | CODE |
| LOW | app/assets/services/image_dimensions.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | app/assets/services/__init__.py | 53 | __all__ = [ | CODE |
| LOW | comfy_api_nodes/nodes_sonilo.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | comfy_api_nodes/nodes_bytedance.py | 112 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | comfy_api_nodes/util/request_logger.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | comfy_api_nodes/util/__init__.py | 63 | __all__ = [ | CODE |
| LOW | comfy_extras/nodes_glsl.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | comfy_api/util.py | 4 | __all__ = [ | CODE |
| LOW | comfy_api/v0_0_2/__init__.py | 38 | __all__ = [ | CODE |
| LOW | comfy_api/util/__init__.py | 4 | __all__ = [ | CODE |
| LOW | comfy_api/util/video_types.py | 8 | __all__ = [ | CODE |
| LOW | comfy_api/input/__init__.py | 15 | __all__ = [ | CODE |
| LOW | comfy_api/input/basic_types.py | 9 | __all__ = [ | CODE |
| LOW | comfy_api/input/video_types.py | 4 | __all__ = [ | CODE |
| LOW | comfy_api/latest/_ui.py | 473 | __all__ = [ | CODE |
| LOW | comfy_api/latest/_io.py | 2330 | __all__ = [ | CODE |
| LOW | comfy_api/latest/__init__.py | 165 | __all__ = [ | CODE |
| LOW | comfy_api/latest/_util/__init__.py | 5 | __all__ = [ | CODE |
| LOW | comfy_api/latest/_input/range_types.py | 7 | logger = logging.getLogger(__name__) | CODE |
| LOW | comfy_api/latest/_input/__init__.py | 6 | __all__ = [ | CODE |
| LOW | comfy_api/latest/_input/curve_types.py | 8 | logger = logging.getLogger(__name__) | CODE |
| LOW | comfy_api/latest/_input_impl/__init__.py | 3 | __all__ = [ | CODE |
| LOW | comfy_api/v0_0_1/__init__.py | 36 | __all__ = [ | CODE |
| LOW | comfy_api/input_impl/__init__.py | 4 | __all__ = [ | CODE |
| LOW | comfy_api/torch_helpers/__init__.py | 3 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server.py | 301 | # Check if first message is feature flags | COMMENT |
| LOW | server.py | 1157 | # Check if a specific prompt_id was provided for targeted interruption | COMMENT |
| LOW | server.py | 1162 | # Check if the prompt_id matches any currently running prompt | COMMENT |
| LOW | comfy/text_encoders/anima.py | 26 | out["qwen3_06b"] = [[(k[0], 1.0, k[2]) if return_word_ids else (k[0], 1.0) for k in inner_list] for inner_list i | CODE |
| LOW | comfy/weight_adapter/bypass.py | 159 | # Check if adapter has custom bypass_forward (e.g., GLoRA) | COMMENT |
| LOW | comfy/weight_adapter/bypass.py | 162 | # Check if it's overridden (not the base class default) | COMMENT |
| LOW | comfy/weight_adapter/bypass.py | 216 | # Check if adapter is an nn.Module (WeightAdapterTrainBase) | COMMENT |
| LOW | app/user_manager.py | 89 | # Check if filename is url encoded | COMMENT |
| LOW | app/user_manager.py | 270 | # Check if it's the base user directory that's missing (new user case) | COMMENT |
| LOW | app/database/db.py | 141 | # Check if we need to upgrade | COMMENT |
| LOW | …ecution/testing_nodes/testing-pack/async_test_nodes.py | 235 | # Check if resource is already in use | COMMENT |
| LOW | comfy_api_nodes/nodes_topaz.py | 360 | # Check if width exceeds standard bounds (for ultra-wide e.g., 21:9 ARs) | COMMENT |
| LOW | comfy_api_nodes/nodes_topaz.py | 368 | # Check if height exceeds standard bounds | COMMENT |
| LOW | comfy_api_nodes/nodes_topaz.py | 680 | # Check if width exceeds standard bounds (for ultra-wide e.g., 21:9 ARs) | STRING |
| LOW | comfy_api_nodes/nodes_topaz.py | 688 | # Check if height exceeds standard bounds | STRING |
| LOW | comfy_api_nodes/nodes_veo2.py | 240 | # Check if video is provided as base64 or URL | COMMENT |
| LOW | comfy_api_nodes/nodes_hitpaw.py | 140 | # Check if we can downscale input by at most 2x to fit | STRING |
| LOW | comfy_api_nodes/nodes_ideogram.py | 297 | # Check if both image and mask are provided for editing mode | STRING |
| LOW | comfy_extras/nodes_wan.py | 508 | # Check if we have a single track (dict with x,y) or a list of tracks | COMMENT |
| LOW | comfy_api/generate_api_stubs.py | 25 | # Check if module has ComfyAPISync (the sync wrapper) | COMMENT |
| LOW | comfy_api/internal/__init__.py | 142 | # Check if the original method is async | COMMENT |
| LOW⚡ | comfy_api/internal/async_to_sync.py | 241 | # Check if this attribute needs a sync wrapper | COMMENT |
| LOW⚡ | comfy_api/internal/async_to_sync.py | 263 | # Check if the type is defined as an inner class | COMMENT |
| LOW | comfy_api/internal/async_to_sync.py | 582 | # Check if module has __all__ defined | COMMENT |
| LOW | comfy_api/internal/async_to_sync.py | 590 | # Check if this type was actually used in annotations | COMMENT |
| LOW | comfy_api/internal/async_to_sync.py | 946 | # Check if there's a mapping from annotation | COMMENT |
| LOW | .github/workflows/check-line-endings.yml | 27 | # Check if the file exists and is a text file | COMMENT |
| LOW⚡ | tests-unit/utils/extra_config_test.py | 107 | # Check if add_model_folder_path was called with the correct arguments | STRING |
| LOW⚡ | tests-unit/utils/extra_config_test.py | 113 | # Check if yaml.safe_load was called | STRING |
| LOW⚡ | tests-unit/utils/extra_config_test.py | 116 | # Check if open was called with the correct file path | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | execution.py | 273 | # if is just a class, then assign no state, just create clone | COMMENT |
| MEDIUM⚡ | .spectral.yaml | 70 | # Custom rules: best practices | COMMENT |
| MEDIUM | nodes.py | 427 | #grow mask by a few pixels to keep things seamless in latent space | COMMENT |
| LOW | comfy/hooks.py | 414 | # if only 1 hook, just return itself without cloning | COMMENT |
| LOW | comfy/sd.py | 1131 | #So we just set a flag for tiler fallback so that tensor gc can happen once the | COMMENT |
| LOW | comfy/sd.py | 1226 | #So we just set a flag for tiler fallback so that tensor gc can happen once the | COMMENT |
| LOW | comfy/ldm/modules/diffusionmodules/mmdit.py | 852 | # just use a buffer already | COMMENT |
| MEDIUM | comfy/ldm/sam3/tracker.py | 73 | """Max of IoU and IoM (intersection over minimum area). More robust to size differences.""" | STRING |
| LOW | comfy/ldm/ace/lyric_encoder.py | 113 | # It's better we just return None if no cache is required, | COMMENT |
| LOW | comfy/ldm/chroma_radiance/model.py | 339 | # If x0 variant → v-pred, just return this instead | COMMENT |
| LOW | app/node_replace_manager.py | 82 | # just use the first replacement | COMMENT |
| LOW | comfy_extras/nodes_video.py | 222 | # Instead of hashing the file, we can just use the modification time to avoid | COMMENT |
| LOW | comfy_api/internal/async_to_sync.py | 900 | # If we can't get the signature, just add a simple stub | COMMENT |
| LOW | tests-unit/utils/extra_config_test.py | 238 | return path # For absolute base, we just return path directly | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | comfy/context_windows.py | 594 | # accumulate results from each context window | COMMENT |
| MEDIUM | comfy/context_windows.py | 653 | # allow processing to end between context window executions for faster Cancel | COMMENT |
| MEDIUM | comfy/context_windows.py | 715 | # bias is the influence of a specific index in relation to the whole context window | COMMENT |
| MEDIUM | comfy/context_windows.py | 742 | # Scale noise_shape to a single context window so VRAM estimation budgets per-window. | COMMENT |
| MEDIUM | comfy/context_windows.py | 944 | # weight is based on the distance away from the edge of the context window; | COMMENT |
| MEDIUM | comfy_extras/nodes_context_windows.py | 58 | # make memory usage calculation only take into account the context window latents | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 708 | # Step 1: Crop first to avoid exceeding target dimensions | COMMENT |
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 713 | # Step 2: Calculate padding needed for time and frequency dimensions | COMMENT |
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 717 | # Step 3: Apply padding if needed | COMMENT |
| LOW | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 729 | # Step 4: Final safety crop to ensure exact target shape | COMMENT |
| LOW⚡ | comfy_api/internal/async_to_sync.py | 294 | # we need to check if it needs a sync wrapper | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 708 | # Step 1: Crop first to avoid exceeding target dimensions | COMMENT |
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 713 | # Step 2: Calculate padding needed for time and frequency dimensions | COMMENT |
| LOW⚡ | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 717 | # Step 3: Apply padding if needed | COMMENT |
| LOW | comfy/ldm/lightricks/vae/causal_audio_autoencoder.py | 729 | # Step 4: Final safety crop to ensure exact target shape | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | script_examples/basic_api_example.py | 101 | # If the workflow contains API nodes, you can add a Comfy API key to the `extra_data`` field of the payload. | STRING |
| MEDIUM | script_examples/websockets_api_example.py | 42 | # If you want to be able to decode the binary stream for latent previews, here is how you can do it: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | comfy_api/latest/_io.py | 340 | "placeholder": self.placeholder, | CODE |
| LOW | comfy_api/latest/_io.py | 415 | "placeholder": self.placeholder, | CODE |
| LOW | …s-unit/comfy_api_test/multicombo_serialization_test.py | 31 | "placeholder": "Select providers", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | comfy_api_nodes/nodes_vidu.py | 37 | async def execute_task( | CODE |