AI Slop Code Risk Monitor

Myriad-Dreamin/tinymist

SlopCodeMonitor badge for Myriad-Dreamin/tinymist Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Tinymist [ˈtaɪni mɪst] is an integrated language service for Typst [taɪpst].

2.7 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for Myriad-Dreamin/tinymist, a Rust project with 3,625 GitHub stars. SynthScan examined 186,403 lines of code across 984 source files, recording 326 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 2.7 (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.

2.7
Adjusted Signal
2.7
Raw Pattern Score
100%
Time Factor
2026-10-27
Last Push
3.6K
Stars
Rust
Language
186.4K
Lines of Code
984
Files
326
Pattern Hits
2026-10-31
Scan Date
0.02
HC Hit Rate

Risk Review · Payload v1

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.

Cognitive Ownership Risk 9.3/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 307 finding(s).

Hallucinated Dependency & Supply Chain Risk 2.9/100 · LOW

Are imports declared and package/API names verified? 13 finding(s).

Agent Over-Engineering Ratio 2.1/100 · LOW

Are wrappers, guards, and repeated structures necessary? 57 finding(s).

PR Review Velocity Impact 11.9/100 · LOW

Which changes need focused human review? 326 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 10HIGH 6MEDIUM 13LOW 297

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 326 distinct pattern matches across 14 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.

Over-Commented Block232 hits · 232 pts
SeverityFileLineSnippetContext
LOWCargo.toml341COMMENT
LOWCargo.toml361# typst-timing = { path = "../typst/crates/typst-timing" }COMMENT
LOWCargo.toml381tinymist-analysis = { path = "crates/tinymist-analysis" }COMMENT
LOWdist-workspace.toml41 # Not supported yet.COMMENT
LOWqodana.yaml1#-------------------------------------------------------------------------------#COMMENT
LOWqodana.yaml21projectJDK: "21" #(Applied in CI/CD pipeline)COMMENT
LOWtools/editor-tools/src/main.base.ts21 /// The page to render.COMMENT
LOWtools/editor-tools/src/features/docs.ts441 // ...[COMMENT
LOWcrates/tinymist-world/src/config.rs41 #[serde(rename = "creationTimestamp")]COMMENT
LOWcrates/tinymist-world/src/world.rs1//! The world of the compiler.COMMENT
LOWcrates/tinymist-world/src/compute.rs41 /// The output type.COMMENT
LOWcrates/tinymist-world/src/compute.rs61 /// pub struct SystemFontsOnce {COMMENT
LOWcrates/tinymist-world/src/snapshot.rs21impl ProjectInsId {COMMENT
LOWcrates/tinymist-world/src/entry.rs21}COMMENT
LOWcrates/tinymist-world/src/args.rs61/// Common arguments to create a world (environment) to run typst tasks, e.g.COMMENT
LOWcrates/tinymist-world/src/args.rs81COMMENT
LOWcrates/tinymist-world/src/args.rs241 ///COMMENT
LOWcrates/tinymist-world/src/args.rs281/// ## ExamplesCOMMENT
LOWcrates/tinymist-world/src/args.rs321 Pdf,COMMENT
LOWcrates/tinymist-world/src/args.rs341pub enum ExportTarget {COMMENT
LOWcrates/tinymist-world/src/args.rs361 #[serde(rename = "1.5")]COMMENT
LOWcrates/tinymist-world/src/args.rs381 #[serde(rename = "a-1a")]COMMENT
LOWcrates/tinymist-world/src/args.rs401 #[serde(rename = "a-3u")]COMMENT
LOWcrates/tinymist-world/src/debug_loc.rs1//! The debug location that can be used to locate a position in a document or aCOMMENT
LOWcrates/tinymist-world/src/debug_loc.rs81 pub pos: LspPosition,COMMENT
LOWcrates/tinymist-world/src/debug_loc.rs101/// See [`CharPosition`] for the definition of the position inside a file.COMMENT
LOWcrates/tinymist-world/src/font/mod.rs1//! The font implementations for typst worlds.COMMENT
LOWcrates/cmark-writer/src/options.rs1//! CommonMark formatting options.COMMENT
LOWcrates/cmark-writer/src/writer/runtime/visitor/mod.rs1//! Shared AST visitor utilities used by writer backends.COMMENT
LOWcrates/cmark-writer/src/writer/html/options.rs1use ecow::EcoString;COMMENT
LOWcrates/cmark-writer/src/writer/html/options.rs21/// #[cfg(feature = "gfm")]COMMENT
LOWcrates/cmark-writer/src/writer/html/core/mod.rs21/// - For building HTML elements programmatically using the tag and attribute methodsCOMMENT
LOWcrates/cmark-writer/src/writer/html/core/mod.rs41///COMMENT
LOWcrates/cmark-writer/src/ast/custom.rs1//! Custom node definitions for the CommonMark AST.COMMENT
LOWcrates/cmark-writer/src/ast/custom.rs21/// use cmark_writer_macros::custom_node;COMMENT
LOWcrates/cmark-writer/src/ast/custom.rs41/// Ok(())COMMENT
LOWcrates/cmark-writer/src/ast/custom.rs61 Err(WriteError::UnsupportedNodeType)COMMENT
LOWcrates/cmark-writer/src/ast/node.rs21 /// ATX Type - Beginning with #COMMENT
LOWcrates/cmark-writer/src/ast/node.rs301 /// # ArgumentsCOMMENT
LOWcrates/cmark-writer/src/ast/node.rs341COMMENT
LOWcrates/cmark-writer/src/ast/tables.rs1//! Table support for CommonMark and GFMCOMMENT
LOWcrates/cmark-writer/src/gfm/formatting.rs1//! GFM text formatting extensionsCOMMENT
LOWcrates/cmark-writer/src/gfm/formatting.rs21/// # ArgumentsCOMMENT
LOWcrates/cmark-writer/src/gfm/formatting.rs41/// Creates a combined formatted node with strikethrough and strong emphasisCOMMENT
LOWcrates/cmark-writer/src/gfm/tasks.rs1//! GFM task list supportCOMMENT
LOWcrates/cmark-writer/src/gfm/tasks.rs21///COMMENT
LOWcrates/cmark-writer/src/gfm/mod.rs1//! GitHub Flavored Markdown (GFM) extensionsCOMMENT
LOWcrates/cmark-writer/src/gfm/tables.rs1//! GFM table support with alignment featuresCOMMENT
LOWcrates/tinymist-package/src/registry.rs81#[derive(Debug, Clone, Deserialize)]COMMENT
LOWcrates/tinymist-tests/src/mock.rs1//! Aggregate mock test support.COMMENT
LOWcrates/tinymist-project/src/watch.rs521 /// Notify any update of the file entryCOMMENT
LOWcrates/tinymist-project/src/entry.rs21 /// tinymist tracks your preview and compilation history, and stores theCOMMENT
LOWcrates/tinymist-project/src/args.rs121 #[clap(flatten)]COMMENT
LOWcrates/tinymist-project/src/args.rs141 /// write output to stdout.COMMENT
LOWcrates/tinymist-project/src/args.rs161 /// pages after it).COMMENT
LOWcrates/tinymist-project/src/model.rs61 /// The project's document (input).COMMENT
LOWcrates/tinymist-project/src/model.rs81 /// The path to the root directory of the project.COMMENT
LOWcrates/sync-lsp/src/transport.rs21/// It records an LSP or DAP session and replays it to compare the output.COMMENT
LOWcrates/sync-lsp/src/transport.rs101 io_threads.join_write()?;COMMENT
LOWcrates/sync-lsp/src/dap.rs21 Response(Response),COMMENT
172 more matches not shown…
Hallucination Indicators10 hits · 100 pts
SeverityFileLineSnippetContext
CRITICALcrates/tinymist-query/src/analysis/signature.rs347 let docs = self.ctx.inner.info.var_docs.get(&u.def).map(|x| x.as_ref());CODE
CRITICAL…ates/tinymist-query/src/analysis/completion/snippet.rs71 if !self.worker.ctx.analysis.completion_feat.postfix() {CODE
CRITICAL…ates/tinymist-query/src/analysis/completion/snippet.rs192 if !self.worker.ctx.analysis.completion_feat.any_ufcs() {CODE
CRITICAL…ates/tinymist-query/src/analysis/completion/snippet.rs255 if self.worker.ctx.analysis.completion_feat.ufcs() && fn_feat.min_pos() == 1 {CODE
CRITICAL…ates/tinymist-query/src/analysis/completion/snippet.rs272 if self.worker.ctx.analysis.completion_feat.ufcs_left() && more_args {CODE
CRITICAL…ates/tinymist-query/src/analysis/completion/snippet.rs289 if self.worker.ctx.analysis.completion_feat.ufcs_right() && more_args {CODE
CRITICAL…nymist-query/src/analysis/completion/typst_specific.rs343 let is_stepless = self.cursor.ctx.analysis.completion_feat.is_stepless();CODE
CRITICALcrates/tinymist/src/cmd.rs167 let cli_args = self.config.preview.browsing.args.clone();CODE
CRITICALcrates/tinymist/src/tool/preview.rs264 let args = self.config.preview.background.args.clone();CODE
CRITICALcrates/tinymist-cli/src/cmd/package.rs362 pdf_standards: ctx.args.compile.pdf.standard.clone(),CODE
Hyper-Verbose Identifiers51 hits · 51 pts
SeverityFileLineSnippetContext
LOWtools/typst-preview-frontend-ng/src/navigation.ts15export function scrollViewportToTypstLocation(CODE
LOWtools/typst-preview-frontend-ng/src/interactions.ts216function alignTextClipToVisualRect(clippedRect: PageRect, visualRect: PageRect): PageRect {CODE
LOWtools/typst-preview-frontend-ng/src/interactions.ts251function renderInteractionHighlights(CODE
LOWtools/typst-preview-frontend-ng/src/app.ts279function createFallbackImageBitmap(width?: number, height?: number) {CODE
LOW…s/typst-preview-frontend-ng/src/worker/render-utils.ts29export function computeInteractivePixelPerPt(value: number) {CODE
LOWtools/editor-tools/src/vscode.ts113export function requestSaveFontsExportConfigure(data: fontsExportConfigure) {CODE
LOW…s/editor-tools/src/features/symbol-view/categorized.ts21function pickSymbolsByDrawCandidates(CODE
LOWtools/editor-tools/src/features/exporter/exporter.ts99function createMockPreviewResponse(format: ExportFormat, version: number): PreviewResponse {CODE
LOWtools/typst-preview-frontend/src/html-preview.ts145function replaceWithHtmlPreviewDocument(html: string, url: string) {CODE
LOWeditors/vscode/src/snippets.ts19export async function applySnippetWorkspaceEdit(CODE
LOWeditors/vscode/src/extension.ts76function previewActivateInTinymist(context: IContext) {CODE
LOWeditors/vscode/src/extension.ts254async function commandGetCurrentDocumentMetrics(): Promise<any> {CODE
LOWeditors/vscode/src/extension.ts639function triggerSuggestAndParameterHints() {CODE
LOWeditors/vscode/src/lsp.web.ts8export async function createBrowserLanguageClient(CODE
LOWeditors/vscode/src/lsp.ts861export function registerPreviewTaskDispose(taskId: string, dl: DisposeList): void {CODE
LOWeditors/vscode/src/lsp.ts885function isCodeActionWithoutEditsAndCommands(value: any): boolean {CODE
LOWeditors/vscode/src/extension.shared.ts33function configureEditorAndLanguage(context: ExtensionContext, trait: TinymistTrait) {CODE
LOWeditors/vscode/src/util.ts93export function getSensibleTextEditorColumn(): ViewColumn {CODE
LOWeditors/vscode/src/config.ts44export function patchInjectedClientOptionsInConfig(CODE
LOWeditors/vscode/src/config.ts163function patchInjectedClientOptionsObject(CODE
LOWeditors/vscode/src/lsp.system.ts8export async function createSystemLanguageClient(CODE
LOWeditors/vscode/src/package-manager.ts86export async function commandCreateLocalPackage() {CODE
LOWeditors/vscode/src/features/preview-window-state.ts28export function loadStoredViewerWindowState(CODE
LOWeditors/vscode/src/features/preview-window-state.ts39export async function saveStoredViewerWindowState(CODE
LOWeditors/vscode/src/features/preview-window-state.ts60function normalizeViewerWindowStateNotification(CODE
LOWeditors/vscode/src/features/preview-window-state.ts98function normalizeViewerWindowState(value: unknown): ViewerWindowState | undefined {CODE
LOWeditors/vscode/src/features/previewer.ts110export function setPreviewBuiltinSourceMode(mode: "compat" | "tinymist") {CODE
LOWeditors/vscode/src/features/previewer.ts133export function getConfiguredPreviewTarget(): PreviewTarget {CODE
LOWeditors/vscode/src/features/previewer.ts164export async function resolveConfiguredPreviewer(CODE
LOWeditors/vscode/src/features/previewer.ts252async function resolveBuiltinPreviewerSelection(CODE
LOWeditors/vscode/src/features/previewer.ts304async function resolveExtensionPreviewer(CODE
LOWeditors/vscode/src/features/previewer.ts451async function resolveCommandBackedExtensionPreviewer(CODE
LOWeditors/vscode/src/features/previewer.ts596async function handlePreviewerResolutionFailure(CODE
LOWeditors/vscode/src/features/previewer.ts671function normalizeSupportedTargets(supportedTargets: unknown): PreviewTarget[] | undefined {CODE
LOWeditors/vscode/src/features/preview.ts50function hasReportedPreviewerError(error: unknown): boolean {CODE
LOWeditors/vscode/src/features/testing/debug.ts41 function findDefaultFileForDebugging() {CODE
LOWcontrib/renderer-diff/src/github.ts70export function normalizeActionArtifactId(input: string): string | null {CODE
LOWcontrib/renderer-diff/src/github.ts94export async function listRendererDiffArtifacts(CODE
LOWcontrib/renderer-diff/src/github.ts185async function githubArtifactsRequestError(response: Response): Promise<Error> {CODE
LOWcontrib/renderer-diff/src/github.ts195function githubArtifactsStatusMessage(response: Response): string {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts176function commandBackedPreviewerMetadata(compatibleTinymistVersion: string): CommandBackedPreviewer {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts267async function prepareSideBySideInitialWindowState(): Promise<ViewerWindowState | undefined> {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts314function normalizeStoredWindowState(value: unknown): ViewerWindowState | undefined {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts384function workingDirectoryForDocument(CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts434async function prepareSideBySideLayoutBeforeSpawn(): Promise<WindowRect | undefined> {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts556async function prepareSideBySideLayoutBeforeSpawnMacOS(): Promise<WindowRect> {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts604async function prepareSideBySideLayoutBeforeSpawnLinux(): Promise<WindowRect> {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts747async function arrangeWindowsSideBySideMacOS(viewerTitle: string) {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts811function powershellSingleQuotedString(value: string): string {CODE
LOW…ib/tinymist-gpu-viewer/editors/vscode/src/extension.ts819async function arrangeWindowsSideBySideLinux(viewerPid: number) {CODE
LOW.github/copilot-instructions.md121 export function requestSaveFontsExportConfigure(data: fontsExportConfigure) {CODE
Synthetic Comment Markers5 hits · 35 pts
SeverityFileLineSnippetContext
HIGHcrates/tinymist-l10n/src/lib.rs116 result.push_str("\n# The translations are partially generated by copilot\n");CODE
HIGHlocales/tinymist-rt.toml2# The translations are partially generated by copilotCOMMENT
HIGHlocales/tinymist-vscode.toml2# The translation are partially generated by copilotCOMMENT
HIGHlocales/tinymist-vscode-rt.toml2# The translations are partially generated by copilotCOMMENT
HIGH.github/copilot-instructions-l10n.md97# The translations are partially generated by copilotCOMMENT
Decorative Section Separators6 hits · 27 pts
SeverityFileLineSnippetContext
MEDIUM⚡crates/tinymist/src/project.rs4//! ┌────────────────────────────────┐ ┌────────────┐COMMENT
MEDIUM⚡crates/tinymist/src/project.rs5//! │ main::main_loop │◄───────►│notify_actor│COMMENT
MEDIUM⚡crates/tinymist/src/project.rs6//! └─────┬────────────────────▲─────┘ └────────────┘COMMENT
MEDIUM⚡crates/tinymist/src/project.rs8//! ┌─────▼────────────────────┴─────┐ handler ┌────────────┐COMMENT
MEDIUM⚡crates/tinymist/src/project.rs9//! │ compiler::compile_handler ├────────►│ rest actors│COMMENT
MEDIUM⚡crates/tinymist/src/project.rs10//! └────────────────────────────────┘ └────────────┘COMMENT
Verbosity Indicators6 hits · 13 pts
SeverityFileLineSnippetContext
LOWcrates/tinymist-std/src/fs/paths.rs463 // For Windows, we need to check if the file is a symlink to a directoryCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt140 // Step 1: Create installation directoryCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt145 // Step 2: Download the archiveCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt153 // Step 3: Extract the archiveCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt158 // Step 4: Set executable permissions (Unix-like systems)COMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt167 // Step 5: Verify installationCOMMENT
Structural Annotation Overuse5 hits · 11 pts
SeverityFileLineSnippetContext
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt140 // Step 1: Create installation directoryCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt145 // Step 2: Download the archiveCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt153 // Step 3: Extract the archiveCOMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt158 // Step 4: Set executable permissions (Unix-like systems)COMMENT
LOW⚡…nymist/intellij/lsp/TinymistLanguageServerInstaller.kt167 // Step 5: Verify installationCOMMENT
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMcrates/tinymist-query/src/analysis/global.rs77 /// Whether to utilize the extended `tinymist.resolveCodeAction` at clientCOMMENT
MEDIUMcrates/tinymist-query/src/analysis/tyck/syntax.rs990 // todo: This doesn't fully utilize the existing checkers. We have a better wayCOMMENT
MEDIUMcrates/tinymist/src/config.rs109 /// Whether to utilize the extended `tinymist.resolveCodeAction` at clientCOMMENT
Self-Referential Comments3 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUMcrates/tinymist-project/src/lock/system.rs87 let marker_line = "# This file is automatically @generated by tinymist.";CODE
MEDIUMcrates/tinymist-std/src/fs/paths.rs774# This file is a cache directory tag created by cargo.COMMENT
MEDIUM.github/workflows/release.yml319 # Create a GitHub Release while uploading all files to itCOMMENT
Cross-Language Confusion (JS/TS)1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHeditors/vscode/src/gitpod.ts3 * @return True if the current environment is Gitpod, false otherwise.COMMENT
Modern AI Meta-Vocabulary1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUM…ec/changes/add-mock-vfs-world-test-harness/proposal.md5That gap makes issues like `#2359` slower and riskier to fix because the first step is often inventing test scaffolding CODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWeditors/neovim/spec/main.py63 # Check if any test files are provided as command line argumentsCOMMENT
Unused Imports1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…ymist/dev/notify-rs-file-operation-decomposition.z3.py1CODE
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOW.codex/skills/gh-cli/SKILL.md676gh repo license mit --fullname "John Doe"CODE