RStudio is an integrated development environment (IDE) for R
This report summarizes scanner evidence for rstudio/rstudio, a Java project with 5,104 GitHub stars. SynthScan examined 1,196,923 lines of code across 5555 source files, recording 2173 pattern matches distributed across 18 syntactic categories. The legacy adjusted pattern signal is 4.2 (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? 1810 finding(s).
Are imports declared and package/API names verified? 328 finding(s).
Are wrappers, guards, and repeated structures necessary? 203 finding(s).
Which changes need focused human review? 2173 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 2173 distinct pattern matches across 18 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 |
|---|---|---|---|---|
| CRITICAL | …/i18n-helpers/commands.cmd.xml/sample_commands.cmd.xml | 82 | <shortcut refid="blockOutdent" value="Meta+[" if="org.rstudio.core.client.BrowseCap.isMacintosh()" disableMo | CODE |
| CRITICAL | …/i18n-helpers/commands.cmd.xml/sample_commands.cmd.xml | 83 | <shortcut refid="blockIndent" value="Meta+]" if="org.rstudio.core.client.BrowseCap.isMacintosh()" disableMod | CODE |
| CRITICAL | …o/client/packrat/ui/PackratActionDialogContents.ui.xml | 8 | @eval proportionalFont org.rstudio.core.client.theme.ThemeFonts.getProportionalFont(); | CODE |
| CRITICAL | …io/client/packrat/ui/PackratResolveConflictDialog.java | 221 | private static final PackratConstants constants_ = com.google.gwt.core.client.GWT.create(PackratConstants.class); | CODE |
| CRITICAL | …tudio/client/rsconnect/ui/RSConnectCloudAccount.ui.xml | 8 | @eval fixedFont org.rstudio.core.client.theme.ThemeFonts.getFixedWidthFont(); | CODE |
| CRITICAL | …client/panmirror/dialogs/PanmirrorEditRawDialog.ui.xml | 12 | @eval fixedWidthFont org.rstudio.core.client.theme.ThemeFonts.getFixedWidthFont(); | CODE |
| CRITICAL | …/projects/ui/prefs/ProjectSpellingPreferencesPane.java | 92 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL⚡ | …/client/projects/ui/prefs/ProjectPreferencesDialog.css | 6 | @eval PROJECT_PANEL_CONTAINER_WIDTH org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstants.projectPa | CODE |
| CRITICAL⚡ | …/client/projects/ui/prefs/ProjectPreferencesDialog.css | 7 | @eval PROJECT_PANEL_CONTAINER_HEIGHT org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstants.projectP | CODE |
| CRITICAL⚡ | …/client/projects/ui/prefs/ProjectPreferencesDialog.css | 8 | @eval PROJECT_PANEL_CONTAINER_WIDTH_NO_CHOOSER org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstant | CODE |
| CRITICAL | …ects/ui/prefs/ProjectSourceControlPreferencesPane.java | 316 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …t/projects/ui/prefs/ProjectPackratPreferencesPane.java | 336 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …t/projects/ui/prefs/ProjectSharingPreferencesPane.java | 49 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …projects/ui/prefs/ProjectRMarkdownPreferencesPane.java | 209 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …ient/projects/ui/prefs/ProjectRenvPreferencesPane.java | 143 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …rojects/ui/prefs/buildtools/BuildToolsCustomPanel.java | 62 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …jects/ui/prefs/buildtools/BuildToolsMakefilePanel.java | 58 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …ient/projects/ui/prefs/buildtools/BuildToolsPanel.java | 231 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …ojects/ui/prefs/buildtools/BuildToolsPackagePanel.java | 221 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …prefs/buildtools/ProjectBuildToolsPreferencesPane.java | 205 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …i/prefs/buildtools/BuildToolsRoxygenOptionsDialog.java | 102 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …ojects/ui/prefs/buildtools/BuildToolsWebsitePanel.java | 115 | private static final StudioClientProjectConstants constants_ = com.google.gwt.core.client.GWT.create(StudioClientProj | CODE |
| CRITICAL | …dio/client/projects/ui/newproject/NewProjectWizard.css | 2 | @eval fixedWidthFont org.rstudio.core.client.theme.ThemeFonts.getFixedWidthFont(); | CODE |
| CRITICAL | …/studio/client/common/debugging/ui/ConsoleError.ui.xml | 5 | @eval proportionalFont org.rstudio.core.client.theme.ThemeFonts.getProportionalFont(); | CODE |
| CRITICAL | …tudio/studio/client/common/vcs/ShowPublicKeyDialog.css | 2 | @eval fixedWidthFont org.rstudio.core.client.theme.ThemeFonts.getFixedWidthFont(); | CODE |
| CRITICAL⚡ | …dio/client/workbench/prefs/views/PreferencesDialog.css | 8 | @eval PANEL_CONTAINER_WIDTH org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstants.panelContainerWid | CODE |
| CRITICAL⚡ | …dio/client/workbench/prefs/views/PreferencesDialog.css | 9 | @eval PANEL_CONTAINER_HEIGHT org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstants.panelContainerHe | CODE |
| CRITICAL⚡ | …dio/client/workbench/prefs/views/PreferencesDialog.css | 10 | @eval PANEL_CONTAINER_WIDTH_NO_CHOOSER org.rstudio.studio.client.workbench.prefs.views.PreferencesDialogConstants.panelC | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 672 | <shortcut refid="insertSection" value="Ctrl+Shift+R" if="org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 677 | <shortcut refid="blockOutdent" value="Meta+[" if="org.rstudio.core.client.BrowseCap.isMacintosh()" disableModes | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 678 | <shortcut refid="blockIndent" value="Meta+]" if="org.rstudio.core.client.BrowseCap.isMacintosh()" disableModes= | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 680 | <shortcut refid="reflowComment" value="Ctrl+Shift+/" if="org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 681 | <shortcut refid="reflowComment" value="Cmd+Shift+/" if="!org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 684 | <shortcut refid="fold" value="Alt+L" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" title="Collapse Fold | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 685 | <shortcut refid="fold" value="Cmd+Alt+L" if="org.rstudio.core.client.BrowseCap.isMacintosh()" title="Collapse F | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 686 | <shortcut refid="unfold" value="Shift+Alt+L" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" title="Expan | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 687 | <shortcut refid="unfold" value="Cmd+Shift+Alt+L" if="org.rstudio.core.client.BrowseCap.isMacintosh()" title="Ex | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 688 | <shortcut refid="foldAll" value="Alt+O" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" title="Collapse A | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 689 | <shortcut refid="foldAll" value="Cmd+Alt+O" if="org.rstudio.core.client.BrowseCap.isMacintosh()" title="Collaps | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 690 | <shortcut refid="unfoldAll" value="Shift+Alt+O" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" title="Ex | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 691 | <shortcut refid="unfoldAll" value="Cmd+Shift+Alt+O" if="org.rstudio.core.client.BrowseCap.isMacintosh()" title= | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 692 | <shortcut value="Ctrl+K" title="Delete to Line End" if="org.rstudio.core.client.BrowseCap.isMacintosh()" /> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 694 | <shortcut refid="moveLinesUp" value="Ctrl+Meta+Up" title="Move Lines Up" if="org.rstudio.core.client.BrowseCap. | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 695 | <shortcut refid="moveLinesUp" value="Ctrl+Shift+Up" title="Move Lines Up" if="!org.rstudio.core.client.BrowseCa | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 697 | <shortcut refid="moveLinesDown" value="Ctrl+Meta+Down" title="Move Lines Down" if="org.rstudio.core.client.Brow | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 698 | <shortcut refid="moveLinesDown" value="Ctrl+Shift+Down" title="Move Lines Down" if="!org.rstudio.core.client.Br | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 699 | <shortcut value="Alt+Shift+Up" title="Copy Lines Up" if="!org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 700 | <shortcut value="Meta+Alt+Up" title="Copy Lines Up" if="org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 701 | <shortcut value="Alt+Shift+Down" title="Copy Lines Down" if="!org.rstudio.core.client.BrowseCap.isMacintosh()"/ | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 702 | <shortcut value="Meta+Alt+Down" title="Copy Lines Down" if="org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 703 | <shortcut value="Ctrl+D" title="Delete Line" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" disableModes | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 704 | <shortcut value="Cmd+D" title="Delete Line" if="org.rstudio.core.client.BrowseCap.isMacintosh()" disableModes=" | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 705 | <shortcut refid="expandToLine" value="Meta+L" title="Expand Selection to line" if="org.rstudio.core.client.Brow | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 707 | <!-- <shortcut refid="expandToLine" value="Ctrl+L" title="Expand Selection to line" if="!org.rstudio.core.clien | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 715 | <shortcut value="Ctrl+T" title="Transpose Letters" if="org.rstudio.core.client.BrowseCap.isMacintosh()"/> | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 722 | <shortcut refid="assistantAcceptNextEditSuggestion" value="Ctrl+;" if="!org.rstudio.core.client.BrowseCap.isMac | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 723 | <shortcut refid="assistantAcceptNextEditSuggestion" value="Cmd+;" if="org.rstudio.core.client.BrowseCap.isMacin | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 724 | <shortcut refid="assistantDismissNextEditSuggestion" value="Ctrl+Shift+;" if="!org.rstudio.core.client.BrowseCa | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 725 | <shortcut refid="assistantDismissNextEditSuggestion" value="Cmd+Shift+;" if="org.rstudio.core.client.BrowseCap. | CODE |
| CRITICAL⚡ | …udio/studio/client/workbench/commands/Commands.cmd.xml | 734 | <shortcut value="Ctrl+X" title="Cut" if="!org.rstudio.core.client.BrowseCap.isMacintosh()" disableModes="vim,em | CODE |
| 246 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 1 | # | COMMENT |
| LOW | tasks/startup-timing.ts | 1 | // Measure RStudio Desktop startup. | COMMENT |
| LOW | docker/docker-compile.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | docker/docker-compile.sh | 21 | # will produce an RPM of RStudio Electron from the RHEL8 container, | COMMENT |
| LOW | docker/jenkins/rstudio-version.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | docker/jenkins/rstudio-version.sh | 21 | # | COMMENT |
| LOW | docker/jenkins/rstudio-version.sh | 41 | # branch since work on the release has started. In the local repository, the file | COMMENT |
| LOW | docker/jenkins/notarize-release.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | docker/jenkins/sign-release.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | docker/jenkins/sign-release.sh | 81 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | .claude/hooks/block-push-to-main.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .claude/hooks/block-push-to-main.sh | 21 | # <name>=<value>', and other single-/double-dash flags -- so we can find the | COMMENT |
| LOW | .claude/hooks/block-edit-autogenerated-files.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | dependencies/tools/upload-r.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | dependencies/tools/upload-r.sh | 21 | # | COMMENT |
| LOW | dependencies/tools/upload-openssl.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | dependencies/tools/upload-windows-dependencies.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | dependencies/tools/rstudio-tools.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | dependencies/tools/rstudio-tools.sh | 41 | # macOS deployment target | COMMENT |
| LOW | dependencies/tools/rstudio-tools.sh | 61 | # When changing node version you must upload the corresponding archives to aws s3; use | COMMENT |
| LOW | dependencies/tools/rstudio-tools.sh | 81 | # mainly relevant for cases like macOS, where we have an -arm64 variant installed | COMMENT |
| LOW | dependencies/tools/upload-nsis-multiuser.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | version/new-version.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | version/new-version.sh | 21 | # Creating a Release Branch for future work | COMMENT |
| LOW | scripts/report-options.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/generate-commands-accessor.R | 1 | # | COMMENT |
| LOW | scripts/generate-commands-accessor.R | 21 | contents <- readLines(path, warn = FALSE) | COMMENT |
| LOW | scripts/generate-options.R | 1 | #!/usr/bin/env Rscript | COMMENT |
| LOW | scripts/r-api-report.R | 1 | #!/usr/bin/env Rscript | COMMENT |
| LOW | scripts/bootstrap-worktree.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/bootstrap-worktree.sh | 21 | # | COMMENT |
| LOW | scripts/bootstrap-worktree.sh | 41 | # www paths to THIS worktree's GWT output. `npm run test:desktop-dev` detects | COMMENT |
| LOW | scripts/bootstrap-worktree.sh | 61 | # --with-build-dir[=<dir>] | COMMENT |
| LOW | scripts/generate-prefs.R | 1 | #!/usr/bin/env Rscript | COMMENT |
| LOW | scripts/generate-prefs.R | 101 | # | COMMENT |
| LOW | scripts/merge-release-branch.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/merge-release-branch.sh | 21 | # - Any conflict under a release-only directory (e.g. the whats-new | COMMENT |
| LOW | .github/workflows/os-cache-seed-sentinel.yml | 1 | name: "Cache Seed: Sentinel (re-seed evicted E2E build caches)" | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 1 | name: "Test: E2E Playwright RStudio (Certification, Open Source)" | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 81 | # other caller does. | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 181 | COMMENT | |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 301 | echo "::warning::r_overrides names cell(s) whose R comes from the distro's own repos, so the requested versi | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 601 | # reported against every other cell in the matrix. | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 641 | # The five non-Linux engines each return the R they actually used as a | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 661 | RESULT_UBUNTU24S: ${{ needs.ubuntu24s.result }} | COMMENT |
| LOW | .github/workflows/os-test-e2e-rstudio-certification.yml | 741 | ROWS=$((ROWS + 1)) | COMMENT |
| LOW | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 161 | RSTUDIO_TOOLS_ROOT: ${{ github.workspace }}\rstudio-tools | COMMENT |
| LOW | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 261 | # which also contain tracked files (the install scripts themselves). | COMMENT |
| LOW | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 421 | - name: Setup sccache | COMMENT |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 161 | # use. Keeping tracked install scripts out of the cached path means a | COMMENT |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 261 | restore-keys: | | COMMENT |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 381 | COMMENT | |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 421 | Write-Host "sccache backend: GitHub Actions cache (S3 role/bucket unavailable)" | COMMENT |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 581 | ) | COMMENT |
| LOW | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 1201 | COMMENT | |
| LOW | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 361 | # This job is a shard matrix, so this is one output value for the whole matrix | COMMENT |
| LOW | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 381 | # deployment: false keeps each shard from recording a deployment on the PR. | COMMENT |
| LOW | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 521 | - name: Install e2e test dependencies | COMMENT |
| LOW | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 581 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| LOW | .github/workflows/os-cache-seed-e2e-macos-15-x86_64.yml | 1 | name: "Cache: Seed macOS 15 x86_64 build caches" | COMMENT |
| 1390 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/jenkins/publish-build.sh | 134 | # if channel is undefined, we'll just use version/BUILDTYPE. If it is provided, | COMMENT |
| MEDIUM | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 694 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 848 | # install-required-packages pre-installs the harness's REQUIRED_PACKAGES | COMMENT |
| MEDIUM | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 910 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 698 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 852 | # install-required-packages pre-installs the harness's REQUIRED_PACKAGES | COMMENT |
| MEDIUM | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 964 | # Human OS name for the "Run under test" line the harness reports. Also | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 386 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 396 | # e2e-deps action installs and caches. Without this the harness default | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 533 | # Pre-install the harness's REQUIRED_PACKAGES set into the cached | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-26-arm64.yml | 581 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-14-arm64.yml | 419 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-14-arm64.yml | 429 | # e2e-deps action installs and caches. Without this the harness default | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-14-arm64.yml | 570 | # Pre-install the harness's REQUIRED_PACKAGES set into the cached | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-14-arm64.yml | 618 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | …/workflows/os-test-e2e-rstudio-server-os-ubuntu-24.yml | 464 | # os-e2e-deps installs the harness's required packages here (and exports | COMMENT |
| MEDIUM | …/workflows/os-test-e2e-rstudio-server-os-ubuntu-24.yml | 725 | # rserver-dev the Playwright harness spawns itself. | COMMENT |
| MEDIUM | …/workflows/os-test-e2e-rstudio-server-os-ubuntu-24.yml | 743 | # tokens) the same way the harness does (fixtures/r-libs-setup.ts), | COMMENT |
| MEDIUM | …/workflows/os-test-e2e-rstudio-server-os-ubuntu-24.yml | 810 | # When a sign-in never reaches the IDE console, the harness runs | COMMENT |
| MEDIUM | …/workflows/os-test-e2e-rstudio-server-os-ubuntu-24.yml | 821 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-27-arm64.yml | 407 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-27-arm64.yml | 417 | # e2e-deps action installs and caches. Without this the harness default | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-27-arm64.yml | 558 | # Pre-install the harness's REQUIRED_PACKAGES set into the cached | COMMENT |
| MEDIUM | …lows/os-test-e2e-rstudio-desktop-os-macos-27-arm64.yml | 606 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | .github/workflows/os-test-e2e-rstudio-desktop-linux.yml | 877 | # install-required-packages pre-installs the harness's full | COMMENT |
| MEDIUM | .github/workflows/os-test-e2e-rstudio-desktop-linux.yml | 882 | # engine sets it: the harness-default library | COMMENT |
| MEDIUM | .github/workflows/os-test-e2e-rstudio-desktop-linux.yml | 958 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | .github/workflows/os-test-e2e-rstudio-desktop-linux.yml | 999 | # keeps the harness default. | COMMENT |
| MEDIUM | …ows/os-test-e2e-rstudio-desktop-os-macos-15-x86_64.yml | 396 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …ows/os-test-e2e-rstudio-desktop-os-macos-15-x86_64.yml | 406 | # e2e-deps action installs and caches. Without this the harness default | COMMENT |
| MEDIUM | …ows/os-test-e2e-rstudio-desktop-os-macos-15-x86_64.yml | 544 | # Pre-install the harness's REQUIRED_PACKAGES set into the cached | COMMENT |
| MEDIUM | …ows/os-test-e2e-rstudio-desktop-os-macos-15-x86_64.yml | 592 | # Human OS name for the "Run under test" block the harness writes to the | COMMENT |
| MEDIUM | …ktop-os-autocomplete-scheduled-windows-server-2025.yml | 87 | # os-e2e-deps installs the harness's required packages here and exports | COMMENT |
| MEDIUM | …ktop-os-autocomplete-scheduled-windows-server-2025.yml | 92 | # workflow). Without this the harness default is | COMMENT |
| MEDIUM | …ktop-os-autocomplete-scheduled-windows-server-2025.yml | 194 | # pre-installs the harness's REQUIRED_PACKAGES set into the cached | COMMENT |
| MEDIUM | .github/e2e-linux/debian-13/post-r-setup.sh | 5 | # os-e2e-deps and the in-test Playwright harness (fixtures/r-libs-setup.ts) | COMMENT |
| MEDIUM | .github/e2e-linux/rocky-10/e2e-setup.sh | 34 | # The Playwright harness's R provisioner (fixtures/r-libs-setup.ts) only | COMMENT |
| MEDIUM | .github/e2e-linux/rocky-9/e2e-setup.sh | 36 | # rhel9 repo, which DOES serve x86_64 binaries, so the harness's R packages | COMMENT |
| MEDIUM | .github/actions/os-e2e-deps/action.yml | 99 | # Point the harness's R-libs provisioner (fixtures/r-libs-setup.ts, | COMMENT |
| MEDIUM | .github/actions/os-e2e-deps/action.yml | 318 | # the harness's full required set, not just the ones testing Connections), | COMMENT |
| MEDIUM⚡ | .github/actions/os-e2e-deps/action.yml | 489 | # When requested, also install the harness's REQUIRED_PACKAGES set now | COMMENT |
| MEDIUM⚡ | .github/actions/os-e2e-deps/action.yml | 495 | # scoped to R_LIBS_USER (the cached tree), mirroring the harness's own | COMMENT |
| MEDIUM⚡ | .github/actions/os-e2e-deps/action.yml | 499 | # Unlike the harness (which warns and lets tests self-heal), a failure | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/layout/panes.test.ts | 190 | // width drops -- rather than a fixed count -- keeps the precondition robust if | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/editor/rmarkdown_chunks.test.ts | 442 | // the sentinel keeps this robust whether or not an empty output frame | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/git/vcs_flood.test.ts | 9 | // since wall-clock bounds are not robust on shared CI runners. | COMMENT |
| MEDIUM | e2e/rstudio/scripts/ci/rsession-diagnostics.sh | 5 | # Used by the e2e harness in three places: | COMMENT |
| MEDIUM | e2e/rstudio/scripts/ci/rsession-diagnostics.sh | 11 | # waiting for the IDE console, the harness runs this before retrying, so a | COMMENT |
| MEDIUM | src/gwt/acesupport/acemode/cpp_code_model.js | 983 | // effectively leverage the indentation rules within macro settings. | COMMENT |
| LOW | src/gwt/www/js/workers/worker-css.js | 1 | "no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)retu | CODE |
| MEDIUM | …bench/views/source/editors/text/TextEditingTarget.java | 3655 | // editing session would require some nuanced orchestration so for now | COMMENT |
| MEDIUM | …ient/application/ui/impl/DesktopApplicationHeader.java | 520 | // update, which happens to be an ignored version. Essentially, it's not | COMMENT |
| MEDIUM | …wt/src/org/rstudio/core/client/command/AppCommand.java | 118 | // Note that we can't use the more robust isCurrentWindowSatellite() | COMMENT |
| MEDIUM | src/cpp/core/include/core/http/AsyncServerImpl.hpp | 979 | // should always succeed but include error check to be paranoid/robust | COMMENT |
| MEDIUM | src/cpp/core/system/PosixSystem.cpp | 1217 | // via a search of the PATH. To make this fallback fully robust we would | COMMENT |
| MEDIUM | src/cpp/tests/testthat/test-packages.R | 123 | # manually (the headless test harness has no scheduled-command pump). Note | COMMENT |
| MEDIUM | src/cpp/tests/testthat/test-debugger.R | 150 | # Frames run innermost first, and the test harness has lapply() frames of | COMMENT |
| LOW | src/cpp/r/R/GlobalCallingHandlers.R | 203 | # R seems to just use the first line of the deparsed call? | COMMENT |
| LOW | src/cpp/r/R/Api.R | 69 | # ... and it's an .Rproj file, then just return that (don't | COMMENT |
| LOW | src/cpp/r/R/Api.R | 101 | # if we already have a .Rproj file, just return that | COMMENT |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tasks/rserver-dev.ts | 184 | function requireCodeServerPortPlumbing(checkout: string, port: number): void { | CODE |
| LOW | tasks/common.ts | 151 | export function rebuildFromDirectoryListings(tag: string, dir: string): string { | CODE |
| LOW | e2e/rstudio/tests/shiny/shiny-app-window-close.test.ts | 84 | async function interceptCloseNotification(page: Page, options: { drop: boolean }) { | CODE |
| LOW | e2e/rstudio/tests/panes/layout/panes.test.ts | 813 | async function clickConsoleRestoreButton(page: Page): Promise<void> { | CODE |
| LOW | …ts/panes/layout/console_minimized_after_render.test.ts | 44 | async function minimizeConsoleWithRenderTab(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/tests/panes/layout/splitter_aria.test.ts | 32 | async function expectValueNowMatchesPosition(splitter: Locator): Promise<void> { | CODE |
| LOW | …rstudio/tests/panes/layout/focus_adjacent_pane.test.ts | 76 | async function previousPaneUntilConsolePane(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/tests/panes/data-viewer/data_viewer.test.ts | 185 | async function layoutAfterEveryGridMutation(dataViewer: DataViewerPane): Promise<void> { | CODE |
| LOW | …e/rstudio/tests/panes/debugger/debugger_extras.test.ts | 78 | async function waitForOutputThroughNestedDebug( | CODE |
| LOW | …panes/posit-assistant-chat/assistant-shortcuts.test.ts | 79 | async function expectConsoleShortcutRuns(chatPane: ChatPane, page: Page): Promise<void> { | CODE |
| LOW | …es/posit-assistant-chat/deprecate-pai-blocking.test.ts | 106 | async function triggerRecheckAndExpectState( | CODE |
| LOW | e2e/rstudio/tests/panes/editor/smooth_scrolling.test.ts | 56 | async function animatedNavigationCommands(page: Page): Promise<string[]> { | CODE |
| LOW | e2e/rstudio/tests/panes/editor/smooth_scrolling.test.ts | 64 | async function activeEditorAnimatesScroll(page: Page): Promise<boolean | null> { | CODE |
| LOW | …tests/panes/editor/comment_continuation_scroll.test.ts | 53 | async function parkCursorOnLastVisibleRow(page: Page, lineText: string): Promise<Viewport> { | CODE |
| LOW | …tests/panes/editor/source_window_close_unsaved.test.ts | 97 | async function expectUnsavedTabInMainWindow(page: Page, fileName: string): Promise<Locator> { | CODE |
| LOW | …tests/panes/editor/save_extended_type_redetect.test.ts | 78 | async function waitForPendingClientEvents(consoleActions: ConsolePaneActions): Promise<void> { | CODE |
| LOW | e2e/rstudio/tests/panes/editor/rmarkdown_chunks.test.ts | 35 | async function runChunkByLabelAndWaitForConsoleSignal( | CODE |
| LOW | e2e/rstudio/tests/panes/editor/rmarkdown_chunks.test.ts | 60 | async function runChunkByLabelAndWaitForIdle( | CODE |
| LOW | …rstudio/tests/panes/editor/source_window_close.test.ts | 48 | async function closeAndExpectDocumentReleased(page: Page, satellite: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/tests/panes/editor/air_formatting.test.ts | 394 | function expectAirDefaultFormatted(content: string): void { | CODE |
| LOW | e2e/rstudio/tests/panes/editor/citations.test.ts | 102 | function skipUnlessServicesReachable(): void { | CODE |
| LOW | e2e/rstudio/utils/source-windows.ts | 56 | export async function expectNoSourceWindowAfterReload(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/utils/project.ts | 62 | export async function restartSessionWithSentinel(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/utils/windows-shortcuts.ts | 38 | export function uniqueWindowsShortcutFixture(prefix: string): WindowsShortcutFixture { | CODE |
| LOW | e2e/rstudio/utils/windows-shortcuts.ts | 57 | export async function createWindowsShortcutFixture( | CODE |
| LOW | e2e/rstudio/utils/windows-shortcuts.ts | 84 | export async function removeWindowsShortcutFixture( | CODE |
| LOW | e2e/rstudio/utils/commands.ts | 801 | export async function setChatUpdateCheckOverride( | CODE |
| LOW | e2e/rstudio/utils/ai-credentials.ts | 73 | async function sandboxStoreHasCredentials(provider: AIProvider): Promise<boolean> { | CODE |
| LOW | e2e/rstudio/utils/session-liveness.ts | 194 | export async function attachDeafSessionDiagnostics( | CODE |
| LOW | e2e/rstudio/utils/session-liveness.ts | 235 | export async function recordDeafSessionAtShutdown( | CODE |
| LOW | e2e/rstudio/utils/satellite.ts | 31 | export async function waitForDesktopCloseReport(page: Page, timeout = 15000): Promise<void> { | CODE |
| LOW | e2e/rstudio/utils/satellite.ts | 39 | export async function restoreDesktopCloseReport(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 114 | function winInstalledDriverLibrary(target: DbTarget): string | null { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 194 | export function unregisterWindowsOdbcDrivers(sandbox: string): void { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 280 | function makeOdbcSandboxWorldReadable(sandbox: string, odbcDir: string): void { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 292 | function chmodWorldReadableRecursive(dir: string): void { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 359 | async function resolveDriverLibraryRemote(page: Page, target: DbTarget): Promise<string | null> { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 456 | export async function provisionRemoteOdbcSandbox( | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 553 | function appendWindowsManifestEntry(odbcDir: string, name: string): void { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 593 | function prepareOdbcSandboxWindows(sandbox: string): OdbcSandbox { | CODE |
| LOW | e2e/rstudio/utils/connections.ts | 683 | export async function drainKnownExplorerException(page: Page): Promise<string[]> { | CODE |
| LOW | e2e/rstudio/utils/files.ts | 206 | export async function closeAndDeleteSandboxFiles( | CODE |
| LOW | e2e/rstudio/utils/auth.ts | 192 | export async function isCopilotStoreAuthenticated(homeDir: string): Promise<boolean> { | CODE |
| LOW | e2e/rstudio/utils/remote-provision.ts | 283 | export async function remotePositAiStoreAuthenticated(page: Page): Promise<boolean | null> { | CODE |
| LOW | e2e/rstudio/utils/remote-provision.ts | 340 | export async function remoteCopilotStoreAuthenticated(page: Page): Promise<boolean | null> { | CODE |
| LOW | e2e/rstudio/scripts/dev-common.ts | 358 | function warnIfPrecompiledGwtStale(tag: string): void { | CODE |
| LOW | e2e/rstudio/actions/autocomplete.actions.ts | 83 | export async function setAlwaysShowCompletionPopup(page: Page, force: boolean): Promise<void> { | CODE |
| LOW | e2e/rstudio/pages/console_pane.page.ts | 262 | export async function waitForConsoleCommandComplete( | CODE |
| LOW | e2e/rstudio/pages/console_pane.page.ts | 569 | export async function closeAllBuffersWithoutSaving(page: Page): Promise<void> { | CODE |
| LOW | e2e/rstudio/pages/modals.page.ts | 105 | export async function dismissSaveWorkspacePrompt(page: Page, timeout: number = 15000): Promise<boolean> { | CODE |
| LOW | src/gwt/tools/precompress.js | 37 | function rebuildFromDirectoryListings(input) { | CODE |
| LOW | …tools/i18n-helpers/commands.cmd.xml/element_parsers.py | 32 | def populated_translatable_fields(self): | CODE |
| LOW | …tools/i18n-helpers/commands.cmd.xml/element_parsers.py | 37 | def _ensure_translatable_fields_exist(self): | CODE |
| LOW | …ls/i18n-helpers/commands.cmd.xml/i18n_gwt_interface.py | 104 | def add_header_auto_generated(self, filename): | STRING |
| LOW | …ls/i18n-helpers/commands.cmd.xml/i18n_gwt_interface.py | 146 | def add_header_auto_generated(self): | STRING |
| LOW | …/i18n-helpers/commands.cmd.xml/commands_xml_to_i18n.py | 24 | def parser_name_to_interface_name(parser_name): | CODE |
| LOW⚡ | src/gwt/tools/locdiff/extract_regular_strings.py | 17 | def is_gwt_localization_interface(java_path): | CODE |
| LOW | src/gwt/test/acesupport/qunit/qunit-1.18.0.js | 3374 | function toolbarUrlConfigContainer() { | CODE |
| LOW | src/gwt/acesupport/acemode/expand_selection.js | 163 | function ensureOnChangeHandlerAttached(editor) | CODE |
| LOW | src/gwt/acesupport/acemode/expand_selection.js | 175 | function ensureOnChangeHandlerDetached(editor) | CODE |
| 108 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docker/jenkins/rstudio-version.sh | 16 | # =========== | COMMENT |
| MEDIUM | docker/jenkins/rstudio-version.sh | 32 | # ====================== | COMMENT |
| MEDIUM | docker/jenkins/rstudio-version.sh | 39 | # ============== | COMMENT |
| MEDIUM | docker/jenkins/rstudio-version.sh | 55 | # ================ | COMMENT |
| MEDIUM | docker/jenkins/sign-release.sh | 79 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | docker/jenkins/sign-release.sh | 81 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | docker/jenkins/sign-release.sh | 103 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | docker/jenkins/sign-release.sh | 105 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | version/new-version.sh | 13 | # --------------------- | COMMENT |
| MEDIUM⚡ | version/new-version.sh | 22 | # ----------------------------------------- | COMMENT |
| MEDIUM⚡ | version/new-version.sh | 30 | # ------------------ | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/editor/code-folding.test.ts | 215 | ##########======================== | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/editor/code-folding.test.ts | 217 | ##########======================== | COMMENT |
| MEDIUM | src/cpp/core/tex/synctex/README.txt | 34 | # ---------------- | COMMENT |
| MEDIUM | src/cpp/core/tex/synctex/README.txt | 39 | # ---------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 20 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 22 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 104 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 106 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 191 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 196 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …p/tests/testthat/test-completions-inherit-dot-params.R | 278 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …p/tests/testthat/test-completions-inherit-dot-params.R | 280 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …p/tests/testthat/test-completions-inherit-dot-params.R | 287 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …p/tests/testthat/test-completions-inherit-dot-params.R | 289 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 501 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 503 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 541 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …p/tests/testthat/test-completions-inherit-dot-params.R | 543 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | version/new-version.sh | 21 | # Creating a Release Branch for future work | COMMENT |
| MEDIUM | version/new-version.sh | 99 | # Create a NEWS.md file | COMMENT |
| MEDIUM | version/new-version.sh | 115 | # Create the base commit file using the base commit sha | COMMENT |
| MEDIUM | scripts/generate-prefs.R | 219 | # Define a C++ string constant for this preference name | COMMENT |
| MEDIUM | scripts/generate-prefs.R | 238 | # Create a Java (and C++) comment header for the preference | COMMENT |
| MEDIUM | scripts/generate-prefs.R | 244 | # Create a Java/GWT Properties file header for the preference | COMMENT |
| MEDIUM | …os-test-e2e-rstudio-desktop-os-windows-server-2025.yml | 453 | # Create a directory junction at that path pointing to the installed R so | COMMENT |
| MEDIUM | …ws/os-test-e2e-rstudio-desktop-os-windows-11-arm64.yml | 457 | # Create a directory junction at that path pointing to the installed R so | COMMENT |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 44 | const lines: string[] = ['# Create a 3D point.']; | CODE |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 217 | const contents = '# Create a 3D point.\npoint <- function(x, y, z) {}\n'; | CODE |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 235 | }).toBe('# Create a 4D point.'); | CODE |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 486 | expect(await editor.getLine(0)).toBe('# Create a 3D point.'); | CODE |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 490 | await expect.poll(() => editor.getLine(0)).toBe('# Create a 4D point.'); | CODE |
| MEDIUM | e2e/rstudio/tests/panes/editor/edit_suggestions.test.ts | 543 | expect(await editor.getLine(0)).toBe('# Create a 3D point.'); | CODE |
| MEDIUM | src/cpp/tests/python/test-code-submit.py | 49 | # Define an inner function. | COMMENT |
| MEDIUM | src/cpp/tests/testthat/test-vcs.R | 32 | # Create a stand-in git, which succeeds at anything asked of it (including | COMMENT |
| MEDIUM | src/cpp/tests/testthat/test-air.R | 40 | # Create a fake air installation for the given version, in the given root. | COMMENT |
| MEDIUM | src/cpp/server/db/make-schema.sh | 83 | # Create the migration file(s) | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionBreakpoints.R | 491 | # Create a function containing the parsed contents of the file | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionBreakpoints.R | 537 | # Create a blank environment and load the function into it | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionBreakpoints.R | 563 | # Create an empty function to host the expressions in the file. Drop the | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionPackages.R | 623 | ## Create a DESCRIPTION file | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionPackages.R | 689 | # Create a NAMESPACE file | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionNotebookRender.R | 19 | # This file is sourced after SessionRmdNotebook.R (which provides the | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionObjectExplorer.R | 815 | # Create a child context for the i-th element of an object, using | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionUserPrefValues.R | 1795 | # Create a Git repo in new projects | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionUserPrefValues.R | 1804 | # Create an renv environment in new projects | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …e/rstudio/tests/panes/debugger/debugger_extras.test.ts | 276 | print("This is my S7 method.") | CODE |
| HIGH | …e/rstudio/tests/panes/debugger/debugger_extras.test.ts | 313 | print("This is my S7 generic method.") | CODE |
| HIGH | e2e/rstudio/tests/panes/editor/sweave.test.ts | 57 | print(1 + 1) | CODE |
| HIGH | …rstudio/tests/panes/editor/rename_in_scope_rmd.test.ts | 15 | print(variable + variable) | CODE |
| HIGH | …rstudio/tests/panes/editor/rename_in_scope_rmd.test.ts | 20 | print(variable + variable) | CODE |
| HIGH | …tudio/tests/panes/editor/confusable_characters.test.ts | 97 | print(y ${EN_DASH} 1) | CODE |
| HIGH | …s/panes/editor/run_chunks_above_console_python.test.ts | 248 | print("probe:" + stale_probe) | CODE |
| HIGH | …s/panes/editor/run_chunks_above_console_python.test.ts | 304 | print("probe:" + stale_probe + ":" + r.typed_probe) | CODE |
| HIGH | …io/tests/panes/editor/select_current_statement.test.ts | 29 | print(p) | CODE |
| HIGH | src/node/desktop/src/core/file-path.ts | 709 | * @return True if this file path is a Windows junction; false otherwise. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 27 | ### Step 1: Resolve the target | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 33 | ### Step 2: Read reference materials | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 47 | ### Step 3: Determine the target location | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 62 | ### Step 4: Write the TypeScript test | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 81 | ### Step 5: Add missing page objects or actions | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 88 | ### Step 6: Run the test | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 105 | ### Step 7: Reevaluate | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 117 | ### Step 8: Update progress tracking | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 140 | ### Step 9: Commit and submit | COMMENT |
| LOW | …/rstudio-migrate-tests-selenium-to-playwright/SKILL.md | 160 | ### Step 10: Roborev review and assessment | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 247 | // Step 1: Click "New Directory" (each expect-visible is the wait gate for | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 253 | // Step 2: Click "New Project" in the project type list | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 259 | // Step 3: Enter directory name -- use click + pressSequentially so GWT | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 268 | // Step 4: Click "Create Project" | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 106 | // Step 0: Create a real project inside the sandbox so the | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 121 | // Step 1: Make sure no backend is running FIRST. | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 142 | // Step 2: Create a project-level skill (.posit/assistant/skills/ in workspace) | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 154 | // Step 3: Create a user-level skill (~/.posit/assistant/skills/ in home dir) | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 166 | // Step 4: Verify the skill files exist and hold their markers (the | COMMENT |
| LOW⚡ | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 201 | // Step 5: Start a fresh backend by setting chat_provider back to "posit". | COMMENT |
| LOW⚡ | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 210 | // Step 6: Open the chat pane and wait for the UI to be ready | COMMENT |
| LOW | …rg/rstudio/studio/client/rmarkdown/model/YamlTree.java | 28 | // NOTE: This class does not fully parse YAML fields; it just provides some facilities | COMMENT |
| LOW | src/cpp/session/modules/SessionRCompletions.R | 2490 | # NOTE: This function attempts to find an active frame (if | COMMENT |
| LOW | src/cpp/session/modules/SessionCodeTools.R | 1578 | # NOTE: This function is used in asynchronous R processes and so | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …nes/posit-assistant-chat/chat-guardrails-paths.test.ts | 34 | // Build the R one-liner that runs `rCode` under the chat guardrails. The | COMMENT |
| MEDIUM | …nes/posit-assistant-chat/chat-guardrails-paths.test.ts | 323 | // The four tests below came from test-automation-guardrails.R's "Binding | COMMENT |
| MEDIUM | …sts/panes/posit-assistant-chat/chat-guardrails.test.ts | 246 | // (no assistant in the loop) by chat-guardrails-paths.test.ts. | COMMENT |
| MEDIUM | …sts/panes/posit-assistant-chat/chat-guardrails.test.ts | 327 | // The R-level guardrails in SessionChat.R do deny it, but the assistant | COMMENT |
| MEDIUM | …sts/panes/posit-assistant-chat/chat-guardrails.test.ts | 328 | // prefers its own read tool over R code, bypassing the R guardrails. | COMMENT |
| MEDIUM | …sts/panes/posit-assistant-chat/chat-guardrails.test.ts | 405 | // If guardrails leaked into user code, this would be blocked. | COMMENT |
| MEDIUM | src/cpp/tests/testthat/test-chat-guardrails.R | 2 | # test-chat-guardrails.R | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionChat.R | 16 | # NOTE: The guardrails implemented here are intended to prevent accidental | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionChat.R | 593 | # The package scan is needed only when agent execution first uses guardrails. | COMMENT |
| MEDIUM | src/cpp/session/modules/SessionChat.R | 601 | # cannot be influenced by the code the guardrails police | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/hooks/block-edit-autogenerated-files.sh | 69 | # Check if the file being edited matches any autogenerated file pattern | COMMENT |
| LOW⚡ | src/gwt/tools/locdiff/extract_regular_strings.py | 23 | # Check if it's an interface that extends Messages or Constants | COMMENT |
| LOW | src/cpp/r/R/Tools.R | 1912 | # Check if we've already visited this package. | COMMENT |
| LOW | src/cpp/session/modules/SessionAssistant.R | 144 | # Check if a variable should have its children examined. | COMMENT |
| LOW | src/cpp/session/modules/SessionThemes.R | 867 | # Check if a theme with the same name already exists in the current location. | COMMENT |
| LOW | src/cpp/session/modules/SessionBreakpoints.R | 353 | # Check if the S7 package is loaded | COMMENT |
| LOW | src/cpp/session/modules/SessionBreakpoints.R | 362 | # Check if this appears to be an invocation of `S7::method`. | COMMENT |
| LOW | src/cpp/session/modules/SessionBreakpoints.R | 442 | # Check if this matches the file contents. Note that we intentionally | COMMENT |
| LOW | src/cpp/session/modules/SessionBreakpoints.R | 451 | # Check if they match. | COMMENT |
| LOW | src/cpp/session/modules/SessionChat.R | 1121 | # Check if the display list is non-empty | COMMENT |
| LOW | src/cpp/session/modules/SessionChat.R | 1132 | # Check if the plot changed since before execution | COMMENT |
| LOW | src/cpp/session/modules/SessionPackages.R | 191 | # Check if the package at the given library path (possibly a symlink) | COMMENT |
| LOW | src/cpp/session/modules/SessionPackages.R | 2553 | # Check if package installation was disabled in this version of RStudio. | COMMENT |
| LOW | src/cpp/session/modules/SessionPackages.R | 2595 | # Check if we're installing a package from the filesystem, | COMMENT |
| LOW | src/cpp/session/modules/SessionCodeTools.R | 1797 | # Check if this is a call to an NSE primitive. | COMMENT |
| LOW | src/cpp/session/modules/SessionCodeTools.R | 1806 | # Check if this is a call to an NSE primitive, qualified through | COMMENT |
| LOW | src/cpp/session/modules/SessionEnvironment.R | 967 | # Check if an object is an S4 instance whose defining package namespace | COMMENT |
| LOW | src/cpp/session/modules/SessionEnvironment.R | 1164 | # Check if the topmost function on the call stack has the hideFromDebugger | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 247 | // Step 1: Click "New Directory" (each expect-visible is the wait gate for | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 253 | // Step 2: Click "New Project" in the project type list | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 259 | // Step 3: Enter directory name -- use click + pressSequentially so GWT | COMMENT |
| LOW⚡ | e2e/rstudio/tests/projects/project_trust_dialog.test.ts | 268 | // Step 4: Click "Create Project" | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 106 | // Step 0: Create a real project inside the sandbox so the | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 121 | // Step 1: Make sure no backend is running FIRST. | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 142 | // Step 2: Create a project-level skill (.posit/assistant/skills/ in workspace) | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 154 | // Step 3: Create a user-level skill (~/.posit/assistant/skills/ in home dir) | COMMENT |
| LOW | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 166 | // Step 4: Verify the skill files exist and hold their markers (the | COMMENT |
| LOW⚡ | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 201 | // Step 5: Start a fresh backend by setting chat_provider back to "posit". | COMMENT |
| LOW⚡ | …ts/panes/posit-assistant-chat/chat-user-skills.test.ts | 210 | // Step 6: Open the chat pane and wait for the UI to be ready | COMMENT |
| LOW | …/studio/client/workbench/UserInterfaceHighlighter.java | 103 | // pairs per query, we need to check if the callback has already executed before proceeding. | COMMENT |
| LOW | …rstudio/studio/client/workbench/views/files/Files.java | 745 | * the purpose of this function is specifically to pre-screen selected files for the following: | COMMENT |
| LOW | src/cpp/core/tex/synctex/synctex_parser.c | 1418 | /* The purpose of this function is to read a string. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …tudio/studio/client/rsconnect/ui/PublishFilesPage.java | 43 | // publish the HTML file or the original R Markdown doc, as requested | COMMENT |
| HIGH | src/cpp/server_core/http/SecureCookie.cpp | 304 | // expire from browser as requested | COMMENT |
| HIGH | src/cpp/session/modules/SessionChat.R | 17 | # misuse and unintentionally destructive AI-generated code. They should | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | src/gwt/tools/locdiff/extract_regular_strings.py | 28 | except Exception as e: | CODE |
| MEDIUM⚡ | src/gwt/tools/locdiff/extract_regular_strings.py | 29 | print(f"Error checking {java_path}: {e}") | CODE |
| LOW | src/gwt/tools/locdiff/extract_regular_strings.py | 53 | except Exception as e: | CODE |
| MEDIUM | src/gwt/tools/locdiff/extract_regular_strings.py | 54 | print(f"Error parsing {java_path}: {e}") | CODE |
| LOW | src/gwt/tools/locdiff/extract_regular_strings.py | 89 | except Exception as e: | CODE |
| MEDIUM | src/gwt/tools/locdiff/extract_regular_strings.py | 90 | print(f"Error parsing {prop_path}: {e}") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …urce/editors/explorer/view/ObjectExplorerDataGrid.java | 128 | "placeholder": true | CODE |
| LOW | …urce/editors/explorer/view/ObjectExplorerDataGrid.java | 134 | return !!this["placeholder"]; | CODE |
| LOW | …/org/rstudio/core/client/widget/TextBoxWithButton.java | 181 | textBox_.getElement().setPropertyString("placeholder", text); | CODE |
| LOW | …/org/rstudio/core/client/widget/TextBoxWithButton.java | 280 | textBox_.getElement().setAttribute("placeholder", emptyLabel_); | CODE |
| LOW | src/gwt/src/org/rstudio/core/client/dom/DomUtils.java | 1231 | ele.setAttribute("placeholder", placeholder); | CODE |
| LOW | src/cpp/core/include/core/libclang/clang-c/Index.h | 4360 | * the template, or whether it is a "placeholder" that the user should replace | COMMENT |
| LOW | src/cpp/core/include/core/libclang/clang-c/Index.h | 4453 | * A "placeholder" chunk marks a place where the user should insert text | COMMENT |
| LOW | src/cpp/shared_core/include/shared_core/system/User.hpp | 223 | * @brief Returns the user's real name ("John Doe", not "jdoe") | COMMENT |
| LOW | src/node/desktop/src/main/event-bus-types.ts | 22 | 'placeholder': [arg1: number, arg2: string]; // replace this with new events(s) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/jenkins/notarize-release.sh | 17 | # Usage: | COMMENT |
| LOW | dependencies/tools/upload-r.sh | 10 | # Usage: | COMMENT |
| LOW | scripts/r-api-report.R | 15 | # Usage: | COMMENT |
| LOW | scripts/bootstrap-worktree.sh | 53 | # Usage: | COMMENT |
| LOW | src/cpp/core/include/core/Result.hpp | 32 | // Example usage: | COMMENT |
| LOW | src/node/desktop/src/core/expected.ts | 27 | // Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/jenkins/sign-release.sh | 39 | # make sure to clean up the temporary keyring when finished | COMMENT |
| LOW | src/gwt/www/js/workers/worker-css.js | 1 | "no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)retu | CODE |
| LOW | src/gwt/lib/scripts/update.sh | 30 | # jspecify does not. GWT needs access to the .java sources for compilation, so we make sure to download both parts. | COMMENT |
| LOW | src/cpp/core/tex/synctex/synctex_parser_utils.c | 262 | dest = NULL;/* Don't forget to reinitialize. */ | CODE |
| LOW | src/cpp/session/modules/NotebookHtmlWidgets.R | 252 | # NOTE: if you touch this make sure you update the parsing code in NotebookOutput.cpp | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …tools/i18n-helpers/commands.cmd.xml/element_parsers.py | 1 | CODE | |
| LOW | …tools/i18n-helpers/commands.cmd.xml/element_parsers.py | 1 | CODE | |
| LOW | src/gwt/tools/locdiff/extract_regular_strings.py | 7 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/gwt/tools/locdiff/extract_regular_strings.py | 58 | CODE |