한국인을 위한 스킬 모음집 - SRT, KTX, 카카오톡, 한글과컴퓨터, 날씨, 미세먼지, 법령, 주식정보, 조선왕조실록, KBO, K-리그, LCK, 특허 검색, 토스 증권, 맞춤법 검사, 중고차 가격, 쿠팡, 네이버 블로그, 다이소, 올리브영, 택배 송장 조회 등등...
This report presents the forensic synthetic code analysis of NomaDamas/k-skill, a JavaScript project with 6,191 GitHub stars. SynthScan v2.0 examined 132,793 lines of code across 723 source files, recording 842 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 6.6 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 842 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | mfds-food-safety/scripts/mfds_food_safety.py | 67 | def normalize_food_recall_row(row: dict[str, Any]) -> dict[str, Any]: | CODE |
| LOW | mfds-food-safety/scripts/mfds_food_safety.py | 79 | def normalize_improper_food_item(item: dict[str, Any]) -> dict[str, Any]: | CODE |
| LOW | mfds-food-safety/scripts/mfds_food_safety.py | 149 | def search_health_food_ingredient( | CODE |
| LOW | iros-registry-automation/tests/test_iros_pdf_summary.py | 51 | def test_masks_resident_registration_number(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 63 | def test_unknown_when_no_markers(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 68 | def test_counts_ownership_transfers(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 71 | def test_excludes_transfer_claim_provisional(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 76 | def test_extracts_amount_and_date(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 82 | def test_marks_canceled_by_rank(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 90 | def test_counts_provisional_seizure(self): | STRING |
| LOW⚡ | iros-registry-automation/tests/test_iros_pdf_summary.py | 97 | def test_summary_shape_and_no_pii(self): | STRING |
| LOW | iros-registry-automation/tests/test_iros_pdf_summary.py | 111 | def test_render_markdown_facts_only(self): | STRING |
| LOW | iros-registry-automation/tests/test_iros_pdf_summary.py | 117 | def test_clean_registry_no_mortgages(self): | STRING |
| LOW | korean-scholarship-search/scripts/scholarship_filter.py | 155 | def normalize_deadline_status(value: Any) -> str | None: | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 30 | def test_current_kst_date_uses_korea_calendar_day(self): | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 37 | def test_resolve_today_falls_back_to_kst_when_missing_or_invalid(self): | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 42 | def test_infer_deadline_status_overrides_stale_cached_status_with_dates(self): | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 55 | def test_infer_deadline_status_returns_unknown_for_noncanonical_cached_value_without_dates(self): | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 62 | def test_infer_deadline_status_treats_end_date_equal_to_today_as_open(self): | CODE |
| LOW⚡ | …-scholarship-search/scripts/test_scholarship_filter.py | 69 | def test_report_does_not_crash_on_noncanonical_status_and_counts_unknown(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 86 | def test_extract_amount_value_uses_amount_fields_and_ignores_irrelevant_notes(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 98 | def test_match_filter_keeps_text_only_amount_by_default_and_marks_it_unknown(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 125 | def test_match_filter_can_drop_text_only_amount_in_strict_mode(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 154 | def test_eligibility_returns_indeterminate_when_profile_fields_are_missing(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 176 | def test_school_name_filter_does_not_match_urls_any_more(self): | CODE |
| LOW | …-scholarship-search/scripts/test_scholarship_filter.py | 209 | def test_school_domain_suppresses_broad_ac_kr_fallback_queries(self): | CODE |
| LOW | tools/k-skill-qa-bot/bin/judge-skill.py | 34 | def _extract_agent_text_from_event(ev) -> str: | CODE |
| LOW | tools/k-skill-qa-bot/bin/judge-skill.py | 53 | def _extract_final_assistant_text(jsonl_path) -> str: | CODE |
| LOW | tools/k-skill-qa-bot/bin/lib/qa_utils.py | 40 | def parse_readme_deprecations(readme_path): | CODE |
| LOW | korean-middle-korean/scripts/korean_middle_korean.js | 85 | function convertToMiddleKoreanStyle(input) { | CODE |
| LOW | korean-patent-search/scripts/patent_search.py | 270 | def parse_patent_search_response(xml_text: str, *, query: str) -> PatentSearchResponse: | CODE |
| LOW | korean-patent-search/scripts/patent_search.py | 285 | def parse_patent_detail_response(xml_text: str) -> PatentDetail: | CODE |
| LOW | …ness-registration/scripts/nts_business_registration.py | 50 | def normalize_business_number(value: Any) -> str: | CODE |
| LOW | …a-talent-search/scripts/test_jobkorea_talent_search.py | 60 | def test_parser_keeps_each_candidate_inside_its_own_row(self) -> None: | STRING |
| LOW | jobkorea-talent-search/scripts/jobkorea_talent_parse.py | 33 | def filter_action_control_text(value: str) -> str: | CODE |
| LOW | jobkorea-talent-search/scripts/jobkorea_talent_parse.py | 46 | def row_contains_other_resume(candidate_markup: str, rno: str) -> bool: | CODE |
| LOW | jobkorea-talent-search/scripts/jobkorea_talent_parse.py | 53 | def extract_regex_candidate_markup(markup: str, match: re.Match[str], rno: str) -> str: | CODE |
| LOW | …pported-packages/blue-ribbon-nearby/test/index.test.js | 240 | function assertPremiumRequiredError(error) { | CODE |
| LOW | …pported-packages/blue-ribbon-nearby/test/index.test.js | 250 | function assertGenericRequestError(error) { | CODE |
| LOW | …ed-packages/blue-ribbon-nearby/src/browser-fallback.js | 186 | function isBrowserFallbackAvailable() { | CODE |
| LOW | …y/unsupported-packages/blue-ribbon-nearby/src/index.js | 241 | async function searchNearbyByCoordinates(options) { | CODE |
| LOW | …y/unsupported-packages/blue-ribbon-nearby/src/index.js | 305 | async function searchNearbyByLocationQuery(locationQuery, options = {}) { | CODE |
| LOW | …y/unsupported-packages/blue-ribbon-nearby/src/parse.js | 32 | function expandLocationQueryAliases(value) { | CODE |
| LOW | legacy/unsupported-proxy/naver-map.js | 64 | function normalizeNaverMapDirectionsQuery(query) { | CODE |
| LOW | legacy/unsupported-proxy/naver-map.js | 95 | function normalizeNaverMapGeocodeQuery(query) { | CODE |
| LOW | legacy/unsupported-proxy/naver-map.js | 125 | function normalizeNaverMapReverseGeocodeQuery(query) { | CODE |
| LOW | legacy/unsupported-proxy/naver-map.js | 302 | async function fetchNaverMapReverseGeocode({ | CODE |
| LOW | legacy/unsupported-proxy/bluer.js | 69 | async function proxyBlueRibbonNearbyRequest({ | CODE |
| LOW | job-posting-match/scripts/test_job_posting_match.py | 12 | def test_build_queries_from_resume(self): | CODE |
| LOW | job-posting-match/scripts/test_job_posting_match.py | 17 | def test_parse_jobkorea_cards_and_dedupe(self): | CODE |
| LOW | job-posting-match/scripts/test_job_posting_match.py | 29 | def test_score_prefers_matching_posting_and_penalizes_negative(self): | CODE |
| LOW | job-posting-match/scripts/test_job_posting_match.py | 38 | def test_score_does_not_match_short_latin_negative_inside_words(self): | CODE |
| LOW | flight-ticket-search/scripts/flight_ticket_search.py | 36 | def candidate_python_executables() -> list[str]: | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 116 | def test_direct_url_includes_service_key(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 123 | def test_direct_without_key_raises(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 131 | def test_returns_empty_when_missing(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 237 | def test_supt_regin_short_form_also_works(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 246 | def test_supt_regin_handles_nationwide_rows_explicitly(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 255 | def test_aply_trgt_substring_match_in_comma_list(self): | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 265 | def test_multiple_filters_are_anded(self): | CODE |
| 582 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | mfds-food-safety/scripts/mfds_food_safety.py | 1 | CODE | |
| LOW | korean-spell-check/scripts/korean_spell_check.py | 1 | CODE | |
| LOW | express-bus-booking/scripts/kobus_express_booking.py | 9 | CODE | |
| LOW | iros-registry-automation/scripts/iros_pdf_summary.py | 24 | CODE | |
| LOW | korean-scholarship-search/scripts/scholarship_filter.py | 4 | CODE | |
| LOW | …n-scholarship-search/scripts/university_search_plan.py | 4 | CODE | |
| LOW | daangn-jobs-search/scripts/daangn_jobs.py | 2 | CODE | |
| LOW | k-skill-cleaner/scripts/k_skill_cleaner.py | 9 | CODE | |
| LOW | mfds-drug-safety/scripts/mfds_drug_safety.py | 1 | CODE | |
| LOW | danawa-price-search/scripts/danawa_search.py | 9 | CODE | |
| LOW | ohou-today-deal/scripts/ohou_today_deal.py | 15 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/classify-skill.py | 2 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/judge-skill.py | 2 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/lib/qa_utils.py | 1 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/lib/parse_skill_md.py | 2 | CODE | |
| LOW | korean-patent-search/scripts/patent_search.py | 1 | CODE | |
| LOW | ticket-availability/scripts/ticket_availability.py | 19 | CODE | |
| LOW | …e-registration-consulting/scripts/fill_official_hwp.py | 8 | CODE | |
| LOW | …ness-registration/scripts/nts_business_registration.py | 1 | CODE | |
| LOW | naver-ad-performance/scripts/naver_ad_performance.py | 1 | CODE | |
| LOW | subway-lost-property/scripts/subway_lost_property.py | 3 | CODE | |
| LOW | …bkorea-talent-search/scripts/jobkorea_talent_search.py | 10 | CODE | |
| LOW | …ent-search/scripts/jobkorea_talent_search_condition.py | 1 | CODE | |
| LOW | …a-talent-search/scripts/test_jobkorea_talent_search.py | 3 | CODE | |
| LOW | …bkorea-talent-search/scripts/jobkorea_talent_models.py | 1 | CODE | |
| LOW | jobkorea-talent-search/scripts/jobkorea_talent_parse.py | 1 | CODE | |
| LOW | g2b-order-plan-search/scripts/g2b_order_plan.py | 7 | CODE | |
| LOW | …sanctioned-supplier/scripts/g2b_sanctioned_supplier.py | 7 | CODE | |
| LOW | fsc-corporate-info/scripts/fsc_corporate_info.py | 7 | CODE | |
| LOW | seoul-density/scripts/seoul_density.py | 12 | CODE | |
| LOW | coupang-product-search/scripts/coupang_partners_mcp.py | 9 | CODE | |
| LOW | job-posting-match/scripts/job_posting_match.py | 7 | CODE | |
| LOW | daangn-cars-search/scripts/daangn_cars.py | 2 | CODE | |
| LOW | daangn-cars-search/scripts/daangn_cars.py | 2 | CODE | |
| LOW | daangn-cars-search/scripts/daangn_cars.py | 3 | CODE | |
| LOW | …a-business-status/scripts/localdata_business_status.py | 12 | CODE | |
| LOW | …a-business-status/scripts/localdata_business_status.py | 20 | CODE | |
| LOW | intercity-bus-booking/scripts/intercity_bus_search.py | 8 | CODE | |
| LOW | zipcode-search/scripts/zipcode_search.py | 3 | CODE | |
| LOW | korean-slang-writing/scripts/slang_search.py | 2 | CODE | |
| LOW | korean-slang-writing/scripts/slang_search.py | 6 | CODE | |
| LOW | korean-slang-writing/scripts/_slang_http.py | 1 | CODE | |
| LOW | korean-slang-writing/scripts/slang_lookup.py | 2 | CODE | |
| LOW | flight-ticket-search/scripts/flight_ticket_search.py | 7 | CODE | |
| LOW | …ension-workplace/scripts/national_pension_workplace.py | 7 | CODE | |
| LOW | kstartup-search/scripts/run_kstartup.py | 7 | CODE | |
| LOW | geeknews-search/scripts/geeknews_search.py | 3 | CODE | |
| LOW | foresttrip-vacancy/scripts/run_foresttrip_vacancy.py | 11 | CODE | |
| LOW | scripts/test_srt_seats.py | 1 | CODE | |
| LOW | scripts/srt_booking.py | 2 | CODE | |
| LOW | scripts/test_korean_slang_writing.py | 2 | CODE | |
| LOW | scripts/patent_search.py | 1 | CODE | |
| LOW | scripts/nts_business_registration.py | 1 | CODE | |
| LOW | scripts/test_srt_booking.py | 1 | CODE | |
| LOW | scripts/sillok_search.py | 1 | CODE | |
| LOW | scripts/test_naver_ad_performance.py | 5 | CODE | |
| LOW | scripts/geeknews_search.py | 3 | CODE | |
| LOW | scripts/test_ticket_availability.py | 1 | CODE | |
| LOW | scripts/mfds_drug_safety.py | 1 | CODE | |
| LOW | scripts/zipcode_search.py | 3 | CODE | |
| 35 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | iros-registry-automation/scripts/iros_pdf_summary.py | 32 | # ── 개인정보 마스킹 ────────────────────────────────────────────── | COMMENT |
| MEDIUM | iros-registry-automation/scripts/iros_pdf_summary.py | 41 | # ── 텍스트 추출 (로컬 전용, 무전송) ────────────────────────────── | COMMENT |
| MEDIUM | iros-registry-automation/scripts/iros_pdf_summary.py | 71 | # ── 파싱 헬퍼 ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | iros-registry-automation/scripts/iros_pdf_summary.py | 171 | # ── 요약 (테스트 대상 순수 함수) ───────────────────────────────── | COMMENT |
| MEDIUM | iros-registry-automation/scripts/iros_pdf_summary.py | 194 | # ── 사람이 읽는 요약 (사실만) ──────────────────────────────────── | COMMENT |
| MEDIUM | ticket-availability/scripts/ticket_availability.py | 51 | # ── URL Parsing ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ticket-availability/scripts/ticket_availability.py | 91 | # ── HTTP Setup ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ticket-availability/scripts/ticket_availability.py | 116 | # ── YES24 Client ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ticket-availability/scripts/ticket_availability.py | 246 | # ── Interpark Client ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ticket-availability/scripts/ticket_availability.py | 327 | # ── CLI ─────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | scripts/ticket_availability.py | 51 | # ── URL Parsing ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | scripts/ticket_availability.py | 91 | # ── HTTP Setup ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | scripts/ticket_availability.py | 116 | # ── YES24 Client ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | scripts/ticket_availability.py | 246 | # ── Interpark Client ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | scripts/ticket_availability.py | 327 | # ── CLI ─────────────────────────────────────────────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | express-bus-booking/scripts/kobus_express_booking.py | 97 | CODE | |
| LOW | korean-scholarship-search/scripts/scholarship_filter.py | 93 | CODE | |
| LOW | korean-scholarship-search/scripts/scholarship_filter.py | 461 | CODE | |
| LOW | k-skill-cleaner/scripts/k_skill_cleaner.py | 110 | CODE | |
| LOW | k-skill-cleaner/scripts/k_skill_cleaner.py | 211 | CODE | |
| LOW | danawa-price-search/scripts/danawa_search.py | 111 | CODE | |
| LOW | danawa-price-search/scripts/danawa_search.py | 155 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/classify-skill.py | 78 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/judge-skill.py | 34 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/judge-skill.py | 136 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/lib/parse_skill_md.py | 14 | CODE | |
| LOW | tools/k-skill-qa-bot/bin/lib/parse_skill_md.py | 53 | CODE | |
| LOW | …ent-search/scripts/jobkorea_talent_search_condition.py | 22 | CODE | |
| LOW | …ent-search/scripts/jobkorea_talent_search_condition.py | 66 | CODE | |
| LOW | job-posting-match/scripts/job_posting_match.py | 119 | CODE | |
| LOW | intercity-bus-booking/scripts/intercity_bus_search.py | 211 | CODE | |
| LOW | flight-ticket-search/scripts/flight_ticket_search.py | 269 | CODE | |
| LOW | kstartup-search/scripts/run_kstartup.py | 95 | CODE | |
| LOW | kstartup-search/scripts/run_kstartup.py | 145 | CODE | |
| LOW | foresttrip-vacancy/tests/test_run_foresttrip_vacancy.py | 284 | CODE | |
| LOW | foresttrip-vacancy/scripts/run_foresttrip_vacancy.py | 211 | CODE | |
| LOW | foresttrip-vacancy/scripts/run_foresttrip_vacancy.py | 413 | CODE | |
| LOW | scripts/test_korean_spell_check.py | 289 | CODE | |
| LOW | scripts/test_ktx_booking.py | 910 | CODE | |
| LOW | scripts/test_ktx_booking.py | 989 | CODE | |
| LOW | scripts/test_ktx_booking.py | 1069 | CODE | |
| LOW | scripts/test_ktx_booking.py | 1147 | CODE | |
| LOW | scripts/ktx_booking.py | 236 | CODE | |
| LOW | scripts/ktx_booking.py | 561 | CODE | |
| LOW | naver-blog-research/scripts/naver_read.py | 88 | CODE | |
| LOW | naver-blog-research/scripts/naver_download_images.py | 47 | CODE | |
| LOW | naver-blog-research/scripts/naver_search.py | 66 | CODE | |
| LOW | naver-blog-research/scripts/naver_search.py | 104 | CODE | |
| LOW | popbill/scripts/popbill_cli.py | 202 | CODE | |
| LOW | daangn-realty-search/scripts/daangn_detail_ld.py | 50 | CODE | |
| LOW | daangn-realty-search/scripts/daangn_relay_store.py | 33 | CODE | |
| LOW | daangn-realty-search/scripts/daangn_relay_store.py | 69 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | daangn-jobs-search/scripts/daangn_jobs.py | 23 | except Exception: return str(v) | CODE |
| LOW | daangn-jobs-search/scripts/daangn_jobs.py | 60 | except Exception: | CODE |
| LOW | daangn-jobs-search/scripts/daangn_jobs.py | 89 | except Exception: | CODE |
| LOW | danawa-price-search/scripts/danawa_search.py | 124 | except Exception: | CODE |
| LOW | danawa-price-search/scripts/danawa_search.py | 309 | except Exception as exc: # keep search result usable if a detail call fails | CODE |
| LOW | danawa-price-search/scripts/danawa_search.py | 348 | except Exception as exc: | CODE |
| LOW | korean-patent-search/scripts/patent_search.py | 213 | except Exception as exc: # pragma: no cover - defensive fallback guard | CODE |
| LOW | ticket-availability/scripts/ticket_availability.py | 380 | except Exception as e: | CODE |
| LOW | …e-registration-consulting/scripts/fill_official_hwp.py | 104 | except Exception as exc: # noqa: BLE001 - CLI boundary | CODE |
| LOW | job-posting-match/scripts/job_posting_match.py | 146 | except Exception: | CODE |
| LOW | job-posting-match/scripts/job_posting_match.py | 191 | except Exception: | CODE |
| LOW | job-posting-match/scripts/job_posting_match.py | 366 | except Exception as exc: # noqa: BLE001 - CLI should continue with other source | CODE |
| LOW | job-posting-match/scripts/job_posting_match.py | 371 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | daangn-cars-search/scripts/daangn_cars.py | 20 | except Exception: return str(v) | CODE |
| LOW | …a-business-status/scripts/localdata_business_status.py | 172 | except Exception as err: # 경계 계약: 어떤 오류든 강등 | CODE |
| LOW | flight-ticket-search/scripts/flight_ticket_search.py | 332 | except Exception as e: # keep scans robust | CODE |
| LOW | foresttrip-vacancy/scripts/run_foresttrip_vacancy.py | 198 | except Exception: | CODE |
| LOW | foresttrip-vacancy/scripts/run_foresttrip_vacancy.py | 378 | except Exception as exc: | CODE |
| LOW | scripts/ticket_availability.py | 380 | except Exception as e: | CODE |
| LOW | joseon-sillok-search/scripts/sillok_search.py | 287 | except Exception as error: # noqa: BLE001 | CODE |
| LOW | joseon-sillok-search/scripts/sillok_search.py | 543 | except Exception as error: # noqa: BLE001 | CODE |
| LOW | naver-blog-research/scripts/naver_download_images.py | 135 | except Exception as exc: | CODE |
| LOW | popbill/scripts/popbill_cli.py | 278 | except Exception as exc: | CODE |
| LOW | nts-tax-delinquency/scripts/nts_tax_delinquency.py | 124 | except Exception as err: # 경계 계약: 어떤 오류든 강등, 크래시 금지 | CODE |
| LOW | myrealtrip-search/scripts/myrealtrip_mcp.py | 114 | except Exception as exc: # pragma: no cover - environment dependent | CODE |
| LOW | myrealtrip-search/scripts/myrealtrip_mcp.py | 135 | except Exception as exc: | CODE |
| LOW | biz-health-check/scripts/biz_health_check.py | 80 | except Exception as err: | CODE |
| LOW | biz-health-check/scripts/biz_health_check.py | 90 | except Exception as err: # 경계 계약: 한 항목 실패가 전체를 막지 않는다 | CODE |
| LOW | daangn-used-goods-search/scripts/daangn_used_goods.py | 20 | except Exception: return str(v) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | korean-jangbu-for/scripts/install.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | packages/gongsijiga-search/src/realtyprice.js | 1 | // realtyprice.js — helpers for querying realtyprice.kr 공시지가 (officially published | COMMENT |
| LOW | packages/toss-securities/src/official-client.js | 1 | "use strict"; | COMMENT |
| LOW | packages/k-skill-proxy/test/server.test.js | 6241 | // cache-protection layers: | COMMENT |
| LOW | packages/k-skill-proxy/src/korean-law.js | 1 | // k-skill-proxy wrapper for the official 법제처 (Korea Ministry of Government | COMMENT |
| LOW | packages/k-skill-proxy/src/lh-notice.js | 1 | // LH 청약 (Korea Land & Housing Corporation lease/subscription notice) API wrapper. | COMMENT |
| LOW | korean-privacy-terms/scripts/install.sh | 1 | #!/usr/bin/env bash | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/test_daangn_realty.py | 104 | <script type="application/ld+json">{"@context":"https://schema.org","@graph":null}</script> | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 119 | url = run_kstartup.build_url("statistics", query, direct=True, api_key="dummy-key", proxy_base_url=args.proxy_ba | CODE |
| LOW⚡ | kstartup-search/tests/test_run_kstartup.py | 121 | self.assertIn("ServiceKey=dummy-key", url) | CODE |
| LOW⚡ | scripts/test_ktx_booking.py | 360 | self.assertFalse(ktx_booking.is_phone_login_id("user@example.com")) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/k-skill-qa-bot/bin/lib/qa_utils.py | 93 | __all__ = [ | CODE |
| LOW | …bkorea-talent-search/scripts/jobkorea_talent_search.py | 22 | __all__ = ["parse_candidates"] | CODE |
| LOW | scripts/k_skill_cleaner.py | 30 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | korean-patent-search/scripts/patent_search.py | 315 | CODE | |
| LOW | korean-slang-writing/scripts/slang_search.py | 94 | CODE | |
| LOW | scripts/test_korean_slang_writing.py | 43 | CODE | |
| LOW | scripts/test_ktx_booking.py | 16 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python-packages/README.md | 1 | # Python package release scaffold | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/gongsijiga-search/src/realtyprice.js | 512 | // Step 4: fetch gsiList | COMMENT |
| LOW | packages/gongsijiga-search/src/realtyprice.js | 526 | // Step 5: normalize + build response | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/gongsijiga-search/src/realtyprice.js | 512 | // Step 4: fetch gsiList | COMMENT |
| LOW | packages/gongsijiga-search/src/realtyprice.js | 526 | // Step 5: normalize + build response | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | flight-ticket-search/scripts/flight_ticket_search.py | 332 | except Exception as e: # keep scans robust | CODE |