https://github.com/xr843/fojin.git
· scanned 2026-05-16 02:11 UTC (2 weeks, 6 days ago)
· 10 languages
382 findings (202 legacy + 180 scanner) 52nd percentile · Python · medium (20-100K LoC) Scanner says 64 (lower by 15)
Last scanned 2 weeks, 6 days ago · v1 · 194 findings from 1 source. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
40.0 | 0.15 | 6.00 |
security_score |
3.0 | 0.25 | 0.75 |
testing_score |
47.0 | 0.20 | 9.40 |
documentation_score |
98.0 | 0.15 | 14.70 |
practices_score |
85.0 | 0.15 | 12.75 |
code_quality |
56.5 | 0.10 | 5.65 |
| Overall | 1.00 | 49.3 |
web: 1.6 ·
agent: 3.5 ·
docker: 40.2 ·
threat: 67.0
Showing 185 of 194 findings. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.
docker-compose.yml:129
dockerlegacy
docker-compose.yml:68
dockerlegacy
docker-compose.yml:7
dockerlegacy
backend/alembic/versions/0041_reassign_international_source_regions.py:41
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0030_deactivate_unreachable_sources.py:70
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0030_deactivate_unreachable_sources.py:54
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0019_add_source_access_type.py:44
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0074_deactivate_jbf_and_reorder_zojoji.py:37
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0049_fix_down_and_moved_source_urls.py:44
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0049_fix_down_and_moved_source_urls.py:37
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:217
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:210
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:203
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:194
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:187
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:180
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0044_deduplicate_and_fix_data_quality.py:169
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0043_cleanup_candidate_sources.py:133
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0043_cleanup_candidate_sources.py:126
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0046_audit_cleanup_and_new_entries.py:213
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0046_audit_cleanup_and_new_entries.py:120
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0046_audit_cleanup_and_new_entries.py:109
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:46
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:39
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0042_set_null_region_sources.py:43
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0042_set_null_region_sources.py:34
injectionlegacy
sql-string-concat
· CWE-89
· A03:2021
backend/alembic/versions/0045_add_new_sources_tier1_tier2.py:159
injectionlegacy
backend/alembic/versions/0043_cleanup_candidate_sources.py:119
injectionlegacy
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:39
injectionlegacy
backend/scripts/import_suttacentral_places.py:66
path_traversallegacy
backend/scripts/enrich_active_in_places.py:185
path_traversallegacy
backend/scripts/import_east_asian_temples.py:38
path_traversallegacy
backend/scripts/init_es_index.py:56
error_handlinglegacy
bare-except-pass
· CWE-755
backend/scripts/base_importer.py:264
error_handlinglegacy
bare-except-pass
· CWE-755
backend/app/services/dify_retrieval.py:21
race_conditionlegacy
asyncio-blocking-call
· CWE-833
backend/scripts/audit_sources.py:71
cryptolegacy
disabled-tls-verify
· CWE-295
· A02:2021
docker-compose.yml:129
dockerlegacy
docker-compose.yml:51
dockerlegacy
frontend/Dockerfile:6
dockerlegacy
backend/Dockerfile:29
dockerlegacy
backend/scripts/init_es_index.py:56
error_handlinglegacy
backend/scripts/fetch_korean_hanja.py:43
error_handlinglegacy
backend/app/main.py:321
error_handlinglegacy
frontend/src/components/Layout.tsx:66
error_handlinglegacy
frontend/src/components/NotificationBell.tsx:26
error_handlinglegacy
frontend/src/pages/CollectionsPage.tsx:209
error_handlinglegacy
backend/scripts/import_dpd.py:184
path_traversallegacy
backend/scripts/audit_sources.py:71
cryptolegacy
backend/entrypoint.sh:13
qualitylegacy
backend/scripts/download_sc_data.py:52
race_conditionlegacy
toctou-os-path-exists
· CWE-367
backend/scripts/download_sc_data.py:38
race_conditionlegacy
toctou-os-path-exists
· CWE-367
backend/scripts/import_content.py:50
race_conditionlegacy
toctou-os-path-exists
· CWE-367
backend/app/main.py:75
authlegacy
cors-wildcard
· CWE-942
· A05:2021
backend/app/main.py:69
authlegacy
cors-wildcard
· CWE-942
· A05:2021
frontend/src/components/search/ContentCard.tsx:51
injectionlegacy
react-dangerously-set-html
· CWE-79
· A03:2021
frontend/src/components/search/ContentCard.tsx:33
injectionlegacy
react-dangerously-set-html
· CWE-79
· A03:2021
frontend/src/components/search/ResultCard.tsx:41
injectionlegacy
react-dangerously-set-html
· CWE-79
· A03:2021
frontend/src/components/search/ResultCard.tsx:19
injectionlegacy
react-dangerously-set-html
· CWE-79
· A03:2021
backend/alembic/versions/0058_expand_mainland_topic_buddhist_sources.py:153
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0058_expand_mainland_topic_buddhist_sources.py:136
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0058_expand_mainland_topic_buddhist_sources.py:82
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0057_add_mainland_buddhist_sources.py:135
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0057_add_mainland_buddhist_sources.py:44
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0062_fix_canon_source_urls.py:30
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0062_fix_canon_source_urls.py:26
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0062_fix_canon_source_urls.py:21
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0022_seed_research_sources.py:367
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0022_seed_research_sources.py:357
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0022_seed_research_sources.py:226
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0060_add_tripitaka_canon_sources.py:154
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0084_add_vietnam_southeast_asia_sources.py:65
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0047_fix_lancaster_catalog_url.py:20
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0049_fix_down_and_moved_source_urls.py:31
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0049_fix_down_and_moved_source_urls.py:30
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0092_fix_dharmamitra_conflict.py:82
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:73
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:52
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:46
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:32
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:31
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:28
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:27
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:25
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:21
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0018_seed_global_sources.py:19
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:215
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:188
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:176
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:164
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:137
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:122
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:98
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:83
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0034_import_comprehensive_global_sources.py:59
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0033_import_google_discovered_sources.py:289
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0033_import_google_discovered_sources.py:213
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0033_import_google_discovered_sources.py:182
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0043_cleanup_candidate_sources.py:36
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:30
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:29
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:28
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:27
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:26
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:25
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0048_fix_https_only_and_stale_urls.py:4
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0016_seed_data_sources.py:52
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:392
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:336
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:318
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:299
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:281
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:245
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:227
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:209
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0082_add_bookmark_sources_batch2.py:45
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0023_fix_urls_add_sources_upgrade_types.py:26
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0081_add_bookmark_sources.py:315
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0081_add_bookmark_sources.py:281
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/alembic/versions/0081_add_bookmark_sources.py:60
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/extract_structured_kg.py:599
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/import_soothill.py:73
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/import_hopkins.py:73
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/import_dila_dict.py:26
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/import_ddb.py:44
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/scripts/import_ddb.py:24
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/core/xml_parser.py:16
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/core/xml_parser.py:15
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/core/tei_84000_parser.py:67
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/core/tei_84000_parser.py:25
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/api/exports.py:205
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/api/exports.py:204
cryptolegacy
http-not-https
· CWE-319
· A02:2021
backend/app/api/exports.py:202
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:121
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:120
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:91
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:81
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:74
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:65
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:64
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:36
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:34
cryptolegacy
http-not-https
· CWE-319
· A02:2021
frontend/src/config/searchPatterns.json:13
cryptolegacy
http-not-https
· CWE-319
· A02:2021
docker-compose.yml:84
cryptolegacy
http-not-https
· CWE-319
· A02:2021
.dockerignore
dockerlegacy
elasticsearch/Dockerfile:1
dockerlegacy
backend/alembic/versions/0054_ensure_openpecha_source_exists.py:80
qualitylegacy
backend/alembic/versions/0054_ensure_openpecha_source_exists.py:45
qualitylegacy
backend/alembic/versions/0046_audit_cleanup_and_new_entries.py:166
qualitylegacy
backend/alembic/versions/0034_import_comprehensive_global_sources.py:212
qualitylegacy
backend/alembic/versions/0013_add_research_notes.py:26
qualitylegacy
backend/alembic/versions/0013_add_research_notes.py:24
qualitylegacy
backend/alembic/versions/0012_add_annotations.py:36
qualitylegacy
backend/alembic/versions/0012_add_annotations.py:34
qualitylegacy
backend/alembic/versions/0009_add_ocr_pipeline.py:30
qualitylegacy
backend/alembic/versions/0079_normalize_language_codes.py:74
test_qualitylegacy
stub-only-function
· CWE-1188
frontend/src/pages/TextReaderPage.tsx:599
qualitylegacy
frontend/src/pages/ChatPage.tsx:267
qualitylegacy
backend/alembic/versions/0059_add_sort_order_and_cleanup.py:19
qualitylegacy
magic-number-default
backend/scripts/import_amap_temples_v3.py:1
qualitylegacy
backend/scripts/fetch_amap_temples_v3.py:1
qualitylegacy
backend/scripts/fetch_amap_temples_v2.py:1
qualitylegacy
backend/scripts/enrich_dynasty_coords_v2.py:1
qualitylegacy
backend/scripts/backfill_person_coords_v2.py:1
qualitylegacy
.well-known/security.txt
qualitylegacy
backend/Dockerfile:10
supply_chainlegacy
npm-install-no-lockfile
· CWE-1357
· A06:2021
frontend/Dockerfile:5
supply_chainlegacy
npm-install-no-lockfile
· CWE-1357
· A06:2021
backend/scripts/validate_persons_v2.py:1
qualitylegacy
backend/scripts/import_amap_temples_v3.py:1
qualitylegacy
backend/scripts/fetch_amap_temples_v3.py:1
qualitylegacy
backend/scripts/fetch_amap_temples_v2.py:1
qualitylegacy
backend/scripts/enrich_dynasty_coords_v2.py:1
qualitylegacy
backend/scripts/cleanup_noise_v2.py:1
qualitylegacy
backend/scripts/backfill_person_coords_v2.py:1
qualitylegacy
docker-compose.yml:151
dockerlegacy
docker-compose.yml:68
dockerlegacy
docker-compose.yml:28
dockerlegacy
docker-compose.yml:7
dockerlegacy
docker-compose.yml:151
dockerlegacy
docker-compose.yml:68
dockerlegacy
docker-compose.yml:129
dockerlegacy
backend/scripts/fetch_amap_temples_v2.py:1
qualitylegacy
docker-compose.yml:87
qualitylegacy
placeholder-default-username
· CWE-1392
backend/scripts/validate_persons_v2.py:1
qualitylegacy
backend/scripts/cleanup_noise_v2.py:1
qualitylegacy
backend/scripts/cleanup_final.py:1
qualitylegacy
This page is publicly accessible at:
https://repobility.com/scan/42747e40-840f-4f7f-95d6-8422159cbe2e/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/42747e40-840f-4f7f-95d6-8422159cbe2e/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.