Lightweight (7MB) terminal-first AI-native development environment
This report summarizes scanner evidence for crynta/terax-ai, a TypeScript project with 9,431 GitHub stars. SynthScan examined 192,101 lines of code across 955 source files, recording 179 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 1.6 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 114 finding(s).
Are imports declared and package/API names verified? 7 finding(s).
Are wrappers, guards, and repeated structures necessary? 136 finding(s).
Which changes need focused human review? 179 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 179 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scripts/renderer-profile/run.py | 184 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/run.py | 186 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/run.py | 300 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/run.py | 302 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/run.py | 417 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/run.py | 419 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 16 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 18 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 139 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 141 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 234 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 236 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 462 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 464 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 654 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/renderer-profile/lab_report.py | 656 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 171 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 173 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 209 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 211 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 244 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/run.py | 246 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 58 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 60 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 183 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 185 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 224 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 226 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 315 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 317 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 675 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 677 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 820 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/app-lab/app_report.py | 822 | # --------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src-tauri/src/modules/shell/mod.rs | 129 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src-tauri/src/modules/shell/mod.rs | 131 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 191 | // ── OpenAI ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 283 | // ── Anthropic ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 354 | // ── Google ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 410 | // ── xAI ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 468 | // ── DeepSeek ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 497 | // ── Mistral ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 526 | // ── Cerebras (autocomplete-tier) ────────────────────────────────────────── | COMMENT |
| MEDIUM | src/modules/ai/config.ts | 555 | // ── Groq (autocomplete-tier) ────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | src/modules/ai/config.ts | 584 | // ── OpenRouter (gateway; model id is user-supplied at runtime) ──────────── | COMMENT |
| MEDIUM⚡ | src/modules/ai/config.ts | 594 | // ── Generic OpenAI-compatible (user-defined endpoint) ───────────────────── | COMMENT |
| MEDIUM⚡ | src/modules/ai/config.ts | 604 | // ── LM Studio (local; model id is user-supplied at runtime) ─────────────── | COMMENT |
| MEDIUM⚡ | src/modules/ai/config.ts | 614 | // ── MLX (local; Apple-silicon; model id is user-supplied at runtime) ────── | COMMENT |
| MEDIUM⚡ | src/modules/ai/config.ts | 624 | // ── Ollama (local; model id is user-supplied at runtime) ────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/renderer-profile/workloads.ts | 96 | function installCanvasInstrumentation(): void { | CODE |
| LOW | src/app/hooks/useAppCloseGuard.ts | 52 | export function canOptOutOfAppClosePrompt(blocker: AppCloseBlocker): boolean { | CODE |
| LOW | src/modules/sidebar/useSidebarPanel.ts | 18 | export function shouldPersistSidebarWidth( | CODE |
| LOW⚡ | src/modules/settings/store.ts | 724 | export async function setOpenaiCompatibleBaseURL(value: string): Promise<void> { | CODE |
| LOW⚡ | src/modules/settings/store.ts | 728 | export async function setOpenaiCompatibleModelId(value: string): Promise<void> { | CODE |
| LOW⚡ | src/modules/settings/store.ts | 732 | export async function setOpenaiCompatibleContextLimit( | CODE |
| LOW | src/modules/settings/store.ts | 779 | export function clampEditorWordWrapColumn(value: number): number { | CODE |
| LOW | src/modules/settings/store.ts | 798 | export async function setExplorerGitDecorations(value: boolean): Promise<void> { | CODE |
| LOW | src/modules/settings/store.ts | 816 | export function coerceTerminalCursorStyle(value: unknown): TerminalCursorStyle { | CODE |
| LOW | src/modules/settings/store.ts | 874 | export async function setConfirmCloseRunningTerminal( | CODE |
| LOW | src/modules/settings/store.ts | 923 | export async function setEditorCustomFormatCommand( | CODE |
| LOW | src/modules/settings/store.ts | 933 | export async function setAgentNotificationSound(value: boolean): Promise<void> { | CODE |
| LOW | src/modules/statusbar/WorkspaceEnvSelector.tsx | 27 | function WorkspaceEnvSelectorWindows({ onSelect }: Props) { | CODE |
| LOW | src/modules/terminal/backend/selection.ts | 26 | export function setSelectedTerminalBackend(kind: TerminalBackendKind): void { | CODE |
| LOW | src/modules/terminal/lib/terminalLinks.ts | 3 | export function createTerminalLinkHandler(focus: () => void) { | CODE |
| LOW | src/modules/terminal/lib/terminalDiagnosticsEnabled.ts | 1 | export function terminalDiagnosticsEnabled(): boolean { | CODE |
| LOW | src/modules/terminal/lib/useTerminalFileDrop.ts | 36 | export function createTerminalPathDropTarget({ | CODE |
| LOW | src/modules/terminal/lib/ptyPresentation.ts | 196 | export function ptyPresentationDiagnostics() { | CODE |
| LOW | src/modules/terminal/lib/keymap.ts | 8 | export function terminalWordNavigationSequence(event: TerminalKeyEvent): string | null { | CODE |
| LOW | src/modules/terminal/lib/keymap.ts | 17 | export function terminalLineNavigationSequence( | CODE |
| LOW | src/modules/terminal/lib/agentActivity.ts | 139 | export function ensureAgentActivityListener(): Promise<void> { | CODE |
| LOW | src/modules/terminal/lib/terminalResizeInteraction.ts | 35 | export function beginTerminalResizeInteraction(token: InteractionToken): void { | CODE |
| LOW⚡ | src/modules/terminal/lib/terminalResizeInteraction.ts | 50 | export function endTerminalResizeInteraction(token: InteractionToken): void { | CODE |
| LOW⚡ | src/modules/terminal/lib/terminalResizeInteraction.ts | 58 | export function terminalResizeInteractionActive(): boolean { | CODE |
| LOW⚡ | src/modules/terminal/lib/terminalResizeInteraction.ts | 62 | export function subscribeTerminalResizeInteraction( | CODE |
| LOW | src/modules/terminal/lib/terminalDiagnostics.ts | 41 | export function installTerminalDiagnostics(): void { | CODE |
| LOW | src/modules/terminal/lib/terminalResizeGesture.ts | 100 | export function resetTerminalResizeGestureForTest(now?: () => number): void { | CODE |
| LOW | src/modules/terminal/ghostty/sessionInitialization.ts | 7 | export function initializeSessionGeneration( | CODE |
| LOW | …odules/terminal/ghostty/AdaptedGhosttyTerminalModel.ts | 1261 | function scrollPositionFromScrollbar(scrollbar: { | CODE |
| LOW | src/modules/terminal/ghostty/coreCompatibility.test.ts | 311 | function runTerminalLifecycleCycle(): void { | CODE |
| LOW | src/modules/terminal/ghostty/windowPresentation.ts | 25 | export function terminalWindowPresentation(): WindowPresentation { | CODE |
| LOW | src/modules/terminal/ghostty/windowPresentation.ts | 33 | export function subscribeWindowPresentation( | CODE |
| LOW | src/modules/terminal/ghostty/windowPresentation.ts | 51 | export function windowPresentationDiagnostics() { | CODE |
| LOW | src/modules/terminal/ghostty/GhosttyCoreRuntime.ts | 306 | export function ghosttyCoreRuntimeDiagnostics(): GhosttyRuntimeDiagnostics | null { | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 118 | export function useGhosttyTerminalSession({ | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 378 | export async function ghosttyLeafHasForegroundProcess( | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 446 | export function ghosttySessionDiagnostics() { | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 464 | export function ghosttySessionResourceTotals() { | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 598 | async function initializeSessionGeneration( | CODE |
| LOW | …/modules/terminal/ghostty/useGhosttyTerminalSession.ts | 952 | function createWebGlFallbackSurface( | CODE |
| LOW | src/modules/terminal/ghostty/gpu/GestureBacking.ts | 77 | export function measureGestureBackingEnvironment( | CODE |
| LOW | …/modules/terminal/ghostty/gpu/WebGpuTerminalRuntime.ts | 1219 | export function webGpuTerminalRuntimeDiagnostics(): WebGpuRuntimeStats | null { | CODE |
| LOW | src/modules/terminal/ghostty/gpu/WebGpuCellBuffer.ts | 37 | export function compactWebGpuCellCapacity( | CODE |
| LOW | src/modules/terminal/ghostty/gpu/GcPressure.ts | 152 | export function gcPressureOptionsFromStorage(): GcPressureOptions { | CODE |
| LOW | src/modules/terminal/ghostty/gpu/builtin/boxDrawing.ts | 293 | export function diagonalUpperRightToLowerLeft( | CODE |
| LOW | src/modules/terminal/ghostty/gpu/builtin/boxDrawing.ts | 309 | export function diagonalUpperLeftToLowerRight( | CODE |
| LOW | src/modules/terminal/ghostty/core/terminalActions.ts | 5 | export function clearTerminalBufferSequence( | CODE |
| LOW | …modules/terminal/ghostty/webgl/WebGlTerminalRuntime.ts | 407 | export function webGlTerminalRuntimeDiagnostics(): WebGlRuntimeStats | null { | CODE |
| LOW | src/modules/terminal/ghostty/webgl/WebGlCellRenderer.ts | 1325 | function writeNormalizedPackedColor( | CODE |
| LOW | …minal/ghostty/selection/TerminalSelectionController.ts | 315 | export function shouldStartTerminalSelection( | CODE |
| LOW | src/modules/agents/lib/launcher.ts | 64 | export function validateAgentLaunchCommand( | CODE |
| LOW | src/modules/agents/lib/launcher.ts | 84 | export function normalizeAgentLaunchCommands( | CODE |
| LOW | src/modules/agents/lib/review.ts | 41 | export function maybeTriggerManagedReview(leafId: number): void { | CODE |
| LOW | src/modules/agents/lib/review.ts | 52 | export function firePendingReviewForSession(sessionId: string): void { | CODE |
| LOW | src/modules/agents/lib/notificationGate.ts | 13 | export function createAgentNotificationGate( | CODE |
| LOW | src/modules/agents/lib/delivery.ts | 3 | export function resolveAgentNotificationDelivery({ | CODE |
| LOW | src/modules/agents/lib/sound.ts | 41 | export function playAgentNotificationSound(): void { | CODE |
| LOW | src/modules/explorer/lib/useExplorerDnd.ts | 33 | export function resolveExplorerMoveTarget( | CODE |
| LOW | src/modules/explorer/lib/gitStatusUtils.ts | 55 | export function bubbleUpDirectoryStatuses( | CODE |
| LOW | src/modules/lsp/lib/sessionManager.ts | 158 | function getOrCreateSession( | CODE |
| 18 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | vite.config.ts | 181 | "console.trace", | COMMENT |
| LOW | scripts/renderer-profile/Lab.swift | 1 | import Cocoa | COMMENT |
| LOW | scripts/renderer-profile/suite.sh | 1 | #!/bin/bash | COMMENT |
| LOW | src-tauri/src/modules/ai_sessions.rs | 1 | //! Conversation message files, one atomically replaced file per session. | COMMENT |
| LOW | src-tauri/src/modules/ipc_body.rs | 1 | //! Raw IPC request bodies. | COMMENT |
| LOW | src-tauri/src/modules/bench.rs | 1 | //! Real-application benchmark support ("app lab"). Compiled only with `--features bench`. | COMMENT |
| LOW | src-tauri/src/modules/secrets.rs | 1 | //! Secret storage with platform-appropriate backends. | COMMENT |
| LOW | src-tauri/src/modules/net/clients.rs | 1 | //! Cached `reqwest` clients for the AI proxy. | COMMENT |
| LOW | src-tauri/src/modules/pty/session.rs | 141 | pub(super) fn drop_session(session: Arc<Session>) { | COMMENT |
| LOW | src-tauri/src/modules/pty/hub.rs | 1 | //! The PTY transport hub: one thread for the whole process, serving every | COMMENT |
| LOW | src-tauri/src/modules/pty/protocol.rs | 1 | //! The `terax-pty` custom URI scheme: the HTTP-shaped edge of the PTY hub. | COMMENT |
| LOW | src-tauri/src/modules/pty/output.rs | 1 | //! Byte-based flow-control credit for one PTY's output stream. | COMMENT |
| LOW | src-tauri/src/modules/pty/presentation.rs | 21 | /// otherwise runs in lockstep with the poll round trip; at 256 KiB a 16 MiB | COMMENT |
| LOW | src-tauri/src/modules/pty/wire.rs | 1 | //! Binary framing for the multiplexed `terax-pty` stream. Pure and | COMMENT |
| LOW | src-tauri/src/modules/fs/index.rs | 1 | //! Per-root file-list cache behind `fs_search` and `fs_list_files`. | COMMENT |
| LOW | src-tauri/src/modules/fs/watch/macos.rs | 1 | //! FSEvents backend. | COMMENT |
| LOW | src-tauri/src/modules/fs/watch/plan.rs | 461 | fn trim_separator(path: &[u8]) -> &[u8] { | COMMENT |
| LOW | src-tauri/src/modules/git/untracked.rs | 1 | //! Untracked directories in the changes list. | COMMENT |
| LOW | src/modules/git-history/lib/graph.ts | 1 | // Lane-based graph layout for a linear git log. | COMMENT |
| LOW | src/modules/terminal/lib/ptyWire.ts | 1 | // Binary framing for the multiplexed `terax-pty` stream. Mirrors | COMMENT |
| LOW | src/modules/explorer/InlineInput.tsx | 21 | const [value, setValue] = useState(initial); | COMMENT |
| LOW | src/modules/theme/livePageResize.ts | 1 | // Page tiles during a window drag (WebKit / macOS). | COMMENT |
| LOW | src/modules/theme/windowActivity.ts | 1 | // "Is anyone looking at this window?" - one answer for the whole webview. | COMMENT |
| LOW | src/modules/editor/AiDiffPane.tsx | 41 | // background: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/renderer-profile/run.py | 493 | except OSError: | CODE |
| HIGH | scripts/app-lab/run.py | 504 | except ProcessLookupError: | CODE |
| HIGH | scripts/app-lab/run.py | 624 | except subprocess.TimeoutExpired: | CODE |
| HIGH | scripts/app-lab/run.py | 282 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/renderer-profile/procstats.py | 201 | CODE | |
| LOW | scripts/renderer-profile/lab_report.py | 282 | CODE | |
| LOW | scripts/renderer-profile/lab_report.py | 515 | CODE | |
| LOW | scripts/ipc-profile/run.py | 48 | CODE | |
| LOW | scripts/app-lab/run.py | 214 | CODE | |
| LOW | scripts/app-lab/run.py | 411 | CODE | |
| LOW | scripts/app-lab/app_report.py | 253 | CODE | |
| LOW | scripts/app-lab/app_report.py | 324 | CODE | |
| LOW | scripts/app-lab/app_report.py | 365 | CODE | |
| LOW | scripts/app-lab/app_report.py | 439 | CODE | |
| LOW | scripts/app-lab/app_report.py | 556 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …les/terminal/ghostty/gpu/WebGpuTerminalSurface.test.ts | 286 | expect(h.atlas.resolve.mock.calls.map(([text]) => text)).toEqual(["b"]); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/terminal-visual/main.ts | 286 | lines.push("selected line one: lorem ipsum dolor sit amet"); | CODE |
| LOW | scripts/terminal-visual/main.ts | 286 | lines.push("selected line one: lorem ipsum dolor sit amet"); | CODE |
| LOW | scripts/terminal-visual/main.ts | 562 | return `${colorize(`token ${tick}`, 33 + (tick % 8))} lorem ipsum dolor sit amet consectetur adipiscing elit ${tic | CODE |
| LOW | scripts/terminal-visual/main.ts | 562 | return `${colorize(`token ${tick}`, 33 + (tick % 8))} lorem ipsum dolor sit amet consectetur adipiscing elit ${tic | CODE |
| LOW | scripts/renderer-profile/workloads.ts | 952 | text += `\x1b[3${line % 8}m${String(line).padStart(6, "0")}\x1b[0m lorem ipsum dolor sit amet consectetur adipisci | CODE |
| LOW | scripts/renderer-profile/workloads.ts | 952 | text += `\x1b[3${line % 8}m${String(line).padStart(6, "0")}\x1b[0m lorem ipsum dolor sit amet consectetur adipisci | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/renderer-profile/run.py | 161 | except Exception: | CODE |
| LOW | scripts/renderer-profile/run.py | 515 | except Exception as error: # a partial report is still worth keeping | CODE |
| LOW | scripts/app-lab/run.py | 147 | except Exception: | CODE |
| LOW | scripts/app-lab/run.py | 645 | except Exception as error: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/modules/theme/surfaceFrame.ts | 26 | // Keep animating until the still is ready, so freezing is seamless instead | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/renderer-profile/procstats.py | 245 | def set_members(self, members: dict[int, str]) -> None: | CODE |