Local UI to run and train LLMs and diffusion models. Supports GGUF, MLX, Qwen3.8, Kimi K3, MiniMax-H3, Gemma 4, FLUX and more.
This report presents the forensic synthetic code analysis of unslothai/unsloth, a Python project with 75,045 GitHub stars. SynthScan v2.0 examined 1,903,292 lines of code across 4403 source files, recording 48776 pattern matches distributed across 24 syntactic categories. The overall adjusted score of 28.1 places this repository in the Moderate 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 48776 distinct pattern matches across 24 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 | unsloth-cli.py | 62 | def _tokenizer_for_raw_text_loader(tokenizer, is_mlx): | CODE |
| LOW | unsloth-cli.py | 68 | def _raw_text_loader_for_backend( | CODE |
| LOW | unsloth-cli.py | 83 | def _train_with_legacy_save_control(trainer, is_mlx): | CODE |
| LOW | unsloth-cli.py | 101 | def _iter_quantization_methods(quantization): | CODE |
| LOW | studio/install_whisper_prebuilt.py | 376 | def published_llama_ggml_tree(tag: Any, repo: Any = None) -> str | None: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 408 | def installed_llama_tree_repo() -> str | None: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 465 | def _ships_windows_gpu_ggml_module(llama_bin_dir: Path) -> bool: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 477 | def slim_pairing_for_artifact( | CODE |
| LOW | studio/install_whisper_prebuilt.py | 581 | def select_artifact_with_cpu_fallback( | CODE |
| LOW | studio/install_whisper_prebuilt.py | 593 | def _slim_release_incompatibility(manifest: dict[str, Any], host: HostInfo) -> str | None: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 655 | def select_artifact_with_fallback( | CODE |
| LOW | studio/install_whisper_prebuilt.py | 702 | def _download_host_latest_release_tag(repo: str) -> str | None: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 726 | def _resolve_release_via_download_host( | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1048 | def load_whisper_prebuilt_metadata(install_dir: Path) -> dict[str, Any] | None: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1126 | def resolve_newest_release_tag(repo: str) -> str: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1136 | def fetch_release_for_install( | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1156 | def _bundle_matches_whisper_tag(bundle: ReleaseBundle, whisper_tag: str) -> bool: | CODE |
| LOW | studio/install_manifest.py | 80 | def installed_requirements_root(root: Optional[Path] = None) -> Optional[Path]: | CODE |
| LOW | studio/install_manifest.py | 153 | def _installed_metadata_records(dist_name: str) -> List[Tuple[str, Optional[Path]]]: | CODE |
| LOW | studio/install_manifest.py | 204 | def pip_backup_metadata_paths(dist_name: str) -> List[Path]: | CODE |
| LOW | studio/install_manifest.py | 224 | def _metadata_is_inconsistent(dist_name: str, versions: Optional[List[str]] = None) -> bool: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 584 | def source_archive_logical_name(upstream_tag: str) -> str: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 588 | def exact_source_archive_logical_name(source_commit: str) -> str: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 597 | def normalize_source_ref_kind(value: str | None) -> str | None: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 855 | def upstream_source_archive_urls(tag: str) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 863 | def commit_source_archive_urls(repo: str, source_commit: str) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 871 | def release_asset_download_url( | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1949 | def validated_checksums_for_bundle( | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1956 | def _download_host_resolve_enabled() -> bool: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1964 | def _release_asset_download_url(repo: str, tag: str, asset_name: str) -> str: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1968 | def _download_host_latest_release_tag(repo: str) -> str | None: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1972 | def _fetch_download_host_json(url: str) -> Any: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1978 | def _download_host_resolved_release(repo: str) -> ResolvedPublishedRelease | None: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4051 | def overlay_directory_for_choice(install_dir: Path, choice: AssetChoice, host: HostInfo) -> Path: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4060 | def paired_runtime_dll_patterns(choice: AssetChoice) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4853 | def download_validation_model(path: Path, cache_path: Path | None = None) -> None: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5881 | def _validation_server_leads_group() -> bool: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5890 | def _validation_server_kwargs() -> "dict[str, Any]": | CODE |
| LOW | studio/install_llama_prebuilt.py | 178 | def _external_hipinfo_on_path() -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 279 | def staged_validation_enabled() -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 351 | def _cuda_runtime_lines_for_major(major: int) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 643 | def source_url_from_repo_slug(repo_slug: str | None) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 732 | def windows_cuda_upstream_asset_names(llama_tag: str, runtime: str) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 739 | def windows_cuda_asset_aliases( | CODE |
| LOW | studio/install_llama_prebuilt.py | 764 | def _published_windows_cuda_runtime( | CODE |
| LOW | studio/install_llama_prebuilt.py | 917 | def latest_upstream_release_tag() -> str: | CODE |
| LOW | studio/install_llama_prebuilt.py | 947 | def iter_release_payloads_by_time( | CODE |
| LOW | studio/install_llama_prebuilt.py | 978 | def direct_release_matches_request(*, release_tag: str, llama_tag: str, requested_tag: str) -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 987 | def synthetic_checksums_for_release( | CODE |
| LOW | studio/install_llama_prebuilt.py | 998 | def direct_upstream_release_plan( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1210 | def resolve_simple_install_release_plans( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1271 | def normalized_requested_llama_tag(requested_tag: str | None) -> str: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1287 | def linux_runtime_dirs_for_required_libraries(required_libraries: Iterable[str]) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1291 | def detected_linux_runtime_lines() -> tuple[list[str], dict[str, list[str]]]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1367 | def parse_published_release_bundle( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1472 | def parse_approved_release_checksums( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1558 | def load_approved_release_checksums(repo: str, release_tag: str) -> ApprovedReleaseChecksums: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1583 | def iter_published_release_bundles( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1613 | def _warn_uncovered_cuda_host( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1663 | def linux_cuda_choice_from_release( | CODE |
| 34651 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | install.sh | 4205 | # ── Radeon repo wheel selection helpers ────────────────────────────────────── | COMMENT |
| MEDIUM | install.sh | 4291 | # ── ROCm-on-WSL bootstrap for AMD Strix Halo (gfx1151) ─────────────────────── | COMMENT |
| MEDIUM | install.sh | 4645 | # ── Strix Halo / Strix Point: route to the AMD arch-specific index ─────────── | COMMENT |
| MEDIUM | studio/setup.sh | 26 | # ── Maintainer-editable defaults ────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/setup.sh | 44 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/prebuilt_core.py | 1505 | # ════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | studio/prebuilt_core.py | 1508 | # ════════════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | studio/install_python_stack.py | 89 | # ── ROCm / AMD GPU support ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/install_python_stack.py | 3549 | # ── Color support ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/smoke-heavy-thread-main.tsx | 129 | // ── content generators ────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/smoke-heavy-thread-main.tsx | 366 | // ── the cycle ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/smoke-code-block-flicker-main.tsx | 68 | // ── CSS variants ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/smoke-code-block-flicker-main.tsx | 142 | // ── content ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/smoke-code-block-flicker-main.tsx | 212 | // ── sampling ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/code-tool-placement.test.ts | 34 | // ── the rule itself ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/code-tool-placement.test.ts | 103 | // ── the adapter has to actually use it ───────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/code-tool-placement.test.ts | 149 | // ── Whether the pill is offered at all ───────────────────────────── | COMMENT |
| MEDIUM | …rontend/tests/recommended-curated-row-metadata.test.ts | 35 | // ── search: a downloaded curated row stays findable ─────────────────────────── | COMMENT |
| MEDIUM | …rontend/tests/recommended-curated-row-metadata.test.ts | 71 | // ── row metadata: size chip + capability glyphs ─────────────────────────────── | COMMENT |
| MEDIUM | …rontend/tests/recommended-curated-row-metadata.test.ts | 164 | // ── wiring: the picker actually reads the fallbacks ─────────────────────────── | COMMENT |
| MEDIUM | …io/frontend/tests/code-plugin-engine-and-cache.test.ts | 56 | // ── 1. the engine the desktop CSP allows ─────────────────────────────── | COMMENT |
| MEDIUM | …io/frontend/tests/code-plugin-engine-and-cache.test.ts | 77 | // ── 2. the character budget ──────────────────────────────────────────── | COMMENT |
| MEDIUM | …io/frontend/tests/code-plugin-engine-and-cache.test.ts | 259 | // ── 3. the compact cache key is a hint, not the answer ───────────────── | COMMENT |
| MEDIUM | …udio/frontend/tests/loaded-models-drag-restore.test.ts | 97 | // ── The wiring the geometry depends on ────────────────────────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/loaded-models-platform-matrix.test.ts | 77 | // ── Chat runtime: the accelerator axis ────────────────────────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/loaded-models-platform-matrix.test.ts | 136 | // ── Chat runtime: every audio_type the backend can emit ───────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/loaded-models-platform-matrix.test.ts | 179 | // ── Diffusion: the device vocabulary, and the two engines ─────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/loaded-models-platform-matrix.test.ts | 297 | // ── Dictation: three engines, and a "device" that is not a device ──────── | COMMENT |
| MEDIUM | …o/frontend/tests/loaded-models-platform-matrix.test.ts | 336 | // ── The merge, across a fully loaded host ─────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/prompt-queue-input-edges.test.ts | 46 | // ── the chord ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/prompt-queue-input-edges.test.ts | 104 | // ── the drag type ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/prompt-queue-input-edges.test.ts | 137 | // ── pending starts ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/tests/prompt-queue-input-edges.test.ts | 167 | // ── the pasted-text key ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 62 | // ── The pinned cached row, the shape #8893 was reported on ─────────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 62 | // ── The pinned cached row, the shape #8893 was reported on ─────────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 120 | // ── Windows spells one directory several ways, and means one directory ─────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 154 | // ── POSIX is case-SENSITIVE, and two files can differ by case alone ────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 174 | // ── The unpinned cached row: the repo id IS the load identifier ────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 192 | // ── A standalone .gguf: one file, no quant to choose between ───────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 217 | // ── Safetensors and MLX: no quant at all on either side ────────────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 256 | // ── Nothing is loaded ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 271 | // ── Older Unsloth backends, i.e. an install that predates these fields ──────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 301 | // ── A native-lease load withholds the raw path on every version ────────────── | COMMENT |
| MEDIUM | …dio/frontend/tests/resident-model-match-matrix.test.ts | 336 | // ── The documented false negative, pinned so it cannot drift into a true ───── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 148 | // ── HTML: the grammar pushes into javascript and css and back ────────── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 185 | // ── TSX: JSX children and an expression container ────────────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 217 | // ── Markdown containing a fence: the grammar nests into itself ───────── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 255 | // ── Markdown whose nested fences open and close again ────────────────── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 320 | // ── Shell heredoc: the terminator is chosen by the document ──────────── | COMMENT |
| MEDIUM | …o/frontend/tests/code-plugin-embedded-grammars.test.ts | 349 | // ── Nested template literals: interpolation inside interpolation ─────── | COMMENT |
| MEDIUM | …rc/features/studio/sections/dataset-preview-dialog.tsx | 226 | // ── AI Assist ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/video/video-page.tsx | 1172 | // ── keyframes ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …features/chat/prompt-storage/prompt-storage-dialog.tsx | 729 | // ── Fine-tuning export ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/chat/api/chat-adapter.ts | 5014 | // ── Audio model path (non-streaming) ───────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/images/api.ts | 453 | // ── Diffusion LoRA training ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 34 | // ── canonicalKeyFor: suffix stripping, owner preserved ───────────────────────── | COMMENT |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 94 | // ── groupForRepoId: artifacts, aliases, canonical keys, unknowns ─────────────── | COMMENT |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 141 | // ── catalog integrity: unique ids, artifacts resolve to exactly one group ────── | COMMENT |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 169 | // ── loadSpecFor reproduces the old page lookup tables exactly ────────────────── | COMMENT |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 246 | // ── curatedRowLabelFor ───────────────────────────────────────────────────────── | COMMENT |
| 2698 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | studio/backend/core/inference/tool_call_parser.py | 1973 | """One ``.call`` value (string/number/true/false/null) at ``body[p:]``. | STRING |
| HIGH | studio/backend/core/inference/media_locality.py | 299 | # [null, null] marks a component this pipeline deliberately ships without. | COMMENT |
| HIGH | studio/backend/core/inference/tools.py | 5119 | ran on past the end of the word: `sed "$(printf '(' >/dev/null; printf 'e | STRING |
| HIGH | studio/backend/core/inference/tools.py | 5401 | scan (`ls -T && echo curl`).""" | STRING |
| HIGH | studio/backend/core/inference/gallery_flags.py | 63 | The container being a dict is not enough. ``{"archived": null}`` is a dict, and every reader | STRING |
| HIGH | studio/backend/tests/test_diffusion_routes.py | 2048 | # Same for the precision fields added later: absent keys read back as null, and the PNG still | COMMENT |
| HIGH⚡ | studio/backend/tests/test_export_imatrix_compressed.py | 209 | assert "hf_token: params.token ?? params.loadToken ?? null," in gguf | CODE |
| HIGH | …dio/backend/tests/test_training_progress_stream_nan.py | 5 | non-finite-loss stretches (loss reported as null) instead of replaying the | STRING |
| HIGH | studio/backend/tests/test_local_model_dir_discovery.py | 126 | (b'{"downloadsFolder": null}', "null_value"), | CODE |
| HIGH | …o/backend/tests/test_resume_blocked_reason_surfaces.py | 150 | guard = source.split("if (!(detail.run.can_resume && outputDir))", 1)[1][:400] | CODE |
| HIGH | studio/backend/tests/test_safetensors_tool_loop.py | 744 | '<|python_tag|>{"name":"foo","arguments":null}', | CODE |
| HIGH | studio/backend/tests/test_safetensors_tool_loop.py | 1000 | "enabled:true,attempts:5,threshold:1.5,nickname:null}<tool_call|>" | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 38 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 50 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 409 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 346 | finish_reason=null); the frontend latches on | STRING |
| HIGH | studio/backend/tests/test_media_auto_switch.py | 1808 | ' "safety_checker": [null, null]}' | CODE |
| HIGH | studio/backend/tests/test_openai_codex_subscription.py | 1353 | yield 'data: {"choices":[{"delta":{"tool_calls":[{"index":0,"id":"call_1","type":"function","function":{ | CODE |
| HIGH | studio/backend/tests/test_openai_codex_subscription.py | 1356 | yield 'data: {"choices":[{"delta":{"content":"The result is 42."},"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_codex_subscription.py | 1432 | yield 'data: {"choices":[{"delta":{"tool_calls":[{"index":0,"id":"call_1","type":"function","function":{ | CODE |
| HIGH | studio/backend/tests/test_openai_codex_subscription.py | 1435 | yield 'data: {"choices":[{"delta":{"content":"done"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_chat_settings_payload.py | 242 | """A cleared seed is an explicit null, not an omission: the merge overwrites per | STRING |
| HIGH⚡ | studio/backend/tests/test_credential_routes.py | 348 | """A blank Max Tokens limit field serialises as null, not as an omission. | STRING |
| HIGH⚡ | studio/backend/tests/test_credential_routes.py | 350 | So every provider type has to accept the null, ChatGPT subscriptions included: an | STRING |
| HIGH | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 38 | b'"stop_reason":null,"usage":{"input_tokens":1,"output_tokens":1}}}\n\n' | CODE |
| HIGH | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 49 | b'"stop_reason":null,"usage":{"input_tokens":1,"output_tokens":1}}}\n\n' | CODE |
| HIGH⚡ | studio/backend/tests/test_tool_call_parser_strict.py | 388 | calls = parse_tool_calls_from_text('[TOOL_CALLS][{"name":"get_time","arguments":null}]') | CODE |
| HIGH | studio/backend/tests/test_tool_call_parser_strict.py | 485 | text = '<|python_tag|>do.call(s="hi 😀", n=42, f=1.5, b=true, z=null)' | CODE |
| HIGH | studio/backend/tests/test_image_gallery.py | 371 | # `{"archived": null}` is still a dict, so a container-only check trusted it, and every reader | COMMENT |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 2435 | line = 'data: {"choices":[{"index":0,"delta":{"content":"hello"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 2444 | '"mentions \\"reasoning_content\\" in text"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 2452 | '"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 6048 | '"finish_reason":null}]}', | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 8140 | 'data: {"id":"chatcmpl-test","object":"chat.completion.chunk","created":1,"model":"m","choices":[{"i | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 8161 | 'data: {"id":"chatcmpl-test","choices":[{"index":0,"delta":{"content":"ok"},"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 8960 | yield 'data: {"choices":[{"index":0,"delta":{"content":"hi"},"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 9034 | yield 'data: {"choices":[{"index":0,"delta":{"content":"hi"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_consent_gate.py | 1586 | '{"auto_map": {"AutoTokenizer": ["tokenization_evil.EvilTokenizer", null]}}' | CODE |
| HIGH | studio/backend/tests/test_consent_gate.py | 1538 | '{"auto_map": {"AutoTokenizer": ["other/repo--tokenization_x.Slow", null]}}' | CODE |
| HIGH | studio/backend/tests/test_llama_cpp_stall_timeout.py | 104 | 'data: {"choices":[{"delta":{"role":"assistant","content":null}}],' | CODE |
| HIGH | …/backend/tests/test_memory_estimate_contract_freeze.py | 69 | planner fields are present-and-null, so swapping ``weights_bytes`` for the | STRING |
| HIGH | studio/backend/tests/test_hf_cache_dangling_refs.py | 3302 | # Wan-AI/Wan2.2-TI2V-5B-Diffusers declares transformer_2 as [null, null] and ships no such dir. | COMMENT |
| HIGH | studio/backend/tests/test_hf_cache_dangling_refs.py | 3633 | """Wan 2.2's 5B sibling declares ``transformer_2`` as [null, null] and ships no such directory: | STRING |
| HIGH | …o/backend/tests/test_llama_cpp_wait_for_vram_settle.py | 669 | """On Windows signal.SIGKILL is undefined; the reaper must fall back to SIGTERM | STRING |
| HIGH | studio/backend/tests/test_chat_thread_settings.py | 724 | """The default dump spells every unset field as null, and the client drops those, so | STRING |
| HIGH | …backend/tests/test_video_resolution_preset_contract.py | 176 | assert "presets && presets.length > 0" in memo | CODE |
| HIGH | studio/backend/tests/test_gpu_arch_gate_7624.py | 86 | ("targets_null", '{"mapped_targets": null}'), | CODE |
| HIGH | studio/backend/tests/test_gpu_arch_gate_7624.py | 90 | ("targets_list_of_null", '{"mapped_targets": [null]}'), | CODE |
| HIGH⚡ | studio/backend/tests/test_orphaned_children.py | 418 | where the BOOL result is then undefined) would leave Unsloth unstoppable.""" | STRING |
| HIGH | studio/backend/tests/test_warm_window_review_fixes.py | 1865 | chat_only with reason null, stopping the sidebar's mlx_unavailable poll.""" | STRING |
| HIGH | studio/backend/tests/test_mmproj_placement_policy.py | 954 | forces falsey on getenv returning non-null, so an empty value still pins. Read | STRING |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 843 | assert self._find()("cat README.md && echo source") == set() | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 844 | assert "source" not in self._find()("cat README.md && echo source") | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 845 | assert "echo" not in self._find()("cat README.md && echo source") | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 869 | assert "wget" in self._find()("cd /tmp && wget https://bad") | CODE |
| HIGH⚡ | studio/backend/tests/test_permission_mode.py | 998 | ("sed \"$(printf '(' >/dev/null; printf 'e rm -f victim')\" input", True), | CODE |
| HIGH⚡ | studio/backend/tests/test_permission_mode.py | 999 | ("sed \"$(printf ')' >/dev/null; printf 'e rm -f victim')\" input", True), | CODE |
| HIGH⚡ | studio/backend/tests/test_permission_mode.py | 1000 | ("sed \"$(printf '()' >/dev/null; printf 'e rm -f victim')\" input", True), | CODE |
| HIGH | studio/backend/tests/test_permission_mode.py | 492 | ("ls -T && echo curl", False), | CODE |
| HIGH | studio/backend/tests/test_permission_mode.py | 493 | ("grep curl notes.txt && tar -T list.txt -cf a.tar", False), | CODE |
| 949 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | install.sh | 5606 | except Exception: | CODE |
| LOW | studio/setup.sh | 783 | except Exception: | CODE |
| LOW | studio/setup.sh | 1847 | except Exception: | CODE |
| LOW | studio/setup.sh | 3500 | except Exception: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 402 | except Exception as exc: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1190 | except Exception as exc: | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1550 | except Exception as exc: # noqa: BLE001 - probe must never crash the caller | CODE |
| LOW | studio/install_whisper_prebuilt.py | 1583 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | studio/install_manifest.py | 136 | except Exception: | CODE |
| LOW | studio/install_manifest.py | 173 | except Exception: | CODE |
| LOW | studio/install_manifest.py | 394 | except Exception: | CODE |
| LOW⚡ | studio/install_manifest.py | 415 | except Exception: | CODE |
| LOW⚡ | studio/install_manifest.py | 420 | except Exception: | CODE |
| LOW⚡ | studio/install_manifest.py | 430 | except Exception: | CODE |
| LOW | studio/install_manifest.py | 470 | except Exception: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4047 | except Exception: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4860 | except Exception as exc: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4869 | except Exception as exc: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5871 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 965 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1261 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1561 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1576 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1596 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2141 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2218 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2317 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2336 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2484 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2522 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2540 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2585 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2651 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2696 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2745 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3341 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3353 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3370 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3393 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3864 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3970 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3999 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4265 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4289 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4357 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4394 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4477 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4503 | except Exception as failed_move_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4548 | except Exception as copy_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4557 | except Exception as duplicate_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4575 | except Exception as rollback_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4633 | except Exception as cleanup_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4666 | except Exception as cleanup_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4818 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4840 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4982 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5001 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5007 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5051 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5145 | except Exception: | CODE |
| 3862 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_whisper_prebuilt.py | 53 | CODE | |
| LOW | studio/install_manifest.py | 18 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 7 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 18 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 29 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 36 | CODE | |
| LOW | studio/install_sd_cpp_prebuilt.py | 25 | CODE | |
| LOW | studio/install_node_prebuilt.py | 20 | CODE | |
| LOW | studio/prebuilt_core.py | 28 | CODE | |
| LOW | studio/install_python_stack.py | 12 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 14 | CODE | |
| LOW | studio/backend/run.py | 13 | CODE | |
| LOW | studio/backend/run.py | 13 | CODE | |
| LOW | studio/backend/run.py | 151 | CODE | |
| LOW | studio/backend/startup_banner.py | 9 | CODE | |
| LOW | studio/backend/lan_access.py | 23 | CODE | |
| LOW | studio/backend/colab.py | 14 | CODE | |
| LOW | studio/backend/main.py | 198 | CODE | |
| LOW | studio/backend/mcp_server.py | 11 | CODE | |
| LOW | studio/backend/loggers/handlers.py | 11 | CODE | |
| LOW | studio/backend/loggers/__init__.py | 4 | CODE | |
| LOW | studio/backend/loggers/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/import_guards.py | 6 | CODE | |
| LOW | studio/backend/core/youtube_transcript.py | 16 | CODE | |
| LOW | studio/backend/core/_torchao_stub.py | 17 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 26 | CODE | |
| LOW | studio/backend/core/research_runs.py | 6 | CODE | |
| LOW | studio/backend/core/research_runs.py | 29 | CODE | |
| LOW | studio/backend/core/research/citations.py | 11 | CODE | |
| LOW | studio/backend/core/research/redaction.py | 12 | CODE | |
| LOW | studio/backend/core/research/parsing.py | 11 | CODE | |
| LOW | studio/backend/core/research/prompts.py | 6 | CODE | |
| LOW | studio/backend/core/data_recipe/service.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/data_recipe/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/data_recipe/jsonable.py | 4 | CODE | |
| LOW | …/backend/core/data_recipe/local_callable_validators.py | 4 | CODE | |
| LOW | …/backend/core/data_recipe/local_callable_validators.py | 8 | CODE | |
| LOW | studio/backend/core/data_recipe/huggingface.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 7 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 8 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/constants.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/types.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/parse.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/manager.py | 4 | CODE | |
| LOW | studio/backend/core/training/worker.py | 12 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1568 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1569 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1807 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1808 | CODE | |
| LOW | studio/backend/core/training/worker.py | 5155 | CODE | |
| LOW | studio/backend/core/training/worker.py | 3893 | CODE | |
| LOW | studio/backend/core/training/diffusion_checkpoint.py | 41 | CODE | |
| LOW | studio/backend/core/training/diffusion_checkpoint.py | 55 | CODE | |
| LOW | studio/backend/core/training/diffusion_checkpoint.py | 55 | CODE | |
| LOW | studio/backend/core/training/diffusion_train_extras.py | 33 | CODE | |
| LOW | studio/backend/core/training/diffusion_clip_formats.py | 18 | CODE | |
| 2313 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | install.sh | 1 | #!/bin/sh | COMMENT |
| LOW | install.sh | 21 | # ── Why the installer lives in a function ── | COMMENT |
| LOW | install.sh | 341 | } | COMMENT |
| LOW | install.sh | 1061 | # install. A real id is 64 bytes and never reaches this. | COMMENT |
| LOW | install.sh | 1101 | _css_exe="$_css_exe_dir/$(basename "$_css_exe")" | COMMENT |
| LOW | install.sh | 1141 | if ! _css_install_id_is_valid "${_css_new_id:-}"; then | COMMENT |
| LOW | install.sh | 2281 | # ── Check system dependencies ── | COMMENT |
| LOW | install.sh | 2581 | COMMENT | |
| LOW | install.sh | 2741 | # `mv f d` moves f INTO d and reports success, and a searchable directory passes -x | COMMENT |
| LOW | install.sh | 2861 | # Accept the in-VENV ownership marker so partial-install retries are | COMMENT |
| LOW | install.sh | 3021 | # Apple Silicon venv. The arch-explicit arm64 CPython stops uv reusing a cached | COMMENT |
| LOW | install.sh | 3101 | fi | COMMENT |
| LOW | install.sh | 3281 | awk '/vendor_id/ && $2 == 4098 { found = 1 } END { exit !found }' \ | COMMENT |
| LOW | install.sh | 3481 | }' "$_kfd_node" 2>/dev/null || true | COMMENT |
| LOW | install.sh | 3541 | # mixed host into one apparent arch). Decline. | COMMENT |
| LOW | install.sh | 3681 | # Require the status word "installed". dpkg-query -W lists every package in the | COMMENT |
| LOW | install.sh | 3721 | best_maj = maj; best_min = min; seen = 1 | COMMENT |
| LOW | install.sh | 3801 | fi | COMMENT |
| LOW | install.sh | 4381 | # | COMMENT |
| LOW | install.sh | 4541 | COMMENT | |
| LOW | install.sh | 4641 | if [ "$_maj" -lt "$2" ]; then return 0; fi | COMMENT |
| LOW | install.sh | 4761 | # Routing the wheels is only half of unslothai#7331: ROCr rebuilds the agent | COMMENT |
| LOW | install.sh | 4781 | # dropped gfx906 (rocBLAS "TensileLibrary.dat ... not read for gfx906", | COMMENT |
| LOW | install.sh | 5341 | # Require torch, torchvision, torchaudio wheels to all resolve | COMMENT |
| LOW | install.sh | 5681 | # UNSLOTH_CI_SOURCE_OVERLAY names a directory holding a pyproject.toml. | COMMENT |
| LOW | pyproject.toml | 161 | # 0.39 is the floor the diffusion stack already assumes: Krea2Pipeline (the Krea 2 | COMMENT |
| LOW | pyproject.toml | 201 | # "xFormers can't load C++/CUDA extensions", losing memory-efficient attention, | COMMENT |
| LOW | pyproject.toml | 221 | # install.ps1 needs none of this: it picks the wheel from the index it installed | COMMENT |
| LOW | pyproject.toml | 1481 | [tool.ruff.format] | COMMENT |
| LOW | build.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | studio/setup.sh | 21 | ;; | COMMENT |
| LOW | studio/setup.sh | 121 | # deliberate opt-in: when set we thread it as `--registry <url>` into every npm/bun | COMMENT |
| LOW | studio/setup.sh | 541 | } | COMMENT |
| LOW | studio/setup.sh | 621 | } | COMMENT |
| LOW | studio/setup.sh | 1281 | } | COMMENT |
| LOW | studio/setup.sh | 2341 | fi | COMMENT |
| LOW | studio/install_whisper_prebuilt.py | 141 | # bundle can pair via the llama cpu modules, or -- on a pinned pre-slim release -- | COMMENT |
| LOW | studio/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 2801 | rocm_gfx_targets = [], | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 4301 | def _install_side_path_candidates(install_dir: Path, label: str) -> list[Path]: | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 4521 | replace_with_busy_retry(rollback_dir, install_dir) | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 5021 | candidates.extend(root.glob("nvidia/*/lib")) | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 7541 | # same. Persist it as automatic so pre-#8050 installs (and the --llama-backend | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 7901 | # dropped connection escapes as EXIT_ERROR, which the setup scripts | COMMENT |
| LOW | studio/install_sd_cpp_prebuilt.py | 41 | COMMENT | |
| LOW | studio/install_sd_cpp_prebuilt.py | 961 | # two bundles and every later failure has to be reported as an incomplete replacement, not as | COMMENT |
| LOW | studio/install_sd_cpp_prebuilt.py | 981 | # process. A first install has nothing to compete with, so it stays ordinary and the | COMMENT |
| LOW | studio/install_python_stack.py | 261 | "torchaudio>=2.4,<2.12.0", | COMMENT |
| LOW | studio/install_python_stack.py | 1021 | # Intel adapter would shift the mask index and warn at a non-AMD user. | COMMENT |
| LOW | studio/install_python_stack.py | 1101 | return None | COMMENT |
| LOW | studio/install_python_stack.py | 3121 | # Strix Halo / Point (gfx1151 / gfx1150) need torch from AMD's per-gfx index | COMMENT |
| LOW | studio/install_python_stack.py | 3721 | # torch: upstream ``llvmlite`` dropped its macOS x86_64 wheel (0.46.0+ ships only | COMMENT |
| LOW | studio/install_python_stack.py | 4761 | # NOT the environment-variable spelling of it, so that half is translated by hand. | COMMENT |
| LOW | studio/frontend/smoke-tool-activity-main.tsx | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/frontend/smoke-stream-pacing-main.tsx | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/frontend/smoke-heavy-thread-main.tsx | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/frontend/smoke-heavy-thread-main.tsx | 21 | // bash tool call code_execution card, the other result-pane shape | COMMENT |
| LOW | studio/frontend/smoke-heavy-thread-main.tsx | 61 | import { type ReactElement, useEffect, useRef, useState } from "react"; | COMMENT |
| LOW | studio/frontend/smoke-heavy-thread-main.tsx | 81 | // | COMMENT |
| LOW | studio/frontend/smoke-collapse-layout-main.tsx | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| 1632 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_whisper_prebuilt.py | 853 | CODE | |
| LOW | studio/install_manifest.py | 153 | CODE | |
| LOW | studio/install_manifest.py | 478 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 998 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1210 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 2441 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 2492 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3281 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3320 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3452 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3645 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3725 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3931 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4329 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4457 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5136 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5469 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5724 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 6006 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 6251 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 6299 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 7137 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 7845 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 8371 | CODE | |
| LOW | studio/install_sd_cpp_prebuilt.py | 616 | CODE | |
| LOW | studio/install_sd_cpp_prebuilt.py | 836 | CODE | |
| LOW | studio/install_node_prebuilt.py | 267 | CODE | |
| LOW | studio/install_node_prebuilt.py | 525 | CODE | |
| LOW | studio/install_node_prebuilt.py | 775 | CODE | |
| LOW | studio/prebuilt_core.py | 633 | CODE | |
| LOW | studio/prebuilt_core.py | 675 | CODE | |
| LOW | studio/prebuilt_core.py | 716 | CODE | |
| LOW | studio/prebuilt_core.py | 1075 | CODE | |
| LOW | studio/prebuilt_core.py | 1318 | CODE | |
| LOW | studio/install_python_stack.py | 651 | CODE | |
| LOW | studio/install_python_stack.py | 818 | CODE | |
| LOW | studio/install_python_stack.py | 1249 | CODE | |
| LOW | studio/install_python_stack.py | 1490 | CODE | |
| LOW | studio/install_python_stack.py | 2106 | CODE | |
| LOW | studio/install_python_stack.py | 2328 | CODE | |
| LOW | studio/install_python_stack.py | 2919 | CODE | |
| LOW | studio/install_python_stack.py | 3838 | CODE | |
| LOW | studio/install_python_stack.py | 4306 | CODE | |
| LOW | studio/install_python_stack.py | 4661 | CODE | |
| LOW | studio/install_python_stack.py | 5011 | CODE | |
| LOW | studio/install_python_stack.py | 5183 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 122 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 197 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 726 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 768 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 486 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 531 | CODE | |
| LOW | studio/backend/run.py | 48 | CODE | |
| LOW | studio/backend/run.py | 179 | CODE | |
| LOW | studio/backend/run.py | 295 | CODE | |
| LOW | studio/backend/run.py | 366 | CODE | |
| LOW | studio/backend/run.py | 638 | CODE | |
| LOW | studio/backend/run.py | 741 | CODE | |
| LOW | studio/backend/run.py | 793 | CODE | |
| LOW | studio/backend/run.py | 1135 | CODE | |
| 1305 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | install.sh | 941 | # Optional callers never elevate, in any mode: nothing on the consumer path | COMMENT |
| MEDIUM | install.sh | 2266 | # elevate for the target distro; the child already printed the NEED_SUDO line, so | COMMENT |
| LOW | install.sh | 4342 | # just set, which dies with the installer. Persist the drop-in so login | COMMENT |
| MEDIUM | studio/frontend/package-lock.json | 14096 | "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", | CODE |
| MEDIUM | studio/frontend/tests/stream-pacing-stall.test.ts | 5 | // catches the freeze class #7892 and #8845 fixed. A stall the harness fails to record is a | COMMENT |
| MEDIUM | studio/frontend/src/components/app-sidebar.tsx | 530 | // Absolutely-positioned extras over the row, e.g. a disclosure chevron. | COMMENT |
| MEDIUM | …d/src/components/assistant-ui/progressive-messages.tsx | 56 | * imperative DOM readers (screenshot capture, the #9016 harness census) not necessarily in the React | COMMENT |
| MEDIUM | studio/backend/core/training/trainer.py | 3622 | # configured and the A/B harness reads it back. A second call is a no-op. | COMMENT |
| MEDIUM | studio/backend/core/inference/diffusion_families.py | 401 | # Hosted checkpoints, verified bit-identical to on-the-fly quantize (the guider pipeline is not run-to-run deter | COMMENT |
| MEDIUM | studio/backend/core/inference/diffusion_precision.py | 338 | # torchao dynamic fp8 COMPUTE, per-row (torch._scaled_mm on the fp8 cores). Unlike layerwise `fp8` the matmul stays | COMMENT |
| MEDIUM | studio/backend/core/inference/diffusion_speed.py | 265 | # A compiled U-Net family also compiles the VAE decode (4.98 to 4.25 s over 4 images, LPIPS unchanged). DiTs skip it | COMMENT |
| MEDIUM | studio/backend/core/inference/diffusion_speed.py | 438 | # Families the overflow harness found to produce non-finite activations under fp16 accumulation. Empty by measurement: n | COMMENT |
| MEDIUM | …udio/backend/tests/test_export_multi_gpu_device_map.py | 23 | # Reuse the absolute-paths stub harness: loads core/export/export.py without torch/unsloth. | COMMENT |
| MEDIUM | studio/backend/tests/test_memory_estimate_platforms.py | 240 | # sys.platform + the WSL markers, through the harness that already owns them. | COMMENT |
| MEDIUM | …dio/backend/tests/test_parallel_slots_never_clamped.py | 21 | # Reuses the only harness in the suite that yields a real launched argv. | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_diffusion_speed.py | 258 | # default compiles with dynamic=True and no autotune mode: fast cold start, resolution-robust, sidesteps the CUDA-gr | COMMENT |
| MEDIUM | studio/backend/tests/test_metal_paravirtual_guard.py | 583 | # This harness is about the paravirtual gate, so vision is on; the toggle's | COMMENT |
| MEDIUM⚡ | …dio/backend/tests/test_metal_explicit_context_guard.py | 743 | # harness: ~3850 to ~4050 MiB (3300 leaves room for 768 tokens, 4100 tips over). | COMMENT |
| MEDIUM | …dio/backend/tests/test_metal_explicit_context_guard.py | 165 | # This harness does not model host RAM, and None is the documented way to say so: both | COMMENT |
| MEDIUM | …dio/backend/tests/test_mtp_partial_offload_evidence.py | 39 | # Reuse the module's dependency stubs, fixtures and launch harness. | COMMENT |
| MEDIUM | studio/backend/tests/test_anthropic_citations_edge.py | 23 | # ── shared SSE harness ─────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_rag_nudge_roster_compat.py | 644 | # sibling module's count-endpoint harness the same way pytest itself found it. | COMMENT |
| MEDIUM | studio/backend/tests/test_trained_model_scan.py | 147 | # Assert on the logger directly: robust to the logging backend (structlog vs stub). | COMMENT |
| MEDIUM | …/backend/tests/test_memory_estimate_contract_freeze.py | 49 | # and brings the route harness with it. Same import-for-side-effects pattern as | COMMENT |
| LOW | …/backend/tests/test_tensor_quant_kv_platform_matrix.py | 143 | # gone entirely, not just set to layer, so an extras --tensor-split cannot | COMMENT |
| MEDIUM | studio/backend/tests/test_external_tool_stream_abuse.py | 899 | # finish. ``release`` is only the harness's escape hatch if it never does. | COMMENT |
| MEDIUM | studio/backend/tests/test_external_tool_stream_abuse.py | 909 | # Tasks already running belong to this harness, not the tool loop, so the census is taken | COMMENT |
| MEDIUM | studio/backend/tests/test_external_tool_stream_abuse.py | 935 | # Census BEFORE the escape hatch, so a worker that only the harness could free still | COMMENT |
| MEDIUM | …dio/backend/tests/test_gpu_arch_gate_os_matrix_7624.py | 2572 | # harness builds a fresh backend per drive, so without this the assert | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_mtp_vram_budget.py | 604 | # robust to that and to any formatter line-wrapping. | COMMENT |
| MEDIUM | …/tests/test_length_truncated_reasoning_continuation.py | 773 | # A tokenizer this harness can actually run: llama-server is not here to render a | COMMENT |
| MEDIUM | studio/backend/tests/test_research_runs_hardening.py | 742 | """Serve ``responses`` in order to the completion path and record the sends. An entry that | STRING |
| MEDIUM | studio/backend/tests/test_setup_llama_cpp_backend.py | 347 | # errors out and the harness returns a bare "ARGS:". | COMMENT |
| MEDIUM | studio/backend/tests/test_llama_extra_args_platforms.py | 26 | # The placement harness (module stubs, a fake GGUF, a fake GPU probe, the captured | COMMENT |
| MEDIUM | studio/backend/tests/test_local_llama_cpp_link.py | 158 | # stubs this at every one of its call sites for the same reason; this harness | COMMENT |
| MEDIUM | …kend/tests/test_auto_offload_ctx_fit_floor_coupling.py | 64 | # 4560 tokens at the 0.5 MiB/token rate the matrix harness prices: over the floor, | COMMENT |
| MEDIUM | studio/backend/tests/test_diffusion_backend.py | 3154 | # low_vram offloads every component; whole-module offload is the robust path and engages directly. | COMMENT |
| MEDIUM | …udio/backend/tests/test_llama_extra_args_end_to_end.py | 19 | # The harness (module stubs, a fake GGUF, a fake GPU probe, the captured Popen) | COMMENT |
| MEDIUM | studio/backend/tests/log_budget/replay.py | 79 | # took a minute" is a case the harness could not express at all, and therefore could | COMMENT |
| MEDIUM⚡ | studio/backend/assets/docs_ui/redoc.standalone.js | 2 | !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("null")):"function"==typeof de | CODE |
| MEDIUM⚡ | studio/backend/assets/docs_ui/redoc.standalone.js | 2 | !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("null")):"function"==typeof de | CODE |
| MEDIUM⚡ | studio/backend/assets/docs_ui/redoc.standalone.js | 2 | !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("null")):"function"==typeof de | CODE |
| MEDIUM⚡ | tests/conftest.py | 208 | # (they run at import time in unsloth/import_fixes.py). The harness above lets | COMMENT |
| MEDIUM | tests/test_model_registry.py | 128 | " import conftest # noqa: F401 GPU-free harness on no-accelerator runners\n" | CODE |
| MEDIUM | tests/_zoo_rocm_spoof.py | 36 | """Load the sibling CUDA spoof by path (robust to sys.path), so we reuse its | STRING |
| MEDIUM | tests/_zoo_aggressive_cuda_spoof.py | 3 | # tests/conftest.py's harness with deeper patches that unblock more patch_* / | COMMENT |
| MEDIUM | tests/test_installer_system32_guard.py | 186 | # install.ps1 prints through its UTF-8 stdout sink; the harness only needs the text. | COMMENT |
| MEDIUM | tests/test_installer_system32_guard.py | 1256 | # The limit is lowered rather than the value grown: the harness sets the | COMMENT |
| MEDIUM | tests/studio/playwright_collapse_layout.py | 113 | # Under logs/ like every sibling harness; logs/ is gitignored, so the tree stays clean. | COMMENT |
| MEDIUM | tests/studio/playwright_collapse_layout.py | 463 | # say anything. The page now publishes from a post-commit effect, but this harness also | STRING |
| MEDIUM⚡ | tests/studio/test_heavy_thread_harness_contract.py | 150 | # The DOM value is what the harness itself wrote. A keystroke that reached nothing still | COMMENT |
| MEDIUM⚡ | tests/studio/test_heavy_thread_harness_contract.py | 176 | # A harness where the largest thread costs what the smallest does is not reporting a flat | COMMENT |
| MEDIUM⚡ | tests/studio/test_heavy_thread_harness_contract.py | 255 | # harness really does produce. | COMMENT |
| MEDIUM⚡ | tests/studio/test_heavy_thread_harness_contract.py | 266 | # the API fan-out this harness claims to detect cannot reach it. | COMMENT |
| MEDIUM⚡ | tests/studio/test_heavy_thread_harness_contract.py | 279 | # emits it, so `stray_api_requests` stays at zero and the fan-out this harness exists to detect | COMMENT |
| MEDIUM | tests/studio/test_heavy_thread_harness_contract.py | 25 | # Recorded by the harness, produced only by Chromium. None of these may decide anything. | COMMENT |
| MEDIUM | tests/studio/test_heavy_thread_harness_contract.py | 240 | # in #8992 and this allowlist was not moved with it; the harness's own stray-request check did | COMMENT |
| MEDIUM | tests/studio/playwright_heavy_thread.py | 186 | # time-to-paint number this file exists to read. The harness's own waits use the unwrapped | COMMENT |
| MEDIUM | tests/studio/playwright_heavy_thread.py | 996 | # A request that escapes to the server, or a warning storm, is work this harness would be | COMMENT |
| MEDIUM | tests/studio/playwright_heavy_thread.py | 1093 | # harness already knew and threw away. Deduplicated and capped: the point is | COMMENT |
| 178 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/frontend/tests/context-window-visible.test.ts | 4 | // #8867: the bar rendered only once a token count existed, so a local model's context window was | COMMENT |
| MEDIUM | studio/backend/main.py | 935 | # In Colab the kernel scaffolding injects scripts and fetch/WS from *.prod.colab.dev and | COMMENT |
| MEDIUM | studio/backend/core/youtube_transcript.py | 45 | # would swallow the model's context window on its own. | COMMENT |
| MEDIUM⚡ | studio/backend/core/research_runs.py | 74 | # against what the untrimmable scaffolding leaves. Unknown context keeps the full cap. | COMMENT |
| MEDIUM⚡ | studio/backend/core/research_runs.py | 81 | # Below this loaded context the prompt scaffolding alone fills the window and the grounded | COMMENT |
| MEDIUM⚡ | studio/backend/core/research_runs.py | 84 | # Optionally ground synthesis in page text: the top results are ingested into an ephemeral RAG | COMMENT |
| MEDIUM | studio/backend/core/research_runs.py | 1046 | # Reuse Unsloth's knowledge-base RAG pipeline (ingest -> hybrid retrieve -> <chunk> | COMMENT |
| MEDIUM | studio/backend/core/research_runs.py | 2360 | # tool_failed as well as step_failed: a tool error RAG rescued still records why. | COMMENT |
| MEDIUM | studio/backend/core/research_runs.py | 2405 | # and conversation history receives only the space left after the fixed prompt scaffold. | COMMENT |
| MEDIUM | studio/backend/core/rag/config.py | 27 | # Conversation archive: turns evicted by the rolling context window go to a per-thread | COMMENT |
| MEDIUM | studio/backend/core/rag/conversation_archive.py | 40 | # Tool call ids this feature and the RAG auto-inject generate. Their results are retrieved | COMMENT |
| MEDIUM | studio/backend/core/rag/embeddings.py | 316 | # An adapter-backed embedding model reports through the PEFT integration's own | COMMENT |
| MEDIUM | studio/backend/core/inference/api_monitor.py | 40 | # Far above any real context window; larger means a broken upstream payload. | COMMENT |
| MEDIUM | studio/backend/core/inference/chat_template_helpers.py | 1199 | # The agentic loop re-sanitizes the catalog on every iteration, because a one-shot | COMMENT |
| MEDIUM | studio/backend/core/inference/tool_call_parser.py | 414 | # that block is chain-of-thought, not a real call. | COMMENT |
| MEDIUM | studio/backend/core/inference/stream_errors.py | 49 | # matches "context window" (among others) and shows "Context limit reached: the conversation | COMMENT |
| MEDIUM | studio/backend/core/inference/stream_errors.py | 50 | # has filled the model's context window ... or start a new chat" -- the advice this message | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 10086 | # the RAG stack; dispatch imports it lazily. | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 10855 | # Forced first-pass RAG retrieval: a high cosine floor keeps it precise (fires on | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 11280 | # unbudgeted search, so a small context cannot silently switch RAG off. | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 14685 | # frontend-only envelope -- an MCP image array, web_search thumbnails, RAG sources -- | COMMENT |
| MEDIUM | studio/backend/core/inference/external_provider.py | 3049 | # https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-str | COMMENT |
| MEDIUM | studio/backend/core/inference/external_provider.py | 3049 | # https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-str | COMMENT |
| MEDIUM | studio/backend/core/inference/external_provider.py | 4934 | # Dropping them loses the model's chain of thought across every | COMMENT |
| MEDIUM | studio/backend/core/inference/diffusion_ideogram4.py | 266 | # Construct normally (so __init__ computes the non-persistent rotary inv_freq the checkpoint omits), then copy the d | COMMENT |
| MEDIUM | studio/backend/core/inference/repetition_guard.py | 37 | # Ceiling on distinct windows held while scanning. Every fragment a context window can | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 540 | # Forced first-pass RAG (mirrors the GGUF loop) so doc Qs don't lose to | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 587 | # RAG: cap knowledge-base searches per assistant turn (controller-agnostic). | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 1300 | # RAG: cap paraphrased KB re-searches that slip past the dup guard. | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/local_model_resolver.py | 472 | # Skip what Unsloth hides from its pickers (validation probe, RAG embed | COMMENT |
| MEDIUM | studio/backend/tests/test_openai_auto_switch.py | 1310 | # The llama.cpp validation probe and RAG embedding weights are hidden from | COMMENT |
| MEDIUM | studio/backend/tests/test_openai_auto_switch.py | 4639 | # from these exact messages, and the tool loop opens it by splicing in what RAG retrieves. | COMMENT |
| MEDIUM | studio/backend/tests/conftest.py | 57 | # Avoid a cold torch subprocess in unrelated RAG tests. The probe tests re-enable it. | COMMENT |
| MEDIUM | studio/backend/tests/conftest.py | 743 | # ── RAG fixtures ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …o/backend/tests/test_external_hosted_tool_selection.py | 188 | # The route drops the RAG tool without a scope, and no scope means no | COMMENT |
| MEDIUM⚡ | …o/backend/tests/test_external_hosted_tool_selection.py | 189 | # loop at all, so the automatic-RAG turn has to carry one to be the case | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 951 | # inside the reasoning is chain-of-thought, not a real call; only the | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 4636 | # the agentic loop is gated off and the real call is dropped. | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 675 | # strip must drop it so the raw chain-of-thought does not leak into the | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 1068 | # agentic loop can collapse a looping model's repeated calls. | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 2343 | # The agentic loop must recognise Llama-3's <|python_tag|> | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 2427 | # DeepSeek V3.1 emission inside the agentic loop -- the buffer state machine must wake on | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_rag_unavailable_quiet.py | 104 | # "Is RAG switched off here" is not the question a locked database answers. | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_rag_unavailable_quiet.py | 262 | # RAG off until restart, and it must not leave the listings and the mutations | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_rag_unavailable_quiet.py | 263 | # disagreeing about whether RAG works. | COMMENT |
| MEDIUM | studio/backend/tests/test_rag_unavailable_quiet.py | 305 | # It already claims to be a no-op without RAG; raising out of startup so main.py | COMMENT |
| MEDIUM | studio/backend/tests/test_rag_unavailable_quiet.py | 352 | # "RAG is switched off on this machine". | COMMENT |
| MEDIUM | studio/backend/tests/test_rag_unavailable_quiet.py | 390 | # The 503 gate must not stand in the way of a machine where RAG does run. | COMMENT |
| MEDIUM | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 10 | https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-streaming-refusals | STRING |
| MEDIUM | studio/backend/tests/test_lan_access_settings.py | 1135 | # ── settings orchestration ── | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 275 | # Empty tool output (mkdir, git add, ...) is routine in agentic loops; | COMMENT |
| MEDIUM | studio/backend/tests/test_api_monitor.py | 1560 | # A direct llama call (RAG caption/OCR) opens no row, logging may be off, and another | COMMENT |
| MEDIUM | studio/backend/tests/test_bypass_permissions.py | 244 | # ── agentic loop forwards disable_sandbox, never gates under bypass ── | COMMENT |
| MEDIUM | studio/backend/tests/test_stt_sidecar.py | 66 | # orchestration tests run without PyTorch/Transformers/PyAV installed. | COMMENT |
| MEDIUM | studio/backend/tests/test_offline_embedding_minimal.py | 231 | # The RAG loader passes cache_folder=active_hf_hub_cache(), which overrides | COMMENT |
| MEDIUM | studio/backend/tests/test_model_picker_regression.py | 67 | "unsloth/bge-small-en-v1.5", # the RAG embedder repo | CODE |
| MEDIUM | studio/backend/tests/test_permission_mode.py | 2971 | # only select always-safe tools (web_search / RAG) needs no stream and must not | COMMENT |
| MEDIUM | studio/backend/tests/test_parallel_slots_per_load.py | 362 | # --parallel N shrinks every context window. | COMMENT |
| MEDIUM | studio/backend/tests/test_gguf_tool_non_streaming.py | 28 | # The agentic loop runs one tool, then the model answers. Event shapes | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_stt_ggml_sidecar.py | 564 | # Sidecar orchestration | COMMENT |
| 72 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | unsloth-cli.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | studio/backend/utils/datasets/chat_templates.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | …language_models/test_merge_model_perplexity_mistral.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | …nguage_models/test_merged_model_perplexity_qwen_2_5.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | studio/install_llama_prebuilt.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/install_python_stack.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/backend/utils/hardware/amd.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/backend/core/training/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/core/inference/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/core/export/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/core/inference/stt_ggml_sidecar.py | 0 | cancel startup only when it belongs to this transcription. | STRING |
| HIGH | studio/backend/core/inference/stt_mtmd_sidecar.py | 0 | cancel startup only when it belongs to this transcription. | STRING |
| HIGH | studio/backend/core/inference/stt_sidecar.py | 0 | cancel startup only when it belongs to this transcription. | STRING |
| HIGH | studio/backend/auth/storage.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| HIGH | studio/backend/tests/test_desktop_auth.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| HIGH | unsloth_cli/commands/studio.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| HIGH | …io/backend/tests/test_amd_smi_inventory_matches_hip.py | 0 | amd-smi ``metric`` output for (amd-smi gpu id, used mib, total mib) triples. | STRING |
| HIGH | …end/tests/test_rocm_hip_unreachable_defers_to_torch.py | 0 | amd-smi ``metric`` output for (amd-smi gpu id, used mib, total mib) triples. | STRING |
| HIGH | …o/backend/tests/test_amd_smi_hip_index_and_coverage.py | 0 | amd-smi ``metric`` output for (amd-smi gpu id, used mib, total mib) triples. | STRING |
| HIGH | …io/backend/tests/test_rocm_stacked_visibility_masks.py | 0 | amd-smi ``metric`` output for (amd-smi gpu id, used mib, total mib) triples. | STRING |
| HIGH | …io/backend/tests/test_amd_smi_inventory_matches_hip.py | 0 | declare hip's own inventory: how many devices it opens, and the total memory it reports per physical id. empty totals me | STRING |
| HIGH | …o/backend/tests/test_amd_smi_hip_index_and_coverage.py | 0 | declare hip's own inventory: how many devices it opens, and the total memory it reports per physical id. empty totals me | STRING |
| HIGH | …o/backend/tests/test_rocm_vram_probe_no_hip_context.py | 0 | declare hip's own inventory: how many devices it opens, and the total memory it reports per physical id. empty totals me | STRING |
| HIGH | studio/backend/tests/test_studio_tool_loop.py | 0 | record every execute_tool call and return a canned result. | STRING |
| HIGH | studio/backend/tests/test_external_tool_stream_abuse.py | 0 | record every execute_tool call and return a canned result. | STRING |
| HIGH | studio/backend/tests/test_external_tool_edge_cases.py | 0 | record every execute_tool call and return a canned result. | STRING |
| HIGH | …kend/tests/test_provider_max_output_tokens_contract.py | 0 | create table if not exists llm_providers ( id text not null primary key, provider_type text not null, display_name text | STRING |
| HIGH | studio/backend/tests/test_providers_db_models.py | 0 | create table if not exists llm_providers ( id text not null primary key, provider_type text not null, display_name text | STRING |
| HIGH | studio/backend/storage/providers_db.py | 0 | create table if not exists llm_providers ( id text not null primary key, provider_type text not null, display_name text | STRING |
| HIGH | studio/backend/tests/test_external_tool_stream_abuse.py | 0 | replays scripted turns; records what the loop asked for each time. | STRING |
| HIGH | …ckend/tests/test_external_tool_truncated_and_budget.py | 0 | replays scripted turns; records what the loop asked for each time. | STRING |
| HIGH | studio/backend/tests/test_external_tool_edge_cases.py | 0 | replays scripted turns; records what the loop asked for each time. | STRING |
| HIGH | studio/backend/utils/xet_notice_settings.py | 0 | insert into chat_settings (key, value_json, updated_at) values (?, ?, ?) on conflict(key) do update set value_json = exc | STRING |
| HIGH | studio/backend/utils/chat_preferences_settings.py | 0 | insert into chat_settings (key, value_json, updated_at) values (?, ?, ?) on conflict(key) do update set value_json = exc | STRING |
| HIGH | studio/backend/storage/studio_db.py | 0 | insert into chat_settings (key, value_json, updated_at) values (?, ?, ?) on conflict(key) do update set value_json = exc | STRING |
| HIGH | studio/backend/utils/whisper_cpp_freshness.py | 0 | asset name -> size (bytes) for the newest published release of `repo`, selected exactly like fetch_latest_release_tag. n | STRING |
| HIGH | studio/backend/utils/llama_cpp_freshness.py | 0 | asset name -> size (bytes) for the newest published release of `repo`, selected exactly like fetch_latest_release_tag. n | STRING |
| HIGH | studio/backend/utils/prebuilt/freshness_flow.py | 0 | asset name -> size (bytes) for the newest published release of `repo`, selected exactly like fetch_latest_release_tag. n | STRING |
| HIGH | studio/backend/utils/whisper_cpp_freshness.py | 0 | newest-release asset sizes for `repo`, memoized (24h ttl). none when offline and never fetched. in-memory only -- a rest | STRING |
| HIGH | studio/backend/utils/llama_cpp_freshness.py | 0 | newest-release asset sizes for `repo`, memoized (24h ttl). none when offline and never fetched. in-memory only -- a rest | STRING |
| HIGH | studio/backend/utils/prebuilt/freshness_flow.py | 0 | newest-release asset sizes for `repo`, memoized (24h ttl). none when offline and never fetched. in-memory only -- a rest | STRING |
| HIGH | studio/backend/utils/llama_cpp_update.py | 0 | status payload for a local-link install: unmanaged, no update offered. | STRING |
| HIGH | studio/backend/utils/whisper_cpp_update.py | 0 | status payload for a local-link install: unmanaged, no update offered. | STRING |
| HIGH | studio/backend/utils/prebuilt/update_flow.py | 0 | status payload for a local-link install: unmanaged, no update offered. | STRING |
| HIGH | studio/backend/storage/studio_db.py | 0 | insert into chat_messages (id, thread_id, parent_id, role, content_json, metadata_json, created_at) values (?, ?, ?, 'as | STRING |
| HIGH | studio/backend/storage/chat_generation_runs_db.py | 0 | insert into chat_messages (id, thread_id, parent_id, role, content_json, metadata_json, created_at) values (?, ?, ?, 'as | STRING |
| HIGH | studio/backend/storage/research_runs_db.py | 0 | insert into chat_messages (id, thread_id, parent_id, role, content_json, metadata_json, created_at) values (?, ?, ?, 'as | STRING |
| HIGH | tests/studio/playwright_heavy_thread.py | 0 | async (samples) => { const values = []; for (let i = 0; i < samples; i += 1) { await window.__sbnextpaint(); const start | STRING |
| HIGH | tests/studio/playwright_thread_weight.py | 0 | async (samples) => { const values = []; for (let i = 0; i < samples; i += 1) { await window.__sbnextpaint(); const start | STRING |
| HIGH | tests/studio/studiobench/scene/actions.py | 0 | async (samples) => { const values = []; for (let i = 0; i < samples; i += 1) { await window.__sbnextpaint(); const start | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_manifest.py | 335 | def set_no_torch_marker(no_torch: bool, root: Optional[Path] = None) -> None: | CODE |
| LOW⚡ | studio/backend/cloudflare_tunnel.py | 652 | def set_studio_tunnel_runtime_callback(callback: Optional[Callable[[bool], None]]) -> None: | CODE |
| LOW⚡ | studio/backend/cloudflare_tunnel.py | 685 | def _set_tunnel_url_locked(url: Optional[str]) -> None: | CODE |
| LOW⚡ | studio/backend/cloudflare_tunnel.py | 695 | def set_studio_tunnel_url_callback(callback: Optional[Callable[[Optional[str]], None]]) -> None: | CODE |
| LOW | studio/backend/cloudflare_tunnel.py | 576 | def set_on_exit(self, callback: Callable[["CloudflareTunnel"], None]) -> None: | CODE |
| LOW | studio/backend/cloudflare_tunnel.py | 620 | def _set_studio_tunnel_runtime_active(tunnel: CloudflareTunnel, active: bool) -> None: | CODE |
| LOW | studio/backend/cloudflare_tunnel.py | 714 | def _set_failed(generation: int, owner: str, port: int, error: str) -> None: | CODE |
| LOW | studio/backend/cloudflare_tunnel.py | 761 | def _set_online_locked(url: str) -> None: | CODE |
| LOW | studio/backend/loggers/__init__.py | 6 | __all__ = ["get_logger", "install_uvicorn_duplicate_exception_filter"] | CODE |
| LOW | studio/backend/core/__init__.py | 21 | __all__ = [ | CODE |
| LOW | studio/backend/core/data_recipe/__init__.py | 8 | __all__ = ["JobManager", "get_job_manager"] | CODE |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 6 | __all__ = ["JobManager", "get_job_manager"] | CODE |
| LOW | studio/backend/core/training/diffusion_clip_formats.py | 24 | __all__ = ["CLIP_EXTS"] | CODE |
| LOW | studio/backend/core/training/__init__.py | 8 | __all__ = [ | CODE |
| LOW | studio/backend/core/training/s3_dataset.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/store.py | 436 | def set_archive_ordinal(conn: sqlite3.Connection, document_id: str, ordinal: int) -> None: | CODE |
| LOW | studio/backend/core/rag/ingestion.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/captioner.py | 19 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/embed_llama_server.py | 40 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/__init__.py | 7 | __all__ = [ | CODE |
| LOW | studio/backend/core/rag/parsers.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/conversation_archive.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/embeddings.py | 38 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/retrieval.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/job_leases.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/folder_sync.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/folder_sync.py | 1144 | def _set_job(job_id: str, **values) -> None: | CODE |
| LOW | studio/backend/core/rag/folder_sync.py | 1219 | def _update_mapping_metadata(folder_id: str, rel: str, metadata: dict, content_hash: str) -> None: | CODE |
| LOW | studio/backend/core/inference/memory_contract.py | 36 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/diffusion_attention.py | 729 | def _set_hunyuan_null_mask(module: Any, enabled: bool) -> None: | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 324 | def set_terminal_callback(self, callback: Optional[TerminalCallback]) -> None: | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 452 | def set_progress(self, entry_id: Optional[str], progress: Optional[float]) -> None: | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 672 | def set_reply(self, entry_id: Optional[str], text: str) -> None: | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 735 | def _settle_stop_reason_locked(entry: ApiMonitorEntry, completed: bool) -> None: | CODE |
| LOW | studio/backend/core/inference/chat_template_helpers.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/llama_server_args.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | studio/backend/core/inference/llama_keepwarm.py | 390 | def set_current_response_scope(scope) -> None: | CODE |
| LOW | studio/backend/core/inference/llama_keepwarm.py | 515 | def _set_last_unloaded(value) -> None: | CODE |
| LOW | studio/backend/core/inference/llama_keepwarm.py | 536 | def _set_kv_resume(value) -> None: | CODE |
| LOW | studio/backend/core/inference/media_locality.py | 535 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/sd_cpp_server.py | 58 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/__init__.py | 21 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/media_switch_locks.py | 106 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/media_model_index.py | 511 | __all__ = [ | CODE |
| LOW | …udio/backend/core/inference/diffusion_eager_patches.py | 40 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/diffusion_arch_patches.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/media_switch_errors.py | 153 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/media_switch_backends.py | 180 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/offload_layout.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/media_auto_switch.py | 514 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/tensor_fallback.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/context_refusal.py | 18 | __all__ = [ | CODE |
| LOW | studio/backend/core/inference/key_exchange.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/_html_to_md.py | 23 | __all__ = ["html_to_markdown"] | CODE |
| LOW | studio/backend/core/inference/sd_cpp_engine.py | 44 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/export/worker.py | 45 | def _setup_log_capture(resp_queue: Any) -> None: | CODE |
| LOW | studio/backend/core/export/__init__.py | 16 | __all__ = [ | CODE |
| LOW | studio/backend/picker/service.py | 38 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/picker/routes/__init__.py | 6 | __all__ = ["templates_router"] | CODE |
| 88 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_whisper_prebuilt.py | 1360 | CODE | |
| LOW | studio/backend/run.py | 2320 | CODE | |
| LOW | studio/backend/core/training/diffusion_checkpoint.py | 791 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 325 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 835 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 1264 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2547 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 3322 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 1534 | CODE | |
| LOW | studio/backend/core/training/training.py | 688 | CODE | |
| LOW | studio/backend/core/training/training.py | 746 | CODE | |
| LOW | studio/backend/core/training/training.py | 780 | CODE | |
| LOW | studio/backend/core/rag/store.py | 267 | CODE | |
| LOW | studio/backend/core/rag/ingestion.py | 345 | CODE | |
| LOW | studio/backend/core/rag/tool.py | 217 | CODE | |
| LOW | studio/backend/core/inference/diffusion_prequant.py | 590 | CODE | |
| LOW | studio/backend/core/inference/memory_contract.py | 83 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 2001 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 2488 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 2687 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 3426 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 4749 | CODE | |
| LOW | studio/backend/core/inference/diffusion.py | 5817 | CODE | |
| LOW | studio/backend/core/inference/llama_server_args.py | 1107 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 1439 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 1742 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 1846 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 2096 | CODE | |
| LOW | studio/backend/core/inference/tools.py | 10384 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 974 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 1867 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 3200 | CODE | |
| LOW | studio/backend/core/inference/sd_cpp_backend.py | 1179 | CODE | |
| LOW | studio/backend/core/inference/sd_cpp_backend.py | 2138 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 805 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1050 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1354 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1825 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1886 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 2077 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 2263 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 2452 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 2486 | CODE | |
| LOW | studio/backend/core/inference/sd_cpp_args.py | 583 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 937 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 1047 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 1092 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 1768 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 1851 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 2054 | CODE | |
| LOW | studio/backend/core/inference/safetensors_agentic.py | 473 | CODE | |
| LOW | studio/backend/core/inference/sd_cpp_engine.py | 607 | CODE | |
| LOW | studio/backend/core/inference/video.py | 1305 | CODE | |
| LOW | studio/backend/core/inference/video.py | 2747 | CODE | |
| LOW | studio/backend/core/inference/video.py | 3370 | CODE | |
| LOW | studio/backend/core/inference/video.py | 4199 | CODE | |
| LOW | studio/backend/core/inference/video.py | 4960 | CODE | |
| LOW | studio/backend/core/inference/video.py | 5256 | CODE | |
| LOW | studio/backend/tests/test_openai_auto_switch.py | 3412 | CODE | |
| LOW | studio/backend/tests/test_openai_auto_switch.py | 8488 | CODE | |
| 139 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/backend/utils/datasets/format_conversion.py | 54 | # Check if vision tokenizer is used | COMMENT |
| LOW | scripts/scan_packages.py | 2827 | # Check if any are git deps | COMMENT |
| LOW | unsloth/save.py | 1026 | # Check if PEFT Model or not - if yes, 3 levels. If not 2 levels. | COMMENT |
| LOW | unsloth/save.py | 1201 | # Check if Kaggle or Colab, since only 20GB of Disk space allowed. | COMMENT |
| LOW | unsloth/save.py | 1367 | # Check if pushing to an organization | COMMENT |
| LOW | unsloth/save.py | 1413 | # Check if pushing to an organization | COMMENT |
| LOW | unsloth/save.py | 1748 | # Check if the llama.cpp exists | COMMENT |
| LOW | unsloth/save.py | 1792 | # Check if successful | COMMENT |
| LOW | unsloth/save.py | 1852 | # Check if the executable exists and is executable | COMMENT |
| LOW | unsloth/save.py | 1935 | # Check if bfloat16 is supported | COMMENT |
| LOW | unsloth/save.py | 6268 | # Check if wrong method | COMMENT |
| LOW⚡ | unsloth/save.py | 4646 | # Check if push_to_hub is requested | STRING |
| LOW | unsloth/save.py | 2822 | # Check if BOS added already, then warn | STRING |
| LOW | unsloth/save.py | 7920 | # Check if push_to_hub exists before accessing its __name__ | STRING |
| LOW | unsloth/tokenizer_utils.py | 121 | # Check if token is the actual same one - if not, edit it | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 184 | # Check if they're similar! | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 289 | # Check if chat template is enabled! | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 1400 | # Check if sep_token or other generic types | COMMENT |
| LOW | unsloth/chat_templates.py | 2573 | # Check if the user provided a correct prompt | COMMENT |
| LOW | unsloth/chat_templates.py | 2764 | # Check if system part is the same! | COMMENT |
| LOW | unsloth/kernels/moe/grouped_gemm/interface.py | 55 | # Check if triton.set_allocator is available (Triton 3.0+) | COMMENT |
| LOW | unsloth/kernels/moe/grouped_gemm/kernels/forward.py | 114 | # Check if L2 cache reuse for this order is optimal | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 1106 | # Check if this is Hopper or above | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 1116 | # Check if torch >= 2.9.0 | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 1122 | # Check if torchao has this PR: https://github.com/pytorch/ao/pull/3158, | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 2077 | # Check if this is a fast encoder model (uses torch.compile instead of Unsloth patching) | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 2085 | # Check if model is quantized (4-bit/8-bit) | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 2291 | # Check if model has pending compile | COMMENT |
| LOW | unsloth/models/vision.py | 1180 | # Check if using forced float32 - we load it in bfloat16, then cast to float16! | COMMENT |
| LOW | unsloth/models/vision.py | 1206 | # Check if model already has a non-bitsandbytes quantization config (e.g. compressed-tensors/NVFP4) | COMMENT |
| LOW | unsloth/models/rl.py | 2439 | # Check if per_device_eval_batch_size (default 8) bigger than bsz | STRING |
| LOW | unsloth/models/rl.py | 2452 | # Check if gradient accumulation bug fix is applied | STRING |
| LOW | unsloth/models/rl.py | 3371 | # Check if max_seq_length is NOT defined (max_length is now default) | STRING |
| LOW | unsloth/models/rl.py | 3558 | # Check if SamplingParams is in there | STRING |
| LOW | unsloth/models/llama.py | 2505 | # Check if RoPE Scaling is even allowed | COMMENT |
| LOW | unsloth/models/llama.py | 3246 | # Check if exactly the same and then pass through! | COMMENT |
| LOW | unsloth/models/llama.py | 3490 | # Check if we added new tokens! | COMMENT |
| LOW | unsloth/models/llama.py | 3492 | # Check if embed_tokens/lm_head are already being trained | COMMENT |
| LOW | unsloth/models/loader.py | 646 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 819 | # Check if folder exists locally | COMMENT |
| LOW | unsloth/models/loader.py | 844 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 1463 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 1730 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1739 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1801 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1816 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1827 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1847 | # Check if folder exists locally | COMMENT |
| LOW | unsloth/models/loader.py | 1866 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 1999 | # Check if VLM | COMMENT |
| LOW | unsloth/models/loader.py | 2040 | # Check if the model's auto_map supports the VLM auto class. | COMMENT |
| LOW | unsloth/models/_utils.py | 2369 | _register_extensions() # Check if C++ modules are loaded correctly | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | studio/frontend/tests/settings-search.test.ts | 50 | en.settings.resources.modelMemory.modelMemoryKeywords.includes(term), | CODE |
| CRITICAL | studio/backend/assets/docs_ui/redoc.standalone.js | 41 | `;class Aa extends n.PureComponent{render(){return n.createElement("div",{style:{textAlign:"center"}},n.createElement(_a | CODE |
| CRITICAL | unsloth/save.py | 1223 | state_dict["model.embed_tokens.weight"] = internal_model.model.embed_tokens.weight.data.to( | CODE |
| CRITICAL | unsloth/kernels/moe/grouped_gemm/kernels/tuning.py | 40 | properties = triton.runtime.driver.active.utils.get_device_properties( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | install.sh | 924 | # Step 1: Try installing without sudo (works when already root) | COMMENT |
| LOW⚡ | install.sh | 928 | # Step 2: Check which packages are still missing | COMMENT |
| LOW | install.sh | 956 | # Step 3: Escalate -- need elevated permissions for remaining packages | COMMENT |
| LOW | studio/backend/core/training/worker.py | 2089 | # Step 1: --no-deps keeps --force-reinstall off torch/CUDA via the dep graph. | COMMENT |
| LOW | studio/backend/core/training/worker.py | 2111 | # Step 2: regular install pulls transitive deps (z3-solver, ml-dtypes) without touching torch. | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1203 | # Step 2: format with tokenizer.apply_chat_template(). | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1264 | # Step 3: generate | COMMENT |
| LOW | studio/backend/core/inference/inference.py | 1162 | # Step 1: apply get_chat_template if model is in mapper. | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1135 | # Step 1: Format the dataset | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1167 | # Step 2: Apply chat template | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1194 | # Step 3: Generate summary | COMMENT |
| LOW⚡ | unsloth/save.py | 2038 | # Step 2: Download and patch converter script | COMMENT |
| LOW⚡ | unsloth/save.py | 2045 | # Step 3: Initial GGUF conversion | COMMENT |
| LOW⚡ | unsloth/save.py | 5520 | # Step 3: Upload to HuggingFace Hub | COMMENT |
| LOW | unsloth/save.py | 2021 | # Step 1: Ensure llama.cpp is installed | COMMENT |
| LOW | unsloth/save.py | 2100 | # Step 4: Additional quantizations using llama-quantize | COMMENT |
| LOW | unsloth/save.py | 5469 | # Step 1: Determine save directory | COMMENT |
| LOW | unsloth/save.py | 5482 | # Step 2: Call save_pretrained_gguf to do the conversion | COMMENT |
| LOW⚡ | unsloth/save.py | 4652 | # Step 1: Check if this is a VLM (Vision-Language Model) and check if gpt-oss | STRING |
| LOW⚡ | unsloth/save.py | 4807 | # Step 6: Clean up memory | STRING |
| LOW⚡ | unsloth/save.py | 4814 | # Step 7: Get model dtype and type | STRING |
| LOW⚡ | unsloth/save.py | 4831 | # Step 8: Convert to GGUF format | STRING |
| LOW⚡ | unsloth/save.py | 4928 | # Step 10: Show BOS token warning if applicable | STRING |
| LOW | unsloth/save.py | 4682 | # Step 2: Prepare arguments for model saving | STRING |
| LOW | unsloth/save.py | 4723 | # Step 3: Fix tokenizer BOS token if needed | STRING |
| LOW | unsloth/save.py | 4751 | # Step 4: Save/merge model to 16-bit format | STRING |
| LOW | unsloth/save.py | 4907 | # Step 9: Create Ollama modelfile | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | install.sh | 924 | # Step 1: Try installing without sudo (works when already root) | COMMENT |
| LOW⚡ | install.sh | 928 | # Step 2: Check which packages are still missing | COMMENT |
| LOW | install.sh | 956 | # Step 3: Escalate -- need elevated permissions for remaining packages | COMMENT |
| LOW | studio/backend/core/training/worker.py | 2111 | # Step 2: regular install pulls transitive deps (z3-solver, ml-dtypes) without touching torch. | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1203 | # Step 2: format with tokenizer.apply_chat_template(). | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1264 | # Step 3: generate | COMMENT |
| LOW | studio/backend/core/inference/inference.py | 1162 | # Step 1: apply get_chat_template if model is in mapper. | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1135 | # Step 1: Format the dataset | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1167 | # Step 2: Apply chat template | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1194 | # Step 3: Generate summary | COMMENT |
| LOW⚡ | unsloth/save.py | 2038 | # Step 2: Download and patch converter script | COMMENT |
| LOW⚡ | unsloth/save.py | 2045 | # Step 3: Initial GGUF conversion | COMMENT |
| LOW⚡ | unsloth/save.py | 5520 | # Step 3: Upload to HuggingFace Hub | COMMENT |
| LOW | unsloth/save.py | 2021 | # Step 1: Ensure llama.cpp is installed | COMMENT |
| LOW | unsloth/save.py | 2100 | # Step 4: Additional quantizations using llama-quantize | COMMENT |
| LOW | unsloth/save.py | 5469 | # Step 1: Determine save directory | COMMENT |
| LOW | unsloth/save.py | 5482 | # Step 2: Call save_pretrained_gguf to do the conversion | COMMENT |
| LOW⚡ | unsloth/save.py | 4652 | # Step 1: Check if this is a VLM (Vision-Language Model) and check if gpt-oss | STRING |
| LOW⚡ | unsloth/save.py | 4807 | # Step 6: Clean up memory | STRING |
| LOW⚡ | unsloth/save.py | 4814 | # Step 7: Get model dtype and type | STRING |
| LOW⚡ | unsloth/save.py | 4831 | # Step 8: Convert to GGUF format | STRING |
| LOW⚡ | unsloth/save.py | 4928 | # Step 10: Show BOS token warning if applicable | STRING |
| LOW | unsloth/save.py | 4682 | # Step 2: Prepare arguments for model saving | STRING |
| LOW | unsloth/save.py | 4723 | # Step 3: Fix tokenizer BOS token if needed | STRING |
| LOW | unsloth/save.py | 4751 | # Step 4: Save/merge model to 16-bit format | STRING |
| LOW | unsloth/save.py | 4907 | # Step 9: Create Ollama modelfile | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/backend/core/training/training.py | 1827 | # Create the DB run row before the pump consumes events, so it appears in history during | COMMENT |
| MEDIUM | studio/backend/core/training/training.py | 2137 | # Create the row if a start-time create failed (no-op otherwise; skips when the pump | COMMENT |
| MEDIUM | studio/backend/core/inference/orchestrator.py | 1143 | # Create the mailbox BEFORE sending, rechecking _unload_pending under | COMMENT |
| MEDIUM | tests/security/test_lint_workflow_triggers.py | 221 | # Defining a function is not calling it. | COMMENT |
| MEDIUM | tests/sh/test_setup_desktop_backend_version_fastpath.sh | 100 | # Create a mock venv that runs Python without site-packages, exercising setup's fallback parser. | COMMENT |
| MEDIUM | tests/sh/test_mac_intel_compat.sh | 179 | # Create a mock uname that returns Darwin | COMMENT |
| MEDIUM | tests/sh/test_mac_intel_compat.sh | 294 | # Create a mock uv that logs all calls instead of running them | COMMENT |
| MEDIUM | tests/saving/vision_models/test_push_to_hub_merged.py | 14 | ## Import required libraries | COMMENT |
| MEDIUM | unsloth/save.py | 5711 | # Create the custom directory if it doesn't exist | STRING |
| MEDIUM | unsloth/models/loader.py | 789 | # Create a combined error message showing both failures | COMMENT |
| MEDIUM | unsloth/models/loader.py | 1637 | # Create a combined error message showing both failures | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/backend/tests/test_cached_gguf_routes.py | 2406 | CODE | |
| MEDIUM | studio/backend/tests/test_openai_codex_subscription.py | 3032 | CODE | |
| MEDIUM | studio/backend/tests/test_credential_routes.py | 492 | CODE | |
| MEDIUM | studio/backend/tests/test_active_generations.py | 1996 | CODE | |
| MEDIUM | …/studio/install/test_install_whisper_prebuilt_logic.py | 377 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 666 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 667 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 669 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 732 | CODE | |
| MEDIUM | unsloth/kernels/moe/autotune_cache.py | 365 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/frontend/public/reload-snapshot.js | 383 | var sensitiveAttributes = ["title", "aria-label", "alt", "placeholder"]; | CODE |
| LOW | …d/src/features/settings/stores/voice-settings-store.ts | 498 | * matching case-insensitively on word boundaries ("jane doe" -> "Jane Doe"). | COMMENT |
| LOW | studio/frontend/src/i18n/locales/en.ts | 551 | entryPlaceholder: "Jane Doe", | CODE |
| LOW | studio/backend/tests/test_cached_gguf_routes.py | 2631 | gguf.write_bytes(b"placeholder") | CODE |
| LOW | studio/backend/tests/test_safetensors_tool_loop.py | 1439 | assert args == {"name": "John Doe", "age": 30, "active": True, "score": 95.5} | CODE |
| LOW | studio/backend/tests/test_diffusion_training.py | 2014 | assert "placeholder" in msg | CODE |
| LOW⚡ | studio/backend/tests/test_openai_auto_download.py | 1209 | assert "placeholder" in detail | CODE |
| LOW⚡ | studio/backend/tests/test_web_fetch_extraction.py | 2085 | assert "Jane Doe" in out | STRING |
| LOW | studio/backend/assets/docs_ui/redoc.standalone.js | 41 | `;class Aa extends n.PureComponent{render(){return n.createElement("div",{style:{textAlign:"center"}},n.createElement(_a | CODE |
| LOW | studio/backend/assets/docs_ui/redoc.standalone.js | 752 | `;var Md=Object.defineProperty,zd=Object.defineProperties,Fd=Object.getOwnPropertyDescriptors,Ud=Object.getOwnPropertySy | CODE |
| LOW | studio/backend/hub/services/datasets/local_options.py | 280 | "dummy_data.zip", | CODE |
| LOW⚡ | tests/test_torchao_torch_symbol_skew.py | 84 | assert "placeholder" in repr(ph) | CODE |
| LOW⚡ | tests/test_torchao_aten_grouped_mm.py | 157 | with pytest.raises(RuntimeError, match = "placeholder"): | CODE |
| LOW⚡ | tests/test_installer_system32_guard.py | 530 | @pytest.mark.parametrize("profile_name", ["me", "Jane Doe", "O'Brien"]) | CODE |
| LOW | tests/test_installer_system32_guard.py | 504 | "Jane Doe", # space: `cd C:\Users\Jane Doe` binds 'Doe' as a second argument | CODE |
| LOW | tests/studio/playwright_code_block_flicker.py | 327 | f"{'engine':10} {'variant':12} {'collapses':>10} {'placeholder':>12} {'dips':>6} " | CODE |
| LOW⚡ | tests/python/test_virustotal_scan.py | 79 | "fake-key", | CODE |
| LOW⚡ | tests/python/test_virustotal_scan.py | 214 | assert headers["x-apikey"] == "fake-key" | CODE |
| LOW⚡ | tests/python/test_virustotal_scan.py | 215 | assert "fake-key" not in url | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/build_whisper_cpp.sh | 9 | # Usage: | COMMENT |
| LOW⚡ | scripts/install_gemma4_mlx.sh | 15 | # Usage: | COMMENT |
| LOW⚡ | scripts/install_qwen3_6_mlx.sh | 14 | # Usage: | COMMENT |
| LOW | .github/scripts/assert-prompt-cache.sh | 38 | # Usage: | COMMENT |
| LOW | .github/scripts/agent-guides-drive.sh | 20 | # Usage: | COMMENT |
| LOW | .github/scripts/serve-unsloth-run.sh | 11 | # Usage: | COMMENT |
| LOW | .github/scripts/parity-install-side.sh | 8 | # Usage: | COMMENT |
| LOW | .github/scripts/clean-machine-env.sh | 23 | # Usage: | COMMENT |
| LOW | .github/scripts/boot-studio-api-only.sh | 8 | # Usage: | COMMENT |
| LOW | .github/scripts/wait-for-health.sh | 8 | # Usage: | COMMENT |
| LOW | .github/scripts/parity-find-unsloth.sh | 7 | # Usage: | COMMENT |
| LOW | .github/scripts/retry-with-apt-lock.sh | 67 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …nd/src/features/settings/components/usage-examples.tsx | 257 | print(chunk.choices[0].delta.content or "", end="")` | CODE |
| HIGH | …nd/src/features/settings/components/usage-examples.tsx | 259 | print(chunk.choices[0].delta.content or "", end="")`; | CODE |
| HIGH | …rontend/src/features/chat/lib/resident-config-match.ts | 161 | * `LlamaCppBackend._runtime_matches_intent` that return False to force the repair: a drafter | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/frontend/tests/streaming-render-schedule.test.ts | 345 | const line = "I cannot provide that information.\n\n"; | CODE |
| MEDIUM | …icker/components/model-selector/model-catalog.check.ts | 385 | // diffusion pipeline as a language model it can quantize: 5B params says 5.9 GB where the Wan 2.2 | COMMENT |
| MEDIUM | …res/model-picker/components/model-selector/pickers.tsx | 2090 | // Video picker never finds such a model and chat tries to load it as a language model. | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 3799 | "The summary is ready, please let me know if you need anything else", | CODE |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 3800 | "The summary is ready. Please let me know if you need anything else!", | CODE |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 4711 | "</function>\n\nLet me know if you need anything else." | CODE |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 3690 | "Let me know if you need anything else.", | CODE |
| LOW | unsloth/kernels/cross_entropy_loss.py | 370 | losses.masked_fill_(labels == -100, 0) # Don't forget to mask padding out! | CODE |
| LOW | unsloth/kernels/fast_lora.py | 64 | Don't forget to see our blog post for more details! | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/kaggle/test_t4_payload_assertions.py | 509 | # The same file, saved as requested: no difference and no failure. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …io/backend/tests/test_gguf_xet_fallback_integration.py | 144 | def helper( | CODE |
| LOW | tests/test_dataclass_default_backfill.py | 65 | def helper(self): | CODE |
| LOW⚡ | tests/kaggle/test_t4_payload_assertions.py | 130 | failures = canary_failures({"run_index": 1, "generated": "def my_function():"}, require = True) | CODE |
| LOW | tests/kaggle/t4_smoke/run_t4_smoke.py | 1291 | # '#1\ndef my_function():...'. | COMMENT |
| LOW | scripts/lint_duplicate_definitions.py | 598 | "import types as t\n\n\ndef helper():\n import typing as t\n return t\n\n\n" | CODE |