Repository Analysis

cft0808/edict

🏛️ 三省六部制 · OpenClaw Multi-Agent Orchestration System — 9 specialized AI agents with real-time dashboard, model config, and full audit trails

13.5 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of cft0808/edict, a Python project with 16,206 GitHub stars. SynthScan v2.0 examined 38,937 lines of code across 168 source files, recording 388 pattern matches distributed across 10 syntactic categories. The overall adjusted score of 13.5 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

13.5
Adjusted Score
13.5
Raw Score
100%
Time Factor
2026-07-06
Last Push
16.2K
Stars
Python
Language
38.9K
Lines of Code
168
Files
388
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 0MEDIUM 79LOW 309

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 388 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators65 hits · 200 pts
SeverityFileLineSnippetContext
MEDIUMuninstall.sh2# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMuninstall.sh4# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMuninstall.sh25# ── Step 0: 确认 ────────────────────────────────────────────COMMENT
MEDIUMuninstall.sh42# ── Step 1: 停止正在运行的服务 ────────────────────────────────COMMENT
MEDIUMuninstall.sh57# ── Step 2: 清理 OpenClaw 注册配置 ──────────────────────────────COMMENT
MEDIUMuninstall.sh102# ── Step 3: 清除 Workspace 目录 ─────────────────────────────────COMMENT
MEDIUMuninstall.sh119# ── Step 4: 清除本地数据缓存 ────────────────────────────────────COMMENT
MEDIUMuninstall.sh138# ── Step 5: 重启 Gateway ────────────────────────────────────────COMMENT
MEDIUMuninstall.sh152# ── Main ────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh2# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMinstall.sh4# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMinstall.sh27# ── Step 0: 依赖检查 ──────────────────────────────────────────COMMENT
MEDIUMinstall.sh50# ── Step 0.5: 备份已有 Agent 数据 ──────────────────────────────COMMENT
MEDIUMinstall.sh91# ── Step 1: 创建 Workspace ──────────────────────────────────COMMENT
MEDIUMinstall.sh123# ── Step 2: 注册 Agents ─────────────────────────────────────COMMENT
MEDIUMinstall.sh189# ── Step 3: 初始化 Data ─────────────────────────────────────COMMENT
MEDIUMinstall.sh239# ── Step 3.3: 创建 data 软链接确保数据一致 (Fix #88) ─────────COMMENT
MEDIUMinstall.sh293# ── Step 3.5: 设置 Agent 间通信可见性 (Fix #83) ──────────────COMMENT
MEDIUMinstall.sh304# ── Step 3.5b: 同步 API Key 到所有 Agent ──────────────────────────COMMENT
MEDIUMinstall.sh364# ── Step 4: 构建前端 ──────────────────────────────────────────COMMENT
MEDIUMinstall.sh389# ── Step 5: 首次数据同步 ────────────────────────────────────COMMENT
MEDIUMinstall.sh401# ── Step 6: 重启 Gateway ────────────────────────────────────COMMENT
MEDIUMinstall.sh411# ── Main ────────────────────────────────────────────────────COMMENT
MEDIUMstart.sh2# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMstart.sh5# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMedict.sh2# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMedict.sh5# ══════════════════════════════════════════════════════════════COMMENT
MEDIUMedict/朝堂议政_开发规格.md50// ── 消息类型 ────────────────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md79// ── 官员身份 ─────────────────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md105// ── Agent 运行时状态 ─────────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md113// ── 会话 ─────────────────────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md126// ── 随机事件(命运骰子)──────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md312// ── system prompt 生成器 ───────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md338// ── Agent 主类 ─────────────────────────────────────────────────COMMENT
MEDIUMedict/朝堂议政_开发规格.md448 // ── 私有方法 ────────────────────────────────────────────────COMMENT
MEDIUMedict/docker-compose.yml1# ══════════════════════════════════════════════════════COMMENT
MEDIUMedict/docker-compose.yml3# ══════════════════════════════════════════════════════COMMENT
MEDIUMedict/frontend/src/components/CourtDiscussion.tsx313 // ═══════════════════COMMENT
MEDIUMedict/frontend/src/components/CourtDiscussion.tsx315 // ═══════════════════COMMENT
MEDIUMedict/frontend/src/components/CourtDiscussion.tsx437 // ═══════════════════COMMENT
MEDIUMedict/frontend/src/components/CourtDiscussion.tsx439 // ═══════════════════COMMENT
MEDIUMtests/test_sync_symlinks.py14# ── Bootstrap: make scripts/ importable ──────────────────────────COMMENT
MEDIUMtests/test_sync_symlinks.py21# ────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/test_sync_symlinks.py23# ────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/test_sync_symlinks.py51# ── Tests ────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/task-dispatch-architecture.md1387# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1389# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1401# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1403# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1414# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1416# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1450# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1452# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1487# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1489# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1509# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1511# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1531# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1533# ═══════════════════════════════════════════════════════════COMMENT
MEDIUMdocs/task-dispatch-architecture.md1549# ═══════════════════════════════════════════════════════════COMMENT
5 more matches not shown…
Excessive Try-Catch Wrapping127 hits · 125 pts
SeverityFileLineSnippetContext
LOWuninstall.sh79except Exception as e:CODE
LOWedict.sh187except Exception:CODE
LOWedict/backend/app/db.py39 except Exception:CODE
LOWedict/backend/app/api/admin.py27 except Exception as e:CODE
LOWedict/backend/app/api/admin.py35 except Exception as e:CODE
LOWedict/backend/app/api/websocket.py49 except Exception as e:CODE
LOWedict/backend/app/api/websocket.py75 except Exception as e:CODE
LOWedict/backend/app/api/websocket.py99 except Exception:CODE
LOWedict/backend/app/api/websocket.py132 except Exception:CODE
LOWedict/backend/app/api/websocket.py148 except Exception:CODE
LOWedict/backend/app/workers/outbox_relay.py45 except Exception as e:CODE
LOWedict/backend/app/workers/outbox_relay.py85 except Exception as exc:CODE
LOWedict/backend/app/workers/outbox_relay.py110 except Exception as dlq_err:CODE
LOWedict/backend/app/workers/dispatch_worker.py349 except Exception as e:CODE
LOWedict/backend/app/workers/dispatch_worker.py536 except Exception as e:CODE
LOWedict/backend/app/workers/dispatch_worker.py597 except Exception as e:CODE
LOWedict/backend/app/workers/orchestrator_worker.py98 except Exception as e:CODE
LOWedict/backend/app/workers/orchestrator_worker.py139 except Exception as e:CODE
LOWedict/backend/app/workers/orchestrator_worker.py341 except Exception as e:CODE
LOWedict/backend/app/channels/qq.py44 except Exception:CODE
LOWedict/backend/app/channels/base.py34 except Exception:CODE
LOWedict/scripts/kanban_update_edict.py120 except Exception:CODE
LOWedict/scripts/kanban_update_edict.py137 except Exception as e:CODE
LOWedict/scripts/kanban_update_edict.py155 except Exception as e:CODE
LOWedict/migration/migrate_json_to_pg.py158 except Exception as e:CODE
MEDIUMtests/test_task_mutation_race.py200def update_field_a():CODE
MEDIUMtests/test_task_mutation_race.py207def update_field_b():CODE
LOWtests/test_task_mutation_race.py204 except Exception as e:CODE
LOWtests/test_task_mutation_race.py211 except Exception as e:CODE
LOWdashboard/auth.py46 except Exception:CODE
LOWdashboard/auth.py80 except Exception:CODE
LOWdashboard/auth.py125 except Exception:CODE
MEDIUMdashboard/server.py155def _refresh():CODE
MEDIUMdashboard/server.py986def do_wake():CODE
MEDIUMdashboard/server.py2176def _do_dispatch():CODE
MEDIUMdashboard/server.py2341def handle(self):CODE
MEDIUMdashboard/server.py2660def do_refresh():CODE
MEDIUMdashboard/server.py2827def apply_async():CODE
LOWdashboard/server.py578 except Exception:CODE
LOWdashboard/server.py582 except Exception as e:CODE
LOWdashboard/server.py105 except Exception:CODE
LOWdashboard/server.py112 except Exception:CODE
LOWdashboard/server.py158 except Exception as e:CODE
LOWdashboard/server.py311 except Exception as e:CODE
LOWdashboard/server.py346 except Exception:CODE
LOWdashboard/server.py388 except Exception as e:CODE
LOWdashboard/server.py415 except Exception as e:CODE
LOWdashboard/server.py433 except Exception as e:CODE
LOWdashboard/server.py460 except Exception:CODE
LOWdashboard/server.py511 except Exception:CODE
LOWdashboard/server.py550 except Exception as e:CODE
LOWdashboard/server.py610 except Exception as e:CODE
LOWdashboard/server.py827 except Exception:CODE
LOWdashboard/server.py839 except Exception:CODE
LOWdashboard/server.py865 except Exception:CODE
LOWdashboard/server.py877 except Exception:CODE
LOWdashboard/server.py944 except Exception:CODE
LOWdashboard/server.py1004 except Exception as e:CODE
LOWdashboard/server.py1038 except Exception:CODE
LOWdashboard/server.py1571 except Exception:CODE
67 more matches not shown…
Unused Imports79 hits · 78 pts
SeverityFileLineSnippetContext
LOWedict/backend/app/config.py2CODE
LOWedict/backend/app/models/task.py2CODE
LOWedict/backend/app/models/event.py10CODE
LOWedict/backend/app/models/audit.py7CODE
LOWedict/backend/app/models/audit.py11CODE
LOWedict/backend/app/models/__init__.py3CODE
LOWedict/backend/app/models/__init__.py4CODE
LOWedict/backend/app/models/__init__.py5CODE
LOWedict/backend/app/models/__init__.py5CODE
LOWedict/backend/app/models/__init__.py6CODE
LOWedict/backend/app/models/__init__.py7CODE
LOWedict/backend/app/models/__init__.py8CODE
LOWedict/backend/app/api/tasks.py2CODE
LOWedict/backend/app/api/tasks.py6CODE
LOWedict/backend/app/api/tasks.py9CODE
LOWedict/backend/app/api/tasks.py14CODE
LOWedict/backend/app/api/events.py2CODE
LOWedict/backend/app/api/events.py5CODE
LOWedict/backend/app/api/__init__.py1CODE
LOWedict/backend/app/api/__init__.py2CODE
LOWedict/backend/app/api/__init__.py3CODE
LOWedict/backend/app/api/__init__.py4CODE
LOWedict/backend/app/api/__init__.py5CODE
LOWedict/backend/app/api/admin.py3CODE
LOWedict/backend/app/api/websocket.py17CODE
LOWedict/backend/app/workers/outbox_relay.py15CODE
LOWedict/backend/app/workers/__init__.py1CODE
LOWedict/backend/app/workers/__init__.py1CODE
LOWedict/backend/app/workers/__init__.py2CODE
LOWedict/backend/app/workers/__init__.py2CODE
LOWedict/backend/app/workers/dispatch_worker.py25CODE
LOWedict/backend/app/workers/dispatch_worker.py26CODE
LOWedict/backend/app/workers/dispatch_worker.py26CODE
LOWedict/backend/app/workers/dispatch_worker.py29CODE
LOWedict/backend/app/workers/orchestrator_worker.py21CODE
LOWedict/backend/app/workers/orchestrator_worker.py24CODE
LOWedict/backend/app/services/__init__.py1CODE
LOWedict/backend/app/services/__init__.py1CODE
LOWedict/backend/app/services/__init__.py2CODE
LOWedict/backend/app/channels/webhook.py1CODE
LOWedict/backend/app/channels/telegram.py1CODE
LOWedict/backend/app/channels/discord.py1CODE
LOWedict/backend/app/channels/__init__.py1CODE
LOWedict/backend/app/channels/qq.py1CODE
LOWedict/backend/app/channels/feishu.py1CODE
LOWedict/backend/app/channels/base.py1CODE
LOWedict/backend/app/channels/slack.py1CODE
LOWedict/backend/app/channels/wecom.py1CODE
LOWedict/migration/env.py24CODE
LOWedict/migration/env.py24CODE
LOWedict/migration/env.py24CODE
LOWedict/migration/env.py24CODE
LOWedict/migration/migrate_json_to_pg.py29CODE
LOWedict/migration/migrate_json_to_pg.py30CODE
LOWedict/migration/migrate_json_to_pg.py30CODE
LOWtests/test_e2e_kanban.py6CODE
LOWtests/test_e2e_kanban.py13CODE
LOWtests/test_e2e_kanban.py13CODE
LOWtests/test_e2e_kanban.py13CODE
LOWtests/test_cwe22_file_url.py7CODE
19 more matches not shown…
Hyper-Verbose Identifiers58 hits · 61 pts
SeverityFileLineSnippetContext
LOWedict/backend/app/channels/qq.py48def _resolve_api_url_and_token(base_url: str) -> tuple[str, str]:CODE
LOWtests/test_e2e_kanban.py82def test_short_title_rejected():CODE
LOWtests/test_e2e_kanban.py115def test_done_not_overwritable():CODE
LOWtests/test_cwe22_file_url.py16def test_file_url_path_traversal_blocked(tmp_path):CODE
LOWtests/test_cwe22_file_url.py53def test_file_url_within_allowed_roots_works(tmp_path):CODE
LOWtests/test_cwe22_file_url.py82def test_file_url_etc_passwd_blocked(tmp_path):CODE
LOWtests/test_task_mutation_race.py52 def test_modify_tasks_exists_and_callable(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py57 def test_modify_task_exists_and_callable(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py62 def test_modify_task_updates_single_task(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py272 def test_modify_tasks_uses_atomic_json_update(self):CODE
LOWtests/test_task_mutation_race.py281 def test_modify_task_delegates_to_modify_tasks(self):CODE
LOWtests/test_task_mutation_race.py290 def test_handle_scheduler_retry_uses_modify_task(self):CODE
LOWtests/test_task_mutation_race.py299 def test_handle_scheduler_rollback_uses_modify_task(self):CODE
LOWtests/test_task_mutation_race.py76 def test_modify_task_returns_false_for_missing(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py81 def test_modify_tasks_bulk_update(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py106 def test_scheduler_update_persists_atomically(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py123 def test_scheduler_update_missing_task(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py135 def test_scan_stalled_task_triggers_retry(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py179 def test_concurrent_writes_both_persist(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py241 def test_update_task_scheduler_no_load_save(self):CODE
LOWtests/test_task_mutation_race.py252 def test_handle_scheduler_scan_no_save_tasks(self):CODE
LOWtests/test_task_mutation_race.py316 def test_load_tasks_still_works(self, monkeypatch, tmp_path):CODE
LOWtests/test_task_mutation_race.py323 def test_save_tasks_still_works(self, monkeypatch, tmp_path):CODE
LOWtests/test_file_lock.py19def test_read_missing_returns_default(tmp_path):CODE
LOWtests/test_file_lock.py24def test_update_modifies_data(tmp_path):CODE
LOWtests/test_file_lock.py50def test_write_atomic_no_partial(tmp_path):CODE
LOWtests/test_sync_symlinks.py68 def test_idempotent_when_up_to_date(self, tmp_path):CODE
LOWtests/test_sync_symlinks.py78 def test_replaces_physical_copy(self, tmp_path):CODE
LOWtests/test_sync_symlinks.py91 def test_replaces_broken_symlink(self, tmp_path):CODE
LOWtests/test_sync_symlinks.py103 def test_skips_self_referential_via_directory_symlink(self, tmp_path):CODE
LOWtests/test_sync_symlinks.py137 def test_creates_symlinks_in_workspace(self, project):CODE
LOWtests/test_sync_symlinks.py156 def test_legacy_workspace_main(self, project):CODE
LOWtests/test_sync_symlinks.py174 def test_replaces_old_physical_copies(self, project):CODE
LOWtests/test_sync_symlinks.py187 def test_file_resolves_to_project_root(self, project):CODE
LOWtests/test_sync_symlinks.py203 def test_no_self_referential_symlinks_when_workspace_scripts_is_dir_symlink(CODE
LOWtests/test_kanban.py87def test_done_routes_to_review(tmp_path):CODE
LOWtests/test_kanban.py116def test_done_rejects_incomplete_todos(tmp_path):CODE
LOWtests/test_dashboard_dispatch.py11def test_dispatch_records_missing_openclaw_cli(monkeypatch, tmp_path):CODE
LOWtests/test_sync_agent_config.py15def test_sync_agent_config_accepts_allow_agents_key(tmp_path, monkeypatch):CODE
LOWtests/test_dashboard_review_action.py19def test_review_approve_rejects_incomplete_todos(monkeypatch):CODE
LOWtests/test_dashboard_review_action.py51def test_review_approve_allows_complete_todos(monkeypatch):CODE
LOWtests/test_state_machine_consistency.py59def test_state_transitions_consistent():CODE
LOWtests/test_state_machine_consistency.py84def test_pending_confirm_exists():CODE
LOWtests/test_state_machine_consistency.py93def test_pending_has_outgoing_edges():CODE
LOWtests/test_state_machine_consistency.py99def test_terminal_states_have_no_outgoing():CODE
LOWtests/test_skill_manager.py27 def test_default_skills_do_not_use_removed_openclaw_hub(self):CODE
LOWtests/test_skill_manager.py39 def test_custom_hub_base_restores_hub_skill_urls(self):CODE
LOWtests/test_skill_manager.py59 def test_import_official_hub_uses_per_skill_recommended_agents(self):CODE
LOWdashboard/server.py591def migrate_notification_config():CODE
LOWdashboard/server.py844def _get_agent_session_status(agent_id):CODE
LOWdashboard/server.py1180def handle_scheduler_escalate(task_id, reason=''):CODE
LOWdashboard/server.py1214def handle_scheduler_rollback(task_id, reason=''):CODE
LOWdashboard/server.py1393def _startup_recover_queued_dispatches():CODE
LOWdashboard/server.py1620def get_agent_activity_by_keywords(agent_id, keywords, limit=20):CODE
LOWdashboard/court_discuss.py411def _try_repair_truncated_discuss(content: str) -> dict | None:CODE
LOWscripts/sync_agent_config.py258def sync_scripts_to_workspaces():CODE
LOWscripts/kanban_update.py49def _load_canonical_transitions() -> dict:CODE
LOWscripts/kanban_update.py243def _infer_agent_id_from_runtime(task=None):CODE
Deep Nesting39 hits · 33 pts
SeverityFileLineSnippetContext
LOWedict/backend/app/api/websocket.py80CODE
LOWedict/backend/app/api/websocket.py104CODE
LOWedict/backend/app/workers/outbox_relay.py54CODE
LOWedict/backend/app/workers/dispatch_worker.py186CODE
LOWedict/backend/app/workers/dispatch_worker.py277CODE
LOWedict/backend/app/workers/dispatch_worker.py382CODE
LOWedict/backend/app/workers/orchestrator_worker.py149CODE
LOWedict/backend/app/services/event_bus.py116CODE
LOWedict/backend/app/services/event_bus.py194CODE
LOWedict/scripts/kanban_update_edict.py294CODE
LOWtests/test_task_mutation_race.py252CODE
LOWtests/test_state_machine_consistency.py17CODE
LOWdashboard/server.py351CODE
LOWdashboard/server.py887CODE
LOWdashboard/server.py1254CODE
LOWdashboard/server.py1459CODE
LOWdashboard/server.py1478CODE
LOWdashboard/server.py1620CODE
LOWdashboard/server.py1754CODE
LOWdashboard/server.py1842CODE
LOWdashboard/server.py1273CODE
LOWdashboard/server.py2403CODE
LOWdashboard/server.py2528CODE
LOWdashboard/court_discuss.py322CODE
LOWdashboard/court_discuss.py498CODE
LOWscripts/sync_agent_config.py60CODE
LOWscripts/sync_agent_config.py84CODE
LOWscripts/sync_agent_config.py258CODE
LOWscripts/refresh_live_data.py21CODE
LOWscripts/sync_from_openclaw_runtime.py62CODE
LOWscripts/sync_from_openclaw_runtime.py132CODE
LOWscripts/sync_from_openclaw_runtime.py208CODE
LOWscripts/skill_manager.py312CODE
LOWscripts/sync_officials_stats.py78CODE
LOWscripts/sync_officials_stats.py137CODE
LOWscripts/kanban_update.py49CODE
LOWscripts/kanban_update.py556CODE
LOWscripts/refresh_watcher.py46CODE
LOWscripts/apply_model_changes.py37CODE
Self-Referential Comments3 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_cwe22_file_url.py20 # Create a fake data dir with agent_configCOMMENT
MEDIUMtests/test_cwe22_file_url.py28 # Create a temp OCLAW_HOME that doesn't contain the secret fileCOMMENT
MEDIUMtests/test_sync_symlinks.py38 # Create a couple of dummy scriptsCOMMENT
Over-Commented Block10 hits · 8 pts
SeverityFileLineSnippetContext
LOWrequirements.txt1# 三省六部 · Python 依赖COMMENT
LOWdocs/remote-skills-quickstart.md21 --description "MiniMax 多模态 CLI 技能"COMMENT
LOWdocs/remote-skills-quickstart.md41```COMMENT
LOWdocs/task-dispatch-architecture.md1061# - 参数3:to_dept(流转到谁)COMMENT
LOWdocs/task-dispatch-architecture.md1081# 效果:COMMENT
LOWdocs/task-dispatch-architecture.md1101# - 即时渲染为活动条目COMMENT
LOWdocs/task-dispatch-architecture.md1121# - task.output = "https://..."COMMENT
LOWdocs/task-dispatch-architecture.md1241# 尝试伪造门下省的准奏(直接改JSON)COMMENT
LOWdocs/task-dispatch-architecture.md1401# ═══════════════════════════════════════════════════════════COMMENT
LOWdocs/task-dispatch-architecture.md1561# - 完整活动流:79条活动记录COMMENT
Modern Structural Boilerplate5 hits · 5 pts
SeverityFileLineSnippetContext
LOWedict/backend/app/models/__init__.py10__all__ = ["AuditLog", "OutboxEvent", "Task", "TaskState", "Event", "Thought", "Todo"]CODE
LOWedict/backend/app/api/__init__.py7__all__ = [CODE
LOWedict/backend/app/workers/__init__.py4__all__ = [CODE
LOWedict/backend/app/services/__init__.py4__all__ = ["EventBus", "get_event_bus", "TaskService"]CODE
LOWedict/backend/app/channels/__init__.py46__all__ = [CODE
Modern AI Meta-Vocabulary1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMREADME_EN.md342│ ├── court_discuss.py # Court discussion (multi-agent LLM debate engine)CODE
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOWedict/backend/app/channels/__init__.py40 "placeholder": ch.placeholder,CODE