A reliable coding agent for complex software engineering tasks.
This report summarizes scanner evidence for esengine/DeepSeek-Reasonix, a Go project with 36,017 GitHub stars. SynthScan examined 1,404,321 lines of code across 10413 source files, recording 915 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 0.9 (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? 736 finding(s).
Are imports declared and package/API names verified? 48 finding(s).
Are wrappers, guards, and repeated structures necessary? 247 finding(s).
Which changes need focused human review? 915 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 915 distinct pattern matches across 16 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 |
|---|---|---|---|---|
| LOW | reasonix.example.toml | 1 | # Reasonix configuration. | COMMENT |
| LOW | reasonix.example.toml | 41 | COMMENT | |
| LOW | reasonix.example.toml | 61 | # plan_mode_read_only_commands = ["gh issue view"] # legacy compatibility only; Plan bash uses Permissions | COMMENT |
| LOW | reasonix.example.toml | 81 | # include_runtime_context = true | COMMENT |
| LOW | reasonix.example.toml | 101 | # saw nothing, so listing it here would drop pictures silently. | COMMENT |
| LOW | reasonix.example.toml | 121 | # billing_currency = "USD" # frozen list-price currency: CNY|USD | COMMENT |
| LOW | reasonix.example.toml | 141 | # name = "openai-compatible-custom" | COMMENT |
| LOW | reasonix.example.toml | 181 | mcp_call_timeout_seconds = 300 # default MCP call safety cap; per-plugin/tool overrides may raise it | COMMENT |
| LOW | reasonix.example.toml | 201 | # ship out of the box. The model invokes them via run_skill / explore / …; you | COMMENT |
| LOW | reasonix.example.toml | 221 | COMMENT | |
| LOW | reasonix.example.toml | 241 | # # start. Use /mcp or the desktop MCP panel to refresh, reconnect, or disable. | COMMENT |
| LOW | cmd/reasonix-plugin-example/main.go | 1 | // Command reasonix-plugin-example is a reference Reasonix plugin: a minimal MCP stdio | COMMENT |
| LOW | cmd/e2ebench/main.go | 141 | // number stays comparable when the same suite runs against another harness. | COMMENT |
| LOW | cmd/e2ebench/main.go | 161 | Trajectory *trajectorySummary `json:"trajectory,omitempty"` | COMMENT |
| LOW | tools/repolint/wireparity.go | 101 | // Whether a replayed trajectory covers the session or only a prefix of it. | COMMENT |
| LOW | tools/repolint/wireparity.go | 161 | {"internal/ext/modpreview/types.go", "Call", tsPluginFile, "ModPreviewCall"}, | COMMENT |
| LOW | tools/repolint/wireparity.go | 241 | // list as the whole set of open prompts — one it cannot read is a card it | COMMENT |
| LOW | tools/workgroupassay/protocol.go | 1 | package main | COMMENT |
| LOW | internal/contract/settings/doc.go | 1 | // Package settings is the one declaration of every user-file key: who may | COMMENT |
| LOW | internal/contract/config/paths.go | 541 | COMMENT | |
| LOW | internal/contract/config/model_window.go | 1 | // Where a model's context window comes from. It is a fact about the model, not | COMMENT |
| LOW | internal/contract/config/config.go | 221 | // IgnoredProjectDefaultModel returns the project reasonix.toml default_model | COMMENT |
| LOW | internal/contract/config/config.go | 681 | // "password": a login page with bcrypt password verification. | COMMENT |
| LOW | internal/contract/config/config.go | 701 | RememberPairedDevices bool `toml:"remember_paired_devices"` | COMMENT |
| LOW | internal/contract/config/config.go | 781 | // NetworkProxyMode normalizes network.proxy_mode to a known value. | COMMENT |
| LOW | internal/contract/config/config.go | 901 | // stay inside the project by default. AllowWrite lists extra directories | COMMENT |
| LOW | internal/contract/config/config.go | 921 | // HostAuthorities lists the host services bash may call. Defaults to | COMMENT |
| LOW | internal/contract/config/config.go | 1081 | RecoveryTemperature float64 `toml:"recovery_temperature"` | COMMENT |
| LOW | internal/contract/config/config.go | 1121 | SubagentSteerBytes int `toml:"max_subagent_steer_bytes"` // the user file only | COMMENT |
| LOW | internal/contract/config/config.go | 1181 | // budget survive only through the digest, unless marked [[keep]]. | COMMENT |
| LOW | internal/contract/config/capability_errors.go | 21 | // ErrActivationUnavailable is the durable switch store failing to answer — read, | COMMENT |
| LOW | internal/contract/config/plugin_entry.go | 21 | // initialize + tools/list. Zero keeps the global/default cap. | COMMENT |
| LOW | internal/contract/config/protocol.go | 21 | Discovery string | COMMENT |
| LOW | internal/contract/config/credentials_keyring_unix.go | 101 | if len(secret.Value) == 0 { | COMMENT |
| LOW | internal/contract/config/cli.go | 1 | package config | COMMENT |
| LOW | internal/contract/config/provider_entry.go | 81 | // Thinking / Effort are provider-kind-specific knobs forwarded via Config.Extra. | COMMENT |
| LOW | internal/contract/config/provider_entry.go | 101 | // WebSearch controls the provider-executed web_search tool for compatible | COMMENT |
| LOW | internal/contract/config/storage_roots.go | 21 | // RootState holds transcripts, archives, stats, and per-project memory. | COMMENT |
| LOW | internal/contract/config/storage_roots.go | 41 | // contract, not an omission: locks must converge across instances, and home | COMMENT |
| LOW | internal/contract/config/storage_roots.go | 81 | // what the environment says, which every package-level path function still | COMMENT |
| LOW | internal/contract/config/cache_policy.go | 1 | package config | COMMENT |
| LOW | internal/contract/config/preset_upgrade.go | 21 | // Window is the context window that shape shipped with. Nil identifies the | COMMENT |
| LOW | internal/contract/config/decode.go | 41 | // isolateDecodedProviders stops one vendor's defaults from being written onto | COMMENT |
| LOW | internal/contract/config/load.go | 21 | // Load builds the configuration: defaults, then user config, then project | COMMENT |
| LOW | …l/contract/config/testdata/user_config_1x_v1.39.5.toml | 61 | # [environment.tools] | COMMENT |
| LOW | …l/contract/config/testdata/user_config_1x_v1.39.5.toml | 161 | # Readers always default to allow. Precedence: deny > ask > allow > fallback. | COMMENT |
| LOW | …l/contract/config/testdata/user_config_1x_v1.39.5.toml | 281 | # command = "reasonix-plugin-example" | COMMENT |
| LOW | internal/contract/hostaudit/doc.go | 1 | // Package hostaudit holds the structured audit records the host emits beside a | COMMENT |
| LOW | internal/contract/hostaudit/outcome_sample.go | 21 | // DebtAge counts consecutive rounds carrying an unverified mutation with | COMMENT |
| LOW | internal/contract/chartspec/doc.go | 1 | // Package chartspec is the closed, versioned description of a chart a model may | COMMENT |
| LOW | internal/contract/provider/provider.go | 41 | // Message is a single conversation message. | COMMENT |
| LOW | internal/contract/provider/provider.go | 61 | // VideoParts are Videos resolved for one request. Never stored. | COMMENT |
| LOW | internal/contract/provider/provider.go | 101 | // ModelRef names the model that wrote this assistant turn. Local UI metadata, | COMMENT |
| LOW | internal/contract/provider/provider.go | 221 | } | COMMENT |
| LOW | internal/contract/provider/provider.go | 241 | // tool_calls entry must be answered by a following tool message for its id, and a | COMMENT |
| LOW | internal/contract/provider/provider.go | 541 | // Stream starts a streaming completion, pushing increments on the channel. | COMMENT |
| LOW | internal/contract/provider/streaminterrupt.go | 21 | // A local model prefilling a long context is silent for minutes at a time. | COMMENT |
| LOW | internal/contract/provider/schema_dialect.go | 21 | COMMENT | |
| LOW | internal/contract/provider/schema_dialect.go | 61 | // subtree and drives reserialization. | COMMENT |
| LOW | internal/contract/provider/zhipu_effort.go | 1 | package provider | COMMENT |
| 527 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | internal/contract/config/backfill_test.go | 1894 | // ── Explicit model list: normalization must not override user selection ─────── | COMMENT |
| MEDIUM | internal/contract/config/chat_model_test.go | 8 | // ── IsLikelyChatModel ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | internal/contract/config/chat_model_test.go | 109 | // ── ModelList / ChatModelList ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | internal/tools/builtin/write_tool_test.go | 302 | separator := " // ═══════════════════════════════════════" | CODE |
| MEDIUM⚡ | internal/tools/builtin/delete_range_test.go | 238 | "// ═══════════════════════════════════════", | CODE |
| MEDIUM⚡ | internal/tools/builtin/delete_range_test.go | 240 | "// ═══════════════════════════════════════", | CODE |
| MEDIUM⚡ | internal/tools/builtin/delete_range_test.go | 242 | "// ═══════════════════════════════════════", | CODE |
| MEDIUM⚡ | internal/tools/builtin/delete_range_test.go | 248 | "path": f, "start_anchor": "// ═══════════════════════════════════════", "end_anchor": "const b = 2;", | CODE |
| MEDIUM | desktop/frontend-next/src/actions.ts | 86 | // ── The window's own switches, and the way into the turn's policy ──────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 198 | // ── The turn ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 218 | // ── Committing what is staged ──────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 229 | // ── Which branch the workspace is on ───────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 234 | // ── What is waiting to be sent ─────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 256 | // ── Capabilities ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 270 | // ── The window itself ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 414 | // ── Opening what a person already has ──────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 439 | // ── Taking a change back ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/actions.ts | 565 | // ── How the window looks ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 207 | // ── 设置:分区与导航 ───────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 221 | // ── 设置:会话 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 240 | // ── 设置:模型 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 287 | // ── 设置:工具与权限 ───────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 615 | // ── 设置:自动化与扩展 ─────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 658 | // ── 设置:其余分区 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 677 | // ── 设置:行内操作 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 691 | // ── 卡片与窗口控件 ─────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 801 | // ── 首次连接 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 831 | // ── 状态与动作 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 1006 | // ── 对比度与钩子示例 ───────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en_settings.ts | 1072 | // ── 装上/接上之后说了什么 ───────────────────────────────────── | COMMENT |
| MEDIUM⚡ | desktop/frontend-next/src/i18n/en.ts | 1497 | // ── 宿主通知卡片自己的头部(NoticeCard)─────────────────────── | COMMENT |
| MEDIUM⚡ | desktop/frontend-next/src/i18n/en.ts | 1502 | // ── 连不上时卡在哪一步(kernel.ts 的 refusal 措辞)───────────── | COMMENT |
| MEDIUM⚡ | desktop/frontend-next/src/i18n/en.ts | 1504 | // ── 内核其余的拒绝措辞 ───────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 87 | // ── 转录:卡片与流 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 217 | // ── 运行状态 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 256 | // ── 面板与栏 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 578 | // ── 会话树 ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 644 | // ── 待发队列 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 688 | // ── 外观设置 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 740 | // ── 高级外观 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 745 | // ── 明暗与配色 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 800 | // ── 连接与来源 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 967 | // ── 外部服务与插件 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 999 | // ── 自动化 ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1007 | // ── 网络 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1024 | // ── 命令解释器 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1041 | // ── 卡片:批准、还原、收工 ─────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1141 | // ── 开场 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1151 | // ── 版本 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1165 | // ── 账号 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1176 | // ── 分工与模型 ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1183 | // ── 记忆 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1219 | // ── 其余 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1266 | // ── 常量表:档位、分区、状态 ───────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1334 | // ── 面板标签与关闭确认 ─────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1343 | // ── 版本 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1363 | // ── 插件安装 ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1375 | // ── 来源与自动化 ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1385 | // ── 卡片 ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | desktop/frontend-next/src/i18n/en.ts | 1416 | // ── 通用动作 ───────────────────────────────────────────────────── | COMMENT |
| 29 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tools/trajectory/test_lease_cost.py | 25 | def test_reads_only_lease_frames(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 35 | def test_a_partial_last_line_is_skipped(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 43 | def test_finds_logs_under_a_directory(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 55 | def test_absent_witness_means_intact(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 60 | def test_a_witness_is_reported(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 67 | def test_an_unreadable_witness_counts_as_truncated(self): | CODE |
| LOW | tools/trajectory/test_lease_cost.py | 81 | def test_counts_every_hold_and_only_contended_waits(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 93 | def test_an_uncontended_run_reports_no_wait_at_all(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 101 | def test_a_zero_length_hold_has_no_share(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 106 | def test_nothing_recorded_says_so(self): | CODE |
| LOW⚡ | tools/trajectory/test_lease_cost.py | 112 | def test_a_truncated_log_is_said_in_the_rendering(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 30 | def test_prefers_todo_progress_over_complete_step(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 40 | def test_proxy_fidelity_is_part_of_the_sample(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 45 | def test_require_semantic_refuses_a_proxy_sample(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 49 | def test_require_semantic_accepts_a_semantic_sample(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 61 | def test_gaps_are_differences_between_consecutive_advances(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 85 | def test_unknown_fields_and_kinds_are_ignored(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 100 | def test_a_todo_line_that_stopped_parsing_is_an_error(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 106 | def test_a_file_that_is_not_a_trajectory_is_an_error(self): | CODE |
| LOW⚡ | tools/trajectory/test_progress_corpus.py | 116 | def test_transitions_carry_scalars_only(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 152 | def test_rewrites_do_not_end_an_episode(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 165 | def test_a_replan_after_rewrites_resolves_the_episode(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 177 | def test_terminal_is_not_folded_into_advance(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 187 | def test_an_unresolved_replan_is_censored_not_dropped(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 198 | def test_proxy_samples_produce_no_episodes(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 205 | def test_semantic_samples_write_the_file(self): | CODE |
| LOW | tools/trajectory/test_progress_corpus.py | 219 | def test_episodes_stay_out_of_the_default_summary(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 63 | def test_an_injected_repeat_loop_is_caught(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 70 | def test_a_clean_run_of_distinct_calls_is_not_flagged(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 77 | def test_a_dispatch_emitted_twice_counts_one_call(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 81 | def test_a_result_event_emitted_twice_counts_one_call(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 87 | def test_polling_that_returns_new_output_is_not_a_repeat(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 93 | def test_a_retry_after_a_failure_is_not_a_repeat(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 97 | def test_the_same_failure_twice_is_a_retry_not_a_repeat(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 101 | def test_a_write_between_two_identical_reads_clears_the_history(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 105 | def test_a_repeat_in_another_turn_is_not_a_repeat(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 109 | def test_a_dispatch_without_a_result_is_unresolved_and_counts_nowhere(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 115 | def test_a_rationale_that_differs_hides_a_repeat_unless_ignored(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 125 | def test_a_block_that_repeats_itself_is_caught(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 131 | def test_a_block_repeated_across_blocks_is_caught_at_every_threshold(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 139 | def test_clean_distinct_reasoning_is_not_flagged(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 149 | def test_natural_prose_is_not_flagged(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 162 | def test_short_blocks_are_excluded_and_counted(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 167 | def test_punctuation_and_case_do_not_hide_a_repeat(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 172 | def test_a_stream_without_reasoning_events_falls_back_to_the_message_and_says_so(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 177 | def test_a_flat_envelope_reads_like_the_wrapped_one(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 189 | def test_the_message_event_is_not_read_as_a_second_block(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 195 | def test_a_repeated_short_reply_is_caught(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 201 | def test_varied_replies_are_not_flagged(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 207 | def test_a_long_identical_reply_is_outside_the_cap(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 213 | def test_a_break_resets_the_run(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 235 | def test_a_continued_run_that_redoes_the_work_is_caught(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 243 | def test_a_continued_run_that_moves_on_is_not_flagged(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 249 | def test_the_same_call_with_a_new_result_is_new_evidence(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 255 | def test_usage_is_deduplicated_by_attempt(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 262 | def test_two_requests_that_share_an_attempt_id_are_both_counted(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 267 | def test_an_identical_usage_event_emitted_twice_counts_once(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 271 | def test_a_wire_log_whose_sidecar_says_truncated_is_reported_as_a_prefix(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 280 | def test_a_complete_wire_log_and_a_trajectory_are_not_reported_truncated(self): | CODE |
| LOW⚡ | tools/loopmetrics/test_loopmetrics.py | 290 | def test_usage_in_two_processes_is_not_deduplicated_across_them(self): | CODE |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h05.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h11.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h01.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h10.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h04.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h03.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h07.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h06.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h12.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h02.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h09.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h08.py | 0 | handle a transfer request. the service contract requires every handler to validate its payload before touching the ledge | STRING |
| HIGH | …width/tasks/fleet-parallel-three/workdir/beta/entry.py | 0 | entry point for the alpha subsystem. exactly one module below is live; the rest are retained for rollback and their mark | STRING |
| HIGH | …idth/tasks/fleet-parallel-three/workdir/gamma/entry.py | 0 | entry point for the alpha subsystem. exactly one module below is live; the rest are retained for rollback and their mark | STRING |
| HIGH | …idth/tasks/fleet-parallel-three/workdir/alpha/entry.py | 0 | entry point for the alpha subsystem. exactly one module below is live; the rest are retained for rollback and their mark | STRING |
| HIGH | …nchmarks/train/tasks/gen-money-round/workdir/ledger.py | 0 | human-facing display of monetary amounts. contract (see readme.md): every amount is rounded to the nearest cent using ro | STRING |
| HIGH | …chmarks/train/tasks/gen-money-round/solution/ledger.py | 0 | human-facing display of monetary amounts. contract (see readme.md): every amount is rounded to the nearest cent using ro | STRING |
| HIGH | …chmarks/train/tasks/gen-money-round/workdir/display.py | 0 | human-facing display of monetary amounts. contract (see readme.md): every amount is rounded to the nearest cent using ro | STRING |
| HIGH | …hmarks/train/tasks/gen-money-round/solution/display.py | 0 | human-facing display of monetary amounts. contract (see readme.md): every amount is rounded to the nearest cent using ro | STRING |
| HIGH | …ate-signature-3packages-forced/workdir/common/money.py | 0 | format cents as a currency string, e.g. 1234 -> '12.34 usd'. | STRING |
| HIGH | …/tasks/context-pressure-forced/workdir/common/money.py | 0 | format cents as a currency string, e.g. 1234 -> '12.34 usd'. | STRING |
| HIGH | …rks/e2e/tasks/context-pressure/workdir/common/money.py | 0 | format cents as a currency string, e.g. 1234 -> '12.34 usd'. | STRING |
| HIGH | …ks/migrate-signature-3packages/workdir/common/money.py | 0 | format cents as a currency string, e.g. 1234 -> '12.34 usd'. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | internal/runtime/agent/root_wall_lifetime_test.go | 39 | same := root.task.budget.rootTokens.wall.started.Equal(started) | CODE |
| CRITICAL | internal/runtime/agent/root_bounded_budget_test.go | 102 | if root.task.budget.rootTokens.used.Load() != want { | CODE |
| CRITICAL | internal/runtime/agent/root_bounded_budget_test.go | 103 | t.Fatalf("root tokens=%d,want%d", root.task.budget.rootTokens.used.Load(), want) | CODE |
| CRITICAL | internal/runtime/agent/root_bounded_budget_test.go | 132 | if got := root.task.budget.rootTokens.used.Load(); got != 5500 { | CODE |
| CRITICAL | internal/runtime/agent/root_triage_budget_test.go | 98 | if root.task.budget.promptTokens+root.task.budget.outputTokens != want || root.task.budget.rootTokens.used.Load() != | CODE |
| CRITICAL | internal/runtime/agent/root_triage_budget_test.go | 99 | t.Fatalf("local/root=%d/%d want%d/%d", root.task.budget.promptTokens+root.task.budget.outputTokens, root.task.budget | CODE |
| CRITICAL | internal/runtime/agent/root_auxiliary_budget_test.go | 49 | if got := a.task.budget.rootTokens.used.Load(); got != 3300 { | CODE |
| CRITICAL | internal/runtime/agent/root_auxiliary_budget_test.go | 129 | if got := root.task.budget.rootTokens.used.Load(); got != want { | CODE |
| CRITICAL | internal/runtime/agent/root_token_scope_test.go | 65 | if root.task.budget.rootTokens.used.Load() != 3300 { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | internal/model/visionimage/visionimage_test.go | 42 | // (byte size isn't a robust invariant for synthetic, highly-compressible input). | COMMENT |
| MEDIUM | benchmarks/e2e/tasks/ambiguous-robust-stats/verify.sh | 15 | # The prompt never says what "robust" means for an empty file: a graceful | COMMENT |
| MEDIUM | benchmarks/swebench/subset.json | 181 | "problem_statement": "ax.clear() adds extra ticks, un-hides shared-axis tick labels\n### Bug report\r\n\r\n**Bug sum | CODE |
| MEDIUM | scripts/version-ab.sh | 4 | # The harness, the task set and the grader all come from the working tree; only | COMMENT |
| MEDIUM | .github/workflows/studio.yml | 541 | # elevate.exe, every PE image's architecture) is exercised on pull | COMMENT |
| MEDIUM | .github/workflows/studio.yml | 552 | # The NSIS run writes elevate.exe into the tree it packs, so each | COMMENT |
| MEDIUM | .github/workflows/acp-conformance.yml | 5 | # it runs when the ACP frontend or the harness changes, and on request. | COMMENT |
| MEDIUM | .github/workflows/e2e-bot.yml | 43 | # Default-branch checkout: this is where the harness (cmd/e2ebench), the | COMMENT |
| MEDIUM | .github/workflows/release-studio.yml | 412 | # its own copy: NSIS writes elevate.exe into the tree it packs, and a zip | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/loopmetrics/experiments/phase1/cells.py | 1 | CODE | |
| LOW | …eam-edge/tasks/fleet-edge-wide/workdir/handlers/h07.py | 1 | CODE | |
| LOW | …tion-stress/tasks/vs-neu-schema-v2/workdir/consumer.py | 1 | CODE | |
| LOW | …ion-stress/tasks/vs-neu-schema-v2/solution/consumer.py | 1 | CODE | |
| LOW | …n-stress/tasks/vs-neu-enumsplit/workdir/transitions.py | 1 | CODE | |
| LOW | …-stress/tasks/vs-neu-enumsplit/solution/transitions.py | 1 | CODE | |
| LOW | …/tasks/explore-last-stage/workdir/pipeline/registry.py | 13 | CODE | |
| LOW | …/tasks/explore-last-stage/workdir/pipeline/registry.py | 13 | CODE | |
| LOW | …/tasks/explore-last-stage/workdir/pipeline/registry.py | 13 | CODE | |
| LOW | …/tasks/explore-last-stage/workdir/pipeline/registry.py | 13 | CODE | |
| LOW | …rks/e2e/tasks/nosol-readonly-upstream/workdir/dates.py | 1 | CODE | |
| LOW | scripts/official-theme-art/build.py | 2 | CODE | |
| LOW | scripts/official-theme-art/palettes.py | 8 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 7 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 9 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 11 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 13 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 13 | CODE | |
| LOW | scripts/official-theme-art/figures.py | 13 | CODE | |
| LOW | scripts/official-theme-art/scenes.py | 9 | CODE | |
| LOW | scripts/official-theme-art/scenes.py | 13 | CODE | |
| LOW | scripts/official-theme-art/scenes.py | 15 | CODE | |
| LOW | scripts/official-theme-art/artkit.py | 7 | CODE | |
| LOW | scripts/official-theme-art/provenance.py | 4 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/loopmetrics/experiments/phase1/drive.py | 24 | except Exception: | CODE |
| LOW | tools/loopmetrics/experiments/phase1/drive.py | 60 | except Exception: | CODE |
| MEDIUM | tools/loopmetrics/experiments/phase1/drive.py | 21 | def spent(): | CODE |
| LOW | internal/safety/sandbox/host_authority_test.go | 81 | except Exception as e: print("agent unreachable:", e) | CODE |
| LOW | internal/safety/sandbox/host_authority_test.go | 83 | except Exception as e: print("network unreachable:", e)`, f.sock, f.url) | CODE |
| LOW | internal/safety/sandbox/host_authority_test.go | 255 | except Exception as e: print(path, "unreachable:", e)`, f.sock, presetSock) | CODE |
| LOW | internal/session/control/refs.go | 1147 | except Exception: | CODE |
| LOW | internal/session/control/refs.go | 1150 | except Exception: | CODE |
| LOW | internal/session/control/refs.go | 1163 | except Exception as exc: | CODE |
| LOW | benchmarks/train/tasks/gen-retry-cap/workdir/retry.py | 47 | except Exception: | CODE |
| LOW | benchmarks/train/tasks/gen-retry-cap/solution/retry.py | 48 | except Exception: | CODE |
| LOW | benchmarks/train/tasks/gen-path-normalize/verify.sh | 11 | except Exception as exc: # missing file, syntax error, import-time crash | CODE |
| LOW | benchmarks/train/tasks/gen-path-normalize/verify.sh | 79 | except Exception as exc: | CODE |
| LOW | benchmarks/train/tasks/gen-topo-cycle/verify.sh | 68 | except Exception as exc: | CODE |
| LOW | benchmarks/train/tasks/gen-topo-cycle/verify.sh | 83 | except Exception as exc: | CODE |
| LOW | benchmarks/e2e/tasks/ambiguous-fail-fast/verify.sh | 24 | except Exception as err: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | internal/assembly/boot/effect_1x_context_test.go | 24 | session1xFolded = "LONG lorem ipsum" | CODE |
| LOW | internal/platform/remote/host_test.go | 75 | h, err := ResolveHost(config.Default(), "user@example.com", nil) | CODE |
| LOW | desktop/electron/src/elementpick.js | 61 | const KEPT = new Set(["id", "class", "href", "src", "alt", "title", "name", "type", "placeholder", "data-testid"]); | CODE |
| LOW | desktop/electron/src/elementpick.js | 100 | for (const attr of ["aria-label", "alt", "title", "placeholder"]) { | CODE |
| LOW | desktop/electron/src/elementpick.js | 163 | return clip([el.getAttribute("aria-label"), el.getAttribute("placeholder"), el.getAttribute("name"), el.type].filt | CODE |
| LOW⚡ | …ontend-next/src/ui/placeholderfit.interaction.test.tsx | 25 | expect(screen.getByLabelText("box").getAttribute("placeholder")).toBe("a long placeholder"); | CODE |
| LOW⚡ | …ontend-next/src/ui/placeholderfit.interaction.test.tsx | 31 | expect(screen.getByLabelText("box").getAttribute("placeholder")).toBe("short"); | CODE |
| LOW⚡ | …ontend-next/src/ui/placeholderfit.interaction.test.tsx | 34 | expect(screen.getByLabelText("box").getAttribute("placeholder")).toBe("…"); | CODE |
| LOW | …-next/src/ui/EditConn.priceSource.interaction.test.tsx | 75 | expect(field("alpha 的核对日期").getAttribute("placeholder")).toBe("YYYY-MM-DD"); | CODE |
| LOW | …ntend-next/src/ui/settings-search.interaction.test.tsx | 49 | await userEvent.type(find(), "placeholder"); | CODE |
| LOW | desktop/frontend-next/src/ui/prefsnav.tsx | 331 | { section: "appearance", anchor: "composer-hint", title: "输入框提示", scope: "machine", apply: "immediate", keywords: ["占位 | CODE |
| LOW | benchmarks/train/tasks/gen-validator-split/verify.sh | 22 | assert records.validate_record(" Bob , 22 , bob@example.org ") == ("Bob", 22, "bob@example.org") | CODE |
| LOW | benchmarks/train/tasks/gen-validator-split/verify.sh | 23 | assert records.validate_record("Eve,0,eve@example.org") == ("Eve", 0, "eve@example.org") | CODE |
| LOW | …main/java/io/reasonix/mobile/app/BrowserShellServer.kt | 428 | var n = el.getAttribute('aria-label') || el.getAttribute('placeholder') || el.getAttribute('name | CODE |
| LOW | workers/crash-report/src/index.test.ts | 413 | { id: 1, email: "admin@example.com", role: "admin", created_at: "", approved_at: "" }, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/trajectory/lease_cost.py | 48 | CODE | |
| LOW | tools/trajectory/progress_corpus.py | 95 | CODE | |
| LOW | tools/loopmetrics/loopmetrics.py | 30 | CODE | |
| LOW | tools/loopmetrics/loopmetrics.py | 304 | CODE | |
| LOW | examples/api-notes-kit/fixture/check_refs.py | 27 | CODE | |
| LOW | …arks/train/tasks/gen-semver-cmp/solution/semver_cmp.py | 8 | CODE | |
| LOW | …arks/train/tasks/gen-csv-quotes/solution/csv_reader.py | 8 | CODE | |
| LOW | …ks/train/tasks/gen-path-normalize/solution/pathutil.py | 4 | CODE | |
| LOW | benchmarks/train/tasks/gen-topo-cycle/workdir/topo.py | 8 | CODE | |
| LOW | benchmarks/train/tasks/gen-topo-cycle/solution/topo.py | 9 | CODE | |
| LOW | …e2e/tasks/refactor-table-driven/workdir/statuscodes.py | 12 | CODE | |
| LOW | scripts/check-cli-archives.py | 26 | CODE | |
| LOW | scripts/official-theme-art/palettes.py | 218 | CODE | |
| LOW | scripts/official-theme-art/scenes.py | 226 | CODE | |
| LOW | scripts/official-theme-art/scenes.py | 263 | CODE | |
| LOW | scripts/official-theme-art/artkit.py | 54 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | internal/contract/config/render_providers.go | 11 | // scaffold, where each optional field carries an explanatory comment. | COMMENT |
| MEDIUM | internal/frontend/cli/cli.go | 688 | // initHint handles `reasonix init`. Unlike a config scaffold, project memory is | COMMENT |
| MEDIUM | internal/ext/skill/skill.go | 1186 | // stubBody is the scaffold written by `/skill new` — minimal frontmatter plus | COMMENT |
| MEDIUM | internal/base/fileref/search_test.go | 12 | // content. Tests use it to scaffold the workspace layout before each Search | COMMENT |
| MEDIUM | scripts/verify-stable-release-artifacts.sh | 2 | # Verify that a stable orchestration produced every public release channel. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/loopmetrics/experiments/phase1/drive.py | 60 | except Exception: | CODE |
| HIGH | …hmarks/train/tasks/gen-topo-cycle/workdir/test_topo.py | 62 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …rks/train/tasks/gen-path-normalize/workdir/pathutil.py | 9 | # TODO: implement POSIX path normalization. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/version-ab.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …rks/e2e/tasks/nosol-readonly-upstream/workdir/dates.py | 3 | __all__ = ["parse_date"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | benchmarks/swebench/subset.json | 34 | "problem_statement": "admin.E108 is raised on fields accessible only via instance.\nDescription\n\t \n\t\t(last modi | CODE |