Nexent is a zero-code platform for auto-generating production-grade AI agents using Harness Engineering principles — unified tools, skills, memory, and orchestration with built-in constraints, feedback loops, and control planes.
This report summarizes scanner evidence for ModelEngine-Group/nexent, a Python project with 5,914 GitHub stars. SynthScan examined 937,657 lines of code across 2682 source files, recording 24408 pattern matches distributed across 26 syntactic categories. The legacy adjusted pattern signal is 31.7 (High 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.
Can maintainers explain intent, assumptions, and trade-offs? 18276 finding(s).
Are imports declared and package/API names verified? 1274 finding(s).
Are wrappers, guards, and repeated structures necessary? 21815 finding(s).
Which changes need focused human review? 24408 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 24408 distinct pattern matches across 26 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 | experimental/tune/joint_evaluator.py | 102 | def handle_inference_with_retry(self, user_prompt, system_prompt=None, is_assistant: bool = True): | CODE |
| LOW | experimental/tune/joint_evaluator.py | 113 | def infer_and_compare_example(self, prompt, example, stop_event: threading.Event): | CODE |
| LOW | experimental/tune/base/case.py | 21 | def check_message_list_content(cls, value: List[Dict], info: FieldValidationInfo) -> List[Dict]: | CODE |
| LOW | experimental/tune/base/case.py | 132 | def _get_case_value_with_check(data: Dict[str, Any], key: str, index: int) -> Any: | CODE |
| LOW | frontend/server.js | 830 | function updateAndSaveLocaleConfig(fields) { | CODE |
| LOW | …end/ext_components/aidp/AidpKnowledgeSelectorModal.tsx | 59 | export default function AidpKnowledgeSelectorModal({ | CODE |
| LOW | frontend/types/quota.ts | 259 | export function getQuotaConflictTranslationKey( | CODE |
| LOW | …ponents/knowledge/PersonalKnowledgeBaseCapacityBar.tsx | 21 | export default function PersonalKnowledgeBaseCapacityBar() { | CODE |
| LOW | …tend/app/[locale]/chat/streaming/messageTransformer.ts | 11 | export function transformMessagesToTaskMessages( | CODE |
| LOW | …tend/app/[locale]/chat/streaming/chatStreamHandler.tsx | 364 | export function reconstructFromStreamingMessage( | CODE |
| LOW | …app/[locale]/chat/streaming/chatStreamFinalMessage.tsx | 73 | function ChatStreamFinalMessageInner({ | CODE |
| LOW | …le]/resource-manage/components/resources/SkillList.tsx | 54 | function filterYamlDocKeysFromEntries( | CODE |
| LOW | …le]/resource-manage/components/resources/SkillList.tsx | 72 | function primitiveArrayToListInput(arr: unknown[]): string { | CODE |
| LOW | …le]/resource-manage/components/resources/SkillList.tsx | 106 | function parseListInputToPrimitiveArray( | CODE |
| LOW | …le]/resource-manage/components/resources/SkillList.tsx | 132 | function restorePrimitiveArraysFromForm( | CODE |
| LOW | …le]/resource-manage/components/resources/SkillList.tsx | 260 | function deepMergePreserveUnderscore( | CODE |
| LOW | …e/components/resources/ModelCapacityCoverageWidget.tsx | 17 | export default function ModelCapacityCoverageWidget({ onViewAll }: Props) { | CODE |
| LOW | …components/resources/PersonalKnowledgeBaseCapacity.tsx | 94 | function getLocalizedQuotaErrorMessage( | CODE |
| LOW | …components/resources/PersonalKnowledgeBaseCapacity.tsx | 110 | function getQuotaSubmitErrorMessage( | CODE |
| LOW | …components/resources/PersonalKnowledgeBaseCapacity.tsx | 460 | export default function PersonalKnowledgeBaseCapacity({ | CODE |
| LOW | frontend/app/[locale]/agent-repository/page.tsx | 9 | export default function AgentRepositoryRedirectPage() { | CODE |
| LOW | …ocale]/skill-space/components/skillRepositoryShared.ts | 22 | export function getSkillRepositoryStatusLabel( | CODE |
| LOW | …ocale]/skill-space/components/skillRepositoryShared.ts | 64 | export function pickReviewDisplayRepositoryInfo( | CODE |
| LOW | …ocale]/skill-space/components/skillRepositoryShared.ts | 83 | export function isCancelableRepositoryStatus( | CODE |
| LOW | …ocale]/skill-space/components/skillRepositoryShared.ts | 89 | export function isTakeDownableRepositoryStatus( | CODE |
| LOW | …space/components/SkillRepositoryReviewConfirmModal.tsx | 20 | export function SkillRepositoryReviewConfirmModal({ | CODE |
| LOW | …[locale]/agents/versions/AgentVersionPubulishModal.tsx | 33 | export default function AgentVersionPubulishModal({ | CODE |
| LOW | …e]/agents/[agentId]/components/collaborative-agent.tsx | 92 | export function CollaborativeAgentActions() { | CODE |
| LOW | …/agents/[agentId]/components/knowledge-base-search.tsx | 149 | function useKnowledgeBaseConfigState(): KnowledgeBaseConfigState | null { | CODE |
| LOW | …/agents/[agentId]/components/knowledge-base-search.tsx | 309 | export function KnowledgeBaseConfigActions() { | CODE |
| LOW | …onents/advanced/collaborative-agent-selector-modal.tsx | 99 | export default function CollaborativeAgentSelectorModal({ | CODE |
| LOW | …ts/[agentId]/components/a2a/A2AAgentDiscoveryModal.tsx | 234 | function extractAvailableProtocols(supportedInterfaces?: Record<string, any>[]): string[] { | CODE |
| LOW | …nts/[agentId]/components/capability/ToolManagement.tsx | 40 | function isToolDisabledDueToEmbedding(name: string, emb: boolean): boolean { | CODE |
| LOW | …ntId]/components/capability/tool/SelectToolsDialog.tsx | 53 | function getToolDisabledTooltipKey( | CODE |
| LOW | …cale]/agents/components/capability/SkillBuildModal.tsx | 98 | function stripLeadingSkillFrontmatter(content: string): string { | CODE |
| LOW | …/agents/components/capability/tool/ToolConfigModal.tsx | 142 | function withAnalyzeToolModelParam( | CODE |
| LOW | …pp/[locale]/models/components/model/ModelAddDialog.tsx | 280 | function applyAdvancedSettingsToParams( | CODE |
| LOW | …pp/[locale]/models/components/model/ModelAddDialog.tsx | 313 | function capacitySuggestionToSettings( | CODE |
| LOW | frontend/app/[locale]/mcp-space/my-mcp.tsx | 779 | export function getDeploymentCategoryStats( | CODE |
| LOW | frontend/app/[locale]/mcp-space/my-mcp.tsx | 853 | export function toMcpContainerConfigPayload( | CODE |
| LOW | …p-space/components/McpRepositoryReviewConfirmModal.tsx | 20 | export default function McpRepositoryReviewConfirmModal({ | CODE |
| LOW | …]/mcp-space/components/PublishedServiceDetailModal.tsx | 50 | export default function PublishedServiceDetailModal({ | CODE |
| LOW | …ace/components/add/local/AddMcpServiceLocalSection.tsx | 116 | export default function AddMcpServiceLocalSection({ | CODE |
| LOW | …onents/add/community/AddMcpServiceCommunitySection.tsx | 15 | export default function AddMcpServiceCommunitySection({ | CODE |
| LOW | …e]/newchat/ui/suggested-resource-installation-card.tsx | 210 | export function SuggestedResourceInstallationCard({ | CODE |
| LOW | frontend/app/[locale]/newchat/ui/model-selector.tsx | 756 | function ModelSelectorModelContext() { | CODE |
| LOW | frontend/app/[locale]/newchat/ui/markdown-text.tsx | 151 | function buildCitationDisplayIndexMap( | CODE |
| LOW | frontend/app/[locale]/newchat/ui/tool-fallback.tsx | 196 | function ToolFallbackSearchContent({ | CODE |
| LOW | frontend/app/[locale]/newchat/ui/quote.tsx | 197 | function ComposerQuotePreviewDismiss({ | CODE |
| LOW | frontend/app/[locale]/newchat/ui/skill-directives.ts | 68 | export function normalizeSkillDirectivePath(value: string): string | null { | CODE |
| LOW | frontend/app/[locale]/newchat/ui/skill-directives.ts | 133 | export function createXmlDirectiveFormatter( | CODE |
| LOW | frontend/app/[locale]/newchat/ui/skill-directives.ts | 227 | export function escapeSkillDirectivesForMarkdown(value: string): string { | CODE |
| LOW | frontend/app/[locale]/newchat/ui/skill-directives.ts | 242 | function isSkillDirectiveCandidateHtml(value: string): boolean { | CODE |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 50 | function getRetrievalHighlightTerms(scoreDetails: unknown): string[] { | CODE |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 318 | function notifyKnowledgeScopeResolved( | CODE |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 925 | export function attachExecutionLogsToTool( | CODE |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 951 | export function attachSearchContentToTool( | CODE |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 1303 | function buildTimingFromTokenCount( | CODE |
| LOW | …]/agent-space/components/AgentRepositoryCopyDialog.tsx | 67 | export function AgentRepositoryCopyDialog({ | CODE |
| LOW | …space/components/AgentRepositoryReviewConfirmModal.tsx | 23 | export function AgentRepositoryReviewConfirmModal({ | CODE |
| 16815 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | frontend/types/quota.ts | 247 | // ── Error types ────────────────────────────────────────────── | COMMENT |
| MEDIUM | …nts/[agentId]/components/capability/ToolManagement.tsx | 335 | // ─── Pure helper ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/page.tsx | 146 | // ── Top-level list state ────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/page.tsx | 165 | // ── Drawer (create-evaluation form) state ───────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/page.tsx | 200 | // ── Trial-run (in-drawer "Try it out") state ─────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/page.tsx | 228 | // ── Init agent filters from URL ─────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/page.tsx | 254 | // ── Polling ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 42 | // ── helpers ────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 125 | // ── component ──────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 133 | // ── Core data state ──────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 137 | // ── Case table state (paginated, server-driven) ───────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 158 | // ── AI analysis (root cause) state ────────────────────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 167 | // ── Chart-ready aggregates ───────────────────────────────── | COMMENT |
| MEDIUM⚡ | frontend/app/[locale]/evaluation/[id]/page.tsx | 172 | // ── Filter state ──────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 191 | // ── Annotation state ────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 401 | // ── Server-side data fetching ──────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 566 | // ── Polling ───────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 589 | // ── Stats from API ─────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 631 | // ── case columns ──────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/app/[locale]/evaluation/[id]/page.tsx | 1058 | // ── render ────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/hooks/useQuotaWarningImpl.tsx | 75 | // ── Helpers ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/hooks/useQuotaWarningImpl.tsx | 387 | // ── KB-level warnings ────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/hooks/useQuotaWarningImpl.tsx | 437 | // ── Tenant-level warnings ────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/hooks/useQuotaWarningImpl.tsx | 495 | // ── Tenant-level ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/hooks/useQuotaWarningImpl.tsx | 526 | // ── Per-KB breakdown ─────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/services/quotaService.ts | 23 | // ── Tenant-Level Quota ────────────────────────────────────────── | COMMENT |
| MEDIUM | frontend/services/quotaService.ts | 103 | // ── Platform-Level Quota (SU/ASSET_OWNER/SPEED) ──────────────── | COMMENT |
| MEDIUM | frontend/services/quotaService.ts | 195 | // ── Personal KB Capacity (ADMIN/SU) ──────────────────────────────── | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 520 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 522 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 547 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 549 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 582 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 584 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 603 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 605 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 630 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 632 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 661 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 663 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 672 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …st/ext_components/aidp/test_aidp_permission_service.py | 674 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 545 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 547 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 580 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 582 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 627 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 629 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 678 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 680 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 807 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 809 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 848 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 850 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 927 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 929 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 932 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 934 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 959 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 962 | # --------------------------------------------------------------------------- | COMMENT |
| 2561 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | experimental/tune/joint_evaluator.py | 165 | except Exception as e: | CODE |
| LOW | experimental/tune/base/utils.py | 156 | except Exception as e: | CODE |
| LOW | experimental/tune/base/utils.py | 176 | except Exception as e: | CODE |
| LOW | test/run_all_test.py | 323 | except Exception as exc: | CODE |
| MEDIUM | test/ext_components/aidp/test_aidp_permission_db.py | 139 | def _patched(_db_session=None): | CODE |
| LOW | test/ext_components/aidp/test_aidp_permission_db.py | 143 | except Exception: | CODE |
| LOW | …_components/aidp/mock_servers/aidp_mgmt_mock_server.py | 762 | except Exception as e: | CODE |
| LOW | test/mock-services/a2a-agent/app/nacos_registry.py | 91 | except Exception as exc: # Registration evidence keeps the final external failure. | CODE |
| LOW | test/mock-services/a2a-agent/app/nacos_registry.py | 112 | except Exception as exc: | CODE |
| LOW⚡ | test/backend/database/test_evaluator_db.py | 653 | except Exception: | CODE |
| LOW | test/backend/database/test_evaluator_db.py | 355 | except Exception: | CODE |
| LOW | test/backend/database/test_evaluator_db.py | 597 | except Exception: | CODE |
| LOW | test/backend/database/test_evaluator_db.py | 641 | except Exception: | CODE |
| LOW | test/backend/app/test_northbound_base_app.py | 256 | except Exception: | CODE |
| LOW | test/backend/app/test_agent_app.py | 2015 | except Exception: | CODE |
| LOW⚡ | test/backend/app/test_idata_app.py | 207 | except Exception as e: | CODE |
| LOW⚡ | test/backend/app/test_idata_app.py | 438 | except Exception as e: | CODE |
| LOW | test/backend/app/test_skill_repository_app.py | 62 | except Exception: | CODE |
| LOW | test/backend/utils/test_evaluation_set_excel_utils.py | 58 | except Exception: | CODE |
| LOW | test/backend/utils/test_evaluation_set_excel_utils.py | 126 | except Exception: | CODE |
| LOW | test/backend/utils/test_monitoring.py | 146 | except Exception as e: | CODE |
| LOW | test/backend/utils/test_monitoring.py | 202 | except Exception as e: | CODE |
| MEDIUM | test/backend/utils/test_monitoring.py | 197 | def worker(): | CODE |
| LOW | …st/backend/services/test_tool_configuration_service.py | 26 | except Exception: | CODE |
| LOW | …st/backend/services/test_tool_configuration_service.py | 498 | except Exception: | CODE |
| MEDIUM | test/backend/services/test_model_provider_service.py | 1641 | def mock_get_models_with_exception_handling(config): | CODE |
| LOW⚡ | test/backend/services/test_model_provider_service.py | 1647 | except Exception: | CODE |
| LOW | test/backend/services/test_mcp_management_service.py | 15 | except Exception: | CODE |
| LOW | test/backend/services/test_mcp_management_service.py | 50 | except Exception: | CODE |
| MEDIUM | test/backend/services/test_memory_config_service.py | 65 | def _filter_property(data, model_class): | CODE |
| LOW | test/backend/services/test_memory_config_service.py | 68 | except Exception: | CODE |
| LOW⚡ | test/backend/services/test_skill_service.py | 2218 | except Exception as e: | CODE |
| LOW⚡ | test/backend/services/test_skill_service.py | 2238 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2379 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2438 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2581 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2603 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2620 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2637 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2653 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2669 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2686 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2703 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 2729 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 3268 | except Exception as e: | CODE |
| LOW | test/backend/services/test_skill_service.py | 5051 | except Exception as e: | CODE |
| LOW⚡ | test/backend/services/test_agent_service.py | 14041 | except Exception: | CODE |
| LOW | test/backend/services/test_agent_service.py | 101 | except Exception: | CODE |
| LOW | test/backend/services/test_prompt_service.py | 3174 | except Exception: | CODE |
| LOW | test/backend/services/test_skill_repository_service.py | 205 | except Exception: | CODE |
| LOW⚡ | test/backend/services/test_mcp_container_service.py | 1442 | except Exception: | CODE |
| LOW⚡ | test/backend/services/test_mcp_container_service.py | 1468 | except Exception: | CODE |
| LOW⚡ | test/backend/services/test_mcp_container_service.py | 1488 | except Exception: | CODE |
| LOW⚡ | test/backend/services/test_mcp_container_service.py | 1509 | except Exception: | CODE |
| LOW | test/backend/services/test_vectordatabase_service.py | 47 | except Exception: | CODE |
| LOW | test/backend/services/test_vectordatabase_service.py | 3945 | except Exception: | CODE |
| LOW | test/backend/services/test_agent_evaluation_service.py | 491 | except Exception: # noqa: BLE001 | CODE |
| LOW | test/backend/services/test_model_management_service.py | 52 | except Exception: | CODE |
| MEDIUM | test/sdk/core/agents/test_sandbox.py | 253 | def _docker_available() -> bool: | CODE |
| LOW⚡ | test/sdk/core/agents/test_sandbox.py | 293 | except Exception: | CODE |
| 1674 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | experimental/tune/base/utils.py | 10 | CODE | |
| LOW | test/ext_components/aidp/conftest.py | 8 | CODE | |
| LOW | …st/ext_components/aidp/test_aidp_permission_service.py | 7 | CODE | |
| LOW | …st/ext_components/aidp/test_aidp_permission_service.py | 9 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_mgmt_app.py | 13 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_mgmt_app.py | 21 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_mgmt_app.py | 529 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_exceptions.py | 7 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_client.py | 6 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_client.py | 12 | CODE | |
| LOW | test/ext_components/aidp/test_aidp_permission_db.py | 15 | CODE | |
| LOW | …_components/aidp/mock_servers/aidp_mgmt_mock_server.py | 406 | CODE | |
| LOW | test/mock-services/deploy.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/scenarios.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/auth.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/redaction.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/server.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/nacos_registry.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/config.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/observations.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/cards.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/app/executor.py | 3 | CODE | |
| LOW | test/mock-services/a2a-agent/tests/test_mock_core.py | 1 | CODE | |
| LOW | test/mock-services/a2a-agent/tests/test_server.py | 1 | CODE | |
| LOW | test/tools/test_asset_lib.py | 3 | CODE | |
| LOW | test/tools/generate_excel.py | 3 | CODE | |
| LOW | test/tools/validate_cases.py | 3 | CODE | |
| LOW | test/tools/validate_traceability.py | 3 | CODE | |
| LOW | test/tools/validate_test_assets.py | 3 | CODE | |
| LOW | test/tools/validate_manifest.py | 3 | CODE | |
| LOW | test/tools/validate_changes.py | 3 | CODE | |
| LOW | test/tools/validate_features.py | 3 | CODE | |
| LOW | test/tools/tests/test_formal_test_assets.py | 3 | CODE | |
| LOW | test/probes/a2a_client_probe.py | 4 | CODE | |
| LOW | test/backend/test_runtime_service.py | 3 | CODE | |
| LOW | test/backend/test_runtime_service.py | 7 | CODE | |
| LOW | test/backend/test_summary_formatting.py | 5 | CODE | |
| LOW | test/backend/test_llm_integration.py | 5 | CODE | |
| LOW | test/backend/test_llm_integration.py | 9 | CODE | |
| LOW | test/backend/test_cluster_summarization.py | 10 | CODE | |
| LOW | test/backend/test_document_vector_utils_coverage.py | 8 | CODE | |
| LOW | test/backend/test_document_vector_utils_coverage.py | 74 | CODE | |
| LOW | test/backend/database/test_model_managment_db.py | 4 | CODE | |
| LOW | test/backend/database/test_memory_dreaming_lease.py | 6 | CODE | |
| LOW | test/backend/database/test_attachment_db.py | 8 | CODE | |
| LOW | test/backend/database/test_attachment_db.py | 9 | CODE | |
| LOW | test/backend/database/test_memory_dreaming_db.py | 10 | CODE | |
| LOW | …t/backend/database/test_agent_db_workbench_coverage.py | 7 | CODE | |
| LOW | test/backend/database/test_agent_db.py | 5 | CODE | |
| LOW | test/backend/database/test_tool_db.py | 3 | CODE | |
| LOW | test/backend/database/test_agent_evaluation_db.py | 11 | CODE | |
| LOW | test/backend/database/test_knowledge_db.py | 10 | CODE | |
| LOW | test/backend/database/test_knowledge_db.py | 11 | CODE | |
| LOW | test/backend/database/test_knowledge_db.py | 191 | CODE | |
| LOW | test/backend/database/test_agent_version_db.py | 3 | CODE | |
| LOW | test/backend/database/test_agent_version_db.py | 4 | CODE | |
| LOW | test/backend/database/test_agent_version_db.py | 72 | CODE | |
| LOW | test/backend/database/test_agent_version_db.py | 72 | CODE | |
| LOW | test/backend/database/test_skill_db.py | 10 | CODE | |
| LOW | test/backend/database/test_evaluator_db.py | 26 | CODE | |
| 1036 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/backend/database/test_agent_db.py | 104 | except (ImportError, Exception): | CODE |
| HIGH | test/backend/database/test_memory_record_db.py | 146 | except StopIteration: | CODE |
| HIGH | test/backend/database/test_agent_version_db.py | 245 | except (AttributeError, TypeError): | CODE |
| HIGH | test/backend/database/test_agent_version_db.py | 209 | except (AttributeError, TypeError): | CODE |
| HIGH | test/backend/database/test_evaluator_db.py | 183 | except AttributeError: | CODE |
| HIGH | test/backend/database/test_evaluator_db.py | 355 | except Exception: | CODE |
| HIGH | test/backend/database/test_evaluator_db.py | 653 | except Exception: | CODE |
| HIGH | test/backend/database/test_evaluator_db.py | 597 | except Exception: | CODE |
| HIGH | test/backend/app/test_agent_app.py | 2015 | except Exception: | CODE |
| HIGH | test/backend/app/test_evaluation_delete_app.py | 146 | except RuntimeError: | CODE |
| HIGH | test/backend/agents/test_agent_run_manager.py | 231 | except AgentRunAlreadyActiveError: | CODE |
| HIGH | test/backend/utils/test_evaluation_set_excel_utils.py | 126 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_management_service.py | 15 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_management_service.py | 50 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_service.py | 255 | except: | CODE |
| HIGH | test/backend/services/test_mcp_service.py | 1344 | except: | CODE |
| HIGH | test/backend/services/test_mcp_service.py | 1359 | except: | CODE |
| HIGH | test/backend/services/test_skill_service.py | 5151 | except SkillException: | CODE |
| HIGH | test/backend/services/test_skill_service.py | 5271 | except SkillException: | CODE |
| HIGH | test/backend/services/test_agent_service.py | 101 | except Exception: | CODE |
| HIGH | test/backend/services/test_agent_service.py | 14041 | except Exception: | CODE |
| HIGH | test/backend/services/test_prompt_service.py | 3174 | except Exception: | CODE |
| HIGH | test/backend/services/test_evaluation_pure_logic.py | 435 | except AttributeError: | CODE |
| HIGH | test/backend/services/test_mcp_container_service.py | 1442 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_container_service.py | 1468 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_container_service.py | 1488 | except Exception: | CODE |
| HIGH | test/backend/services/test_mcp_container_service.py | 1509 | except Exception: | CODE |
| HIGH | test/backend/services/test_vectordatabase_service.py | 3763 | except StopAsyncIteration: | CODE |
| HIGH | test/backend/services/test_vectordatabase_service.py | 3945 | except Exception: | CODE |
| HIGH | test/backend/services/test_vectordatabase_service.py | 3998 | except StopAsyncIteration: | CODE |
| HIGH | test/backend/services/test_vectordatabase_service.py | 4041 | except StopAsyncIteration: | CODE |
| HIGH | test/backend/services/test_vectordatabase_service.py | 3889 | except StopAsyncIteration: | CODE |
| HIGH | test/backend/services/test_evaluation_set_service.py | 240 | except AttributeError: | CODE |
| HIGH | test/backend/services/test_agent_evaluation_service.py | 491 | except Exception: # noqa: BLE001 | CODE |
| HIGH | test/backend/services/test_agent_evaluation_service.py | 599 | except AttributeError: | CODE |
| HIGH | test/common/openai_compatible_mock_server.py | 455 | except OSError: | CODE |
| HIGH | test/sdk/core/agents/test_guardrail_checkpoints.py | 439 | except StopIteration: | CODE |
| HIGH | test/sdk/core/agents/test_core_agent.py | 2277 | except (StopIteration, ValueError, module.ModelOutputProtocolError, module.NonterminalThoughtTurn): | CODE |
| HIGH | test/sdk/core/agents/test_core_agent.py | 2321 | except (ValueError, TypeError, module.ModelOutputProtocolError, module.NonterminalThoughtTurn): | CODE |
| HIGH | test/sdk/core/agents/test_core_agent.py | 2374 | except (StopIteration, ValueError, module.ModelOutputProtocolError, module.NonterminalThoughtTurn): | CODE |
| HIGH | test/sdk/core/agents/test_sandbox.py | 293 | except Exception: | CODE |
| HIGH | test/sdk/core/agents/test_sandbox.py | 286 | except ModuleNotFoundError: | CODE |
| HIGH | test/sdk/core/agents/test_sandbox.py | 1829 | except docker.errors.NotFound: | CODE |
| HIGH | test/sdk/core/agents/test_sandbox.py | 3311 | except Exception: | CODE |
| HIGH | test/sdk/core/agents/test_nexent_agent.py | 4157 | except Exception: | CODE |
| HIGH | test/sdk/core/agents/observability/test_bridge_spans.py | 98 | except ValueError: | CODE |
| HIGH | test/sdk/core/models/test_openai_llm.py | 38 | except Exception: | CODE |
| HIGH | test/sdk/core/models/test_openai_llm.py | 641 | except Exception: | CODE |
| HIGH | test/sdk/memory/test_memory_retrieval_acceptance.py | 642 | except Exception: | CODE |
| HIGH | test/sdk/utils/test_http_client_manager.py | 279 | except ValueError: | CODE |
| HIGH | test/sdk/utils/test_http_client_manager.py | 30 | except Exception: | CODE |
| HIGH | test/sdk/utils/test_http_client_manager.py | 37 | except Exception: | CODE |
| HIGH | test/sdk/skills/test_skill_manager.py | 3488 | except OSError: | CODE |
| HIGH | test/sdk/skills/test_skill_manager.py | 3641 | except OSError: | CODE |
| HIGH | backend/data_process_service.py | 483 | except Exception as _: | CODE |
| HIGH | backend/ext_components/aidp/services/aidp_service.py | 483 | except (TypeError, ValueError): | CODE |
| HIGH | backend/database/conversation_db.py | 1691 | except (json.JSONDecodeError, TypeError): | CODE |
| HIGH | backend/database/attachment_db.py | 200 | except (ValueError, IOError): | CODE |
| HIGH | backend/database/client.py | 122 | except Exception: | CODE |
| HIGH | backend/database/tool_db.py | 435 | except (json.JSONDecodeError, TypeError): | CODE |
| 112 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | backend/database/a2a_agent_db.py | 821 | Add a relation between a local agent and an external A2A agent. Args: local_agent_id: Local parent agent ID | STRING |
| HIGH | backend/database/knowledge_db.py | 589 | Get the internal index_name from user-facing knowledge_name. Args: knowledge_name: User-facing knowled | STRING |
| HIGH | backend/management/services/skill/service.py | 285 | Create a new skill for a tenant. Args: skill_data: Skill data including name, description, content, | STRING |
| HIGH | backend/management/services/agent/management.py | 771 | list all agent info Args: tenant_id (str): tenant id user_id (str): user id (used for permissi | STRING |
| HIGH | backend/management/services/knowledge_base/common.py | 175 | Return a VectorDatabaseCore implementation based on the requested type. Args: db_type: Target vector d | STRING |
| HIGH | …ckend/management/services/knowledge_base/management.py | 615 | Update knowledge base information (name, group permission, group assignments). Args: index | STRING |
| HIGH | …ckend/management/services/knowledge_base/management.py | 696 | Update the embedding model for a knowledge base. Args: index_name: Internal index name of | STRING |
| HIGH | backend/utils/nacos_client.py | 82 | Query A2A agent info from Nacos using the dedicated A2A endpoint. Args: agent_name: The name of the | STRING |
| HIGH | backend/utils/nacos_client.py | 162 | Query service instance(s) from Nacos using v3 client API. Args: service_name: The name of the servi | STRING |
| HIGH | backend/utils/nacos_client.py | 343 | List all services in a namespace using v3 Admin API. Args: namespace: Nacos namespace ID (defaults | STRING |
| HIGH | backend/utils/nacos_client.py | 413 | Get detailed information about a service using v3 Admin API. Args: service_name: The name of the se | STRING |
| HIGH | backend/utils/nacos_client.py | 483 | Check if an instance is healthy. Args: host: Instance IP address. port: Instance port. | STRING |
| HIGH | backend/utils/auth_utils.py | 201 | Get user_id and tenant_id from access_key by querying user_token_info_t and user_tenant_t. Args: acces | STRING |
| HIGH | backend/services/group_service.py | 32 | Get group(s) by group ID(s). Args: group_id: Group ID(s) - can be int, comma-separated string, or list | STRING |
| HIGH | backend/services/group_service.py | 132 | Set the default group ID for a tenant. Args: tenant_id (str): Tenant ID group_id (int): Group | STRING |
| HIGH | backend/services/group_service.py | 200 | Create a new group. Args: tenant_id (str): Tenant ID group_name (str): Group name grou | STRING |
| HIGH | backend/services/group_service.py | 249 | Update group information. Args: group_id (int): Group ID updates (Dict[str, Any]): Fields to u | STRING |
| HIGH | backend/services/group_service.py | 300 | Delete group. Args: group_id (int): Group ID user_id (str): Current user ID Returns: | STRING |
| HIGH | backend/services/group_service.py | 341 | Add user to group. Args: group_id (int): Group ID user_id (str): User ID to add curren | STRING |
| HIGH | backend/services/group_service.py | 392 | Remove user from group. Args: group_id (int): Group ID user_id (str): User ID to remove | STRING |
| HIGH | backend/services/group_service.py | 435 | Get all users in a group with their details. Args: group_id (int): Group ID Returns: List | STRING |
| HIGH | backend/services/group_service.py | 472 | Get user count in a group. Args: group_id (int): Group ID Returns: int: Number of users i | STRING |
| HIGH | backend/services/group_service.py | 493 | Add user to multiple groups. Args: user_id (str): User ID to add group_ids (List[int]): List o | STRING |
| HIGH | backend/services/group_service.py | 525 | Update group members by setting the exact list of users that should be in the group. Args: group_id (i | STRING |
| HIGH | backend/services/idata_service.py | 82 | Make HTTP POST request to iData API and handle common errors. Args: api_base: Normalized API base URL | STRING |
| HIGH | backend/services/idata_service.py | 156 | Parse iData API response and validate format. Args: result: Parsed JSON response from iData API R | STRING |
| HIGH | backend/services/idata_service.py | 196 | Fetch knowledge spaces from iData API. Args: idata_api_base: iData API base URL api_key: iData | STRING |
| HIGH | backend/services/idata_service.py | 264 | Fetch datasets (knowledge bases) from iData API and transform to DataMate-compatible format. Args: ida | STRING |
| HIGH | backend/services/mcp_container_service.py | 67 | Load Docker image from tar file Args: tar_file_path: Path to the tar file containing the D | STRING |
| HIGH | backend/services/mcp_container_service.py | 109 | Start MCP container and return access URL Args: service_name: Name of the MCP service | STRING |
| HIGH | backend/services/mcp_container_service.py | 169 | Load image from tar file and start MCP container Args: tar_file_path: Path to the tar file | STRING |
| HIGH | backend/services/mcp_container_service.py | 216 | Stop and remove MCP container Args: container_id: Container ID or name Returns: | STRING |
| HIGH | backend/services/a2a_client_service.py | 52 | Discover an external A2A agent from a URL. Fetches the Agent Card from the URL, caches it, and stores the agent | STRING |
| HIGH | backend/services/a2a_client_service.py | 154 | Discover external A2A agents from Nacos service registry. Args: nacos_config_id: Nacos config ID fo | STRING |
| HIGH | backend/services/a2a_client_service.py | 474 | Refresh the cached Agent Card for an external agent. Args: external_agent_id: External agent databa | STRING |
| HIGH | backend/services/a2a_client_service.py | 691 | Call an external A2A agent (non-streaming). Args: external_agent_id: External agent database ID to | STRING |
| HIGH | backend/services/a2a_client_service.py | 789 | Call an external A2A agent with streaming response. Args: external_agent_id: External agent databas | STRING |
| HIGH | backend/services/user_management_service.py | 641 | Update user password with old password verification. This method first re-authenticates the user with their old pas | STRING |
| HIGH | backend/services/nl2skill_service.py | 131 | Resolve the model configuration for NL2Skill. Args: tenant_id: Current tenant ID model_id: Optional | STRING |
| HIGH | backend/services/tenant_service.py | 280 | Create a new tenant with default group Args: tenant_name (str): Tenant name created_by (Option | STRING |
| HIGH | backend/services/tenant_service.py | 377 | Update tenant information If TENANT_NAME config doesn't exist, creates it with the provided name. Args: | STRING |
| HIGH | backend/services/tenant_service.py | 485 | Delete tenant and all associated resources This performs cascade deletion of: - All users in the tenant (s | STRING |
| HIGH | backend/services/invitation_service.py | 46 | Create a new invitation code with business logic. Args: tenant_id (str): Tenant ID code_type ( | STRING |
| HIGH | backend/services/invitation_service.py | 165 | Update invitation code information. Args: invitation_id (int): Invitation ID updates (Dict[str | STRING |
| HIGH | backend/services/invitation_service.py | 215 | Delete invitation code (soft delete). Args: invitation_id (int): Invitation ID to delete user_ | STRING |
| HIGH | backend/services/invitation_service.py | 391 | Use an invitation code by creating a usage record. Args: invitation_code (str): Invitation code to use | STRING |
| HIGH | backend/services/invitation_service.py | 530 | Get invitations list with pagination and permission checks. Args: tenant_id (Optional[str]): Tenant ID | STRING |
| HIGH | backend/services/a2a_server_service.py | 178 | Enable A2A Server for an agent. Args: agent_id: Local agent ID. tenant_id: Tenant ID. | STRING |
| HIGH | backend/services/a2a_server_service.py | 218 | Disable A2A Server for an agent. Args: agent_id: Local agent ID. tenant_id: Tenant ID. | STRING |
| HIGH | backend/services/a2a_server_service.py | 247 | Update A2A Server settings. Args: agent_id: Local agent ID. tenant_id: Tenant ID. | STRING |
| HIGH | backend/services/a2a_server_service.py | 353 | Generate Agent Card for an endpoint. Args: endpoint_id: The endpoint ID. base_url: Opti | STRING |
| HIGH | backend/services/a2a_server_service.py | 669 | Handle incoming message:send request. This is a synchronous request that waits for task completion. Ar | STRING |
| HIGH | backend/services/a2a_server_service.py | 777 | Handle incoming message:stream request. This is a streaming request that yields task events. Args: | STRING |
| HIGH | backend/services/a2a_server_service.py | 912 | Get task details in A2A standard format. Args: task_id: The task ID. user_id: User ID f | STRING |
| HIGH | backend/services/a2a_server_service.py | 1045 | Cancel a task. Args: task_id: The task ID. user_id: User ID for authorization. | STRING |
| HIGH | backend/services/prompt_service.py | 463 | Generate guardrail regex rules from a natural-language description via LLM. Loads the guardrail prompt template, re | STRING |
| HIGH | backend/services/memory_provider_config_service.py | 43 | Create a new provider configuration with validated parameters. Args: tenant_id: Owning tenant ident | STRING |
| HIGH | backend/services/memory_provider_config_service.py | 154 | Update a provider configuration. Main-table fields (``provider_name``, ``enabled``, ``timeout_seconds``) | STRING |
| HIGH | backend/services/user_service.py | 119 | Update user information Args: user_id (str): User ID to update update_data (Dict[str, Any]): U | STRING |
| HIGH | backend/services/voice_service.py | 323 | Generate TTS speech from text Args: text: Text to convert to speech stream: Wh | STRING |
| 79 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/backend/database/test_evaluator_db.py | 0 | register ``name`` as a real package on ``sys.modules``. real ``__path__`` (pointing to the matching backend dir when one | STRING |
| HIGH | test/backend/services/test_evaluation_pure_logic.py | 0 | register ``name`` as a real package on ``sys.modules``. real ``__path__`` (pointing to the matching backend dir when one | STRING |
| HIGH | test/backend/services/test_agent_evaluation_service.py | 0 | register ``name`` as a real package on ``sys.modules``. real ``__path__`` (pointing to the matching backend dir when one | STRING |
| HIGH | test/backend/app/test_evaluation_annotation_app.py | 0 | fresh mocks + fresh import of the module for every test. | STRING |
| HIGH | test/backend/app/test_evaluator_app.py | 0 | fresh mocks + fresh import of the module for every test. | STRING |
| HIGH | test/backend/services/test_evaluator_service.py | 0 | fresh mocks + fresh import of the module for every test. | STRING |
| HIGH | test/backend/services/test_evaluation_report_service.py | 0 | fresh mocks + fresh import of the module for every test. | STRING |
| HIGH | test/backend/app/test_northbound_app_audit.py | 0 | return the audit lines captured for the current test. | STRING |
| HIGH | test/backend/app/test_cas_app_audit.py | 0 | return the audit lines captured for the current test. | STRING |
| HIGH | test/backend/app/test_oauth_app_audit.py | 0 | return the audit lines captured for the current test. | STRING |
| HIGH | test/backend/app/test_api_key_app_audit.py | 0 | return the audit lines captured for the current test. | STRING |
| HIGH | test/backend/app/test_user_management_app_audit.py | 0 | return the audit lines captured for the current test. | STRING |
| HIGH | …/backend/services/providers/test_tokenpony_provider.py | 0 | provider token metadata is returned as advisory capacity hints. | STRING |
| HIGH | …ackend/services/providers/test_modelengine_provider.py | 0 | provider token metadata is returned as advisory capacity hints. | STRING |
| HIGH | …/backend/services/providers/test_dashscope_provider.py | 0 | provider token metadata is returned as advisory capacity hints. | STRING |
| HIGH | …st/backend/services/providers/test_silicon_provider.py | 0 | provider token metadata is returned as advisory capacity hints. | STRING |
| HIGH | …/backend/services/providers/test_tokenpony_provider.py | 0 | 401 from provider surfaces the authentication_failed error code. | STRING |
| HIGH | …/backend/services/providers/test_dashscope_provider.py | 0 | 401 from provider surfaces the authentication_failed error code. | STRING |
| HIGH | …st/backend/services/providers/test_silicon_provider.py | 0 | 401 from provider surfaces the authentication_failed error code. | STRING |
| HIGH | test/sdk/core/tools/test_delete_directory_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_create_file_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_move_item_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_read_file_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_delete_file_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_create_directory_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_list_directory_tool.py | 0 | test initialization with empty string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_delete_directory_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_create_file_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_move_item_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_read_file_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_delete_file_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_create_directory_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_list_directory_tool.py | 0 | test initialization with whitespace-only string raises valueerror | STRING |
| HIGH | test/sdk/core/tools/test_move_item_tool.py | 0 | create a mock observer for testing with chinese language | STRING |
| HIGH | test/sdk/core/tools/test_read_file_tool.py | 0 | create a mock observer for testing with chinese language | STRING |
| HIGH | test/sdk/core/tools/test_list_directory_tool.py | 0 | create a mock observer for testing with chinese language | STRING |
| HIGH | test/sdk/core/tools/test_move_item_tool.py | 0 | test validation of path with '..' that goes outside workspace | STRING |
| HIGH | test/sdk/core/tools/test_read_file_tool.py | 0 | test validation of path with '..' that goes outside workspace | STRING |
| HIGH | test/sdk/core/tools/test_list_directory_tool.py | 0 | test validation of path with '..' that goes outside workspace | STRING |
| HIGH | test/sdk/core/tools/test_datamate_search_tool.py | 0 | test initialization without rerank parameters (defaults). | STRING |
| HIGH | test/sdk/core/tools/test_dify_search_tool.py | 0 | test initialization without rerank parameters (defaults). | STRING |
| HIGH | test/sdk/core/tools/test_knowledge_base_search_tool.py | 0 | test initialization without rerank parameters (defaults). | STRING |
| HIGH | test/sdk/core/tools/test_datamate_search_tool.py | 0 | test forward method when rerank is enabled and model is provided. | STRING |
| HIGH | test/sdk/core/tools/test_dify_search_tool.py | 0 | test forward method when rerank is enabled and model is provided. | STRING |
| HIGH | test/sdk/core/tools/test_knowledge_base_search_tool.py | 0 | test forward method when rerank is enabled and model is provided. | STRING |
| HIGH | test/sdk/core/tools/test_datamate_search_tool.py | 0 | test that forward continues when rerank raises an exception. | STRING |
| HIGH | test/sdk/core/tools/test_dify_search_tool.py | 0 | test that forward continues when rerank raises an exception. | STRING |
| HIGH | test/sdk/core/tools/test_knowledge_base_search_tool.py | 0 | test that forward continues when rerank raises an exception. | STRING |
| HIGH | test/sdk/core/tools/test_read_skill_md_tool.py | 0 | unit tests for nexent.core.tools.run_skill_script_tool module. this test module follows the pattern from test_ragflow_se | STRING |
| HIGH | test/sdk/core/tools/test_read_skill_config_tool.py | 0 | unit tests for nexent.core.tools.run_skill_script_tool module. this test module follows the pattern from test_ragflow_se | STRING |
| HIGH | test/sdk/core/tools/test_run_skill_script_tool.py | 0 | unit tests for nexent.core.tools.run_skill_script_tool module. this test module follows the pattern from test_ragflow_se | STRING |
| HIGH | test/sdk/core/models/test_openai_vlm.py | 0 | check_connectivity should return true when no exception is raised. | STRING |
| HIGH | test/sdk/core/models/test_vlm_adapter.py | 0 | check_connectivity should return true when no exception is raised. | STRING |
| HIGH | test/sdk/core/models/test_openai_llm.py | 0 | check_connectivity should return true when no exception is raised. | STRING |
| HIGH | backend/database/attachment_db.py | 0 | check if file exists in storage args: object_name: object name bucket: bucket name, if not specified use default bucket | STRING |
| HIGH | backend/database/client.py | 0 | check if file exists in storage args: object_name: object name bucket: bucket name, if not specified use default bucket | STRING |
| HIGH | sdk/nexent/storage/storage_client_base.py | 0 | check if file exists in storage args: object_name: object name bucket: bucket name, if not specified use default bucket | STRING |
| HIGH | sdk/nexent/storage/minio.py | 0 | check if file exists in storage args: object_name: object name bucket: bucket name, if not specified use default bucket | STRING |
| HIGH | backend/database/user_tenant_db.py | 0 | get users belonging to a specific tenant with pagination and sorting args: tenant_id (str): tenant id page (optional[int | STRING |
| HIGH | backend/database/group_db.py | 0 | get users belonging to a specific tenant with pagination and sorting args: tenant_id (str): tenant id page (optional[int | STRING |
| 77 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/pytest.ini | 5 | # Create a new event loop for each test function to ensure isolation | COMMENT |
| MEDIUM | test/backend/database/test_model_managment_db.py | 98 | # Create a mock session returning an embedding record with None chunk sizes | COMMENT |
| MEDIUM | test/backend/database/test_tenant_config_db.py | 542 | # Create a mock query chain that returns tenant IDs | COMMENT |
| MEDIUM | test/backend/database/test_tenant_config_db.py | 571 | # Create a mock query that returns empty result | COMMENT |
| MEDIUM | test/backend/database/test_agent_db.py | 1025 | # Create a Mock class for AgentRelation that supports both class attribute access and instantiation | COMMENT |
| MEDIUM | test/backend/database/test_agent_db.py | 1126 | # Create a Mock class for AgentRelation that supports both class attribute access and instantiation | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 32 | # Create a mock ToolSourceEnum that supports .value attribute access | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 282 | # Create a Mock class that can be used both as a class (for query) and instantiated | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 463 | # Create a mock for ToolInfo class with properly accessible attributes | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 503 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 509 | # Create a new tool with different name&source that doesn't exist in database | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 555 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 561 | # Create a new tool with invalid name (contains special characters) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 608 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 614 | # Create a new MCP tool with same name but different usage (different MCP server) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 664 | # Create a new MCP tool with same name and same usage (should update existing) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 708 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 714 | # Create a new MCP tool with same name and empty usage (should update existing) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 755 | # Create a new non-MCP tool with same name and source but different usage | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 798 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 854 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 967 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1107 | # Create a mock for ToolInfo class constructor | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1113 | # Create a new MCP tool with invalid name (contains special characters) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1613 | # Create a mock tool with source="local" | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1657 | # Create a mock tool with source="mcp" (not local) | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1695 | # Create a mock tool with source="local" | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1741 | # Create a mock tool with source="local" | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1787 | # Create a mock tool with source="local" and invalid JSON inputs | COMMENT |
| MEDIUM | test/backend/database/test_tool_db.py | 1832 | # Create a mock tool with source="local" | COMMENT |
| MEDIUM | test/backend/database/test_invitation_db.py | 422 | # Create a mock query that returns count | COMMENT |
| MEDIUM | test/backend/database/test_knowledge_db.py | 1143 | # Create a list of mock knowledge records | COMMENT |
| MEDIUM | test/backend/database/test_knowledge_db.py | 1231 | # Create a new mock for this specific function since it uses session.query(KnowledgeRecord.knowledge_id) | COMMENT |
| MEDIUM | test/backend/database/test_agent_version_db.py | 56 | # Create a mock database module to satisfy imports | COMMENT |
| MEDIUM | test/backend/database/test_agent_version_db.py | 257 | # Create a mock statement that chains properly | COMMENT |
| MEDIUM | test/backend/database/test_agent_version_db.py | 282 | # Create a mock statement that chains properly | COMMENT |
| MEDIUM | test/backend/database/test_user_tenant_db.py | 321 | # Create a proper mock UserTenant class with attributes | COMMENT |
| MEDIUM⚡ | test/backend/database/test_conversation_db.py | 2515 | # This function is covered by integration tests | COMMENT |
| MEDIUM | test/backend/database/test_group_db.py | 783 | # Create a mock query that returns tuples of group_ids | COMMENT |
| MEDIUM | test/backend/database/test_group_db.py | 847 | # Create a mock query that returns count | COMMENT |
| MEDIUM | test/backend/database/test_group_db.py | 1081 | # Create a mock query that returns empty result | COMMENT |
| MEDIUM | test/backend/app/test_group_app.py | 51 | # Create a test client with a fresh FastAPI app | COMMENT |
| MEDIUM | test/backend/app/test_northbound_base_app.py | 59 | # Create a proper mock service instance with all methods | COMMENT |
| MEDIUM | test/backend/app/test_agent_app.py | 102 | # Define a decorator that simply returns the original function unchanged | COMMENT |
| MEDIUM | test/backend/app/test_conversation_management_app.py | 344 | # Create a request-like object with required attributes | COMMENT |
| MEDIUM | test/backend/app/test_vectordatabase_app.py | 75 | # Create a mock for consts.model and patch it before any imports. | COMMENT |
| MEDIUM | test/backend/app/test_app_factory.py | 546 | # Create a mock monitoring module that raises ImportError when accessed | COMMENT |
| MEDIUM | test/backend/app/test_app_factory.py | 911 | # Create a request-like object and an AppException | COMMENT |
| MEDIUM | test/backend/app/test_image_app.py | 24 | # Create a FastAPI app and include the router for testing | COMMENT |
| MEDIUM | test/backend/app/test_user_app.py | 21 | # Create a mock ToolConfig class | COMMENT |
| MEDIUM | test/backend/app/test_user_app.py | 66 | # Create a test client with a fresh FastAPI app | COMMENT |
| MEDIUM | test/backend/app/test_knowledge_summary_app.py | 123 | # Create a test app and client | COMMENT |
| MEDIUM | test/backend/app/test_invitation_app.py | 44 | # Create a test client with a fresh FastAPI app | COMMENT |
| MEDIUM | test/backend/app/test_dify_app.py | 850 | # Create an AppException that the service would raise | COMMENT |
| MEDIUM | test/backend/app/test_mock_user_management_app.py | 34 | # Create a test client with a fresh FastAPI app | COMMENT |
| MEDIUM | test/backend/app/test_user_management_app.py | 54 | # Create a test client with a fresh FastAPI app | COMMENT |
| MEDIUM | test/backend/app/test_skill_app.py | 645 | # Create a ZIP file | COMMENT |
| MEDIUM | test/backend/app/test_northbound_app.py | 327 | # Create a fake file upload | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 1093 | # Create a tool that throws an exception when accessing the name attribute | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 3708 | # Create a tool with index_name_to_display_map in metadata | COMMENT |
| 141 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/run_all_test.py | 226 | CODE | |
| LOW | …_components/aidp/mock_servers/aidp_mgmt_mock_server.py | 1066 | CODE | |
| LOW | test/mock-services/deploy.py | 125 | CODE | |
| LOW | test/mock-services/deploy.py | 183 | CODE | |
| LOW | test/tools/test_asset_lib.py | 125 | CODE | |
| LOW | test/tools/test_asset_lib.py | 235 | CODE | |
| LOW | test/tools/validate_traceability.py | 11 | CODE | |
| LOW | test/tools/validate_manifest.py | 23 | CODE | |
| LOW | test/tools/tests/test_formal_test_assets.py | 31 | CODE | |
| LOW | test/backend/database/test_agent_evaluation_db.py | 375 | CODE | |
| LOW | test/backend/database/test_agent_evaluation_db.py | 386 | CODE | |
| LOW | test/backend/database/test_agent_version_db.py | 191 | CODE | |
| LOW | test/backend/database/test_evaluator_db.py | 453 | CODE | |
| LOW | test/backend/database/test_evaluator_db.py | 543 | CODE | |
| LOW | test/backend/database/test_a2a_agent_db.py | 343 | CODE | |
| LOW | test/backend/app/test_aidp_http_concurrency.py | 31 | CODE | |
| LOW | …kend/management/test_service_directory_architecture.py | 121 | CODE | |
| LOW | test/backend/utils/test_direct_sdk_prompt_calls.py | 33 | CODE | |
| LOW | test/backend/configs/test_model_catalog_loader.py | 55 | CODE | |
| LOW | …st/backend/services/test_tool_configuration_service.py | 4590 | CODE | |
| LOW | …st/backend/services/test_tool_configuration_service.py | 4619 | CODE | |
| LOW | test/backend/services/test_agent_repository_service.py | 2596 | CODE | |
| LOW | test/backend/services/test_skill_service.py | 1843 | CODE | |
| LOW | test/backend/services/test_skill_service.py | 3445 | CODE | |
| LOW | test/backend/services/test_skill_service.py | 3463 | CODE | |
| LOW | test/backend/services/test_skill_service.py | 5178 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 11835 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 11882 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 11954 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 15869 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 15924 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16073 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16135 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16277 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16372 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16420 | CODE | |
| LOW | test/backend/services/test_agent_service.py | 16468 | CODE | |
| LOW | test/backend/services/test_prompt_service.py | 854 | CODE | |
| LOW | test/backend/services/test_prompt_service.py | 871 | CODE | |
| LOW | test/backend/services/test_core_service_slimming.py | 459 | CODE | |
| LOW | test/backend/services/test_evaluation_pure_logic.py | 70 | CODE | |
| LOW | test/backend/services/test_official_agent_service.py | 1759 | CODE | |
| LOW | test/sdk/core/tools/test_plan_tools.py | 95 | CODE | |
| LOW | test/sdk/core/tools/test_plan_tools.py | 117 | CODE | |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 107 | CODE | |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 193 | CODE | |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 222 | CODE | |
| LOW | test/sdk/core/agents/test_sandbox.py | 1794 | CODE | |
| LOW | test/sdk/core/agents/test_sandbox.py | 3288 | CODE | |
| LOW | test/sdk/core/concurrency/test_thread_creation_gate.py | 53 | CODE | |
| LOW | test/sdk/core/concurrency/test_thread_telemetry.py | 149 | CODE | |
| LOW | test/sdk/vector_database/test_elasticsearch_core.py | 737 | CODE | |
| LOW | test/sdk/utils/test_http_client_manager.py | 15 | CODE | |
| LOW | test/sdk/skills/test_skill_manager.py | 40 | CODE | |
| LOW | test/sdk/skills/test_skill_manager.py | 3466 | CODE | |
| LOW | test/sdk/skills/test_skill_manager.py | 3623 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 48 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 540 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 751 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1014 | CODE | |
| 388 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …d/ext_components/aidp/components/AidpCreateKbModal.tsx | 306 | // Step 1: Create KB | COMMENT |
| LOW | …d/ext_components/aidp/components/AidpCreateKbModal.tsx | 342 | // Step 2: Upload files (if any and not skipped) | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 50 | // Step 1: Handle complete <display:language>...</display> blocks | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 58 | // Step 2: Handle complete <code>...</code> blocks | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 63 | // Step 3: Handle incomplete tags during streaming | COMMENT |
| LOW | frontend/components/agent/AgentImportWizard.tsx | 779 | // Step 1: Model selection validation | COMMENT |
| LOW | frontend/components/agent/AgentImportWizard.tsx | 800 | // Step 2: Config fields validation | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1039 | // Step 1: Handle complete <display:language>...</display> blocks | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1047 | // Step 2: Handle complete <code>...</code> blocks | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1052 | // Step 3: Handle incomplete tags during streaming | COMMENT |
| LOW | frontend/hooks/useAgentImport.ts | 190 | // Step 1: check name/display name conflicts before import (only check main agent name and display name) | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 814 | # Step 1: install with ids | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 819 | # Step 2: uninstall (None) | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 824 | # Step 3: reinstall as empty | COMMENT |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2276 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2277 | self._make_stream(b'%PDF-1.4 ok'), # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2382 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2383 | self._make_stream(b'NOT-PDF'), # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2502 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2503 | None, # Step 4: header check stream | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2535 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2536 | header_stream, # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2587 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2588 | self._make_stream(b'%PDF-1.4 ok'), # Step 4: header check | CODE |
| LOW⚡ | pathology-ai/custom-tools.md | 58 | ### Step 1: 症状分析 | COMMENT |
| LOW⚡ | pathology-ai/custom-tools.md | 62 | ### Step 2: 病史关联 | COMMENT |
| LOW⚡ | pathology-ai/custom-tools.md | 66 | ### Step 3: 鉴别诊断 | COMMENT |
| LOW⚡ | pathology-ai/custom-tools.md | 70 | ### Step 4: 检查建议 | COMMENT |
| LOW⚡ | pathology-ai/custom-tools.md | 74 | ### Step 5: 初步结论 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1138 | # Step 1: 症状分析 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1158 | # Step 2: 病史关联 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1176 | # Step 3: 鉴别诊断 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1205 | # Step 4: 检查建议 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1217 | # Step 5: 诊断结论 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 195 | # Step 1: 症状分析 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 200 | # Step 2: 病史关联 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 205 | # Step 3: 鉴别诊断 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 211 | # Step 4: 检查建议 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 215 | # Step 5: 诊断结论 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 129 | "症状分析", # Step 1: 分析主诉和症状 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 130 | "病史关联", # Step 2: 关联既往病史 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 131 | "鉴别诊断", # Step 3: 列出可能的诊断 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 132 | "检查建议", # Step 4: 建议进一步检查 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 133 | "诊断结论", # Step 5: 给出最终诊断 | CODE |
| LOW⚡ | deploy/docker/generate_env.sh | 161 | # Step 1: Prepare .env file | COMMENT |
| LOW⚡ | deploy/docker/generate_env.sh | 164 | # Step 2: Update .env file | COMMENT |
| LOW⚡ | deploy/docker/generate_env.sh | 168 | # Step 3: Show summary | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_skill_directory.py | 580 | # Step 2: Check if container is running | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_skill_directory.py | 587 | # Step 3: Test PostgreSQL connection and get tenant_id from container | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 566 | # Step 1: Load environment from .env file | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 616 | # Step 5: Determine directories | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 636 | # Step 6: Discover and migrate skills | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 524 | # Step 0: Check Docker containers | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 532 | # Step 1: Validate environment variables | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 538 | # Step 2: Get Supabase parameters and test connection | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 563 | # Step 4: Fetch all user_tenant records | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 570 | # Step 5: Process records | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 575 | # Step 6: Summary | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 552 | # Step 3: Connect to database | COMMENT |
| LOW⚡ | deploy/k8s/deploy.sh | 1377 | # Step 1: Select deployment components, port policy and image source. | COMMENT |
| 81 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/backend/database/test_agent_version_db.py | 196 | # Check if it's a MagicMock without real data - return empty dict or handle specially | COMMENT |
| LOW | test/backend/database/test_agent_version_db.py | 198 | # Check if this MagicMock has been configured with real attributes | COMMENT |
| LOW | test/backend/database/test_agent_version_db.py | 225 | # Check if this looks like one of our mock classes by checking for key attributes | COMMENT |
| LOW | test/backend/database/test_agent_version_db.py | 228 | # Check if it has any of our expected keys (not just mock internals) | COMMENT |
| LOW | test/backend/app/test_vectordatabase_app.py | 130 | # Check if attribute exists before modifying | COMMENT |
| LOW | test/backend/agents/test_create_agent_info.py | 1303 | # Check if the last call was for KnowledgeBaseSearchTool | COMMENT |
| LOW | test/backend/agents/test_create_agent_info.py | 3170 | # Set agent_share_option to "never" | COMMENT |
| LOW | test/backend/agents/test_create_agent_info.py | 3282 | # Set disable_agent_ids to include the agent | COMMENT |
| LOW | test/backend/agents/test_create_agent_info.py | 3393 | # Set disable_user_agent_ids to include the agent | COMMENT |
| LOW⚡ | test/backend/utils/test_llm_utils.py | 1525 | # Set delta to actual None (not a MagicMock) | COMMENT |
| LOW | test/backend/services/test_auto_summary_scheduler.py | 721 | # Check if stop_event is set during processing | COMMENT |
| LOW | …ckend/services/test_conversation_management_service.py | 280 | # Check if create_conversation_message was called with correct params | COMMENT |
| LOW | test/sdk/core/tools/test_tavily_search_tool.py | 119 | # Check if text field exists | COMMENT |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 210 | # Check if there's a class attribute that's a FieldInfo | COMMENT |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 226 | # Check if this is a class-level default by looking at the class | COMMENT |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 509 | # Set search_mode to accurate | COMMENT |
| LOW | test/sdk/core/tools/test_knowledge_base_search_tool.py | 526 | # Set search_mode to semantic | COMMENT |
| LOW | deploy/docker/deploy.sh | 167 | # Check if a TCP port is already in use (Linux/macOS/Windows Git Bash) | COMMENT |
| LOW | deploy/docker/deploy.sh | 678 | # Check if generate_env.sh exists | COMMENT |
| LOW | deploy/docker/deploy.sh | 855 | # Check if image already exists locally | COMMENT |
| LOW | deploy/docker/deploy.sh | 982 | # Check if root-dir parameter is provided (highest priority) | COMMENT |
| LOW | deploy/docker/deploy.sh | 995 | # Check if ROOT_DIR already exists in .env (second priority) | COMMENT |
| LOW | deploy/docker/deploy.sh | 1043 | # Check if parameters are provided | COMMENT |
| LOW | deploy/docker/deploy.sh | 1302 | # Check if the supabase compose file exists | COMMENT |
| LOW | deploy/docker/deploy.sh | 1550 | # Check if SSH credentials are already set | COMMENT |
| LOW | deploy/docker/deploy.sh | 1609 | # Check if super admin user exists in Supabase | COMMENT |
| LOW | deploy/docker/deploy.sh | 1668 | # Check if password is empty | COMMENT |
| LOW | deploy/docker/deploy.sh | 1686 | # Check if passwords match | COMMENT |
| LOW | deploy/docker/deploy.sh | 1724 | # Check if super admin user already exists | COMMENT |
| LOW | deploy/docker/assets/scripts/v180_sync_user_metadata.sh | 40 | # Check if nexent-config container is running | COMMENT |
| LOW | deploy/docker/assets/scripts/v180_sync_user_metadata.sh | 53 | # Check if nexent-config container is running | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 388 | # Check if update is needed | STRING |
| LOW | deploy/k8s/create-suadmin.sh | 296 | # Check if user was created successfully. Supabase may return either a top-level | COMMENT |
| LOW | deploy/k8s/create-suadmin.sh | 373 | # Check if Supabase pods are available | COMMENT |
| LOW | deploy/k8s/helm/nexent/charts/nexent-common/values.yaml | 35 | northboundExternalUrl: "" # Set this to the public-facing URL for external A2A clients. Example: https://api.yourdom | CODE |
| LOW | .claude/skills/skill-creator/scripts/init_skill.py | 208 | # Check if directory already exists | COMMENT |
| LOW | backend/data_process_service.py | 128 | # Check if we're in Docker environment | COMMENT |
| LOW⚡ | backend/data_process_service.py | 475 | # Check if process is still running | STRING |
| LOW | backend/data_process_service.py | 613 | if process.poll() is None: # Check if process is still running | STRING |
| LOW | backend/middleware/exception_handler.py | 57 | # Check if it's an AppException by looking for the error_code attribute | COMMENT |
| LOW | backend/database/conversation_db.py | 1324 | # Check if any rows were affected | COMMENT |
| LOW | backend/database/conversation_db.py | 1386 | # Check if the conversation record was affected | COMMENT |
| LOW | backend/database/conversation_db.py | 1568 | # Check if any rows were affected | COMMENT |
| LOW | backend/database/conversation_db.py | 1803 | # Check if any rows were affected | COMMENT |
| LOW | backend/database/conversation_db.py | 1989 | # Check if any rows were affected | COMMENT |
| LOW | backend/database/evaluator_db.py | 405 | # Check if the CURRENT version is in use (not the target version). | COMMENT |
| LOW | backend/database/a2a_agent_db.py | 199 | # Check if agent already exists by source_url | COMMENT |
| LOW | backend/database/a2a_agent_db.py | 323 | # Check if agent already exists by nacos_config_id + nacos_agent_name | COMMENT |
| LOW | backend/database/a2a_agent_db.py | 836 | # Check if relation already exists (not soft-deleted) | COMMENT |
| LOW | backend/database/a2a_agent_db.py | 847 | # Check if there's a soft-deleted record and restore it | COMMENT |
| LOW | backend/database/a2a_agent_db.py | 1648 | # Check if task is in terminal state | COMMENT |
| LOW | backend/database/tool_db.py | 257 | # Check if any tools exist for this tenant | COMMENT |
| LOW | backend/database/tool_db.py | 301 | # Set tools to unavailable. Tools belonging to enabled MCPs keep their | COMMENT |
| LOW | backend/database/knowledge_db.py | 226 | # Check if record exists | COMMENT |
| LOW | backend/database/model_management_db.py | 159 | # Check if any rows were affected | COMMENT |
| LOW | backend/management/services/skill/service.py | 306 | # Check if skill already exists in database | COMMENT |
| LOW | backend/management/services/skill/service.py | 311 | # Check if skill directory already exists locally | COMMENT |
| LOW | backend/management/services/agent/run.py | 1525 | # Check if channel exists and is still active | COMMENT |
| LOW | backend/management/services/agent/run.py | 1950 | # Check if the agent is still running by querying the agent_run_manager | COMMENT |
| LOW | backend/management/services/agent/management.py | 493 | # Check if any tool is KnowledgeBaseSearchTool and set its metadata to empty dict | COMMENT |
| 98 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL⚡ | test/backend/utils/test_llm_utils.py | 218 | mock_llm_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL⚡ | test/backend/services/test_mcp_container_service.py | 1437 | mock_manager.client.client.images.load.assert_called_once() | CODE |
| CRITICAL⚡ | test/backend/services/test_mcp_container_service.py | 1463 | mock_manager.client.client.images.load.assert_called_once() | CODE |
| CRITICAL | test/backend/services/test_evaluation_set_service.py | 878 | session.query.return_value.filter.return_value.update.assert_called() | CODE |
| CRITICAL | test/backend/services/test_evaluation_set_service.py | 1167 | session.query.return_value.filter.return_value.update.assert_called_once() | CODE |
| CRITICAL | test/backend/services/test_evaluation_set_service.py | 1730 | session.query.return_value.filter.return_value.delete.assert_called_once() | CODE |
| CRITICAL⚡ | test/sdk/core/models/test_openai_llm.py | 2075 | openai_model_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL⚡ | test/sdk/core/models/test_openai_llm.py | 2090 | openai_model_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL⚡ | test/sdk/core/models/test_openai_llm.py | 2106 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2010 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2061 | openai_model_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2122 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2142 | openai_model_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2163 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2180 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2197 | openai_model_instance.client.chat.completions.create.assert_not_called() | CODE |
| CRITICAL | test/sdk/core/models/test_openai_llm.py | 2210 | openai_model_instance.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL⚡ | test/sdk/core/gateway/modality/test_llm_adapter.py | 196 | model.client.chat.completions.create.assert_called_once_with( | CODE |
| CRITICAL | sdk/nexent/core/gateway/modality/llm/openai.py | 83 | return await self._model.client.chat.completions.create(**completion_kwargs) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | test/backend/app/test_vectordatabase_app.py | 3052 | # Tests for new embedding model retrieval from knowledge record | COMMENT |
| MEDIUM | test/backend/app/test_vectordatabase_app.py | 3071 | # Mock knowledge record with saved embedding model id | COMMENT |
| MEDIUM | test/backend/app/test_vectordatabase_app.py | 3079 | # Mock embedding model | COMMENT |
| MEDIUM | test/backend/app/test_vectordatabase_app.py | 3108 | # Verify index_documents was called with the embedding model | COMMENT |
| MEDIUM | test/backend/app/test_vectordatabase_app.py | 3223 | # Empty/None model id should skip embedding model resolution | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 6666 | # Tool with non-empty index_names but no embedding model | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 6692 | # Verify error message contains guidance about configuring embedding model | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 6716 | # Tool with index_names and valid embedding model | COMMENT |
| MEDIUM | test/backend/agents/test_create_agent_info.py | 6870 | # Return valid embedding model with error metadata | COMMENT |
| MEDIUM | …st/backend/services/test_tool_configuration_service.py | 242 | # Mock embedding model module to satisfy vectordatabase_service imports | COMMENT |
| MEDIUM | …st/backend/services/test_tool_configuration_service.py | 3208 | # Mock get_embedding_model_by_index_name returns None (no embedding model found) | COMMENT |
| MEDIUM | test/backend/services/test_auto_summary_scheduler.py | 144 | # Mock embedding model | COMMENT |
| MEDIUM | test/backend/services/test_official_agent_service.py | 593 | # user-selected embedding model is used and the default lookup is skipped | COMMENT |
| MEDIUM⚡ | test/backend/services/test_vectordatabase_service.py | 4568 | # Mock knowledge record with embedding model id | COMMENT |
| MEDIUM⚡ | test/backend/services/test_vectordatabase_service.py | 4574 | # Mock embedding model | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 927 | # Mock embedding model | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 947 | # Verify knowledge record was created with the embedding model name | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 973 | # Mock embedding model (tenant default) | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 1018 | # Mock embedding model | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 1066 | # Mock embedding model - note: model's display name differs from user-provided name | COMMENT |
| MEDIUM | test/backend/services/test_vectordatabase_service.py | 4772 | # Should succeed, embedding model IS called but returns empty | COMMENT |
| MEDIUM⚡ | test/backend/services/test_evaluation_set_service.py | 1650 | # Async generation orchestration | COMMENT |
| MEDIUM⚡ | test/backend/services/test_agent_evaluation_service.py | 2398 | # ``_setup_no_set_and_execute`` — background no-set run orchestration. | COMMENT |
| MEDIUM⚡ | test/backend/services/test_model_management_service.py | 3006 | # Only an embedding model was created; the empty LLM slot must not be | COMMENT |
| MEDIUM | test/backend/services/test_model_management_service.py | 2856 | # has a larger context window. | COMMENT |
| MEDIUM⚡ | test/sdk/memory/test_memory_service.py | 95 | # store_memory: default behavior (no embedding model, no backend hook) | COMMENT |
| MEDIUM⚡ | backend/management/services/knowledge_base/service.py | 375 | # Get knowledge base's embedding model by model_id | COMMENT |
| MEDIUM⚡ | backend/management/services/knowledge_base/service.py | 387 | # Generate embedding if we have content and can get embedding model | COMMENT |
| MEDIUM | backend/management/services/knowledge_base/service.py | 538 | # Get embedding model from the first index's knowledge base record | COMMENT |
| MEDIUM | …ckend/management/services/knowledge_base/management.py | 457 | # Get embedding model by model_id if provided | COMMENT |
| MEDIUM | …ckend/management/services/knowledge_base/management.py | 713 | # Validate the model exists and is an embedding model | COMMENT |
| MEDIUM | …ckend/management/services/knowledge_base/management.py | 985 | # Track records with missing embedding model for stats update | COMMENT |
| MEDIUM | …ckend/management/services/knowledge_base/management.py | 1042 | # Get embedding model display_name from model_id | COMMENT |
| MEDIUM | …ckend/management/services/knowledge_base/management.py | 1157 | # Set embedding model name from the embedding model | COMMENT |
| MEDIUM | backend/agents/create_agent_info.py | 2289 | # Append the tool and skip embedding model lookup (no index to lookup from) | COMMENT |
| MEDIUM⚡ | backend/utils/file_management_utils.py | 83 | # Resolve embedding model from the knowledge base record (not request model_id) | COMMENT |
| MEDIUM | backend/apps/vectordatabase_app.py | 584 | # Get the knowledge base record to retrieve the saved embedding model | COMMENT |
| MEDIUM | backend/services/memory_retrieval_service.py | 199 | # Resolve embedding model for the agent layer. | COMMENT |
| MEDIUM | backend/services/model_management_service.py | 1118 | # embedding model" path will be added once the storage layer | COMMENT |
| MEDIUM | backend/services/agent_evaluation_service.py | 1792 | # Resolve judge model context window once (used for runtime_events trimming) | COMMENT |
| MEDIUM | backend/services/streaming_channel.py | 187 | # Wait for new chunks using event-driven approach | COMMENT |
| MEDIUM | backend/services/model_capacity_suggestion_service.py | 521 | # LiteLLM's max_input_tokens is the total context window (input+output); | COMMENT |
| MEDIUM | backend/services/tool_configuration_service.py | 1152 | # Must have embedding model for knowledge base search | COMMENT |
| MEDIUM | backend/services/datamate_service.py | 53 | # Use datamate as embedding model name | COMMENT |
| MEDIUM | sdk/benchmark/README.md | 143 | │ └── folds/ # few-shot fold data | CODE |
| MEDIUM | sdk/benchmark/manual_cases/test_benchmark.py | 26 | # Strips the verbose platform scaffolding (File URL Guide, Reference Marks, | COMMENT |
| MEDIUM | …enchmark/manual_cases/cases/example_infra/history.json | 56 | "content": "这个表格对 **Agent 执行循环中的上下文(Context)** 做了三类划分,用于帮助开发者理解在构建可靠 Agent 时,哪些环节可以主动控制,以及这些控制信息的生命周期是临时的还是持久的。\n\n- | CODE |
| MEDIUM | sdk/benchmark/acon_eval/README.md | 18 | │ └── folds/ # few-shot 折叠数据 | CODE |
| MEDIUM | …/benchmark/generic/configs/gsm8k_solver_assistant.yaml | 49 | # Example conversations - few-shot examples. | COMMENT |
| MEDIUM | sdk/nexent/core/agents/agent_model.py | 121 | # "total context window" semantics (pre-W1), not an output limit. | COMMENT |
| MEDIUM | sdk/nexent/core/agents/nexent_agent.py | 907 | # Build one code executor for this agent. Worker-agent orchestration | COMMENT |
| MEDIUM | sdk/nexent/core/agents/subagent_wrapper.py | 48 | # Managed-agent orchestration must stay in the trusted Runtime process. | COMMENT |
| MEDIUM | sdk/nexent/core/gateway/model_context.py | 40 | max_tokens: Optional[int] = None # context window size | CODE |
| MEDIUM | sdk/nexent/vector_database/elasticsearch_core.py | 83 | # Initialize embedding model | COMMENT |
| MEDIUM | doc/docs/en/sdk/vector-database.md | 261 | # Create a new vector index (embedding_dim is optional; the embedding model's dimension is used when not specified) | COMMENT |
| MEDIUM | doc/docs/en/sdk/vector-database.md | 282 | # Build the embedding model adapter | COMMENT |
| MEDIUM | doc/docs/en/sdk/vector-database.md | 301 | "embedding_model_name": "your-embedding-model", # specify the embedding model | CODE |
| MEDIUM | doc/docs/en/sdk/vector-database.md | 333 | # Semantic vector search (an embedding model must be passed in) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …d/ext_components/aidp/components/AidpCreateKbModal.tsx | 306 | // Step 1: Create KB | COMMENT |
| LOW | …d/ext_components/aidp/components/AidpCreateKbModal.tsx | 342 | // Step 2: Upload files (if any and not skipped) | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 50 | // Step 1: Handle complete <display:language>...</display> blocks | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 58 | // Step 2: Handle complete <code>...</code> blocks | COMMENT |
| LOW⚡ | frontend/app/[locale]/chat/streaming/taskWindow.tsx | 63 | // Step 3: Handle incomplete tags during streaming | COMMENT |
| LOW | frontend/components/agent/AgentImportWizard.tsx | 779 | // Step 1: Model selection validation | COMMENT |
| LOW | frontend/components/agent/AgentImportWizard.tsx | 800 | // Step 2: Config fields validation | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1039 | // Step 1: Handle complete <display:language>...</display> blocks | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1047 | // Step 2: Handle complete <code>...</code> blocks | COMMENT |
| LOW⚡ | frontend/components/common/markdownRenderer.tsx | 1052 | // Step 3: Handle incomplete tags during streaming | COMMENT |
| LOW | frontend/hooks/useAgentImport.ts | 190 | // Step 1: check name/display name conflicts before import (only check main agent name and display name) | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 814 | # Step 1: install with ids | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 819 | # Step 2: uninstall (None) | COMMENT |
| LOW⚡ | test/ext_components/aidp/test_aidp_search_tool.py | 824 | # Step 3: reinstall as empty | COMMENT |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2276 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2277 | self._make_stream(b'%PDF-1.4 ok'), # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2382 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2383 | self._make_stream(b'NOT-PDF'), # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2502 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2503 | None, # Step 4: header check stream | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2535 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2536 | header_stream, # Step 4: header check | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2587 | self._make_stream(b'DOC data'), # Step 1: original file | CODE |
| LOW⚡ | test/backend/services/test_data_process_service.py | 2588 | self._make_stream(b'%PDF-1.4 ok'), # Step 4: header check | CODE |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1138 | # Step 1: 症状分析 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1158 | # Step 2: 病史关联 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1176 | # Step 3: 鉴别诊断 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1205 | # Step 4: 检查建议 | COMMENT |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 1217 | # Step 5: 诊断结论 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 195 | # Step 1: 症状分析 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 200 | # Step 2: 病史关联 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 205 | # Step 3: 鉴别诊断 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 211 | # Step 4: 检查建议 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 215 | # Step 5: 诊断结论 | COMMENT |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 129 | "症状分析", # Step 1: 分析主诉和症状 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 130 | "病史关联", # Step 2: 关联既往病史 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 131 | "鉴别诊断", # Step 3: 列出可能的诊断 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 132 | "检查建议", # Step 4: 建议进一步检查 | CODE |
| LOW⚡ | …i/code-changes/medical_extension/chain_of_diagnosis.py | 133 | "诊断结论", # Step 5: 给出最终诊断 | CODE |
| LOW⚡ | deploy/docker/generate_env.sh | 161 | # Step 1: Prepare .env file | COMMENT |
| LOW⚡ | deploy/docker/generate_env.sh | 164 | # Step 2: Update .env file | COMMENT |
| LOW⚡ | deploy/docker/generate_env.sh | 168 | # Step 3: Show summary | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_skill_directory.py | 580 | # Step 2: Check if container is running | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_skill_directory.py | 587 | # Step 3: Test PostgreSQL connection and get tenant_id from container | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 566 | # Step 1: Load environment from .env file | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 616 | # Step 5: Determine directories | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 636 | # Step 6: Discover and migrate skills | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 524 | # Step 0: Check Docker containers | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 532 | # Step 1: Validate environment variables | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 538 | # Step 2: Get Supabase parameters and test connection | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 563 | # Step 4: Fetch all user_tenant records | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 570 | # Step 5: Process records | COMMENT |
| LOW⚡ | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 575 | # Step 6: Summary | COMMENT |
| LOW | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 552 | # Step 3: Connect to database | COMMENT |
| LOW⚡ | deploy/k8s/deploy.sh | 1377 | # Step 1: Select deployment components, port policy and image source. | COMMENT |
| LOW⚡ | deploy/k8s/deploy.sh | 1380 | # Step 2: Render release-specific values with image tags and persistence settings. | COMMENT |
| LOW | deploy/k8s/deploy.sh | 1399 | # Step 3: Generate or reuse stable MinIO credentials for both releases. | COMMENT |
| LOW | deploy/k8s/deploy.sh | 1428 | # Step 4: Clean up stale PVs owned by the selected release scope. | COMMENT |
| LOW | deploy/k8s/deploy.sh | 1454 | # Step 5: Install or upgrade infrastructure and wait for all four dependencies. | COMMENT |
| LOW | deploy/k8s/deploy.sh | 1485 | # Step 6: Prepare application-only secrets after infrastructure is healthy. | COMMENT |
| 39 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pathology-ai/code-changes/medical_extension/__init__.py | 32 | __all__ = [ | CODE |
| LOW | deploy/docker/assets/scripts/sync_skill_directory.py | 39 | logger = logging.getLogger(__name__) | CODE |
| LOW | deploy/docker/assets/scripts/sync_user_supabase2pg.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | …end/ext_components/aidp/database/aidp_permission_db.py | 341 | __all__ = [ | CODE |
| LOW | backend/ext_components/aidp/consts/aidp_exceptions.py | 88 | __all__ = [ | CODE |
| LOW | …xt_components/aidp/services/aidp_permission_service.py | 504 | __all__ = [ | CODE |
| LOW | …nd/ext_components/aidp/services/aidp_access_service.py | 477 | __all__ = [ | CODE |
| LOW | …ext_components/aidp/services/aidp_kb_update_service.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/middleware/exception_handler.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | backend/database/evaluation_annotation_db.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/evaluator_db.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/user_tenant_db.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/agent_db.py | 406 | def update_agent_icon(agent_id: int, tenant_id: str, icon_url: str, user_id: str) -> None: | CODE |
| LOW | backend/database/tag_management_db.py | 32 | def _set_audit_fields(record: Any, actor_id: str) -> None: | CODE |
| LOW | backend/database/oauth_account_db.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/notification_db.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/evaluation_set_db.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/database/skill_db.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/skill/service.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/skill/support.py | 31 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/agent/service.py | 97 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/agent/run.py | 126 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/agent/naming.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/agent/management.py | 96 | logger = logging.getLogger(__name__) | CODE |
| LOW | …end/management/services/agent/system_agent_provider.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/management/services/model/resolver.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/agents/tool_user_context.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | backend/utils/font_utils.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/nacos_client.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/monitoring.py | 65 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/monitoring.py | 104 | __all__ = ['monitoring_manager'] | CODE |
| LOW⚡ | backend/utils/skill_params_utils.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/langchain_utils.py | 6 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | backend/utils/auth_utils.py | 33 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/a2a_http_client.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/llm_utils.py | 236 | __all__ = ["call_llm_for_system_prompt", "_process_thinking_tokens"] | CODE |
| LOW⚡ | backend/utils/monitoring_identity.py | 7 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/agent_stream_utils.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/agent_profile_utils.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/knowledge_telemetry.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/utils/knowledge_telemetry.py | 309 | def set_span_attributes(**attributes: Any) -> None: | CODE |
| LOW | backend/permissions/rbac.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/adapters/__init__.py | 8 | __all__ = [ | CODE |
| LOW | backend/tool_collection/mcp/nl2agent_mcp_tools.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/skill_repository_app.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/app_factory.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/evaluation_set_app.py | 50 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/northbound_app.py | 68 | __all__ = ["router", "_get_northbound_context"] | CODE |
| LOW | backend/apps/quota_app.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/cas_app.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/tenant_app.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/skill_app.py | 44 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/memory_provider_app.py | 284 | def _update_last_error_code(provider_id: int, error_code: Optional[str]) -> None: | CODE |
| LOW | backend/apps/oauth_app.py | 45 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/invitation_app.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/agent_repository_app.py | 35 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/notification_app.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/group_app.py | 33 | logger = logging.getLogger(__name__) | CODE |
| LOW | backend/apps/northbound_knowledge_app.py | 42 | __all__ = ["router"] | CODE |
| LOW | backend/consts/capability_profiles.py | 22 | logger = logging.getLogger(__name__) | CODE |
| 112 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | frontend/tests/agentUsageGuide.test.ts | 233 | /<YOUR_API_KEY>/ | CODE |
| HIGH | frontend/tests/agentUsageGuide.test.ts | 233 | /<YOUR_API_KEY>/ | CODE |
| HIGH | frontend/tests/component/agentUsageGuide.test.tsx | 457 | expect(example.textContent).toContain("<YOUR_API_KEY>"); | CODE |
| HIGH | frontend/tests/component/agentUsageGuide.test.tsx | 457 | expect(example.textContent).toContain("<YOUR_API_KEY>"); | CODE |
| HIGH | frontend/tests/component/agentUsageGuide.test.tsx | 618 | expect(document.body.textContent).toContain("<YOUR_API_KEY>"); | CODE |
| HIGH | frontend/tests/component/agentUsageGuide.test.tsx | 618 | expect(document.body.textContent).toContain("<YOUR_API_KEY>"); | CODE |
| HIGH | frontend/lib/agentUsageGuide.ts | 235 | " -H 'Authorization: Bearer <YOUR_API_KEY>'", | CODE |
| HIGH | frontend/lib/agentUsageGuide.ts | 235 | " -H 'Authorization: Bearer <YOUR_API_KEY>'", | CODE |
| HIGH | doc/docs/zh/sdk/basic-usage.md | 33 | api_key="your-api-key", | CODE |
| HIGH | doc/docs/zh/sdk/basic-usage.md | 96 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | doc/docs/zh/sdk/basic-usage.md | 96 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | doc/docs/zh/sdk/vector-database.md | 18 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/zh/sdk/vector-database.md | 183 | curl -H "Authorization: ApiKey your_api_key" https://localhost:9200/_cluster/health\?pretty -k | CODE |
| HIGH | doc/docs/zh/sdk/vector-database.md | 213 | ELASTICSEARCH_API_KEY=your_api_key | CODE |
| HIGH | doc/docs/zh/sdk/vector-database.md | 252 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/zh/sdk/vector-database.md | 286 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/zh/sdk/core/models.md | 129 | api_key="your-api-key", | CODE |
| HIGH | doc/docs/zh/sdk/core/models.md | 163 | api_key="your-api-key", | CODE |
| HIGH | doc/docs/en/sdk/basic-usage.md | 31 | api_key="your-api-key", | CODE |
| HIGH | doc/docs/en/sdk/basic-usage.md | 93 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | doc/docs/en/sdk/basic-usage.md | 93 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | doc/docs/en/sdk/vector-database.md | 18 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/en/sdk/vector-database.md | 183 | curl -H "Authorization: ApiKey your_api_key" https://localhost:9200/_cluster/health\?pretty -k | CODE |
| HIGH | doc/docs/en/sdk/vector-database.md | 213 | ELASTICSEARCH_API_KEY=your_api_key | CODE |
| HIGH | doc/docs/en/sdk/vector-database.md | 252 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/en/sdk/vector-database.md | 286 | api_key="your_api_key", | CODE |
| HIGH | doc/docs/en/sdk/core/models.md | 51 | api_key="your-api-key", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/lib/clarification.ts | 58 | "placeholder", | CODE |
| LOW | test/ext_components/aidp/test_aidp_mgmt_app.py | 194 | return {"Authorization": "Bearer fake-token"} | CODE |
| LOW⚡ | test/backend/test_model_consts.py | 364 | email="user@example.com", | CODE |
| LOW⚡ | test/backend/test_model_consts.py | 368 | assert req.email == "user@example.com" | CODE |
| LOW | test/backend/database/test_conversation_db.py | 1242 | "unit_content": '{"placeholder": true}', | CODE |
| LOW⚡ | test/backend/database/test_market_mcp_db.py | 558 | submitted_by="user@example.com", | CODE |
| LOW | test/backend/app/test_mock_user_management_app.py | 72 | "email": "user@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 183 | mock_signup.return_value = {"user_id": "123", "email": "admin@example.com"} | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 188 | "email": "admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 199 | email="admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 208 | mock_signup.return_value = {"user_id": "123", "email": "admin@example.com"} | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 213 | "email": "admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 224 | email="admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 238 | "email": "admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app.py | 256 | "email": "admin@example.com", | CODE |
| LOW⚡ | test/backend/app/test_user_management_app_audit.py | 94 | "user": {"id": "u-2", "email": "user@example.com", "role": "USER"}, | CODE |
| LOW⚡ | test/backend/app/test_user_management_app_audit.py | 102 | json={"email": "user@example.com", "password": "password123"}, | CODE |
| LOW⚡ | …st/backend/agents/test_tool_user_context_resolution.py | 56 | user_record={"user_email": "user@example.com"}, | CODE |
| LOW⚡ | …st/backend/agents/test_tool_user_context_resolution.py | 69 | "user_name": "user@example.com", | CODE |
| LOW⚡ | …st/backend/agents/test_tool_user_context_resolution.py | 70 | "user_account": "user@example.com", | CODE |
| LOW⚡ | test/backend/utils/test_llm_utils.py | 232 | "api_key": "fake-key", | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 160 | "api_key": "fake-key", | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 200 | "api_key": "fake-key", | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 597 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 630 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 660 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 689 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 719 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 744 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 773 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 818 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 849 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 912 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 942 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 980 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW | test/backend/utils/test_llm_utils.py | 1357 | mock_get_model_by_id.return_value = {"base_url": "http://example.com", "api_key": "fake-key"} | CODE |
| LOW⚡ | test/backend/utils/test_auth_utils.py | 639 | au._extract_user_id_from_jwt_token("Bearer fake-token") | CODE |
| LOW⚡ | test/backend/services/test_user_management_service.py | 877 | result = await signup_user_with_invitation("admin@example.com", "Password123", invite_code="ADMIN123") | CODE |
| LOW⚡ | test/backend/services/test_user_management_service.py | 880 | mock_insert_tenant.assert_called_with(user_id="user-123", tenant_id="tenant_id", user_role="ADMIN", user_ema | CODE |
| LOW⚡ | test/backend/services/test_user_management_service.py | 1016 | "admin@example.com", | CODE |
| LOW⚡ | test/backend/services/test_user_management_service.py | 2101 | user = MagicMock(id="user-1", email="user@example.com", user_metadata={"role": "USER"}) | CODE |
| LOW⚡ | test/backend/services/test_user_management_service.py | 2108 | result = await signin_user("user@example.com", "Password123") | CODE |
| LOW | test/backend/services/test_user_management_service.py | 703 | result = await signup_user_with_invitation("admin@example.com", "Password123", invite_code="ADMIN123") | CODE |
| LOW | test/backend/services/test_user_management_service.py | 706 | mock_insert_tenant.assert_called_once_with(user_id="user-123", tenant_id="tenant_id", user_role="ADMIN", use | CODE |
| LOW | test/backend/services/test_user_management_service.py | 969 | "admin@example.com", | CODE |
| LOW | test/backend/services/test_user_management_service.py | 1205 | mock_user.email = "admin@example.com" | CODE |
| LOW | test/backend/services/test_user_management_service.py | 1224 | "email": "admin@example.com", | CODE |
| LOW⚡ | …backend/services/test_memory_provider_plugin_loader.py | 108 | provider = loader.build_provider("test-provider", {"api_key": "placeholder"}) | STRING |
| LOW⚡ | …backend/services/test_memory_provider_plugin_loader.py | 109 | assert provider.config == {"api_key": "placeholder"} | STRING |
| LOW⚡ | test/backend/services/test_mcp_management_service.py | 245 | mock_get.return_value = {"user_email": "user@example.com"} | CODE |
| LOW⚡ | test/backend/services/test_mcp_management_service.py | 247 | self.assertEqual(card["authorDisplayName"], "user@example.com") | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 1289 | submitted_by="admin@example.com", | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 1302 | with patch.object(ars, "_resolve_submitter_email", return_value="admin@example.com"): | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 2152 | return_value={"user_role": "ADMIN", "user_email": "admin@example.com"}, | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 2189 | return_value={"user_role": "USER", "user_email": "user@example.com"}, | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 2194 | agent_info={"author": "user@example.com"}, | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 2216 | return_value={"user_role": "USER", "user_email": "user@example.com"}, | CODE |
| LOW⚡ | test/backend/services/test_agent_repository_service.py | 2222 | "author": "user@example.com", | CODE |
| LOW | test/backend/services/test_agent_repository_service.py | 1273 | with patch.object(ars, "_resolve_submitter_email", return_value="admin@example.com"): | CODE |
| LOW | test/backend/services/test_agent_repository_service.py | 1318 | submitted_by="admin@example.com", | CODE |
| 54 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/backend/app/test_northbound_app_audit.py | 129 | assert ('details={"target_user_id":"user-1","target_email":null,"revoked_count":2,' | CODE |
| HIGH | test/backend/app/test_api_key_app_audit.py | 82 | assert 'details={"target_user_id":"user-1","target_email":null,"revoked_count":3}' in messages[0] | CODE |
| HIGH | test/backend/app/test_northbound_app.py | 1063 | """Test that omitting model_id (null) preserves the agent's default model behavior.""" | STRING |
| HIGH | …backend/services/test_agent_automation_tool_adapter.py | 325 | @pytest.mark.parametrize("content", ["not-json", "{}", '{"proposal_id": null}']) | CODE |
| HIGH⚡ | test/backend/services/test_agent_evaluation_service.py | 1577 | for payload in ('{"score": "high"}', '{"score": null}'): | CODE |
| HIGH | test/sdk/core/tools/test_ragflow_search_tool.py | 365 | dataset_ids='["ds1", 123, true, null]', | CODE |
| HIGH | test/sdk/core/tools/test_dify_search_tool.py | 249 | dataset_ids='["ds1", 123, true, null]', | CODE |
| HIGH⚡ | test/sdk/core/agents/test_nexent_agent.py | 4158 | # If step_log is undefined, it might raise NameError - this is expected behavior | COMMENT |
| HIGH | deploy/docker/assets/scripts/sync_skill_directory.py | 134 | logger.info("Please start the containers with: cd docker && docker compose up -d") | CODE |
| HIGH | backend/database/db_models.py | 740 | # Shape: {"<model_id>": {"temperature": 0.5, "top_p": null, "extra_params": {...}}}. | COMMENT |
| HIGH | backend/management/services/skill/service.py | 147 | response never contains stale data (e.g. {"configs": null} instead of | STRING |
| HIGH | backend/apps/cas_app.py | 161 | window.parent && window.parent.postMessage({{ type: "cas-renew-{status}", reason: "{safe_reason}" }}, window.location.or | CODE |
| HIGH | backend/apps/agent_app.py | 628 | success, or ``{"message": <error>, "data": null}`` on AppException. | STRING |
| HIGH | backend/consts/model.py | 1349 | # Shape: {"<model_id>": {"temperature": 0.5, "top_p": null, "extra_params": {...}}}. | COMMENT |
| HIGH | backend/services/idata_service.py | 168 | # Expected format: {"code": "1", "msg": "...", "data": [...], "msgParams": null} | COMMENT |
| HIGH | backend/services/model_capacity_suggestion_service.py | 475 | context and max_output (some providers leave max_output as null). | STRING |
| HIGH | sdk/benchmark/acon_eval/run_acon_qa.py | 332 | " * unstarted => answer is null, search_counts is 0\n" | CODE |
| HIGH | sdk/benchmark/acon_eval/run_acon_qa.py | 333 | " * searching => answer is null, search_counts is 1 or 2\n" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/backend/database/test_token_db.py | 45 | CODE | |
| LOW | test/backend/database/test_token_db.py | 106 | CODE | |
| LOW | test/backend/database/test_evaluator_db.py | 370 | CODE | |
| LOW | test/backend/app/test_knowledge_summary_app.py | 139 | CODE | |
| LOW | test/backend/app/test_skill_app.py | 68 | CODE | |
| LOW | test/backend/services/test_memory_context_service.py | 112 | CODE | |
| LOW | test/backend/services/test_memory_retrieval_service.py | 80 | CODE | |
| LOW | test/sdk/core/tools/test_search_memory_tool.py | 97 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 282 | CODE | |
| LOW | pathology-ai/code-changes/backend/local_mcp_service.py | 737 | CODE | |
| LOW | backend/ext_components/aidp/services/aidp_service.py | 2028 | CODE | |
| LOW | backend/database/skill_repository_db.py | 127 | CODE | |
| LOW | backend/database/a2a_agent_db.py | 153 | CODE | |
| LOW | backend/database/a2a_agent_db.py | 674 | CODE | |
| LOW | backend/database/user_tenant_db.py | 272 | CODE | |
| LOW | backend/database/community_mcp_db.py | 118 | CODE | |
| LOW | backend/database/memory_record_db.py | 238 | CODE | |
| LOW | backend/database/market_mcp_db.py | 35 | CODE | |
| LOW | backend/database/market_mcp_db.py | 198 | CODE | |
| LOW | backend/database/agent_evaluation_db.py | 415 | CODE | |
| LOW | backend/management/services/agent/management.py | 924 | CODE | |
| LOW | …ckend/management/services/knowledge_base/management.py | 863 | CODE | |
| LOW | backend/agents/create_agent_info.py | 1306 | CODE | |
| LOW | backend/agents/create_agent_info.py | 2610 | CODE | |
| LOW | backend/utils/context_utils.py | 78 | CODE | |
| LOW | backend/apps/skill_repository_app.py | 44 | CODE | |
| LOW | backend/apps/app_factory.py | 15 | CODE | |
| LOW | backend/apps/memory_record_app.py | 171 | CODE | |
| LOW | backend/apps/remote_mcp_app.py | 994 | CODE | |
| LOW | backend/apps/remote_mcp_app.py | 1068 | CODE | |
| LOW | backend/apps/northbound_app.py | 370 | CODE | |
| LOW | backend/apps/northbound_base_app.py | 277 | CODE | |
| LOW | backend/apps/northbound_base_app.py | 291 | CODE | |
| LOW | backend/apps/agent_repository_app.py | 155 | CODE | |
| LOW | backend/apps/agent_repository_app.py | 223 | CODE | |
| LOW | backend/apps/vectordatabase_app.py | 466 | CODE | |
| LOW | backend/apps/agent_app.py | 894 | CODE | |
| LOW | backend/apps/agent_evaluation_app.py | 265 | CODE | |
| LOW | backend/services/memory_retrieval_service.py | 163 | CODE | |
| LOW | backend/services/agent_evaluation_service.py | 2177 | CODE | |
| LOW | backend/services/skill_repository_service.py | 1086 | CODE | |
| LOW | backend/services/memory_record_service.py | 242 | CODE | |
| LOW | backend/services/memory_record_service.py | 506 | CODE | |
| LOW | backend/services/mcp_management_service.py | 358 | CODE | |
| LOW | backend/services/model_health_service.py | 185 | CODE | |
| LOW | backend/services/memory_context_service.py | 124 | CODE | |
| LOW | backend/services/memory_provider_config_service.py | 301 | CODE | |
| LOW | backend/services/audit_service.py | 61 | CODE | |
| LOW | backend/services/agent_repository_service.py | 252 | CODE | |
| LOW | backend/services/agent_repository_service.py | 584 | CODE | |
| LOW | backend/services/remote_mcp_service.py | 317 | CODE | |
| LOW | backend/services/remote_mcp_service.py | 408 | CODE | |
| LOW | backend/data_process/tasks.py | 596 | CODE | |
| LOW | sdk/benchmark/agent_runner.py | 102 | CODE | |
| LOW | sdk/benchmark/agent_runner.py | 265 | CODE | |
| LOW | sdk/benchmark/acon_eval/retriever_sesrver.py | 322 | CODE | |
| LOW | sdk/benchmark/generic/runtime/task_adapter.py | 64 | CODE | |
| LOW | sdk/nexent/monitor/monitoring.py | 997 | CODE | |
| LOW | sdk/nexent/core/ext_components/aidp/aidp_search_tool.py | 167 | CODE | |
| LOW | sdk/nexent/core/tools/haotian_search_tool.py | 104 | CODE | |
| 22 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …d/ext_components/aidp/components/AidpCreateKbModal.tsx | 101 | const fileListRef = useRef<File[]>([]); | COMMENT |
| LOW | …ale]/models/components/model/ModelAdvancedSettings.tsx | 21 | InferenceFieldType, | COMMENT |
| LOW | …ale]/models/components/model/ModelAdvancedSettings.tsx | 41 | // Storage mapping (handled by caller via buildInferenceParamsPayload): | COMMENT |
| LOW | …ocale]/models/components/model/ModelCapacityFields.tsx | 281 | applyDefaultsOnEmpty = true, | COMMENT |
| LOW | …[locale]/models/components/model/ModelEditDialogV2.tsx | 301 | // catalog's `suggested_provider` namespace (deepseek, openai, jina, | COMMENT |
| LOW | …[locale]/models/components/model/ModelEditDialogV2.tsx | 401 | COMMENT | |
| LOW | …[locale]/models/components/model/ModelEditDialogV2.tsx | 621 | COMMENT | |
| LOW | frontend/app/[locale]/newchat/page.tsx | 221 | COMMENT | |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 1881 | // onto every reasoning / tool-call / source part emitted while a | COMMENT |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 1941 | // activate it as the current scope. Returns null when the chunk belongs | COMMENT |
| LOW | …/[locale]/newchat/adapter/remote-chat-model-adapter.ts | 2661 | } | COMMENT |
| LOW | …]/newchat/adapter/conversation-thread-list-adapter.tsx | 721 | continue; | COMMENT |
| LOW | frontend/features/workbench/WorkbenchPage.tsx | 181 | }, [runtimeMainThreadId]); | COMMENT |
| LOW | test/conftest.py | 261 | # Install a sane supabase mock at collection time so test modules that | COMMENT |
| LOW | …_components/aidp/mock_servers/aidp_mgmt_mock_server.py | 101 | # Directory for persisted runtime state. Lives next to this file so the mock | COMMENT |
| LOW | test/backend/__init__.py | 1 | # This file marks the test/backend directory as a Python package. | COMMENT |
| LOW | test/backend/app/test_evaluation_delete_app.py | 61 | # 1 delete_evaluation_set_impl | COMMENT |
| LOW | test/backend/utils/test_auth_utils.py | 141 | # still match; we also expose ``AppException`` and other exception classes | COMMENT |
| LOW | test/backend/adapters/test_jiuwen_sdk_adapter.py | 1361 | if name == "openjiuwen": | COMMENT |
| LOW | …st/backend/services/test_tool_configuration_service.py | 501 | # still have something to attach to. The stub mirrors the real function | COMMENT |
| LOW | deploy/docker/deploy.sh | 481 | echo "ENABLE_TERMINAL=\"${ENABLE_TERMINAL_SAVED}\"" | COMMENT |
| LOW | deploy/docker/compose/docker-compose.dev.yml | 1 | name: nexent | COMMENT |
| LOW | deploy/docker/compose/docker-compose.dev.yml | 21 | # logging: | COMMENT |
| LOW | deploy/docker/compose/docker-compose.dev.yml | 81 | # volumes: | COMMENT |
| LOW | deploy/docker/assets/scripts/v180_sync_user_metadata.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …loy/docker/assets/scripts/v220_sync_skill_directory.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …loy/docker/assets/monitoring/otel-collector-config.yml | 41 | exporters: [debug] | COMMENT |
| LOW | …loy/docker/assets/monitoring/otel-collector-config.yml | 61 | # | COMMENT |
| LOW | …loy/docker/assets/monitoring/otel-collector-config.yml | 81 | # LANGSMITH_PROJECT=nexent | COMMENT |
| LOW | deploy/common/config.example.yaml | 21 | # Local development image example: | COMMENT |
| LOW | backend/adapters/jiuwen_sdk_adapter.py | 21 | COMMENT | |
| LOW | backend/tool_collection/langchain/compute_tool.py | 1 | # from langchain_core.tools import tool, StructuredTool | COMMENT |
| LOW | backend/tool_collection/langchain/compute_tool.py | 21 | # return a * b | COMMENT |
| LOW | backend/tool_collection/langchain/compute_tool.py | 41 | # | COMMENT |
| LOW | backend/tool_collection/langchain/compute_tool.py | 61 | # description="Calculate the power of a number", | COMMENT |
| LOW | backend/consts/exceptions.py | 61 | COMMENT | |
| LOW | backend/services/model_management_service.py | 821 | } | COMMENT |
| LOW | backend/services/model_management_service.py | 1001 | COMMENT | |
| LOW | backend/services/agent_evaluation_service.py | 241 | # actually work *before* being stored as DRAFT / PUBLISHED. | COMMENT |
| LOW | backend/services/model_provider_service.py | 101 | COMMENT | |
| LOW | backend/services/image_service.py | 21 | COMMENT | |
| LOW | sdk/benchmark/tools/ctx_debugger/langfuse_export.py | 81 | COMMENT | |
| LOW | sdk/benchmark/manual_cases/test_benchmark.py | 41 | # with a deduplicated 6-field schema (~620 word budget) that merges | COMMENT |
| LOW | sdk/nexent/core/ext_components/aidp/aidp_search_tool.py | 221 | # ``kds_list`` are intersected with this set so permission changes | COMMENT |
| LOW | scripts/document_builder/build_docs.py | 121 | COMMENT | |
| LOW | .github/workflows/codeql_main.yml | 1 | # For most projects, this workflow file will not need changing; you simply need | COMMENT |
| LOW | .github/workflows/codeql.yml | 1 | # For most projects, this workflow file will not need changing; you simply need | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/agents/components/capability/tool/ToolConfigModal.tsx | 1125 | // Use robust ID comparison | COMMENT |
| MEDIUM | …/components/tool-config/KnowledgeBaseSelectorModal.tsx | 920 | // Use a more robust ID comparison to handle potential format differences | COMMENT |
| MEDIUM⚡ | test/backend/database/test_evaluator_db.py | 205 | # 2. Session harness – builds mock session.query(...).filter(...).all/first chains | COMMENT |
| MEDIUM | test/backend/database/test_evaluator_db.py | 129 | # database.client.get_db_session – wired lazily by the harness per test. | COMMENT |
| MEDIUM | test/backend/app/test_mock_user_management_app.py | 65 | """Test user signup endpoint with comprehensive coverage""" | STRING |
| MEDIUM | test/backend/services/test_skill_service.py | 3391 | # Use os.path.commonpath for robust cross-platform comparison | COMMENT |
| MEDIUM | test/backend/services/test_evaluation_pure_logic.py | 695 | # signature. The simplest robust test is to use a callable class instance | STRING |
| MEDIUM | backend/database/agent_evaluation_db.py | 657 | # Cascade-delete annotations by case_id (more robust than by agent_evaluation_id | COMMENT |
| MEDIUM | backend/utils/config_utils.py | 33 | """Helper function for processing list values, using JSON format for storage to facilitate parsing""" | STRING |
| LOW | sdk/nexent/core/agents/core_agent.py | 450 | # so just return an empty list here. | COMMENT |
| MEDIUM | sdk/nexent/core/models/openai_vlm.py | 52 | # robust against future module moves. | COMMENT |
| MEDIUM | sdk/nexent/skills/skill_manager.py | 902 | # robust against callers that prepend "./scripts/foo.py". | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/backend/app/test_northbound_base_app.py | 776 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 467 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 468 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 469 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 470 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 471 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 472 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 490 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 491 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 494 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 495 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 503 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 505 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 5713 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 6827 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 16027 | CODE | |
| MEDIUM | test/backend/services/test_agent_service.py | 16178 | CODE | |
| MEDIUM | test/backend/services/test_a2a_client_service.py | 1957 | CODE | |
| MEDIUM | test/backend/services/test_nl2skill_service.py | 483 | CODE | |
| MEDIUM | test/backend/services/test_agent_evaluation_service.py | 1034 | CODE | |
| MEDIUM | test/sdk/core/tools/test_knowledge_base_search_tool.py | 1755 | CODE | |
| MEDIUM | test/sdk/core/models/test_openai_llm.py | 2356 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | frontend/public/locales/en/common.json | 86 | "chatInterface.aiGeneratedContentWarning": "Content generated by AI, please verify carefully", | CODE |
| HIGH | frontend/hooks/agent/useAgentGeneration.ts | 208 | // AI-generated fields come from cache, other fields come from editedAgent | COMMENT |
| HIGH | test/backend/app/test_invitation_app.py | 225 | """Test invitation creation with auto-generated code""" | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …tend/app/[locale]/chat/streaming/chatStreamHandler.tsx | 444 | // Don't forget to save the last currentStep if it has contents | COMMENT |
| MEDIUM | .github/workflows/codeql_main.yml | 58 | # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how | COMMENT |
| MEDIUM | .github/workflows/codeql.yml | 58 | # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | test/backend/utils/test_monitoring.py | 67 | def test_function(): | CODE |
| LOW | …st/backend/services/test_agent_automation_scheduler.py | 16 | async def execute_task(self, task, trigger_type="SCHEDULED", lease_owner=None): | CODE |
| LOW | test/backend/services/test_evaluation_pure_logic.py | 636 | def helper(x): | CODE |
| LOW⚡ | test/sdk/monitor/test_monitoring.py | 1055 | def test_function(param1, param2="default"): | CODE |
| LOW⚡ | test/sdk/monitor/test_monitoring.py | 1068 | async def test_function(param1, param2="default"): | CODE |
| LOW | backend/utils/monitoring.py | 12 | async def my_function(): | STRING |
| LOW | backend/services/agent_automation/runner.py | 33 | async def execute_task( | CODE |
| LOW | sdk/nexent/monitor/monitoring.py | 2830 | async def my_function(): | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deploy/docker/assets/scripts/v180_sync_user_metadata.sh | 6 | # Usage: | COMMENT |
| LOW | …loy/docker/assets/scripts/v220_sync_skill_directory.sh | 13 | # Usage: | COMMENT |