BISHENG is an open LLM devops platform for next generation Enterprise AI applications. Powerful and comprehensive features include: GenAI workflow, RAG, Agent, Unified model management, Evaluation, SFT, Dataset Management, Enterprise-level System Management, Observability and more.
This report summarizes scanner evidence for dataelement/bisheng, a Python project with 12,032 GitHub stars. SynthScan examined 1,012,590 lines of code across 5694 source files, recording 13473 pattern matches distributed across 26 syntactic categories. The legacy adjusted pattern signal is 19.6 (Elevated 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? 8595 finding(s).
Are imports declared and package/API names verified? 1571 finding(s).
Are wrappers, guards, and repeated structures necessary? 10935 finding(s).
Which changes need focused human review? 13473 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 13473 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 | …/skills/react-component-refactor/resources/EXAMPLES.md | 168 | export function validateCreateChannelForm( | CODE |
| LOW | tools/scan_errcode_i18n.py | 29 | def locale_error_numeric_keys(bs_path: Path) -> set[int]: | CODE |
| LOW | tools/extract_errcodes_ast.py | 72 | def duplicate_code_definitions() -> dict[int, list[str]]: | CODE |
| LOW | features/v2.5.1/014-sso-org-realtime-sync/tasks.md | 359 | async def assert_parent_chain_exists(cls, external_ids: Iterable[str]) -> dict[str, Department]: | STRING |
| LOW | features/v2.5.1/020-llm-tenant-isolation/tasks.md | 215 | async def ainsert_server_with_models(cls, server, models, *, share_to_children: bool = True, operator=None): | CODE |
| LOW | features/v2.5.1/020-llm-tenant-isolation/tasks.md | 300 | async def aget_shared_server_ids_for_leaf(cls, leaf_id: int) -> list[int]: | CODE |
| LOW | features/v2.5.1/020-llm-tenant-isolation/spec.md | 127 | async def ainsert_server_with_models(cls, server: LLMServer, models: list[LLMModel]): | CODE |
| LOW | features/v2.5.1/020-llm-tenant-isolation/spec.md | 184 | async def aupdate_server_with_models(cls, server_id: int, data: dict, operator: UserPayload): | CODE |
| LOW | features/v2.5.1/012-tenant-resolver/tasks.md | 306 | async def _rewrite_fga_member_tuples(cls, user_id, old_tenant_id, new_tenant_id): | CODE |
| LOW | features/v2.5.1/012-tenant-resolver/tasks.md | 466 | def reconcile_user_tenant_assignments(): | CODE |
| LOW | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 621 | def reconcile_all_organizations(): | CODE |
| LOW⚡ | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 852 | def report_ts_conflicts_weekly(): | CODE |
| LOW⚡ | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 863 | def report_ts_conflicts_daily_escalation(): | CODE |
| LOW | features/v2.5.1/017-tenant-shared-storage/tasks.md | 452 | async def _list_root_shared_resources(self) -> list[dict]: | CODE |
| LOW | features/v2.5.1/017-tenant-shared-storage/tasks.md | 810 | def _translate_to_root_prefix(self, name: str) -> str: | STRING |
| LOW | features/v2.5.1/017-tenant-shared-storage/tasks.md | 832 | async def similarity_search_with_fallback(query, knowledge_ids, top_k=5, **kw): | STRING |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 228 | async def test_count_usage_strict_excludes_sibling_tenants(db_session, factories): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 239 | async def test_aggregate_root_usage_sums_self_plus_active_children(db_session, factories): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 252 | async def test_aggregate_root_usage_no_children(db_session, factories): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 379 | async def test_check_quota_leaf_exceeded(factories, login_user_child): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 390 | async def test_check_quota_root_hardcap_blocks_child(factories, login_user_child): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 415 | async def test_check_quota_admin_bypass(factories, login_user_admin): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 564 | async def test_root_hardcap_less_than_child_triggers_first(): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 567 | async def test_shared_resource_counts_only_root(): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 573 | async def test_root_saturated_blocks_all_children(): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 576 | async def test_strict_filter_no_inlist_leak(): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 582 | async def test_model_tokens_monthly_table_missing_returns_zero(): | CODE |
| LOW⚡ | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 586 | async def test_quota_tree_returns_root_and_active_children(client, factories, admin_cookie): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 598 | async def test_quota_tree_forbidden_for_non_super_admin(client, child_admin_cookie): | CODE |
| LOW | features/v2.5.1/016-tenant-quota-hierarchy/tasks.md | 603 | async def test_put_quota_accepts_storage_gb_key(client, factories, admin_cookie): | CODE |
| LOW | features/v2.5.1/019-admin-tenant-scope/tasks.md | 214 | async def clear_on_token_version_bump(cls, user_id: int) -> None: | CODE |
| LOW | features/v2.5.1/019-admin-tenant-scope/spec.md | 171 | async def clear_on_token_version_bump(cls, user_id: int): | CODE |
| LOW | features/v2.5.1/011-tenant-tree-model/tasks.md | 529 | - **全局超管列表获取**:新增 helper `async def _list_global_super_admins() -> list[int]`,内部调 `FGAClient.list_users(system:global, | STRING |
| LOW | features/v2.5.0/006-permission-migration/spec.md | 426 | async def _migrate_rbac_to_rebac_if_needed(): | CODE |
| LOW | …6.0/031-channel-source-subscription-reconcile/tasks.md | 45 | **逻辑**: 新增 `async def find_all_referenced_source_ids(self) -> set[str]`:读取当前租户所有 `channel.source_list` 列,在 Python 内展开求 | CODE |
| LOW | …6.0/031-channel-source-subscription-reconcile/tasks.md | 93 | **逻辑**: 新增 `async def reconcile_information_subscriptions(self) -> dict`(运行在调用方注入的某租户上下文内): | CODE |
| LOW | …/skills/react-component-refactor/resources/EXAMPLES.md | 168 | export function validateCreateChannelForm( | CODE |
| LOW | docs/PRD/2.6 RAG 检索上下文优化 PRD/2.6 RAG 检索上下文格式优化 PRD.md | 114 | def render_documents_to_llm_context(documents: List[Document]) -> str: | CODE |
| LOW | src/frontend/platform/src/contexts/alertContext.tsx | 131 | function removeFromNotificationList(index: string) { | CODE |
| LOW | src/frontend/platform/src/util/reactflowUtils.ts | 882 | export function connectedInputNodesOnHandle( | CODE |
| LOW | src/frontend/platform/src/util/reactflowUtils.ts | 1127 | export function updateComponentNameAndType( | CODE |
| LOW | src/frontend/platform/src/util/reactflowUtils.ts | 1132 | export function removeFileNameFromComponents(flow: FlowType) { | CODE |
| LOW | src/frontend/platform/src/util/flowUtils.ts | 482 | export function updateVariableNameByCondition(paramItem, questions) { | CODE |
| LOW | …c/frontend/platform/src/layout/licenseBannerGateway.ts | 14 | export function shouldFetchGatewayLicenseStatus( | CODE |
| LOW | src/frontend/platform/src/utils/userDisplayName.ts | 24 | export function buildMemberDisplayNameMap( | CODE |
| LOW | src/frontend/platform/src/utils/loginReturnTo.ts | 73 | export function rememberDesktopLoginReturnTo(): void { | CODE |
| LOW | …rm/src/components/chatComponent/buildTrigger/index.tsx | 140 | async function enforceMinimumLoadingTime( | CODE |
| LOW | …/components/bs-comp/knowledgeUploadComponent/index.tsx | 15 | function getKnowledgeUploadSizeLimitMB(file: File, appConfig: { uploadFileMaxSize?: number; uploadMediaMaxSize?: number | CODE |
| LOW | …mponents/bs-comp/knowledgeUploadComponent/DropZone.tsx | 12 | export function getKnowledgeUploadFormats( | CODE |
| LOW | …s-comp/chatComponent/CitationDocumentPreviewDrawer.tsx | 203 | function useResolvedCitationDetail(preview: CitationDocumentPreviewState | null) { | CODE |
| LOW | …s-comp/chatComponent/CitationDocumentPreviewDrawer.tsx | 255 | export function CitationDocumentPreviewContent({ | CODE |
| LOW | …s-comp/chatComponent/CitationDocumentPreviewDrawer.tsx | 312 | export default function CitationDocumentPreviewDrawer({ | CODE |
| LOW | …/src/components/bs-comp/chatComponent/citationUtils.ts | 127 | export function transformPrivateCitations(content: string) { | CODE |
| LOW | …/src/components/bs-comp/chatComponent/citationUtils.ts | 276 | export function getCitationDocumentFileType(detail?: ChatCitation | null) { | CODE |
| LOW⚡ | …/src/components/bs-comp/chatComponent/citationUtils.ts | 292 | export function getCitationDocumentPreviewUrl(detail?: ChatCitation | null) { | CODE |
| LOW⚡ | …/src/components/bs-comp/chatComponent/citationUtils.ts | 297 | export function getCitationDocumentDownloadUrl(detail?: ChatCitation | null) { | CODE |
| LOW⚡ | …/src/components/bs-comp/chatComponent/citationUtils.ts | 302 | export function isRagCitationMissingPreviewUrl(detail?: ChatCitation | null) { | CODE |
| LOW | …/src/components/bs-comp/chatComponent/citationUtils.ts | 423 | export function parseLegacyWebCitationContent(content: string) { | CODE |
| LOW | …/src/components/bs-comp/chatComponent/citationUtils.ts | 456 | function extractRagParagraphContent(value?: string | null) { | CODE |
| LOW | …/src/components/bs-comp/chatComponent/citationUtils.ts | 505 | export function buildCitationDocumentPreview(detail: ChatCitation | null, data: Partial<CitationDisplayData>): CitationP | CODE |
| 7485 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .cursor/skills/e2e-test/references/test-template.md | 35 | # ──────── Fixtures ──────── | COMMENT |
| MEDIUM | .cursor/skills/e2e-test/references/test-template.md | 77 | # ──────── Happy Path Tests ──────── | COMMENT |
| MEDIUM | .cursor/skills/e2e-test/references/test-template.md | 114 | # ──────── Error Path Tests ──────── | COMMENT |
| MEDIUM | .cursor/skills/e2e-test/references/test-template.md | 137 | # ──────── Permission Tests ──────── | COMMENT |
| MEDIUM | docker/deploy.sh | 2 | # ============================================================= | COMMENT |
| MEDIUM | docker/deploy.sh | 5 | # ============================================================= | COMMENT |
| MEDIUM | docker/deploy.sh | 20 | # ─── 颜色输出 ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 29 | # ─── 帮助 ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 66 | # ─── service 别名解析 ───────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 82 | # ─── 查看日志 ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 121 | # ─── 修改版本号 ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 148 | # ─── 进入容器 ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 167 | # ─── 更新镜像并重启 ─────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 189 | # ─── 重启容器 ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker/deploy.sh | 208 | # ─── 入口 ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | .claude/skills/e2e-test/references/test-template.md | 35 | # ──────── Fixtures ──────── | COMMENT |
| MEDIUM | .claude/skills/e2e-test/references/test-template.md | 77 | # ──────── Happy Path Tests ──────── | COMMENT |
| MEDIUM | .claude/skills/e2e-test/references/test-template.md | 114 | # ──────── Error Path Tests ──────── | COMMENT |
| MEDIUM | .claude/skills/e2e-test/references/test-template.md | 137 | # ──────── Permission Tests ──────── | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1483 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1485 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1489 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1491 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1499 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1501 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1509 | # ============================================ | COMMENT |
| MEDIUM⚡ | docs/blog/企业权限体系设计的前世今生.md | 1511 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1522 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1524 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1535 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1537 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1550 | # ============================================ | COMMENT |
| MEDIUM | docs/blog/企业权限体系设计的前世今生.md | 1552 | # ============================================ | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 24 | # ── RULE-1:common/core 不导入 domain/api ────────────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 37 | # ── RULE-2:database/models 不导入 domain ────────────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 47 | # ── RULE-3:Endpoint 不直接导入 database/models ──────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 58 | # ── RULE-4:domain.models 不导入 domain.services ─────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 68 | # ── RULE-5:API 层不跨模块互相导入 ───────────────────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 84 | # ── RULE-6:前端 store 不直接调 HTTP ─────────────────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 94 | # ── RULE-7:硬编码敏感信息检测 ───────────────────────────────────── | COMMENT |
| MEDIUM | scripts/arch-guard.sh | 122 | # ── RULE-9:业务模块不得感知 OpenFGA 基础设施(C4)─────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/test/approvalPage.test.tsx | 6 | // ── mocks ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/test/approvalPage.test.tsx | 57 | // ── fixtures ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/test/approvalPage.test.tsx | 131 | // ── tests ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 17 | // ── Lazy tree (F038) ─────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 56 | // ── CRUD ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 89 | // ── Mount as Child Tenant ────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 116 | // ── Move ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 127 | // ── Members ──────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/department.ts | 277 | // ── Admins ───────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/tenant.ts | 11 | // ── Admin CRUD ────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/tenant.ts | 48 | // ── Quota ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/tenant.ts | 63 | // ── Tenant Admins ──────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/tenant.ts | 87 | // ── Tenant Users ───────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/controllers/API/tenant.ts | 120 | // ── User-facing ────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/pages/ApprovalPage/index.tsx | 46 | // ─── helpers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/pages/ApprovalPage/index.tsx | 124 | // ─── Condition field / value metadata ──────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/pages/ApprovalPage/index.tsx | 215 | // ─── Add/Edit dialogs ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/pages/ApprovalPage/index.tsx | 913 | // ─── Approval progress timeline (for exception detail) ─────────────────────── | COMMENT |
| MEDIUM | src/frontend/platform/src/pages/ApprovalPage/index.tsx | 1114 | // ─── Main page ─────────────────────────────────────────────────────────────── | COMMENT |
| 1573 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/scan_errcode_i18n.py | 7 | CODE | |
| LOW | tools/apply_missing_errcode_i18n.py | 8 | CODE | |
| LOW | tools/extract_errcodes_ast.py | 2 | CODE | |
| LOW | …openapi-auth-and-identity/generate_openapi_contract.py | 3 | CODE | |
| LOW | scripts/gen_conversation_export_template.py | 20 | CODE | |
| LOW | src/backend/bisheng_langchain/text_splitter.py | 3 | CODE | |
| LOW | src/backend/bisheng_langchain/retrievers/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/retrievers/__init__.py | 2 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 3 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 4 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 5 | CODE | |
| LOW | src/backend/bisheng_langchain/embeddings/wenxin.py | 1 | CODE | |
| LOW | …backend/bisheng_langchain/embeddings/huggingfacegte.py | 3 | CODE | |
| LOW | …backend/bisheng_langchain/embeddings/huggingfacegte.py | 5 | CODE | |
| LOW | …isheng_langchain/embeddings/huggingfacemultilingual.py | 3 | CODE | |
| LOW | …isheng_langchain/embeddings/huggingfacemultilingual.py | 5 | CODE | |
| LOW | …backend/bisheng_langchain/embeddings/host_embedding.py | 1 | CODE | |
| LOW | …end/bisheng_langchain/embeddings/interface/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/memory/__init__.py | 1 | CODE | |
| LOW | …ackend/bisheng_langchain/gpts/tools/calculator/tool.py | 1 | CODE | |
| LOW | …ackend/bisheng_langchain/gpts/tools/calculator/tool.py | 2 | CODE | |
| LOW | …ackend/bisheng_langchain/gpts/tools/calculator/tool.py | 4 | CODE | |
| LOW | …ackend/bisheng_langchain/gpts/tools/calculator/tool.py | 7 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/tools/message/wechat.py | 6 | CODE | |
| LOW | …/backend/bisheng_langchain/gpts/tools/message/email.py | 8 | CODE | |
| LOW | …ckend/bisheng_langchain/gpts/tools/message/dingding.py | 1 | CODE | |
| LOW | …ckend/bisheng_langchain/gpts/tools/message/dingding.py | 1 | CODE | |
| LOW | …ckend/bisheng_langchain/gpts/tools/message/dingding.py | 6 | CODE | |
| LOW | …d/bisheng_langchain/gpts/tools/api_tools/tianyancha.py | 2 | CODE | |
| LOW | …d/bisheng_langchain/gpts/tools/api_tools/tianyancha.py | 4 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/tools/api_tools/jina.py | 6 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/tools/api_tools/sina.py | 3 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/tools/api_tools/base.py | 1 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/code_interpreter/tool.py | 6 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/code_interpreter/tool.py | 10 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/code_interpreter/tool.py | 11 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/agent_types/__init__.py | 1 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/agent_types/__init__.py | 1 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/agent_types/__init__.py | 5 | CODE | |
| LOW | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 1 | CODE | |
| LOW | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 12 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 2 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 3 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 4 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 5 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 6 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 6 | CODE | |
| LOW | …eng_langchain/gpts/prompts/breif_description_prompt.py | 1 | CODE | |
| LOW | …bisheng_langchain/gpts/prompts/assistant_prompt_opt.py | 1 | CODE | |
| LOW | …d/bisheng_langchain/gpts/prompts/react_agent_prompt.py | 8 | CODE | |
| LOW | …isheng_langchain/gpts/prompts/opening_dialog_prompt.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 1 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/minimax.py | 2 | CODE | |
| 1304 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | features/v2.5.1/018-resource-owner-transfer/tasks.md | 227 | except Exception as exc: | CODE |
| LOW | features/v2.5.1/013-tenant-fga-tree/tasks.md | 277 | except Exception as e: # noqa: BLE001 — gray period tolerance | CODE |
| LOW | features/v2.5.1/013-tenant-fga-tree/tasks.md | 546 | except Exception as e: # noqa: BLE001 | CODE |
| LOW | features/v2.5.1/014-sso-org-realtime-sync/tasks.md | 612 | except Exception as e: | CODE |
| LOW | features/v2.5.1/014-sso-org-realtime-sync/tasks.md | 634 | except Exception as e: | CODE |
| LOW | features/v2.5.1/012-tenant-resolver/tasks.md | 486 | except Exception as e: | CODE |
| LOW | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 428 | except Exception as e: | CODE |
| LOW | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 466 | except Exception: | CODE |
| LOW | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 646 | except Exception: | CODE |
| LOW⚡ | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 857 | except Exception: | CODE |
| LOW⚡ | features/v2.5.1/015-ldap-reconcile-celery/tasks.md | 868 | except Exception: | CODE |
| LOW | …ures/v2.5.1/019-admin-tenant-scope/role-revoke-hook.md | 37 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | features/v2.5.0/008-resource-rebac-adaptation/tasks.md | 139 | except Exception as e: | CODE |
| LOW | features/v2.5.0/003-user-group/tasks.md | 138 | except Exception: | CODE |
| LOW | features/v2.5.0/003-user-group/spec.md | 208 | except Exception: | CODE |
| LOW | features/v2.6.0/027-rebac-list-perf-optim/spec.md | 239 | except Exception as exc: | CODE |
| LOW | scripts/gen_conversation_export_template.py | 193 | except Exception: # pragma: no cover - style add failure is non-critical | CODE |
| LOW | scripts/gen_conversation_export_template.py | 213 | except Exception: | CODE |
| LOW | scripts/gen_conversation_export_template.py | 220 | except Exception: | CODE |
| LOW | src/backend/AGENTS.md | 49 | except Exception: | CODE |
| LOW | src/backend/AGENTS.md | 55 | except Exception: | CODE |
| LOW | src/backend/CLAUDE.md | 49 | except Exception: | CODE |
| LOW | src/backend/CLAUDE.md | 55 | except Exception: | CODE |
| LOW | …backend/bisheng_langchain/embeddings/host_embedding.py | 76 | except Exception: | CODE |
| LOW | …backend/bisheng_langchain/embeddings/host_embedding.py | 121 | except Exception as e: | CODE |
| LOW | …backend/bisheng_langchain/embeddings/host_embedding.py | 175 | except Exception: | CODE |
| LOW | …ckend/bisheng_langchain/embeddings/interface/wenxin.py | 69 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/linsight/utils.py | 115 | except Exception: | CODE |
| LOW | …c/backend/bisheng_langchain/gpts/auto_tool_selected.py | 51 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/gpts/auto_optimization.py | 85 | except Exception as e: | CODE |
| LOW | …/backend/bisheng_langchain/gpts/tools/message/email.py | 85 | except Exception as e: | CODE |
| LOW | …_langchain/gpts/tools/code_interpreter/e2b_executor.py | 92 | except Exception: | CODE |
| LOW | …_langchain/gpts/tools/code_interpreter/e2b_executor.py | 352 | except Exception as e: | CODE |
| LOW | …langchain/gpts/tools/code_interpreter/base_executor.py | 322 | except Exception: | CODE |
| LOW | …langchain/gpts/tools/code_interpreter/base_executor.py | 338 | except Exception: | CODE |
| LOW | …/bisheng_langchain/gpts/tools/code_interpreter/tool.py | 43 | except Exception: | CODE |
| LOW | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 107 | except Exception as e: | CODE |
| LOW⚡ | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 127 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 164 | except Exception: | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 231 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 291 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 308 | except Exception: | CODE |
| LOW | …end/bisheng_langchain/chat_models/interface/minimax.py | 107 | except Exception as e: | CODE |
| LOW | …kend/bisheng_langchain/chat_models/interface/xunfei.py | 228 | except Exception as e: | CODE |
| LOW | …kend/bisheng_langchain/chat_models/interface/openai.py | 55 | except Exception as e: | CODE |
| LOW | …kend/bisheng_langchain/chat_models/interface/wenxin.py | 103 | except Exception as e: | CODE |
| LOW | …end/bisheng_langchain/chat_models/interface/zhipuai.py | 68 | except Exception as e: | CODE |
| LOW | …d/bisheng_langchain/agents/llm_functions_agent/base.py | 54 | except Exception: | CODE |
| LOW | …gchain/agents/chatglm_functions_agent/output_parser.py | 45 | except Exception as e: | CODE |
| LOW | …gchain/agents/chatglm_functions_agent/output_parser.py | 73 | except Exception as e: | CODE |
| LOW⚡ | src/backend/bisheng_langchain/utils/openapi.py | 8 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 15 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 39 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 141 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 146 | except Exception as e2: | CODE |
| LOW | src/backend/bisheng_langchain/rag/bisheng_rag_tool.py | 197 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/rag/bisheng_rag_tool.py | 249 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/rag/api/fastgpt_rag.py | 176 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/rag/api/fastgpt_rag.py | 318 | except Exception as e: | CODE |
| LOW | src/backend/bisheng_langchain/rag/api/dify_rag.py | 157 | except Exception as e: | CODE |
| 1180 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/backend/bisheng_langchain/embeddings/wenxin.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | …backend/bisheng_langchain/embeddings/host_embedding.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/qwen.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | holds any model parameters valid for `create` call not explicitly specified. | STRING |
| HIGH | src/backend/bisheng_langchain/embeddings/wenxin.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | …backend/bisheng_langchain/embeddings/host_embedding.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | …eng_langchain/gpts/tools/dalle_image_generator/tool.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | …d/bisheng_langchain/gpts/tools/api_tools/tianyancha.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | …backend/bisheng_langchain/gpts/tools/api_tools/base.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/qwen.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | …bisheng_langchain/utils/azure_dalle_image_generator.py | 0 | validate that api key and python package exists in environment. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/qwen.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | timeout for requests to openai completion api. default is 600 seconds. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | number of chat completions to generate for each prompt. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/qwen.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | the model name to pass to tiktoken when using this class. tiktoken is used to count the number of tokens in documents to | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/sensetime.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/qwen.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/zhipuai.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | get the parameters used to invoke the model for the callbacks. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | wrapper around proxy chat large language models. to use, the environment variable ``elemai_api_key`` set with your api k | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/wenxin.py | 0 | wrapper around proxy chat large language models. to use, the environment variable ``elemai_api_key`` set with your api k | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 0 | wrapper around proxy chat large language models. to use, the environment variable ``elemai_api_key`` set with your api k | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/minimax.py | 0 | get the tokens present in the text with tiktoken package. | STRING |
| HIGH | src/backend/bisheng_langchain/chat_models/host_llm.py | 0 | get the tokens present in the text with tiktoken package. | STRING |
| 49 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/gen_conversation_export_template.py | 193 | except Exception: # pragma: no cover - style add failure is non-critical | CODE |
| HIGH | scripts/gen_conversation_export_template.py | 213 | except Exception: | CODE |
| HIGH | scripts/gen_conversation_export_template.py | 220 | except Exception: | CODE |
| HIGH | src/backend/bisheng_langchain/linsight/utils.py | 115 | except Exception: | CODE |
| HIGH | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 238 | except (PermissionError, OSError): | CODE |
| HIGH | …heng_langchain/vectorstores/elastic_keywords_search.py | 137 | except elasticsearch.exceptions.NotFoundError: | CODE |
| HIGH | …d/test/workstation/test_daily_chat_citation_handles.py | 161 | except json.JSONDecodeError: | CODE |
| HIGH | src/backend/test/tenant/test_tenant_context_vars.py | 127 | except RuntimeError: | CODE |
| HIGH | src/backend/test/linsight/_e2e_track_a_real_llm.py | 116 | except Exception: | CODE |
| HIGH | src/backend/test/linsight/_e2e_abc_runner.py | 86 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_tenant_management_ui.py | 89 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_tenant_quota_hierarchy.py | 87 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_tenant_code_autogen.py | 145 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_tenant_code_autogen.py | 193 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_tenant_code_autogen.py | 265 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_org_sync_wecom.py | 93 | except httpx.HTTPError: | CODE |
| HIGH | …ckend/test/e2e/test_e2e_f041_knowledge_space_select.py | 125 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/test_e2e_rebac_core.py | 122 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/helpers/cleanup.py | 63 | except Exception: | CODE |
| HIGH | src/backend/test/e2e/helpers/cleanup.py | 172 | except Exception: | CODE |
| HIGH | src/backend/scripts/migrate_mysql_to_dm.py | 61 | except Exception: # pragma: no cover - script may run outside bisheng venv | CODE |
| HIGH | src/backend/scripts/shougang_init_org_users.py | 307 | except Exception: | CODE |
| HIGH | src/backend/scripts/knowledge_data_convert.py | 34 | except Exception: | CODE |
| HIGH | src/backend/scripts/dm_feasibility_check.py | 85 | except Exception: | CODE |
| HIGH | src/backend/scripts/dm_feasibility_check.py | 92 | except Exception: | CODE |
| HIGH | …ackend/scripts/cleanup_f048_user_group_admin_grants.py | 1051 | except KeyError: | CODE |
| HIGH | …eng/workstation/domain/services/workstation_service.py | 715 | except Exception: | CODE |
| HIGH | …eng/workstation/domain/services/workstation_service.py | 753 | except Exception: | CODE |
| HIGH | …eng/workstation/domain/services/workstation_service.py | 1546 | except (json.JSONDecodeError, TypeError): | CODE |
| HIGH | …ng/citation/domain/services/citation_handle_service.py | 147 | except (TypeError, ValueError): | CODE |
| HIGH | src/backend/bisheng/core/database/dialect_helpers.py | 67 | except (ImportError, AttributeError): | CODE |
| HIGH | src/backend/bisheng/core/database/dialect_helpers.py | 113 | except ImportError: | CODE |
| HIGH | src/backend/bisheng/core/database/dialect_helpers.py | 111 | except (ImportError, AttributeError): | CODE |
| HIGH | src/backend/bisheng/core/database/connection.py | 421 | except Exception: | CODE |
| HIGH | …re/database/alembic/versions/v2_5_0_f003_user_group.py | 39 | except Exception: | CODE |
| HIGH | …re/database/alembic/versions/v2_5_0_f003_user_group.py | 57 | except Exception: | CODE |
| HIGH | src/backend/bisheng/core/cache/utils.py | 324 | except io.UnsupportedOperation: | CODE |
| HIGH | …/ai/rerank/xinference/client/restful/restful_client.py | 38 | except Exception: | CODE |
| HIGH | …rank/xinference/client/restful/async_restful_client.py | 49 | except Exception: | CODE |
| HIGH | …ht/builtin_skills/bisheng-docx/scripts/docx_helpers.py | 368 | except KeyError: | CODE |
| HIGH | …uiltin_skills/bisheng-xlsx/scripts/inspect_workbook.py | 229 | except Exception: | CODE |
| HIGH | src/backend/bisheng/linsight/domain/task_exec.py | 1891 | except asyncio.CancelledError: | CODE |
| HIGH | src/backend/bisheng/linsight/domain/utils.py | 1103 | except (json.JSONDecodeError, TypeError): | CODE |
| HIGH | …/bisheng/linsight/domain/services/workspace_backend.py | 332 | except UnicodeDecodeError: | CODE |
| HIGH | …kend/bisheng/linsight/domain/services/agent_factory.py | 564 | except (json.JSONDecodeError, ValueError): | CODE |
| HIGH | …ackend/bisheng/linsight/domain/services/skill_store.py | 528 | except OSError: | CODE |
| HIGH | …end/bisheng/linsight/domain/services/workbench_impl.py | 2276 | except OSError: | CODE |
| HIGH | src/backend/bisheng/dsh/admin_runtime.py | 297 | except Exception: | CODE |
| HIGH | src/backend/bisheng/dsh/admin_runtime.py | 308 | except Exception: | CODE |
| HIGH | src/backend/bisheng/dsh/admin_runtime.py | 316 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1194 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1207 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1025 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1038 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1137 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1184 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1356 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 977 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1016 | except Exception: | CODE |
| HIGH | src/backend/bisheng/utils/docx_temp.py | 1348 | except Exception: | CODE |
| 34 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/apply_missing_errcode_i18n.py | 262 | CODE | |
| LOW | tools/extract_errcodes_ast.py | 29 | CODE | |
| LOW | src/backend/bisheng_langchain/text_splitter.py | 18 | CODE | |
| LOW | src/backend/bisheng_langchain/text_splitter.py | 49 | CODE | |
| LOW | src/backend/bisheng_langchain/text_splitter.py | 170 | CODE | |
| LOW | …/backend/bisheng_langchain/retrievers/mix_es_vector.py | 25 | CODE | |
| LOW | …/backend/bisheng_langchain/retrievers/mix_es_vector.py | 70 | CODE | |
| LOW | src/backend/bisheng_langchain/gpts/load_tools.py | 164 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 178 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 497 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 210 | CODE | |
| LOW | …kend/bisheng_langchain/gpts/tools/api_tools/openapi.py | 24 | CODE | |
| LOW | …kend/bisheng_langchain/gpts/tools/api_tools/openapi.py | 59 | CODE | |
| LOW | …kend/bisheng_langchain/gpts/tools/api_tools/openapi.py | 111 | CODE | |
| LOW | …kend/bisheng_langchain/gpts/tools/api_tools/openapi.py | 137 | CODE | |
| LOW | …backend/bisheng_langchain/gpts/tools/api_tools/sina.py | 86 | CODE | |
| LOW | …d/bisheng_langchain/gpts/tools/api_tools/macro_data.py | 430 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 64 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 84 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 105 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 236 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 313 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/minimax.py | 53 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/minimax.py | 72 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 53 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 73 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 273 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 322 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/wenxin.py | 53 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/wenxin.py | 72 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/qwen.py | 54 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/qwen.py | 86 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/qwen.py | 225 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/qwen.py | 290 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 52 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 71 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/zhipuai.py | 50 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/zhipuai.py | 69 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/zhipuai.py | 90 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 53 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 73 | CODE | |
| LOW | …end/bisheng_langchain/chat_models/interface/minimax.py | 25 | CODE | |
| LOW | …sheng_langchain/agents/chatglm_functions_agent/base.py | 165 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/openapi.py | 12 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 9 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 33 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 10 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 34 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 11 | CODE | |
| LOW | src/backend/bisheng_langchain/utils/wrap_function.py | 35 | CODE | |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 83 | CODE | |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 120 | CODE | |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 169 | CODE | |
| LOW | src/backend/bisheng_langchain/input_output/output.py | 216 | CODE | |
| LOW | src/backend/bisheng_langchain/rag/api/dify_rag.py | 117 | CODE | |
| LOW | …ckend/bisheng_langchain/rag/rerank/rerank_benchmark.py | 80 | CODE | |
| LOW | …bisheng_langchain/rag/init_retrievers/mix_retriever.py | 62 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 297 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 448 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/retriever.py | 77 | CODE | |
| 408 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/backend/bisheng_langchain/rag/api/fastgpt_rag.py | 45 | "parentId": null, | STRING |
| HIGH | src/backend/bisheng_langchain/rag/api/fastgpt_rag.py | 88 | "parentId": null, | STRING |
| HIGH | src/backend/bisheng_langchain/rag/api/fastgpt_rag.py | 111 | --form 'data="{\"datasetId\":\"6593e137231a2be9c5603ba7\",\"parentId\":null,\"trainingType\":\"chunk\",\"chunkSize\" | STRING |
| HIGH | src/backend/test/tenant/test_tenant_storage_listing.py | 91 | ``{used || 0}/{quota}GB``).""" | STRING |
| HIGH | src/backend/test/dsh_market/test_market.py | 40 | "node_modules/company-demo/index.js": b"export function apply(ctx) { return undefined }", | CODE |
| HIGH | src/backend/test/linsight/_e2e_llm_resilience_runner.py | 17 | cd src/backend && python test/linsight/_e2e_llm_resilience_runner.py | STRING |
| HIGH | src/backend/test/linsight/_e2e_track_a_real_llm.py | 14 | cd src/backend && config=config.yaml python test/linsight/_e2e_track_a_real_llm.py | STRING |
| HIGH | src/backend/test/linsight/test_e2e_abc.py | 24 | cd src/backend && export config=config.yaml | STRING |
| HIGH | src/backend/test/linsight/_e2e_abc_runner.py | 14 | cd src/backend && config=config.yaml python test/linsight/_e2e_abc_runner.py | STRING |
| HIGH | src/backend/test/linsight/test_e2e_llm_resilience.py | 15 | cd src/backend && uv run pytest test/linsight/test_e2e_llm_resilience.py -v -m e2e | STRING |
| HIGH | src/backend/test/admin/test_admin_tenant_scope_api.py | 206 | """AC-02 edge: no active scope → both fields null, HTTP 200.""" | STRING |
| HIGH | src/backend/test/dsh/test_management_settings.py | 56 | session.add(Config(key="dsh_management", value='{"enabled":false,"download_url":null}')) | CODE |
| HIGH⚡ | src/backend/test/dsh/test_management_settings.py | 171 | session.add(Config(key="dsh_management", value='{"enabled":true,"download_url":null}')) | CODE |
| HIGH⚡ | …wledge/test_converge_media_no_asr_transcript_script.py | 14 | '"code": "", "message": "", "output": null, "usage": null}' | CODE |
| HIGH⚡ | …wledge/test_converge_media_no_asr_transcript_script.py | 24 | '{"request_id": "abc", "status_code": 200, "output": null, "usage": null}' | CODE |
| HIGH | src/backend/scripts/converge_media_no_asr_transcript.py | 9 | {"status_code": 200, "request_id": "...", "code": "", "message": "", "output": null, "usage": null} | STRING |
| HIGH | src/backend/bisheng/admin/api/endpoints/tenant_scope.py | 81 | Body: ``{tenant_id: int | null}``. Passing ``null`` clears the Redis | STRING |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 758 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '总Q | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 759 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '总应 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 760 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '总文 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 761 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '总用 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 762 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '总知 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 763 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '新增 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 764 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '新增 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 765 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '点赞 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 766 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (10, '点赞 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 773 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, 'To | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 774 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, 'To | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 775 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '不同 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 776 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '会话 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 777 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '会话 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 778 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总Q | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 779 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总应 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 780 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总文 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 781 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总文 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 782 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总文 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 783 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '总用 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 784 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '新增 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 785 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '最大 | CODE |
| HIGH⚡ | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 786 | INSERT INTO dashboard_component (dashboard_id, title, type, dataset_code, data_config, style_config, id) VALUES (11, '最大 | CODE |
| HIGH | src/backend/bisheng/utils/linked_list.py | 106 | elif index > (self.length() - 1): | CODE |
| HIGH | src/backend/bisheng/utils/linked_list.py | 172 | print(double_link_list.length()) | CODE |
| HIGH | src/backend/bisheng/utils/linked_list.py | 206 | print(double_link_list.length()) | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 52 | if (source != null) { | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 53 | if (source.containsKey("title") && source["title"] != null) { | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 56 | if (source.containsKey("content") && source["content"] != null) { | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 62 | if (keyword == null) { | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 65 | String value = keyword.toString(); | CODE |
| HIGH⚡ | …/bisheng/channel/domain/services/article_es_service.py | 66 | if (value.length() == 0) { | CODE |
| HIGH⚡ | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 664 | "() => window.MathJax && window.MathJax.typesetPromise", timeout=self.DEFAULT_TIMEOUT | CODE |
| HIGH⚡ | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 666 | page.evaluate("() => window.MathJax && window.MathJax.typesetPromise()") | CODE |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 47 | logger.warning("Playwright Not available. Please install: pip install playwright && playwright install chromium") | CODE |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 406 | "Playwright Not installed. Please install: pip install playwright && playwright install chromium" | CODE |
| HIGH | …g/knowledge/domain/services/knowledge_space_service.py | 2075 | # Default order: update_time desc (fall back to create_time / id when null). | COMMENT |
| HIGH | src/backend/bisheng/api/v1/mark_task.py | 246 | if linked.length() == 1 and linked.head().data == chat_id: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/backend/bisheng_langchain/retrievers/ensemble.py | 168 | # Create a union of all unique documents in the input doc_lists | COMMENT |
| MEDIUM | src/backend/bisheng_langchain/gpts/utils.py | 1 | # This module is used to import any langchain class by name. | COMMENT |
| MEDIUM | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 40 | # Define the function that determines whether to continue or not | COMMENT |
| MEDIUM | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 56 | # Define the function to execute tools | COMMENT |
| MEDIUM | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 67 | # Define the two nodes we will cycle between | COMMENT |
| MEDIUM⚡ | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 138 | # Define the function that determines whether to continue or not | COMMENT |
| MEDIUM⚡ | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 148 | # Define the function to execute tools | COMMENT |
| MEDIUM⚡ | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 155 | # Define the two nodes we will cycle between | COMMENT |
| MEDIUM | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 92 | # Define the function to execute tools | COMMENT |
| MEDIUM⚡ | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 134 | # Define a new graph | COMMENT |
| MEDIUM⚡ | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 137 | # Define the two nodes we will cycle between | COMMENT |
| MEDIUM | src/backend/bisheng_langchain/rag/utils.py | 1 | # This module is used to import any langchain class by name. | COMMENT |
| MEDIUM⚡ | src/backend/bisheng_langchain/vectorstores/milvus.py | 336 | # Create the text field | COMMENT |
| MEDIUM⚡ | src/backend/bisheng_langchain/vectorstores/milvus.py | 338 | # Create the primary key field | COMMENT |
| MEDIUM⚡ | src/backend/bisheng_langchain/vectorstores/milvus.py | 341 | # Create the vector field, supports binary or float vectors | COMMENT |
| MEDIUM⚡ | src/backend/bisheng_langchain/vectorstores/milvus.py | 345 | # Create the schema for the collection | COMMENT |
| MEDIUM⚡ | src/backend/bisheng_langchain/vectorstores/milvus.py | 350 | # Create the collection | COMMENT |
| MEDIUM | src/backend/bisheng_langchain/vectorstores/milvus.py | 206 | # Create the connection to the server | COMMENT |
| MEDIUM⚡ | src/backend/test/tenant/test_tenant_auth.py | 91 | # Create a token without tenant_id (simulating pre-v2.5 token) | COMMENT |
| MEDIUM⚡ | …ledge/test_list_space_children_excludes_non_primary.py | 144 | # Create a document with two versions: V1=non-primary, V2=primary | COMMENT |
| MEDIUM | src/backend/test/_legacy/test_api.py | 119 | # Create the directory if it doesn't exist | COMMENT |
| MEDIUM⚡ | src/backend/test/e2e/test_e2e_org_sync.py | 232 | # Create a config to delete | COMMENT |
| MEDIUM⚡ | src/backend/test/e2e/test_e2e_department_tree.py | 320 | # Create a child first | COMMENT |
| MEDIUM | src/backend/test/e2e/test_e2e_department_tree.py | 342 | # Create a dept | COMMENT |
| MEDIUM⚡ | src/backend/test/e2e/test_e2e_tenant_management_ui.py | 320 | # Create a test user | COMMENT |
| MEDIUM | src/backend/test/e2e/test_e2e_tenant_management_ui.py | 406 | # Create a tenant with admin user | COMMENT |
| MEDIUM | src/backend/test/e2e/test_e2e_role_menu_quota.py | 221 | # Create a role first | COMMENT |
| MEDIUM⚡ | src/backend/test/e2e/test_e2e_role_menu_quota.py | 292 | # Create a test role | COMMENT |
| MEDIUM | src/backend/scripts/base_telemetry_events_reindex.py | 4 | "mappings": { # Defining the indexed Mapping | CODE |
| MEDIUM | src/backend/bisheng/database/models/flow.py | 158 | # Create a default version | COMMENT |
| MEDIUM | src/backend/bisheng/database/models/audit_log.py | 54 | CREATE_ROLE = "create_role" # Create a Role | CODE |
| MEDIUM⚡ | src/backend/bisheng/core/cache/utils.py | 54 | # Create the destination folder if it doesn't exist | COMMENT |
| MEDIUM⚡ | src/backend/bisheng/core/cache/utils.py | 67 | # Create the destination folder if it doesn't exist | COMMENT |
| MEDIUM | src/backend/bisheng/core/cache/utils.py | 172 | # Create the full file path | COMMENT |
| MEDIUM | src/backend/bisheng/core/cache/utils.py | 235 | # Create the folder if it doesn't exist | COMMENT |
| MEDIUM | src/backend/bisheng/core/cache/utils.py | 267 | # Create the folder if it doesn't exist | COMMENT |
| MEDIUM | src/backend/bisheng/core/cache/utils.py | 331 | # Create the folder if it doesn't exist | COMMENT |
| MEDIUM⚡ | src/backend/bisheng/core/storage/minio/minio_storage.py | 569 | # This method is intended for streaming downloads, returning the raw response object for the caller to handle th | COMMENT |
| MEDIUM | src/backend/bisheng/core/ai/rerank/rrf_rerank.py | 58 | # Create a union of all unique documents in the input doc_lists | COMMENT |
| MEDIUM | src/backend/bisheng/linsight/api/endpoints/linsight.py | 619 | # Creating an Idea Task Message Flow websocket | COMMENT |
| MEDIUM | …end/bisheng/linsight/domain/services/workbench_impl.py | 1931 | # Create a task dictionary for quick lookups | COMMENT |
| MEDIUM | …end/bisheng/message/domain/services/message_service.py | 528 | # Create the message with action_code stored on model for reliable routing | COMMENT |
| MEDIUM | src/backend/bisheng/utils/docx_temp.py | 464 | # Create a new paragraph for the subsequent text and update itcurrent_paragraph | COMMENT |
| MEDIUM | src/backend/bisheng/utils/docx_temp.py | 495 | # Create a new paragraph for the subsequent text | COMMENT |
| MEDIUM | src/backend/bisheng/utils/docx_temp.py | 521 | # Create a new paragraph element | COMMENT |
| MEDIUM | src/backend/bisheng/utils/docx_temp.py | 1266 | # Create a new paragraph | COMMENT |
| MEDIUM | src/backend/bisheng/utils/docx_temp.py | 307 | paragraphs_to_process = list(doc.paragraphs) # Create a copy as we may modify the paragraph structure | CODE |
| MEDIUM | src/backend/bisheng/utils/async_utils.py | 200 | # Creating the task inside ctx.run() propagates all ContextVars | COMMENT |
| MEDIUM | src/backend/bisheng/utils/threadpool.py | 120 | # Create a thread pool manager | COMMENT |
| MEDIUM | src/backend/bisheng/utils/linked_list.py | 110 | # Create a new section | COMMENT |
| MEDIUM | src/backend/bisheng/utils/http_middleware.py | 1 | # Define a custom middleware class | COMMENT |
| MEDIUM | src/backend/bisheng/utils/validate.py | 57 | # Create an empty dictionary to serve as a separate namespace | COMMENT |
| MEDIUM⚡ | …/utils/markdown_cmpnt/md_to_docx/provider/docx_plus.py | 18 | # Create the w:hyperlink tag and add needed values | COMMENT |
| MEDIUM⚡ | …/utils/markdown_cmpnt/md_to_docx/provider/docx_plus.py | 21 | # Create a w:r element | COMMENT |
| MEDIUM⚡ | …/utils/markdown_cmpnt/md_to_docx/provider/docx_plus.py | 23 | # Create a new w:rPr element | COMMENT |
| MEDIUM | …bisheng/common/services/telemetry/telemetry_service.py | 30 | "mappings": { # Defining the indexed Mapping | CODE |
| MEDIUM | …bisheng/common/services/telemetry/telemetry_service.py | 107 | # Create a semaphore to limit the number of concurrency | COMMENT |
| MEDIUM | …g/knowledge/domain/services/knowledge_space_service.py | 4756 | # Create the folder explicitly so empty folders exist in tmp_dir | COMMENT |
| MEDIUM | …ng/knowledge/domain/services/knowledge_file_service.py | 163 | # Create a new dictionary to store updated metadata | COMMENT |
| MEDIUM⚡ | src/backend/bisheng/api/v1/callback.py | 119 | # Create a formatted message. | COMMENT |
| 8 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/gen_conversation_export_template.py | 65 | def _set_cjk_font(run_or_style_element, font_name: str) -> None: | CODE |
| LOW | scripts/gen_conversation_export_template.py | 101 | def _set_doc_defaults(doc) -> None: | CODE |
| LOW | scripts/gen_conversation_export_template.py | 137 | def _set_page_size_a4(section) -> None: | CODE |
| LOW | src/backend/bisheng_langchain/text_splitter.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/retrievers/__init__.py | 4 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/embeddings/__init__.py | 7 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/embeddings/wenxin.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | …backend/bisheng_langchain/embeddings/host_embedding.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …end/bisheng_langchain/embeddings/interface/__init__.py | 3 | __all__ = ['WenxinEmbeddingClient'] | CODE |
| LOW | src/backend/bisheng_langchain/memory/__init__.py | 3 | __all__ = ['ConversationRedisMemory'] | CODE |
| LOW | src/backend/bisheng_langchain/gpts/assistant.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | …eng_langchain/gpts/tools/dalle_image_generator/tool.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …bisheng_langchain/gpts/tools/bing_search/self_arxiv.py | 7 | logger = logging.getLogger(__name__) | CODE |
| LOW | …backend/bisheng_langchain/gpts/agent_types/__init__.py | 8 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/gpts/prompts/__init__.py | 9 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/minimax.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/__init__.py | 9 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/host_llm.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/wenxin.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/qwen.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/proxy_llm.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/zhipuai.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chat_models/xunfeiai.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | …nd/bisheng_langchain/chat_models/interface/__init__.py | 7 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/agents/__init__.py | 4 | __all__ = ['ChatglmFunctionsAgent', 'LLMFunctionsAgent'] | CODE |
| LOW | …gchain/agents/chatglm_functions_agent/output_parser.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/input_output/__init__.py | 4 | __all__ = ['InputNode', 'InputFileNode', 'Report', 'VariableNode'] | CODE |
| LOW | src/backend/bisheng_langchain/rag/__init__.py | 4 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/rag/prompts/__init__.py | 4 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/rag/rerank/__init__.py | 3 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/vectorstores/__init__.py | 5 | __all__ = ['ElasticKeywordsSearch', 'VectorStoreFilterRetriever', 'Milvus'] | CODE |
| LOW | …ackend/bisheng_langchain/document_loaders/custom_kv.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | …backend/bisheng_langchain/document_loaders/__init__.py | 6 | __all__ = [ | CODE |
| LOW | …langchain/document_loaders/elem_unstrcutured_loader.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | …bisheng_langchain/document_loaders/parsers/__init__.py | 5 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/chains/__init__.py | 12 | __all__ = [ | CODE |
| LOW | src/backend/bisheng_langchain/chains/transform.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/chains/loader_output.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | …kend/bisheng_langchain/chains/qa_generation/base_v2.py | 41 | logger = logging.getLogger(__name__) | CODE |
| LOW | …backend/bisheng_langchain/chains/qa_generation/base.py | 19 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/backend/bisheng_langchain/sql/__init__.py | 3 | __all__ = ['SQLDatabaseChain'] | CODE |
| LOW | …/backend/test/tenant/test_tenant_users_query_source.py | 247 | async def _setup_two_tenant_world(session: AsyncSession) -> None: | CODE |
| LOW | …c/backend/test/linsight/test_deferred_ingest_worker.py | 108 | async def set_session_version_info(self, session_model) -> None: | CODE |
| LOW | src/backend/test/permission/test_retry_failed_tuples.py | 41 | def update_succeeded(cls, item_id: int) -> None: | CODE |
| LOW | src/backend/test/permission/test_retry_failed_tuples.py | 45 | def update_retry(cls, item_id: int, error: str) -> None: | CODE |
| LOW | src/backend/bisheng/workstation/api/dependencies.py | 11 | __all__ = ['LoginUserDep', 'AdminUserDep', 'ShareLink', 'ShareLinkDep', 'UserPayload'] | CODE |
| LOW | …/backend/bisheng/workstation/domain/models/__init__.py | 3 | __all__ = ['TenantWorkstationConfig', 'TenantWorkstationConfigDao'] | CODE |
| LOW | …backend/bisheng/workstation/domain/schemas/__init__.py | 4 | __all__ = [ | CODE |
| LOW | …ackend/bisheng/workstation/domain/services/__init__.py | 3 | __all__ = ['WorkStationService'] | CODE |
| LOW | …eng/workstation/domain/services/task_submit_service.py | 119 | __all__ = ["ENQUEUE_FAILED_MESSAGE", "submit_task_turn"] | CODE |
| LOW | src/backend/bisheng/citation/api/__init__.py | 3 | __all__ = ['router'] | CODE |
| LOW | src/backend/bisheng/citation/api/endpoints/__init__.py | 3 | __all__ = ['router'] | CODE |
| LOW | src/backend/bisheng/citation/domain/__init__.py | 8 | __all__ = [ | CODE |
| LOW | src/backend/bisheng/citation/domain/models/__init__.py | 8 | __all__ = [ | CODE |
| LOW | …sistant/domain/services/published_assistant_service.py | 179 | __all__ = ["AssistantCompletion", "PublishedAssistantService"] | CODE |
| LOW | …eng/tenant/domain/services/user_tenant_sync_service.py | 51 | logger = logging.getLogger(__name__) | CODE |
| LOW | …bisheng/tenant/domain/services/tenant_mount_service.py | 81 | logger = logging.getLogger(__name__) | CODE |
| LOW | …sheng/tenant/domain/services/resource_share_service.py | 47 | logger = logging.getLogger(__name__) | CODE |
| 168 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .drone.yml | 281 | - echo "build image tag is $version" | COMMENT |
| LOW | docker/bisheng/config/config.yaml | 21 | # verify_hostname: true | COMMENT |
| LOW | docker/bisheng/config/config.yaml | 41 | gateway_hmac_secret: "bisheng-local-hmac-20260422" | COMMENT |
| LOW | docker/bisheng/config/config.yaml | 61 | # celery_redis_url: | COMMENT |
| LOW | docker/bisheng/config/config.yaml | 161 | # open_api: | COMMENT |
| LOW | features/v2.5.1/012-tenant-resolver/spec.md | 221 | ### 5.5 Middleware 注册顺序(F012 / F019 / 业务路由依赖) | COMMENT |
| LOW | …tures/v2.5.1/019-admin-tenant-scope/ac-verification.md | 181 | ``` | COMMENT |
| LOW | features/v2.5.0/005-role-menu-quota/spec.md | 481 | **角色列表查询逻辑(AD-09)**: | COMMENT |
| LOW | .claude/hooks/arch-guard-hook.sh | 1 | #!/bin/bash | COMMENT |
| LOW | scripts/arch-guard.sh | 1 | #!/bin/bash | COMMENT |
| LOW | scripts/arch-guard.sh | 101 | COMMENT | |
| LOW | scripts/check-rbac-rebac-leak.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/gen_conversation_export_template.py | 41 | ) | COMMENT |
| LOW | src/frontend/platform/public/assets/bisheng/config.js | 1 | // Application-wide runtime config (NOT branding). | COMMENT |
| LOW | src/frontend/platform/src/index.tsx | 21 | // let visible = false; | COMMENT |
| LOW | src/frontend/platform/src/util/reactflowUtils.ts | 981 | targetHandleArr[1] = tempField | COMMENT |
| LOW | src/frontend/platform/src/util/reactflowUtils.ts | 1001 | // }; | COMMENT |
| LOW | src/frontend/platform/src/modals/genericModal/index.tsx | 141 | setModalOpen(closeModal); | COMMENT |
| LOW | src/frontend/platform/src/modals/genericModal/index.tsx | 161 | // } else { | COMMENT |
| LOW | …tend/platform/src/components/promptComponent/index.tsx | 21 | useEffect(() => { | COMMENT |
| LOW | …/frontend/platform/src/components/bs-comp/FileView.tsx | 81 | // 创建注释层实例 | COMMENT |
| LOW | …latform/src/components/bs-comp/cardComponent/index.tsx | 61 | // 'bg-teal-500', | COMMENT |
| LOW | …orm/src/components/bs-comp/chatComponent/ChatInput.tsx | 181 | setAutogenStop(false) | COMMENT |
| LOW | …orm/src/components/bs-comp/chatComponent/ChatInput.tsx | 201 | // } | COMMENT |
| LOW | …d/platform/src/components/inputFileComponent/index.tsx | 121 | setLoading(false); | COMMENT |
| LOW | …frontend/platform/src/components/bs-ui/input/index.tsx | 481 | // rules.some(rule => { | COMMENT |
| LOW | …tend/platform/src/components/bs-ui/select/cascader.tsx | 221 | </Select> | COMMENT |
| LOW | …tend/platform/src/components/bs-ui/select/cascader.tsx | 241 | // }, | COMMENT |
| LOW | …tend/platform/src/components/bs-ui/select/cascader.tsx | 261 | COMMENT | |
| LOW | …tend/platform/src/components/bs-ui/select/cascader.tsx | 281 | // value: 'dynamic2', | COMMENT |
| LOW | src/frontend/platform/src/controllers/API/admin.ts | 1 | // F019-admin-tenant-scope — axios wrappers for the admin management-view | COMMENT |
| LOW | …end/platform/src/pages/ModelPage/manage/permissions.ts | 41 | multiTenantEnabled?: boolean; | COMMENT |
| LOW | …orm/src/pages/ModelPage/manage/SystemConfigBanners.tsx | 1 | // F022 system-config envelope banners + badge. | COMMENT |
| LOW | …ages/KnowledgePage/components/FileUploadParagraphs.tsx | 101 | } | COMMENT |
| LOW | …rontend/platform/src/pages/BuildPage/tools/ToolSet.tsx | 21 | const [open, setOpen] = useState(false); | COMMENT |
| LOW | …rontend/platform/src/pages/BuildPage/tools/ToolSet.tsx | 61 | COMMENT | |
| LOW | …rontend/platform/src/pages/BuildPage/tools/ToolSet.tsx | 81 | // fields.openai_api_version = formData.openai_api_version; | COMMENT |
| LOW | …/platform/src/pages/BuildPage/flow/FlowNode/RunLog.tsx | 61 | value: item.value | COMMENT |
| LOW | …/platform/src/pages/BuildPage/flow/FlowNode/RunLog.tsx | 81 | // if (Array.isArray(param.value) && param.value.some(el => newData.has(el.key))) { | COMMENT |
| LOW | …form/src/pages/BuildPage/flow/FlowChat/messageStore.ts | 321 | // const isRunLog = runLogsTypes.includes(wsdata.category); | COMMENT |
| LOW | …form/src/pages/BuildPage/flow/FlowChat/messageStore.ts | 341 | // files: wsdata.files || [], | COMMENT |
| LOW | …form/src/pages/BuildPage/flow/FlowChat/messageStore.ts | 361 | // // } | COMMENT |
| LOW | …atform/src/pages/BuildPage/flow/FlowChat/ChatInput.tsx | 221 | handleWsMessage(data); | COMMENT |
| LOW | …atform/src/pages/BuildPage/flow/FlowChat/ChatInput.tsx | 241 | // }); | COMMENT |
| LOW | …pages/Dashboard/components/config/StyleConfigPanel.tsx | 121 | /> | COMMENT |
| LOW | …/Dashboard/components/config/ComponentConfigDrawer.tsx | 321 | // if (currentIsVirtual && !hasVirtualMetric) { | COMMENT |
| LOW | src/frontend/platform/src/store/dashboardStore.tsx | 361 | // Refresh all chart components (excluding query components) | COMMENT |
| LOW | src/frontend/platform/src/store/dashboardStore.tsx | 381 | // queryComponentId: qc.id, | COMMENT |
| LOW | src/frontend/packages/ui/src/index.ts | 1 | // @bisheng/ui public API — presentation-only components + design-system utils. | COMMENT |
| LOW | src/frontend/packages/ui/src/index.ts | 21 | // touch rules are baked in; every string (placeholder, a11y labels) is a prop. | COMMENT |
| LOW | src/frontend/packages/ui/src/index.ts | 41 | // overflow fade + keep-visible scroll and the touch rules are baked in; every | COMMENT |
| LOW | src/frontend/client/vite.config.ts | 221 | // type: 'image/png', | COMMENT |
| LOW | src/frontend/client/public/assets/bisheng/config.js | 1 | // Application-wide runtime config (NOT branding). | COMMENT |
| LOW | src/frontend/client/src/jest-dom.d.ts | 1 | // setupTests.js imports '@testing-library/jest-dom' at runtime, but it is a .js | COMMENT |
| LOW | src/frontend/client/src/types/chat/artifacts.ts | 3101 | // badge: badge, | COMMENT |
| LOW | src/frontend/client/src/utils/files.ts | 61 | // 'application/json':, | COMMENT |
| LOW | src/frontend/client/src/components/ChatErrorCard.tsx | 41 | 'rate_limit', | COMMENT |
| LOW | src/frontend/client/src/components/Chat/ChatView.tsx | 521 | mode: prev.mode, | COMMENT |
| LOW | src/frontend/client/src/components/Chat/ChatView.tsx | 541 | // restore's deps — [conversationId, isTaskConversation, canUseTaskMode] — are | COMMENT |
| LOW | src/frontend/client/src/components/Chat/ChatView.tsx | 581 | const handleToggleTaskMode = useCallback(() => { | COMMENT |
| 169 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 278 | "placeholder": "每次工作流开始执行时向用户发送此消息,支持 Markdown 格式,为空时不发送。" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 282 | "placeholder": "请输入引导问题", | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 293 | "placeholder": "输入批量预置问题", | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 314 | "placeholder": "请选择模型" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 357 | "placeholder": "输入需要发送给用户的消息,例如“接下来我将执行 XX 操作,请您确认”,“以下是我的初版草稿,您可以在其基础上进行修改”" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 374 | "placeholder": "请选择批处理变量", | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 382 | "placeholder": "请在模型管理中配置 LLM 模型" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 417 | "placeholder": "请选择批处理变量", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/zh-Hans/flow.json | 428 | "placeholder": "请在系统模型设置中配置助手推理模型" | CODE |
| LOW⚡ | src/frontend/platform/public/locales/zh-Hans/flow.json | 435 | "placeholder": "助手画像", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/zh-Hans/flow.json | 440 | "placeholder": "用户消息内容" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 452 | "placeholder": "请选择知识库" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 480 | "placeholder": "请选择检索问题" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 484 | "placeholder": "请选择QA知识库" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 502 | "placeholder": "请选择用户问题", | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 507 | "placeholder": "请选择知识库" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 528 | "placeholder": "请在模型管理中配置 LLM 模型" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 549 | "placeholder": "请选择用户问题", | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 554 | "placeholder": "请选择知识库" | CODE |
| LOW | src/frontend/platform/public/locales/zh-Hans/flow.json | 571 | "placeholder": "请输入生成报告的名称" | CODE |
| LOW | …rontend/platform/public/locales/zh-Hans/dashboard.json | 23 | "placeholder": "选择时间", | CODE |
| LOW | …rontend/platform/public/locales/zh-Hans/dashboard.json | 218 | "placeholder": "请选择", | CODE |
| LOW | …rontend/platform/public/locales/zh-Hans/knowledge.json | 34 | "placeholder": "请选择日期", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 278 | "placeholder": "ワークフロー実行時にユーザーに送信するメッセージ。Markdown形式に対応。空白の場合は送信しません。" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 282 | "placeholder": "誘導質問を入力してください", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 293 | "placeholder": "一括で入力する予置質問", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 314 | "placeholder": "モデルを選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 357 | "placeholder": "ユーザーに送信するメッセージを入力してください。例:「次にXX操作を実行しますので、ご確認ください」や「これが私の初稿です、あなたはその上で修正できます」" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 374 | "placeholder": "バッチ処理する変数を選択してください", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 382 | "placeholder": "モデル管理でLLMモデルを設定してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 417 | "placeholder": "バッチ処理する変数を選択してください", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/ja/flow.json | 428 | "placeholder": "システムモデル設定でアシスタント推論モデルを設定してください" | CODE |
| LOW⚡ | src/frontend/platform/public/locales/ja/flow.json | 435 | "placeholder": "アシスタントの描写", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/ja/flow.json | 440 | "placeholder": "ユーザーメッセージ内容" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 452 | "placeholder": "知識ベースを選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 480 | "placeholder": "検索する質問を選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 484 | "placeholder": "QA知識ベースを選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 502 | "placeholder": "ユーザーの質問を選択してください", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 507 | "placeholder": "知識ベースを選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 528 | "placeholder": "モデル管理でLLMモデルを設定してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 549 | "placeholder": "検索する質問を選択してください", | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 554 | "placeholder": "知識ベースを選択してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/flow.json | 571 | "placeholder": "生成するレポートの名前を入力してください" | CODE |
| LOW | src/frontend/platform/public/locales/ja/dashboard.json | 23 | "placeholder": "時間を選択", | CODE |
| LOW | src/frontend/platform/public/locales/ja/dashboard.json | 218 | "placeholder": "選択してください", | CODE |
| LOW | src/frontend/platform/public/locales/ja/knowledge.json | 34 | "placeholder": "日付を選択", | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 278 | "placeholder": "Message shown to the user at the beginning of each workflow. Supports Markdown. Leave empty to s | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 282 | "placeholder": "Enter guide questions", | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 293 | "placeholder": "Enter batch preset questions", | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 314 | "placeholder": "Please select a model" | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 357 | "placeholder": "Message to send, e.g., 'Please confirm the next action' or 'Here is the draft for your review'." | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 374 | "placeholder": "Select the variable for batch execution", | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 382 | "placeholder": "Configure an LLM model in the model management page" | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 417 | "placeholder": "Select the variable for batch execution", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/en-US/flow.json | 428 | "placeholder": "Configure the agent’s reasoning model in system settings" | CODE |
| LOW⚡ | src/frontend/platform/public/locales/en-US/flow.json | 435 | "placeholder": "Agent persona description", | CODE |
| LOW⚡ | src/frontend/platform/public/locales/en-US/flow.json | 440 | "placeholder": "User message content" | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 452 | "placeholder": "Select knowledge base" | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 480 | "placeholder": "Select a question to search" | CODE |
| LOW | src/frontend/platform/public/locales/en-US/flow.json | 484 | "placeholder": "Select QA knowledge base" | CODE |
| 82 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .cursor/skills/task-review/SKILL.md | 25 | ### Step 1: 解析参数 + 收集变更范围 | COMMENT |
| LOW | .cursor/skills/task-review/SKILL.md | 41 | ### Step 2: 判断任务类型,选择检查子集 | COMMENT |
| LOW⚡ | .cursor/skills/task-review/SKILL.md | 59 | ### Step 3: 按检查清单执行检查 | COMMENT |
| LOW⚡ | .cursor/skills/task-review/SKILL.md | 63 | ### Step 4: 元数据交叉验证 | COMMENT |
| LOW⚡ | .cursor/skills/task-review/SKILL.md | 69 | ### Step 5: 输出报告 | COMMENT |
| LOW | .cursor/skills/task-review/SKILL.md | 95 | ### Step 6: 处理结果 | COMMENT |
| LOW | .claude/skills/task-review/SKILL.md | 25 | ### Step 1: 解析参数 + 收集变更范围 | COMMENT |
| LOW | .claude/skills/task-review/SKILL.md | 41 | ### Step 2: 判断任务类型,选择检查子集 | COMMENT |
| LOW⚡ | .claude/skills/task-review/SKILL.md | 59 | ### Step 3: 按检查清单执行检查 | COMMENT |
| LOW⚡ | .claude/skills/task-review/SKILL.md | 63 | ### Step 4: 元数据交叉验证 | COMMENT |
| LOW⚡ | .claude/skills/task-review/SKILL.md | 69 | ### Step 5: 输出报告 | COMMENT |
| LOW | .claude/skills/task-review/SKILL.md | 95 | ### Step 6: 处理结果 | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 69 | // Step 1: Make a POST request to send the flow data and receive a unique session ID | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 71 | // Step 2: Use the session ID to establish an SSE connection using EventSource | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 120 | // Step 3: Wait for the stream to finish | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 125 | // Step 4: Return true if all nodes are valid, false otherwise | COMMENT |
| LOW | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 91 | // Step 1: File upload completed, jump to step 2 | COMMENT |
| LOW⚡ | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 110 | // Step 2: Segmentation strategy completed, receive config and jump to step 3 | COMMENT |
| LOW⚡ | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 118 | // Step 3: Original text comparison callback, control next button disabled state | COMMENT |
| LOW | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 360 | // Step 2: bounded-height layout so inner left/right panels can scroll independently | COMMENT |
| LOW⚡ | …platform/src/pages/KnowledgePage/AdjustFilesUpload.tsx | 180 | // Step 2: Segmentation strategy completed, receive config and jump to step 2 (original text comparison) | COMMENT |
| LOW⚡ | …platform/src/pages/KnowledgePage/AdjustFilesUpload.tsx | 188 | // Step 2: Original text comparison callback, control next button disabled state | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 51 | // Step 1: Protect code blocks | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 58 | // Step 2: Protect existing LaTeX expressions | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 65 | // Step 3: Escape dollar signs that are likely currency indicators | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 68 | // Step 4: Restore LaTeX expressions | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 71 | // Step 5: Restore code blocks | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 74 | // Step 6: Apply additional escaping functions | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 261 | // Step 1: Make a POST request to send the flow data and receive a unique session ID | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 264 | // Step 2: Use the session ID to establish an SSE connection using EventSource | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 310 | // Step 3: Wait for the stream to finish | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 315 | // Step 4: Return true if all nodes are valid, false otherwise | COMMENT |
| LOW⚡ | src/backend/test/linsight/test_skill_prompt_priority.py | 44 | # Step 2: read the body BEFORE producing anything… | COMMENT |
| LOW⚡ | src/backend/test/linsight/test_skill_prompt_priority.py | 53 | # Step 3: a format skill outranks the 3b-3d default derivation path. | COMMENT |
| LOW⚡ | …c/backend/test/integration/test_f017_ac_integration.py | 117 | # Step 4: no chat_message delete was invoked — this is a non-contract | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 111 | # Step 2: Create root department | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 119 | # Step 3: Create UserTenant for each admin | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 127 | # Step 4: apply tenant permissions after DB commit. | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 134 | # Step 5: Child/root tenant bootstrap — copy builtin tools so | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 140 | # Step 6: seed the kernel's built-in Linsight skills. Startup seeding | COMMENT |
| LOW | …ckend/bisheng/tenant/domain/services/tenant_service.py | 97 | # Step 1: Create Tenant record | COMMENT |
| LOW⚡ | src/backend/bisheng/database/models/department.py | 1612 | # Step 2: build the subtree filter | COMMENT |
| LOW⚡ | src/backend/bisheng/database/models/department.py | 1619 | # Step 3: count distinct users matching the filter | COMMENT |
| LOW | src/backend/bisheng/database/models/department.py | 1595 | # Step 1: resolve tenant.root_dept_id (if set) → path prefix | COMMENT |
| LOW | src/backend/bisheng/database/models/department.py | 1647 | # Step 4: paginated user list. Use a distinct subquery on | COMMENT |
| LOW | …/backend/bisheng/core/database/alembic_helpers/f011.py | 71 | # Step 1: find users with multiple active rows. | COMMENT |
| LOW | …/backend/bisheng/core/database/alembic_helpers/f011.py | 82 | # Step 2: for each such user, rank active rows and pick the keeper. | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 17 | # Step 1: Image Handling (Top Priority Execution) | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 38 | # Step 2: ComplexityHTMLBlock Level Element Conversion (UseBeautifulSoupSupport) | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 83 | # Step 3: Other block level and inlineHTMLTag transformation (Mainly using regular) | COMMENT |
| LOW⚡ | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 149 | # Step 4: Final cleanup | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …0.0-beta1/047-linsight-citation-traceability/design.md | 219 | - **Phase 2 —— 下载 Word/PDF 烘焙可见引用**:新增 `bake_citations_for_export(md)`(标记→顺序 `[1]` + `## 参考资料`:RAG=文档名+页码 / Web=title+UR | CODE |
| MEDIUM | features/v2.6.0/035-linsight-task-mode/design.md | 428 | ### 5.2 知识库 RAG:方案 A vs 方案 B | COMMENT |
| MEDIUM | features/v2.6.0/028-conversation-export-import/tasks.md | 429 | ### §T002 RAG 角标真实样本(2026-05-31) | COMMENT |
| MEDIUM | …v2.6.0/028-conversation-export-import/e2e-checklist.md | 83 | ### RAG 角标剥除(AC-14) | COMMENT |
| MEDIUM | docs/architecture/04-knowledge-rag.md | 1 | # 知识库与 RAG 管道 | COMMENT |
| MEDIUM | docs/architecture/04-knowledge-rag.md | 117 | rag/ # RAG 管道实现 | CODE |
| MEDIUM | docs/architecture/04-knowledge-rag.md | 130 | ## 3. RAG 管道架构 | COMMENT |
| MEDIUM | docs/PRD/2.6 RAG 检索上下文优化 PRD/2.6 RAG 检索上下文格式优化 PRD.md | 1 | # 2.6 RAG 检索上下文格式优化 PRD | COMMENT |
| MEDIUM | docs/PRD/2.6 RAG 检索上下文优化 PRD/2.6 RAG 检索上下文格式优化 PRD.md | 127 | #### 3.2.3 Workflow RAG 节点(`workflow/nodes/rag/rag.py`) | COMMENT |
| MEDIUM | src/backend/bisheng_langchain/sql/base.py | 118 | # improvement of few shot prompt seeds | COMMENT |
| MEDIUM | src/backend/test/linsight/test_workspace_dual_track.py | 336 | # csv loader is a RAG chunker, and the txt/md round-trip rejoins split chunks | COMMENT |
| MEDIUM | …c/backend/test/department/test_dept_member_add_sync.py | 241 | # ── Mock the orchestration touchpoints ── | COMMENT |
| MEDIUM⚡ | …nowledge/test_knowledge_space_chat_service_retrieve.py | 91 | # aretrieve_chunks — orchestration (per-KB delegation mocked) | COMMENT |
| MEDIUM⚡ | src/backend/test/org_sync/test_org_reconcile_service.py | 205 | # AC-02 / AC-03 / AC-04 — orchestration branches | COMMENT |
| MEDIUM | src/backend/scripts/converge_media_no_asr_transcript.py | 130 | # Import here: knowledge_imp pulls in the full RAG stack, keep startup lean. | COMMENT |
| MEDIUM | src/backend/bisheng/initdb_config.yaml | 111 | # 需要按目标模型的 context window 调整: | COMMENT |
| MEDIUM | …station/domain/services/conversation_export_service.py | 78 | # RAG citation markers are private-use Unicode (see T002 探查): | COMMENT |
| MEDIUM | …eng/workstation/domain/services/workstation_service.py | 1345 | # Per-KB failure isolation — a single KB whose embedding model is | COMMENT |
| MEDIUM | …end/bisheng/citation/domain/schemas/citation_schema.py | 30 | # document id), so it cannot reuse RAG + view_file. The enum stays `temp`; | COMMENT |
| MEDIUM | …g/citation/domain/services/citation_resolve_service.py | 194 | # every RAG citation comes back empty even though its row exists. | COMMENT |
| MEDIUM | …isheng/linsight/domain/services/stream_event_mapper.py | 50 | # (design §3.3 step_type variants; §5.2 knowledge RAG). | COMMENT |
| MEDIUM | …kend/bisheng/linsight/domain/services/agent_factory.py | 79 | # an isolated context window and returns only a distilled, sourced summary. | COMMENT |
| MEDIUM | …end/bisheng/linsight/domain/services/workbench_impl.py | 95 | # loses cell types / sheets / formulas (and ExcelLoader is a RAG chunker that | COMMENT |
| MEDIUM | …end/bisheng/linsight/domain/services/workbench_impl.py | 1047 | # pandas / json / whatever. Running them through the RAG pipeline would be a | COMMENT |
| MEDIUM | …end/bisheng/linsight/domain/services/workbench_impl.py | 1076 | # - csv -> ``ExcelLoader`` is a RAG chunker (slices every ``data_rows``, | COMMENT |
| MEDIUM⚡ | src/backend/bisheng/utils/constants.py | 17 | 'claude-v1-100k', # An enhanced version of claude-v1 with a 100,000 token (roughly 75,000 word) context window. | CODE |
| MEDIUM⚡ | src/backend/bisheng/utils/constants.py | 19 | 'claude-instant-v1-100k', # Like claude-instant-v1 with a 100,000 token context window but retains its performance. | CODE |
| MEDIUM⚡ | src/backend/bisheng/utils/constants.py | 22 | 'claude-v1.3-100k', # An enhanced version of claude-v1.3 with a 100,000 token (roughly 75,000 word) context window. | CODE |
| MEDIUM⚡ | src/backend/bisheng/utils/constants.py | 26 | 'claude-instant-v1.1-100k', # Version of claude-instant-v1.1 with a 100K token context window. | CODE |
| MEDIUM | …ackend/bisheng/common/services/llm_error_classifier.py | 135 | # file, a RAG fetcher — its I/O error surfaces as a 4xx even though the REQUEST was | COMMENT |
| MEDIUM | src/backend/bisheng/workflow/common/knowledge.py | 510 | # vectorstore use different collection_name for different embedding model | COMMENT |
| MEDIUM | …nd/bisheng/tool/domain/langchain/linsight_knowledge.py | 48 | # model can hallucinate or be coaxed into an arbitrary id; without this gate | COMMENT |
| MEDIUM | …nd/bisheng/tool/domain/langchain/linsight_knowledge.py | 77 | # model sometimes hallucinates a non-numeric sentinel (e.g. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/backend/bisheng_langchain/vectorstores/milvus.py | 457 | Insert text data into Milvus. Inserting data when the collection has not be made yet will result in cre | STRING |
| HIGH | src/backend/bisheng/database/utils/keyset.py | 38 | Build a ``WHERE (sort_cols) > (cursor_values)`` boolean expression. Args: sort_cols: SQLAlchemy column elem | STRING |
| HIGH | src/backend/bisheng/core/context/manager.py | 443 | Convenient way to get context Args: name: Context Name Returns: BaseContextManager: Correspond | STRING |
| HIGH | src/backend/bisheng/core/context/manager.py | 458 | Convenient way to get contextual instances asynchronously Args: name: Context Name Returns: An | STRING |
| HIGH | src/backend/bisheng/core/context/manager.py | 474 | Convenient way to get contextual instances synchronously Args: name: Context Name Returns: Any | STRING |
| HIGH | src/backend/bisheng/core/context/base.py | 500 | Get Context Manager Args: name: Context Name Returns: BaseContextManager: Corr | STRING |
| HIGH | …heng/linsight/domain/services/state_message_manager.py | 116 | ImpuestoRedisOperation error handling Args: operation: RedisAction Function *a | STRING |
| HIGH | …end/bisheng/linsight/domain/services/workbench_impl.py | 243 | Submit user issue and create session Args: submit_obj: Submitted Question Objects | STRING |
| HIGH | …isheng/channel/domain/services/channel_chat_service.py | 169 | Fetch article content via ArticleEsService Args: article_es_service: ES article service in | STRING |
| HIGH | …isheng/channel/domain/services/channel_chat_service.py | 384 | Clear chat content by article_doc_id Args: article_doc_id: Article document ID | STRING |
| HIGH | src/backend/bisheng/common/cursor.py | 76 | Decode a cursor string back into its sort-key list. Args: cursor: Cursor string from the request, or ``None | STRING |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 482 | will be Markdown Convert text to with style and MathJax Supportive HTML。 Args: markdown_te | STRING |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 562 | Use Playwright will be HTML Convert content to PDF Bytes of data. Args: html_content: To b | STRING |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 745 | will be Markdown Convert file to PDF Bytes of data. Args: input_path: Masukkan Markdown Fi | STRING |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 781 | will be Markdown Convert string to PDF Bytes of data. Args: markdown_text: Markdown String | STRING |
| HIGH | …ckend/bisheng/common/utils/markdown_cmpnt/md_to_pdf.py | 854 | will be Markdown Convert To PDF Handy function for byte data. Args: input_md: Markdown File path (if i | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 69 | // Step 1: Make a POST request to send the flow data and receive a unique session ID | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 71 | // Step 2: Use the session ID to establish an SSE connection using EventSource | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 120 | // Step 3: Wait for the stream to finish | COMMENT |
| LOW⚡ | …rm/src/components/chatComponent/buildTrigger/index.tsx | 125 | // Step 4: Return true if all nodes are valid, false otherwise | COMMENT |
| LOW | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 91 | // Step 1: File upload completed, jump to step 2 | COMMENT |
| LOW⚡ | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 110 | // Step 2: Segmentation strategy completed, receive config and jump to step 3 | COMMENT |
| LOW⚡ | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 118 | // Step 3: Original text comparison callback, control next button disabled state | COMMENT |
| LOW | …ntend/platform/src/pages/KnowledgePage/filesUpload.tsx | 360 | // Step 2: bounded-height layout so inner left/right panels can scroll independently | COMMENT |
| LOW⚡ | …platform/src/pages/KnowledgePage/AdjustFilesUpload.tsx | 180 | // Step 2: Segmentation strategy completed, receive config and jump to step 2 (original text comparison) | COMMENT |
| LOW⚡ | …platform/src/pages/KnowledgePage/AdjustFilesUpload.tsx | 188 | // Step 2: Original text comparison callback, control next button disabled state | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 51 | // Step 1: Protect code blocks | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 58 | // Step 2: Protect existing LaTeX expressions | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 65 | // Step 3: Escape dollar signs that are likely currency indicators | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 68 | // Step 4: Restore LaTeX expressions | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 71 | // Step 5: Restore code blocks | COMMENT |
| LOW⚡ | src/frontend/client/src/utils/latex.ts | 74 | // Step 6: Apply additional escaping functions | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 261 | // Step 1: Make a POST request to send the flow data and receive a unique session ID | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 264 | // Step 2: Use the session ID to establish an SSE connection using EventSource | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 310 | // Step 3: Wait for the stream to finish | COMMENT |
| LOW⚡ | src/frontend/client/src/pages/appChat/index.tsx | 315 | // Step 4: Return true if all nodes are valid, false otherwise | COMMENT |
| LOW⚡ | src/backend/test/linsight/test_skill_prompt_priority.py | 44 | # Step 2: read the body BEFORE producing anything… | COMMENT |
| LOW⚡ | src/backend/test/linsight/test_skill_prompt_priority.py | 53 | # Step 3: a format skill outranks the 3b-3d default derivation path. | COMMENT |
| LOW⚡ | …c/backend/test/integration/test_f017_ac_integration.py | 117 | # Step 4: no chat_message delete was invoked — this is a non-contract | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 111 | # Step 2: Create root department | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 119 | # Step 3: Create UserTenant for each admin | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 127 | # Step 4: apply tenant permissions after DB commit. | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 134 | # Step 5: Child/root tenant bootstrap — copy builtin tools so | COMMENT |
| LOW⚡ | …ckend/bisheng/tenant/domain/services/tenant_service.py | 140 | # Step 6: seed the kernel's built-in Linsight skills. Startup seeding | COMMENT |
| LOW | …ckend/bisheng/tenant/domain/services/tenant_service.py | 97 | # Step 1: Create Tenant record | COMMENT |
| LOW⚡ | src/backend/bisheng/database/models/department.py | 1612 | # Step 2: build the subtree filter | COMMENT |
| LOW⚡ | src/backend/bisheng/database/models/department.py | 1619 | # Step 3: count distinct users matching the filter | COMMENT |
| LOW | src/backend/bisheng/database/models/department.py | 1595 | # Step 1: resolve tenant.root_dept_id (if set) → path prefix | COMMENT |
| LOW | src/backend/bisheng/database/models/department.py | 1647 | # Step 4: paginated user list. Use a distinct subquery on | COMMENT |
| LOW | …/backend/bisheng/core/database/alembic_helpers/f011.py | 71 | # Step 1: find users with multiple active rows. | COMMENT |
| LOW | …/backend/bisheng/core/database/alembic_helpers/f011.py | 82 | # Step 2: for each such user, rank active rows and pick the keeper. | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 17 | # Step 1: Image Handling (Top Priority Execution) | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 38 | # Step 2: ComplexityHTMLBlock Level Element Conversion (UseBeautifulSoupSupport) | COMMENT |
| LOW | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 83 | # Step 3: Other block level and inlineHTMLTag transformation (Mainly using regular) | COMMENT |
| LOW⚡ | …wledge/rag/pipeline/loader/utils/md_post_processing.py | 149 | # Step 4: Final cleanup | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 324 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 396 | CODE | |
| LOW | …/bisheng_langchain/gpts/tools/local_file/local_file.py | 494 | CODE | |
| LOW | src/backend/bisheng_langchain/chat_models/sensetime.py | 225 | CODE | |
| LOW | …kend/bisheng_langchain/chat_models/interface/xunfei.py | 131 | CODE | |
| LOW | …sheng_langchain/agents/chatglm_functions_agent/base.py | 322 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 101 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 666 | CODE | |
| LOW | src/backend/bisheng_langchain/vectorstores/milvus.py | 890 | CODE | |
| LOW | …langchain/document_loaders/elem_unstrcutured_loader.py | 62 | CODE | |
| LOW | …backend/bisheng_langchain/document_loaders/elem_pdf.py | 188 | CODE | |
| LOW | src/backend/bisheng_langchain/chains/loader_output.py | 58 | CODE | |
| LOW | src/backend/bisheng_langchain/chains/loader_output.py | 69 | CODE | |
| LOW | …isheng_langchain/chains/question_answering/__init__.py | 87 | CODE | |
| LOW | …isheng_langchain/chains/question_answering/__init__.py | 164 | CODE | |
| LOW | …kend/bisheng_langchain/chains/qa_generation/base_v2.py | 443 | CODE | |
| LOW | …backend/bisheng_langchain/chains/qa_generation/base.py | 128 | CODE | |
| LOW | …ackend/test/workstation/test_f040_app_square_cursor.py | 56 | CODE | |
| LOW | src/backend/test/department/test_department_sso_dao.py | 88 | CODE | |
| LOW | src/backend/test/sso/test_sso_login_sync_service.py | 30 | CODE | |
| LOW | …nd/test/permission/test_f048_knowledge_file_adapter.py | 95 | CODE | |
| LOW | src/backend/test/org_sync/test_org_reconcile_service.py | 53 | CODE | |
| LOW | src/backend/scripts/replace_json_columns.py | 77 | CODE | |
| LOW | src/backend/bisheng/database/models/session.py | 134 | CODE | |
| LOW | src/backend/bisheng/database/models/session.py | 177 | CODE | |
| LOW | src/backend/bisheng/database/models/session.py | 225 | CODE | |
| LOW | src/backend/bisheng/database/models/session.py | 280 | CODE | |
| LOW | src/backend/bisheng/database/models/flow.py | 420 | CODE | |
| LOW | src/backend/bisheng/database/models/flow.py | 508 | CODE | |
| LOW | src/backend/bisheng/database/models/audit_log.py | 239 | CODE | |
| LOW | src/backend/bisheng/chat_session/api/endpoints/chat.py | 20 | CODE | |
| LOW | src/backend/bisheng/core/database/alembic/env.py | 212 | CODE | |
| LOW | …/ai/rerank/xinference/client/restful/restful_client.py | 1160 | CODE | |
| LOW | …rank/xinference/client/restful/async_restful_client.py | 1253 | CODE | |
| LOW | …kend/bisheng/linsight/domain/services/agent_factory.py | 1050 | CODE | |
| LOW | …end/bisheng/linsight/domain/services/workbench_impl.py | 2010 | CODE | |
| LOW | …heng/linsight/domain/services/resilience_middleware.py | 368 | CODE | |
| LOW | src/backend/bisheng/dsh/api/endpoints/admin.py | 49 | CODE | |
| LOW | src/backend/bisheng/dsh/api/endpoints/admin.py | 104 | CODE | |
| LOW | src/backend/bisheng/dsh/api/endpoints/admin.py | 274 | CODE | |
| LOW | src/backend/bisheng/dsh/domain/services/admin.py | 54 | CODE | |
| LOW | src/backend/bisheng/dsh/domain/services/admin.py | 155 | CODE | |
| LOW | …/bisheng/telemetry_search/domain/services/dashboard.py | 442 | CODE | |
| LOW | …ories/implementations/inbox_message_repository_impl.py | 133 | CODE | |
| LOW | …in/repositories/interfaces/inbox_message_repository.py | 12 | CODE | |
| LOW | …isheng/message/domain/services/notification_content.py | 17 | CODE | |
| LOW | src/backend/bisheng/user/api/user.py | 419 | CODE | |
| LOW | …ckend/bisheng/channel/api/endpoints/channel_manager.py | 298 | CODE | |
| LOW | …mplementations/space_channel_member_repository_impl.py | 51 | CODE | |
| LOW | …sitories/interfaces/space_channel_member_repository.py | 19 | CODE | |
| LOW | src/backend/bisheng/knowledge/rag/pipeline/base.py | 31 | CODE | |
| LOW | …edge/rag/pipeline/transformer/hierarchical_splitter.py | 15 | CODE | |
| LOW | …kend/bisheng/knowledge/rag/pipeline/loader/x_create.py | 24 | CODE | |
| LOW | …backend/bisheng/knowledge/rag/pipeline/loader/excel.py | 38 | CODE | |
| LOW | …end/bisheng/knowledge/api/endpoints/knowledge_space.py | 338 | CODE | |
| LOW | …end/bisheng/knowledge/api/endpoints/knowledge_space.py | 374 | CODE | |
| LOW | …c/backend/bisheng/knowledge/api/endpoints/knowledge.py | 390 | CODE | |
| LOW | …kend/bisheng/knowledge/domain/models/knowledge_file.py | 573 | CODE | |
| LOW | …kend/bisheng/knowledge/domain/models/knowledge_file.py | 638 | CODE | |
| LOW | …isheng/knowledge/domain/models/knowledge_space_file.py | 155 | CODE | |
| 23 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/frontend/client/check_updates.sh | 32 | # Check if this date is within the last three days | COMMENT |
| LOW | src/backend/test/department/test_department_service.py | 636 | # Check if already exists | COMMENT |
| LOW | src/backend/test/department/test_department_service.py | 1268 | # Check if root already exists | COMMENT |
| LOW | src/backend/test/_legacy/test_api.py | 126 | # Print the result | COMMENT |
| LOW | src/backend/test/e2e/helpers/cleanup.py | 80 | # Check if tenant already exists via list API | COMMENT |
| LOW | …ckend/bisheng/tenant/domain/services/tenant_service.py | 586 | # Check if user is admin — if so, ensure at least one admin remains | COMMENT |
| LOW | src/backend/bisheng/core/cache/utils.py | 491 | # Check if it is standard URL | COMMENT |
| LOW | src/backend/bisheng/linsight/domain/task_exec.py | 736 | # Check if terminated during initialization | COMMENT |
| LOW | …end/bisheng/linsight/domain/services/workbench_impl.py | 2117 | # Read file contents | COMMENT |
| LOW | …ackend/bisheng/telemetry_search/domain/init_dataset.py | 812 | # Check if department dimensions already present | STRING |
| LOW | src/backend/bisheng/utils/docx_temp.py | 767 | # Check if it is a delimiter line | COMMENT |
| LOW | src/backend/bisheng/utils/util.py | 121 | # Read files by block to avoid large files taking up too much memory | COMMENT |
| LOW | src/backend/bisheng/utils/util.py | 142 | # Read files asynchronously in binary form | COMMENT |
| LOW | src/backend/bisheng/utils/util.py | 144 | # Read files asynchronously by block to avoid large files taking up too much memory | COMMENT |
| LOW | src/backend/bisheng/utils/http_middleware.py | 443 | # Check if tenant is disabled via Redis blacklist | COMMENT |
| LOW | src/backend/bisheng/user/api/user.py | 671 | # Check if is an administrator of a user group under | COMMENT |
| LOW | src/backend/bisheng/user/api/user.py | 1053 | # Check if there are administrative permissions for the group | COMMENT |
| LOW | src/backend/bisheng/user/api/user.py | 1122 | # Check if there are administrative permissions for the group | COMMENT |
| LOW | src/backend/bisheng/user/domain/services/user.py | 809 | # Read file content to check size | COMMENT |
| LOW | …sheng/department/domain/services/department_service.py | 1673 | # Check if root already exists | COMMENT |
| LOW | …sheng/department/domain/services/department_service.py | 1703 | # Set path to /{id}/ | COMMENT |
| LOW | …end/bisheng/channel/domain/services/channel_service.py | 445 | # Check if the user has reached the role-configurable channel creation quota | COMMENT |
| LOW | src/backend/bisheng/common/init_data.py | 280 | # Check if default tenant exists and has no root_dept_id yet | COMMENT |
| LOW | …s/markdown_cmpnt/md_to_docx/provider/docx_processor.py | 247 | # Check if there are paragraph tags | COMMENT |
| LOW | …s/markdown_cmpnt/md_to_docx/provider/docx_processor.py | 300 | # Check if there are paragraph tags | COMMENT |
| LOW | src/backend/bisheng/common/services/config_service.py | 98 | # Check if a string is a valid path or a file name | COMMENT |
| LOW | …dge/rag/pipeline/loader/utils/libreoffice_converter.py | 54 | # Check if libreoffice_exec is in PATH if it's not a full path | COMMENT |
| LOW | …dge/rag/pipeline/loader/utils/libreoffice_converter.py | 87 | # Check if the file was actually created | COMMENT |
| LOW | …ng/knowledge/domain/services/knowledge_file_service.py | 244 | # Check if knowledge file exists | COMMENT |
| LOW | …d/bisheng/workflow/nodes/report/text_classification.py | 428 | # Check if it is a delimiter line | COMMENT |
| LOW | src/backend/bisheng/api/v1/workflow.py | 95 | # Check if the user has read access to the app | COMMENT |
| LOW | src/backend/bisheng/api/services/assistant.py | 355 | # Check if there are any duplicate names under | COMMENT |
| LOW | src/backend/bisheng/api/services/assistant.py | 525 | # Check if there are any duplicate names under | COMMENT |
| LOW | …ackend/bisheng/api/services/invite_code/invite_code.py | 72 | # Check if the generated invite code is a duplicate | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/frontend/platform/public/locales/en-US/bs.json | 725 | "webSearchPrompt": "# The following content is based on the search results of the message sent by the user:\n{search | CODE |
| MEDIUM | src/frontend/platform/src/constants.tsx | 179 | # Now you can use it like any chain | COMMENT |
| MEDIUM | src/frontend/client/src/mobile.css | 138 | /* More styling for demonstration purposes */ | COMMENT |
| MEDIUM | …ackend/bisheng_langchain/gpts/tools/web_search/tool.py | 69 | # For demonstration purposes, we'll just return a dummy response | COMMENT |
| MEDIUM | …ackend/bisheng_langchain/gpts/tools/web_search/tool.py | 171 | # For demonstration purposes, we'll just return a dummy response | COMMENT |
| MEDIUM | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 102 | # meaning you can use it as you would any other runnable | COMMENT |
| MEDIUM | …heng_langchain/gpts/agent_types/llm_functions_agent.py | 190 | # meaning you can use it as you would any other runnable | COMMENT |
| MEDIUM | …/bisheng_langchain/gpts/agent_types/llm_react_agent.py | 172 | # meaning you can use it as you would any other runnable | COMMENT |
| MEDIUM | src/backend/test/_legacy/test_api.py | 29 | # Now you can use it like any chain | COMMENT |
| MEDIUM | src/backend/bisheng/tool/domain/services/executor.py | 45 | # Here you can add logic to record tool usage | COMMENT |
| MEDIUM | src/backend/bisheng/tool/domain/services/executor.py | 62 | # Here you can add logic to record tool usage | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/frontend/platform/src/constants.tsx | 135 | print(run_flow(inputs, flow_id=FLOW_ID, tweaks=TWEAKS))`; | CODE |
| HIGH | …src/components/bs-comp/apiComponent/ApiAccessSkill.tsx | 236 | print(run_flow(inputs, flow_id=FLOW_ID, tweaks=TWEAKS))`} | CODE |
| HIGH | …src/components/bs-comp/apiComponent/ApiAccessSkill.tsx | 300 | print(response.text)`} | CODE |
| HIGH | …/components/bs-comp/apiComponent/apiExampleSnippets.ts | 60 | print(reasoning, end="", flush=True) | CODE |
| HIGH | …/components/bs-comp/apiComponent/apiExampleSnippets.ts | 63 | print(delta.content, end="", flush=True) | CODE |
| HIGH | …/components/bs-comp/apiComponent/apiExampleSnippets.ts | 116 | print(result) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/frontend/platform/public/locales/en-US/bs.json | 725 | "webSearchPrompt": "# The following content is based on the search results of the message sent by the user:\n{search | CODE |
| MEDIUM | …/Execution/__fixtures__/linsightSieyuanPptHistory.json | 268 | "output": "- Light backgrounds: \"#F5F7FA\" or \"#FFFFFF\"\n\nLet me now write the code. I'll create a comprehensive JS | CODE |
| MEDIUM | …client/src/pages/Subscription/ChannelDiscoveryHome.tsx | 333 | // No transition before measuring, or during the seamless loop snap-back. | COMMENT |
| MEDIUM | …nd/client/src/pages/Subscription/ChannelSquareTabs.tsx | 51 | // (robust to longer non-CJK labels). transform+width are animated; the mount | COMMENT |
| LOW | …ackend/bisheng_langchain/gpts/tools/web_search/tool.py | 69 | # For demonstration purposes, we'll just return a dummy response | COMMENT |
| LOW | …ackend/bisheng_langchain/gpts/tools/web_search/tool.py | 171 | # For demonstration purposes, we'll just return a dummy response | COMMENT |
| LOW | src/backend/bisheng_langchain/sql/base.py | 95 | # If return direct, we just set the final result equal to | COMMENT |
| MEDIUM | src/backend/test/integration/test_storage_quota_e2e.py | 131 | # search recursively to be robust against future restructuring. | COMMENT |
| MEDIUM | src/backend/test/open_api/test_skill_pack.py | 73 | # ── script harness ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …nd/bisheng/workstation/domain/services/chat_service.py | 242 | # - _parse_tool_results: Normalizes BaseTool output to facilitate SSE (Server-Sent Events) and database storage. | COMMENT |
| LOW | …e/database/alembic/versions/v2_5_1_f011_tenant_tree.py | 142 | # tenant_id already exists (F001 TENANT_TABLES); just add compound index. | COMMENT |
| LOW | …bisheng/knowledge/domain/services/knowledge_service.py | 2918 | # we can just return the resource_ids. But to be safe, let's filter valid file ids. | COMMENT |
| MEDIUM | src/backend/bisheng/api/v1/callback.py | 58 | # Streaming output is placed in a queue to facilitate recording of content to a database after interrupting the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/frontend/platform/public/locales/en-US/bs.json | 1761 | "inline_input_example": "{\n \"event\": \"output_with_input_msg\",\n \"node_id\": \"output_ 123\",\n \"no | CODE |
| HIGH | src/frontend/client/src/hooks/useAiChat.ts | 1027 | // New conversation: fetch the AI-generated title. The gen_title | COMMENT |
| HIGH⚡ | src/backend/test/e2e/test_e2e_tenant_code_autogen.py | 197 | # ──────── Case 1: auto-generated code ──────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/PRD/3.0-beta2/3.0 开放 API 鉴权与身份传递 PRD.md | 1928 | > 「`'Authorization: Bearer <YOUR_API_KEY>'`」 | CODE |
| HIGH | docs/PRD/3.0-beta2/3.0 开放 API 鉴权与身份传递 PRD.md | 1928 | > 「`'Authorization: Bearer <YOUR_API_KEY>'`」 | CODE |
| HIGH | …rontend/platform/src/pages/BuildPage/tools/EditMcp.tsx | 161 | "url": "https://mcp.amap.com/sse?key=yourapikey" | CODE |
| HIGH | …rontend/platform/src/pages/BuildPage/tools/EditMcp.tsx | 171 | "url": "https://mcp.amap.com/mcp?key=yourapikey" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …backend/test/quota/test_knowledge_space_count_scope.py | 112 | CODE | |
| MEDIUM | …backend/test/permission/test_f048_migration_runtime.py | 485 | CODE | |
| MEDIUM | …end/test/open_api/test_workflow_invoke_input_errors.py | 135 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …/Execution/__fixtures__/linsightSieyuanPptHistory.json | 268 | "output": "- Light backgrounds: \"#F5F7FA\" or \"#FFFFFF\"\n\nLet me now write the code. I'll create a comprehensive JS | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/backend/scripts/set_admin.sh | 5 | # Usage: | COMMENT |