Change-risk score
This change sits in the top third of this repository's own risk distribution, the band worth reviewing closely. It is riskier than 89% of this repository's own commits.
The largest health movement is in base.py, down 1.3. Nothing outside this PR depends on a contract it changed.
Every file in the repository, grouped into its own directories and sized by lines. The ones this PR changes are lit, and everything that imports them is marked.
Drawing 1,488 of 1,631 files at a readable size, grouped by directory and sized by lines of code. 10 changed here reach 11 more by import. 143 are too small to see at this width, which is what the frame below is for.
630 files, 4 changed by this PR and 10 that import one. This PR changes 7 files in total, spread across more than one top-level directory. Click any directory above to frame it instead.
Introduced findings are the ones inside the lines this PR added, not the file's existing ones. The resolved column is the only place in the product that lists them.
validate_common_config has cyclomatic complexity 18
invoke has cyclomatic complexity 15
invoke has cyclomatic complexity 19
invoke has 5 nested blocks at the same level (bumpy road)
invoke nests 4 levels deep
invoke nests 4 levels deep
_parse_stdout nests 4 levels deep
validate_config has cyclomatic complexity 10
validate_config has cyclomatic complexity 10
_extract_reply_text has cyclomatic complexity 12
HermesRuntimeAdapter has low cohesion (LCOM4=2): its 7 methods split into 2 groups that share no fields or calls
invoke has 4 nested blocks at the same level (bumpy road)
68% of file duplicated; worst clone shares 31 lines with backend/agent_runtimes/openclaw_adapter.py
47% of file duplicated; worst clone shares 31 lines with backend/agent_runtimes/hermes_adapter.py
60% of file duplicated; worst clone shares 27 lines with tests/unit/agent_runtimes/test_openclaw_adapter.py
69% of file duplicated; worst clone shares 27 lines with tests/unit/agent_runtimes/test_hermes_adapter.py
OpenClawRuntimeAdapter has low cohesion (LCOM4=2): its 8 methods split into 2 groups that share no fields or calls
assertion block at lines 117-118 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 134-136 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 131-132 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 170-171 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 155-157 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 97-99 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
assertion block at lines 213-215 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
assertion block at lines 202-204 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
assertion block at lines 173-174 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 132-135 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 154-155 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 199-200 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 188-190 is duplicated in tests/unit/agent_runtimes/test_hermes_adapter.py
assertion block at lines 90-91 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
assertion block at lines 104-105 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
assertion block at lines 118-119 is duplicated in tests/unit/agent_runtimes/test_openclaw_adapter.py
invoke is 69 lines long
invoke is 82 lines long
caught exception is swallowed without any handling
caught exception is swallowed without any handling
11% of file duplicated; worst clone shares 11 lines with frontend/app/(app)/control/page.tsx
_extract_reply_text has 3 nested blocks at the same level (bumpy road)
The primary author of each changed file by share of its recent commits, mined from git history. Advisory: it says who has context, not who must review.
Test files that import a file this PR changes. Not a coverage measurement: it is the import graph, so it says which tests are worth running, not which lines they reach.
6 changed files have no test importing them.
This page came from an index of 2233admin/opencli-Razormind. No model calls, no configuration, and it refreshes on every push. Install the bot and every pull request gets one of these.