{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-4+qual-2+sec-2","generated_at":"2026-11-13T23:41:32.078303Z","repo":{"ref":{"host":"github.com","owner":"baidu","name":"AnyQ"},"default_branch":"master","clone_url":"https://github.com/baidu/AnyQ.git","html_url":"https://github.com/baidu/AnyQ","description":"FAQ-based Question Answering System","stars":2571,"forks":657,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":5675,"primary_language":"C++","license_spdx":"Apache-2.0","created_at":"2018-07-02T03:21:55Z","pushed_at":"2020-11-28T12:32:49Z","security_policy_url":null,"distribution":{"owner_created_at":"2015-07-08T23:58:00Z","owner_type":"Organization","release_assets":[]}},"commit_sha":"d94d450d2aaa5f7ed73424b10aa4539835b97527","profile":{"lines_by_language":{"C++":5589,"Python":5114,"C":3707,"Shell":269},"files_by_category":{"source":157,"other":36,"config":23,"docs":12,"binary":4,"oversized":1},"source_lines":14679,"test_lines":0},"pillars":{"ai_provenance":{"score":0.0,"confidence":0.59,"coverage":1.0,"label":"none-detected","breakdown":{"attributed_share":0.0,"suspected_share":0.0,"estimated_share":0.0,"ai_artifacts":0.0,"flagged_work_units":0.0,"flagged_releases":null},"summary":"No AI attribution or AI-consistent velocity signals detected."},"quality":{"score":39.7,"confidence":0.9,"coverage":1.0,"label":"poor","breakdown":{"complexity":100.0,"duplication":25.1,"lint":46.1,"testing":0.0,"docs":65.0,"type_safety":40.0,"process":5.0},"summary":"Code quality is poor: test-to-source ratio 0.00, no CI test run detected; 0% of function code in complex or long functions; 23% duplicated lines. Weakest area: testing."},"security":{"score":72.5,"confidence":0.85,"coverage":1.0,"label":"adequate","breakdown":{"secrets":100.0,"sast":99.4,"dependencies":null,"ci_actions":null,"posture":0.0,"scorecard":22.5},"summary":"Security posture is adequate: no high-impact findings. Weakest area: posture."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"ok","tool_version":"scorecard v5.6.0","metrics":{"aggregate":2.0,"check:Code-Review":1.0,"check:Maintained":0.0,"check:Binary-Artifacts":9.0,"check:CII-Best-Practices":0.0,"check:Fuzzing":0.0,"check:License":10.0,"check:Branch-Protection":0.0,"check:Security-Policy":0.0,"check:SAST":0.0},"findings":[],"evidence":[{"kind":"scorecard-check","description":"Scorecard Code-Review: 1/10 (Found 4/22 approved changesets -- score normalized to 1)","ref":"Code-Review","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":0.9},{"kind":"scorecard-check","description":"Scorecard Maintained: 0/10 (0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0)","ref":"Maintained","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Binary-Artifacts: 9/10 (binaries present in source code)","ref":"Binary-Artifacts","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":0.1},{"kind":"scorecard-check","description":"Scorecard CII-Best-Practices: 0/10 (no effort to earn an OpenSSF best practices badge detected)","ref":"CII-Best-Practices","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Fuzzing: 0/10 (project is not fuzzed)","ref":"Fuzzing","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0},{"kind":"scorecard-check","description":"Scorecard License: 10/10 (license file detected)","ref":"License","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":0.0},{"kind":"scorecard-check","description":"Scorecard Branch-Protection: 0/10 (branch protection not enabled on development/release branches)","ref":"Branch-Protection","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Security-Policy: 0/10 (security policy file not detected)","ref":"Security-Policy","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0},{"kind":"scorecard-check","description":"Scorecard SAST: 0/10 (SAST tool is not run on all commits -- score normalized to 0)","ref":"SAST","url":"https://scorecard.dev/viewer/?uri=github.com/baidu/AnyQ","weight":1.0}],"data":{"date":"2026-11-09","commit":"d94d450d2aaa5f7ed73424b10aa4539835b97527","matches_head":true},"error":null},{"analyzer":"sec-registry","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no registry dependencies declared"},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":76.0,"attributed_commits":0.0,"attributed_commit_share":0.0,"effective_loc":14794.0,"attributed_loc":0.0,"attributed_loc_share":0.0,"tools_detected":0.0},"findings":[],"evidence":[],"data":{"attributed_loc_by_commit":{},"tools":{},"monthly":{"2018-07":{"loc":14454,"attributed_loc":0},"2018-08":{"loc":17,"attributed_loc":0},"2018-09":{"loc":204,"attributed_loc":0},"2018-10":{"loc":12,"attributed_loc":0},"2018-11":{"loc":66,"attributed_loc":0},"2018-12":{"loc":1,"attributed_loc":0},"2019-01":{"loc":1,"attributed_loc":0},"2019-02":{"loc":10,"attributed_loc":0},"2019-04":{"loc":3,"attributed_loc":0},"2019-07":{"loc":24,"attributed_loc":0},"2019-10":{"loc":2,"attributed_loc":0},"2020-11":{"loc":0,"attributed_loc":0}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":0.0,"workflow_agents":0.0,"tools_configured":0.0},"findings":[],"evidence":[],"data":{"artifacts":[],"workflows":[],"tools":[]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":24.0,"flagged_units":0.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":351.0,"pre_ai_era_burst_loc":0.0,"measured_loc":351.0,"flagged_loc":0.0,"flagged_loc_share":0.0,"max_loc_per_hour":42.0,"median_loc_per_hour":42.0,"pr_timed_units":0.0,"excluded_import_loc":14443.0},"findings":[],"evidence":[],"data":{"flagged_loc_by_commit":{},"excluded_import_commits":["fc6485af6650eb353c59edfa8e36ae817768dd24"]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":14679.0,"index":0.0,"count:narrated_steps":0.0,"per_kloc:narrated_steps":0.0,"files:narrated_steps":0.0,"count:placeholder":0.0,"per_kloc:placeholder":0.0,"files:placeholder":0.0,"count:emoji_in_code":0.0,"per_kloc:emoji_in_code":0.0,"files:emoji_in_code":0.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":0.0,"secrets_history":0.0,"secrets_nonprod":0.0,"secrets_low_confidence":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":1.0,"findings_high":0.0,"findings_medium":1.0,"findings_low":0.0,"weighted_findings":0.25,"scanned_lines":14679.0,"parse_errors":19.0},"findings":[{"rule_id":"opengrep/c.lang.security.insecure-use-memset","severity":"medium","message":"When handling sensitive information in a buffer, it's important to ensure  that the data is securely erased before the buffer is deleted or reused.  While `memset()` is commonly used for this purpose, it can leave sensitive  information behind due to compiler optimizations or other factors.  To avoi [confidence low]","path":"include/retrieval/semantic/annoylib.h","line":690,"fingerprint":"c.lang.security.insecure-use-memset:include/retrieval/semantic/annoylib.h:690"}],"evidence":[],"data":{"rulesets":["c","python","bash"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":0.0,"check:dependency_updates":0.0,"check:signed_commits":0.0,"check:lockfiles":1.0,"signed_commit_share":0.3684,"unpinned_manifests":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":0.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[],"data":{"signals":[],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":642.0,"function_nloc":7304.0,"mean_ccn":2.64,"p90_ccn":6.0,"complex_functions":0.0,"long_functions":0.0,"many_param_functions":1.0,"risky_nloc_share":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":10358.0,"duplicated_lines":2389.0,"duplicated_share":0.2306,"files":157.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: demo/annoy_index_build.cpp:1 and demo/demo_anyq.cpp:1","ref":"demo/annoy_index_build.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/demo/annoy_index_build.cpp#L1","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: demo/demo_anyq.cpp:40 and demo/demo_anyq_multi.cpp:43","ref":"demo/demo_anyq.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/demo/demo_anyq.cpp#L40","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: include/rank/predictor/predictor_interface.h:53 and include/rank/predictor/predictor_interface.h:89","ref":"include/rank/predictor/predictor_interface.h","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/include/rank/predictor/predictor_interface.h#L53","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: include/retrieval/semantic/annoylib.h:189 and include/retrieval/semantic/annoylib.h:339","ref":"include/retrieval/semantic/annoylib.h","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/include/retrieval/semantic/annoylib.h#L189","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: include/retrieval/semantic/kissrandom.h:45 and include/retrieval/semantic/kissrandom.h:90","ref":"include/retrieval/semantic/kissrandom.h","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/include/retrieval/semantic/kissrandom.h#L45","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/analysis/analysis_strategy.cpp:9 and src/analysis/method_interface.cpp:9","ref":"src/analysis/analysis_strategy.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/src/analysis/analysis_strategy.cpp#L9","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/analysis/method_query_intervene.cpp:9 and src/analysis/method_wordseg.cpp:9","ref":"src/analysis/method_query_intervene.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/src/analysis/method_query_intervene.cpp#L9","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/analysis/method_simnet_emb.cpp:9 and src/common/paddle_thread_resource.cpp:9","ref":"src/analysis/method_simnet_emb.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/src/analysis/method_simnet_emb.cpp#L9","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/analysis/method_simnet_emb.cpp:10 and src/dict/paddle_sim_adapter.cpp:10","ref":"src/analysis/method_simnet_emb.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/src/analysis/method_simnet_emb.cpp#L10","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/analysis/method_simnet_emb.cpp:51 and src/matching/semantic/simnet_paddle_sim.cpp:51","ref":"src/analysis/method_simnet_emb.cpp","url":"https://github.com/baidu/AnyQ/blob/d94d450d2aaa5f7ed73424b10aa4539835b97527/src/analysis/method_simnet_emb.cpp#L51","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":53.0,"weighted_findings":45.5,"scanned_lines":14679.0,"category:best-practice":29.0,"category:correctness":21.0,"category:maintainability":3.0},"findings":[{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"tools/common/utils.py","line":126,"fingerprint":"python.lang.best-practice.arbitrary-sleep:tools/common/utils.py:126"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"tools/simnet/preprocess/operation_unit.py","line":137,"fingerprint":"python.lang.best-practice.open-never-closed:tools/simnet/preprocess/operation_unit.py:137"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"tools/solr/make_json.py","line":66,"fingerprint":"python.lang.best-practice.open-never-closed:tools/solr/make_json.py:66"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/common/utils.py","line":36,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/common/utils.py:36"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/common/utils.py","line":54,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/common/utils.py:54"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/common/utils.py","line":55,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/common/utils.py:55"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/common/utils.py","line":56,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/common/utils.py:56"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/common/utils.py","line":86,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/common/utils.py:86"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/operation_unit.py","line":27,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/operation_unit.py:27"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/operation_unit.py","line":137,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/operation_unit.py:137"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/operation_unit.py","line":303,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/operation_unit.py:303"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/operation_unit.py","line":306,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/operation_unit.py:306"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/workflow.py","line":69,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/workflow.py:69"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/preprocess/workflow.py","line":86,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/preprocess/workflow.py:86"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/paddle_simnet.py","line":141,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/paddle_simnet.py:141"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/paddle_simnet.py","line":142,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/paddle_simnet.py:142"},{"rule_id":"opengrep/python.lang.maintainability.useless-if-body","severity":"medium","message":"Useless if statement; both blocks have the same body","path":"tools/simnet/train/paddle/paddle_simnet.py","line":156,"fingerprint":"python.lang.maintainability.useless-if-body:tools/simnet/train/paddle/paddle_simnet.py:156"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/util/data_reader.py","line":35,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/util/data_reader.py:35"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/util/data_reader.py","line":47,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/util/data_reader.py:47"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/util/data_reader.py","line":65,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/util/data_reader.py:65"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/paddle/util/data_reader.py","line":77,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/paddle/util/data_reader.py:77"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/tf/tf_simnet.py","line":40,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/tf/tf_simnet.py:40"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/tf/tools/tf_record_reader.py","line":37,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/tf/tools/tf_record_reader.py:37"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/tf/tools/tf_record_writer.py","line":38,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/tf/tools/tf_record_writer.py:38"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"tools/simnet/train/tf/utils/converter.py","line":26,"fingerprint":"python.lang.maintainability.return-not-in-function:tools/simnet/train/tf/utils/converter.py:26"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/simnet/train/tf/utils/converter.py","line":119,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/simnet/train/tf/utils/converter.py:119"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/solr/make_json.py","line":40,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/solr/make_json.py:40"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/solr/make_json.py","line":53,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/solr/make_json.py:53"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/solr/make_json.py","line":66,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/solr/make_json.py:66"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/solr/solr_tools.py","line":105,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/solr/solr_tools.py:105"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"tools/solr/solr_tools.py","line":171,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:tools/solr/solr_tools.py:171"},{"rule_id":"opengrep/python.lang.correctness.use-sys-exit","severity":"medium","message":"Detected use of `exit`. Use `sys.exit` over the python shell `exit` built-in. `exit` is a helper for the interactive shell and may not be available on all Python implementations.","path":"tools/solr/solr_tools.py","line":275,"fingerprint":"python.lang.correctness.use-sys-exit:tools/solr/solr_tools.py:275"},{"rule_id":"opengrep/python.lang.maintainability.useless-if-body","severity":"medium","message":"Useless if statement; both blocks have the same body","path":"tools/solr/solr_tools.py","line":308,"fingerprint":"python.lang.maintainability.useless-if-body:tools/solr/solr_tools.py:308"},{"rule_id":"opengrep/python.lang.correctness.use-sys-exit","severity":"medium","message":"Detected use of `exit`. Use `sys.exit` over the python shell `exit` built-in. `exit` is a helper for the interactive shell and may not be available on all Python implementations.","path":"tools/solr/solr_tools.py","line":310,"fingerprint":"python.lang.correctness.use-sys-exit:tools/solr/solr_tools.py:310"},{"rule_id":"opengrep/python.lang.correctness.use-sys-exit","severity":"medium","message":"Detected use of `exit`. Use `sys.exit` over the python shell `exit` built-in. `exit` is a helper for the interactive shell and may not be available on all Python implementations.","path":"tools/solr/solr_tools.py","line":313,"fingerprint":"python.lang.correctness.use-sys-exit:tools/solr/solr_tools.py:313"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/predict.sh","line":8,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/predict.sh:8"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/train.sh","line":8,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/train.sh:8"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/train/paddle/run_infer.sh","line":7,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/train/paddle/run_infer.sh:7"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/train/paddle/run_train.sh","line":7,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/train/paddle/run_train.sh:7"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/train/tf/run_infer.sh","line":7,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/train/tf/run_infer.sh:7"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/simnet/train/tf/run_train.sh","line":13,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/simnet/train/tf/run_train.sh:13"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":7,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:7"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":15,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:15"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":34,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:34"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":41,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:41"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":44,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:44"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":47,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:47"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/anyq_solr.sh","line":50,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/anyq_solr.sh:50"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/solr_deply.sh","line":25,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/solr_deply.sh:25"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/solr_deply.sh","line":38,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/solr_deply.sh:38"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/solr_deply.sh","line":53,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/solr_deply.sh:53"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/solr_deply.sh","line":74,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/solr_deply.sh:74"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"tools/solr/solr_deply.sh","line":76,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:tools/solr/solr_deply.sh:76"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":0.0,"check:test_ratio":0.0,"check:ci_present":0.0,"check:ci_runs_tests":0.0,"check:ci_runs_lint":0.0,"check:tests_cochange":0.0,"test_lines":0.0,"source_lines":14679.0,"test_ratio":0.0,"ci_files":0.0,"cochange_share":0.0,"cochange_commits":27.0},"findings":[],"evidence":[],"data":{"test_commands":[],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":1.0,"check:contributing":0.0,"check:changelog":0.0,"readme_lines":86.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0},{"kind":"docs","description":"LICENSE","ref":"LICENSE","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:strict_config":0.0,"check:low_escape_density":1.0,"escapes":1.0,"escapes_per_kloc":0.196},"findings":[],"evidence":[],"data":{},"error":null}],"flags":[]}