AI Slop Code RIsk Monitor

frappe/hrms

Open Source HR and Payroll Software

10.7 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for frappe/hrms, a Python project with 8,913 GitHub stars. SynthScan examined 151,806 lines of code across 1517 source files, recording 1530 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 10.7 (Moderate 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.

10.7
Adjusted Signal
10.7
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
8.9K
Stars
Python
Language
151.8K
Lines of Code
1.5K
Files
1.5K
Pattern Hits
2026-10-12
Scan Date
0.01
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 34.5/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 1364 finding(s).

Hallucinated Dependency & Supply Chain Risk 3.1/100 · LOW

Are imports declared and package/API names verified? 61 finding(s).

Agent Over-Engineering Ratio 37.7/100 · MEDIUM

Are wrappers, guards, and repeated structures necessary? 1388 finding(s).

PR Review Velocity Impact 43.1/100 · MEDIUM

Which changes need focused human review? 1530 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 20MEDIUM 42LOW 1468

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 1530 distinct pattern matches across 14 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.

Hyper-Verbose Identifiers1267 hits · 1186 pts
SeverityFileLineSnippetContext
LOWhrms/subscription_utils.py95def update_erpnext_workspaces(disable: bool = True):CODE
LOWhrms/telemetry.py142def on_leave_application_submit(doc, method=None):CODE
LOWhrms/telemetry.py171def on_attendance_request_submit(doc, method=None):CODE
LOWhrms/telemetry.py289def capture_daily_attendance_pulse():CODE
LOWhrms/setup.py49def get_regional_custom_fields():CODE
LOWhrms/setup.py601def create_default_role_profiles():CODE
LOW⚡hrms/setup.py655def create_salary_slip_loan_fields():CODE
LOW⚡hrms/setup.py660def add_lending_docperms_to_ess():CODE
LOW⚡hrms/setup.py670def remove_lending_docperms_from_ess():CODE
LOWhrms/setup.py684def add_non_standard_user_types():CODE
LOWhrms/setup.py735def get_lending_docperms_for_ess():CODE
LOWhrms/setup.py775def append_docperms_to_user_type(docperms, doc):CODE
LOWhrms/setup.py789def update_select_perm_after_install():CODE
LOWhrms/setup.py829def get_salary_slip_loan_fields():CODE
LOWhrms/setup.py950def add_default_hr_permissions():CODE
LOWhrms/overrides/dashboard_overrides.py7def get_dashboard_for_employee(data):CODE
LOW⚡hrms/overrides/dashboard_overrides.py89def get_dashboard_for_holiday_list(data):CODE
LOW⚡hrms/overrides/dashboard_overrides.py97def get_dashboard_for_timesheet(data):CODE
LOW⚡hrms/overrides/dashboard_overrides.py103def get_dashboard_for_project(data):CODE
LOW⚡hrms/overrides/dashboard_overrides.py111def get_dashboard_for_bank_account(data):CODE
LOWhrms/overrides/company.py119def set_expense_claim_type_accounts(doc, method=None):CODE
LOWhrms/overrides/company.py138def get_or_create_expense_claim_account(doc) -> str | None:CODE
LOWhrms/overrides/company.py171def validate_default_accounts(doc, method=None):CODE
LOWhrms/overrides/company.py194def delete_docs_with_company_field(doc, method=None):CODE
LOWhrms/overrides/company.py205def clear_company_field_for_single_doctypes(doc):CODE
LOWhrms/overrides/company.py220def get_single_doctypes_with_company_field():CODE
LOWhrms/overrides/employee_payment_entry.py22 def get_valid_reference_doctypes(self):CODE
LOWhrms/overrides/employee_payment_entry.py77def get_payment_entry_for_employee(CODE
LOWhrms/overrides/employee_payment_entry.py183def get_grand_total_and_outstanding_amount(doc, party_amount, party_account_currency):CODE
LOWhrms/overrides/employee_payment_entry.py218def get_paid_amount_and_received_amount(CODE
LOWhrms/overrides/employee_payment_entry.py249def get_payment_reference_details(CODE
LOWhrms/overrides/employee_payment_entry.py266def get_reference_details_for_employee(CODE
LOWhrms/overrides/employee_payment_entry.py306def get_total_amount_and_exchange_rate(ref_doc, party_account_currency, company_currency):CODE
LOWhrms/overrides/employee_payment_entry.py342def set_exchange_rate_in_advance(doc: Document, method: None = None):CODE
LOWhrms/overrides/employee_master.py31def validate_onboarding_process(doc, method=None):CODE
LOWhrms/overrides/employee_master.py57def update_job_applicant_and_offer(doc, method=None):CODE
LOWhrms/overrides/employee_master.py127def update_approver_user_roles(doc, method=None):CODE
LOWhrms/patches/v16_0/set_job_offer_in_employee.py35def set_job_offer_in_employee():CODE
LOW…ble_multi_currency_expense_claim_for_existing_users.py9def has_multi_currency_documents(doctype: str) -> bool:CODE
LOW⚡hrms/patches/v16_0/create_holiday_list_assignments.py19def create_holiday_list_assignment(entity_details):CODE
LOW⚡hrms/patches/v16_0/create_holiday_list_assignments.py27def get_employee_holiday_details():CODE
LOWhrms/patches/v16_0/create_holiday_list_assignments.py49def get_company_holiday_details():CODE
LOW…_0/call_set_total_advance_paid_on_advance_documents.py17def call_set_total_advance_paid(doctype) -> list:CODE
LOW…ches/post_install/update_performance_module_changes.py68def update_kra_evaluation_method():CODE
LOWhrms/tests/test_utils.py71def get_first_day_for_prev_month():CODE
LOWhrms/tests/test_roster.py9 def test_get_shifts_returns_shift_type_details(self):CODE
LOWhrms/tests/test_roster.py29 def test_insert_shift_ignores_cancelled_assignment(self):CODE
LOW⚡hrms/tests/test_sidebar_fixtures.py68 def test_every_semantic_module_ships_one(self):CODE
LOW⚡hrms/tests/test_sidebar_fixtures.py75 def test_they_declare_the_renamed_doctype(self):CODE
LOW⚡hrms/tests/test_sidebar_fixtures.py82 def test_the_module_walk_picks_them_up(self):CODE
LOW⚡hrms/tests/test_sidebar_fixtures.py90 def test_record_name_and_filename_agree(self):CODE
LOWhrms/tests/test_sidebar_fixtures.py111 def test_a_module_resolves_to_the_items_its_fixture_ships(self):CODE
LOWhrms/tests/test_sidebar_fixtures.py125 def test_the_label_and_icon_are_the_fixture_s(self):CODE
LOWhrms/tests/test_sidebar_fixtures.py134 def test_a_module_opens_on_its_own_navigation(self):CODE
LOWhrms/tests/utils.py129 def make_holiday_list_assignment(self):CODE
LOWhrms/tests/utils.py335 def update_email_account_settings(self):CODE
LOWhrms/tests/utils.py396def make_company_restricted_user(email: str, company: str, role: str = "HR Manager") -> str:CODE
LOWhrms/tests/test_api.py10 def test_get_company_currencies_respects_company_scope(self):CODE
LOW⚡hrms/tests/test_telemetry.py327 def test_milestone_fires_for_doctype_seeded_at_install(self):CODE
LOW⚡hrms/tests/test_telemetry.py337 def test_milestone_fires_only_once_per_site(self):CODE
1207 more matches not shown…
Decorative Section Separators25 hits · 94 pts
SeverityFileLineSnippetContext
MEDIUM⚡hrms/hooks.py81# ----------COMMENT
MEDIUM⚡hrms/hooks.py91# ----------COMMENT
MEDIUM⚡hrms/hooks.py101# ------------COMMENT
MEDIUM⚡hrms/hooks.py117# ------------COMMENT
MEDIUM⚡hrms/hooks.py123# ----------------COMMENT
MEDIUM⚡hrms/hooks.py129# ------------------COMMENT
MEDIUM⚡hrms/hooks.py137# -------------------COMMENT
MEDIUM⚡hrms/hooks.py145# ------------------COMMENT
MEDIUM⚡hrms/hooks.py151# -----------COMMENT
MEDIUMhrms/hooks.py25# ------------------COMMENT
MEDIUMhrms/hooks.py68# ----------COMMENT
MEDIUMhrms/hooks.py165# ---------------COMMENT
MEDIUMhrms/hooks.py176# ---------------COMMENT
MEDIUMhrms/hooks.py260# ---------------COMMENT
MEDIUMhrms/hooks.py312# -----------------------------COMMENT
MEDIUMhrms/hooks.py363# --------------------COMMENT
MEDIUMhrms/hooks.py387# --------------------------------COMMENT
MEDIUMhrms/hooks.py394# --------------------------------COMMENT
MEDIUMhrms/payroll/doctype/salary_slip/test_salary_slip.py1598 # ------------------------------------COMMENT
MEDIUM⚡hrms/controllers/employee_reminders.py15# -----------------COMMENT
MEDIUM⚡hrms/controllers/employee_reminders.py17# -----------------COMMENT
MEDIUMhrms/controllers/employee_reminders.py86# ------------------COMMENT
MEDIUMhrms/controllers/employee_reminders.py88# ------------------COMMENT
MEDIUM⚡hrms/controllers/employee_reminders.py198# --------------------------COMMENT
MEDIUM⚡hrms/controllers/employee_reminders.py200# --------------------------COMMENT
Excessive Try-Catch Wrapping57 hits · 68 pts
SeverityFileLineSnippetContext
LOWhrms/subscription_utils.py116 except Exception:CODE
LOWhrms/subscription_utils.py128 except Exception:CODE
LOWhrms/uninstall.py11 except Exception as e:CODE
MEDIUMhrms/uninstall.py6def before_uninstall():CODE
LOWhrms/install.py13 except Exception as e:CODE
MEDIUMhrms/install.py6def after_install():CODE
LOWhrms/overrides/company.py34 except Exception as e:CODE
LOWhrms/overrides/company.py47 except Exception as e:CODE
LOWhrms/overrides/company.py61 except Exception:CODE
LOWhrms/overrides/company.py86 except Exception:CODE
MEDIUMhrms/overrides/company.py41def run_regional_setup(country):CODE
MEDIUMhrms/overrides/company.py54def get_error_message(error) -> str:CODE
LOW⚡hrms/patches/v16_0/create_holiday_list_assignments.py15 except Exception as e:CODE
LOW…hes/v15_0/rename_and_update_leave_encashment_fields.py9 except Exception as e:CODE
MEDIUM…hes/v15_0/rename_and_update_leave_encashment_fields.py5def execute():CODE
LOW…_0/call_set_total_advance_paid_on_advance_documents.py35 except Exception as e:CODE
LOW…laim_date_to_payroll_date_in_employee_benefit_claim.py10 except Exception as e:CODE
MEDIUM…laim_date_to_payroll_date_in_employee_benefit_claim.py5def execute():CODE
LOW…_0/rename_enable_late_entry_early_exit_grace_period.py9 except Exception as e:CODE
MEDIUM…_0/rename_enable_late_entry_early_exit_grace_period.py4def execute():CODE
LOWhrms/patches/v15_0/migrate_loan_type_to_loan_product.py8 except Exception as e:CODE
MEDIUMhrms/patches/v15_0/migrate_loan_type_to_loan_product.py4def execute():CODE
LOW…ve_tax_slabs_from_payroll_period_to_income_tax_slab.py111 except Exception:STRING
LOW…ve_tax_slabs_from_payroll_period_to_income_tax_slab.py139 except Exception:STRING
LOW…ches/post_install/update_performance_module_changes.py63 except Exception as e:CODE
MEDIUM…ches/post_install/update_performance_module_changes.py58def rename_fields():CODE
LOW…post_install/rename_stop_to_send_birthday_reminders.py17 except Exception as e:CODE
LOWhrms/utils/__init__.py27 except Exception:CODE
LOW⚡hrms/hr/utils.py384 except Exception as e:CODE
LOW…shift_schedule_assignment/shift_schedule_assignment.py159 except Exception as e:CODE
LOWhrms/hr/doctype/shift_type/shift_type.py180 except Exception as e:CODE
LOWhrms/hr/doctype/pwa_notification/pwa_notification.py49 except Exception:CODE
MEDIUMhrms/hr/doctype/pwa_notification/pwa_notification.py33def send_push_notification(self):CODE
LOW…/hr/doctype/leave_control_panel/leave_control_panel.py85 except Exception:CODE
LOW…/hr/doctype/leave_control_panel/leave_control_panel.py126 except Exception:CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py480 except Exception as e:CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py513 except Exception as e:CODE
LOWhrms/hr/doctype/interview/interview.py144 except Exception:CODE
LOWhrms/hr/doctype/interview/interview.py238 except Exception:CODE
LOW…doctype/shift_assignment_tool/shift_assignment_tool.py262 except Exception:CODE
LOW…doctype/shift_assignment_tool/shift_assignment_tool.py314 except Exception:CODE
LOW…ype/leave_policy_assignment/leave_policy_assignment.py542 except Exception:CODE
MEDIUMhrms/api/__init__.py132def are_push_notifications_enabled() -> bool:CODE
LOWhrms/api/__init__.py804 except Exception as e:CODE
LOW…eport/income_tax_computation/income_tax_computation.py173 except Exception:CODE
LOWhrms/payroll/doctype/income_tax_slab/income_tax_slab.py127 except Exception as e:CODE
LOW…ctype/employee_benefit_claim/employee_benefit_claim.py229 except Exception as e:CODE
LOW…ry_structure_assignment/salary_structure_assignment.py462 except Exception as exc:CODE
MEDIUMhrms/payroll/doctype/salary_slip/salary_slip.py1467def eval_condition_and_formula(self, struct_row, data):CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py1494 except Exception as exc:CODE
LOW…s/payroll/doctype/salary_structure/salary_structure.py289 except Exception:CODE
LOW…ructure_assignment/bulk_salary_structure_assignment.py118 except Exception:CODE
MEDIUMhrms/payroll/doctype/payroll_entry/payroll_entry.py1837def submit_salary_slips_for_employees(payroll_entry, salary_slips, publish_progrCODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py855 except Exception as e:CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1728 except Exception:CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1783 except Exception as e:CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1868 except Exception as e:CODE
Empty Error Handlers13 hits · 65 pts
SeverityFileLineSnippetContext
HIGHhrms/subscription_utils.py128except Exception:CODE
HIGHhrms/setup.py597except frappe.ValidationError:CODE
HIGHhrms/overrides/company.py45except ImportError:CODE
HIGHhrms/overrides/company.py31except (ImportError, AttributeError):CODE
HIGH…ve_tax_slabs_from_payroll_period_to_income_tax_slab.py111except Exception:CODE
HIGH…ve_tax_slabs_from_payroll_period_to_income_tax_slab.py139except Exception:CODE
HIGH…thly_attendance_sheet/test_monthly_attendance_sheet.py903except OverlapError:CODE
HIGH…thly_attendance_sheet/test_monthly_attendance_sheet.py239except OverlapError:CODE
HIGHhrms/hr/doctype/pwa_notification/pwa_notification.py46except ImportError:CODE
HIGHhrms/hr/doctype/appraisal_cycle/appraisal_cycle.py220except frappe.DuplicateEntryError:CODE
HIGHhrms/hr/doctype/leave_application/leave_application.py784except frappe.OutgoingEmailError:CODE
HIGHhrms/hr/doctype/vehicle_log/test_vehicle_log.py285except frappe.DuplicateEntryError:CODE
HIGHhrms/regional/india/utils.py97except IndexError:CODE
Cross-Language Confusion7 hits · 50 pts
SeverityFileLineSnippetContext
HIGHhrms/hr/utils.py203 # hack! if name is null, it could cause problems with !=COMMENT
HIGHhrms/hr/utils.py203 # hack! if name is null, it could cause problems with !=COMMENT
HIGHhrms/hr/doctype/leave_application/leave_application.py509 # hack! if name is null, it could cause problems with !=COMMENT
HIGHhrms/hr/doctype/leave_application/leave_application.py509 # hack! if name is null, it could cause problems with !=COMMENT
HIGHhrms/regional/india/setup.py240 "depends_on": "eval:doc.tax_relief_limit > 0 && doc.currency == 'INR'",CODE
HIGHhrms/payroll/doctype/payroll_period/payroll_period.py41 # hack! if name is null, it could cause problems with !=COMMENT
HIGHhrms/payroll/doctype/payroll_period/payroll_period.py41 # hack! if name is null, it could cause problems with !=COMMENT
Unused Imports53 hits · 45 pts
SeverityFileLineSnippetContext
LOW…ng_on_a_holiday/test_employees_working_on_a_holiday.py1CODE
LOWhrms/hr/report/leave_ledger/test_leave_ledger.py2CODE
LOWhrms/hr/report/leave_ledger/test_leave_ledger.py9CODE
LOW…r/report/employee_analytics/test_employee_analytics.py2CODE
LOW…t/monthly_attendance_sheet/monthly_attendance_sheet.py16CODE
LOW…t/monthly_attendance_sheet/monthly_attendance_sheet.py16CODE
LOWhrms/hr/doctype/attendance/test_attendance.py7CODE
LOWhrms/hr/doctype/attendance/test_attendance.py7CODE
LOWhrms/hr/doctype/job_applicant/test_job_applicant.py5CODE
LOWhrms/hr/doctype/leave_period/test_leave_period.py6CODE
LOWhrms/hr/doctype/leave_period/test_leave_period.py8CODE
LOWhrms/hr/doctype/shift_type/test_shift_type.py6CODE
LOWhrms/hr/doctype/employment_type/test_employment_type.py4CODE
LOW…/doctype/attendance_request/test_attendance_request.py14CODE
LOW…octype/employee_onboarding/test_employee_onboarding.py13CODE
LOWhrms/hr/doctype/overtime_type/test_overtime_type.py8CODE
LOW…s/hr/doctype/employee_checkin/test_employee_checkin.py7CODE
LOW…s/hr/doctype/employee_checkin/test_employee_checkin.py7CODE
LOW…s/hr/doctype/employee_checkin/test_employee_checkin.py19CODE
LOW…s/hr/doctype/employee_checkin/test_employee_checkin.py29CODE
LOW…doctype/leave_allocation/test_earned_leave_schedule.py5CODE
LOWhrms/hr/doctype/interview_type/interview_type.py5CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py5CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py6CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py10CODE
LOWhrms/hr/doctype/overtime_slip/overtime_slip.py13CODE
LOW…ms/hr/doctype/appraisal_template/appraisal_template.py5CODE
LOW…ms/hr/doctype/appraisal_template/appraisal_template.py6CODE
LOW…ms/hr/doctype/appraisal_template/appraisal_template.py8CODE
LOW…final_statement/full_and_final_statement_loan_utils.py7CODE
LOW…final_statement/full_and_final_statement_loan_utils.py12CODE
LOW…s/hr/doctype/leave_adjustment/test_leave_adjustment.py7CODE
LOWhrms/hr/doctype/leave_encashment/leave_encashment.py7CODE
LOWhrms/hr/doctype/leave_application/leave_application.py28CODE
LOW…hr/doctype/leave_application/test_leave_application.py38CODE
LOWhrms/hr/doctype/goal/goal.py4CODE
LOWhrms/hr/doctype/goal/test_goal.py9CODE
LOWhrms/api/oauth.py6CODE
LOW…ort/accrued_earnings_report/accrued_earnings_report.py7CODE
LOW…ort/employee_ctc_break_up/test_employee_ctc_breakup.py6CODE
LOW…declaration/test_employee_tax_exemption_declaration.py7CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py13CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py13CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py13CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py55CODE
LOW…/payroll/doctype/salary_slip/salary_slip_loan_utils.py10CODE
LOW…roll/doctype/salary_structure/test_salary_structure.py5CODE
LOW…roll/doctype/salary_structure/test_salary_structure.py8CODE
LOW…ll/doctype/additional_salary/test_additional_salary.py7CODE
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py6CODE
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py12CODE
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py13CODE
LOWhrms/payroll/doctype/payroll_period/payroll_period.py8CODE
Deep Nesting55 hits · 44 pts
SeverityFileLineSnippetContext
LOWhrms/setup.py582CODE
LOWhrms/overrides/employee_payment_entry.py183CODE
LOWhrms/overrides/employee_payment_entry.py218CODE
LOWhrms/overrides/employee_payment_entry.py266CODE
LOWhrms/overrides/employee_payment_entry.py306CODE
LOWhrms/overrides/employee_payment_entry.py22CODE
LOWhrms/overrides/employee_payment_entry.py32CODE
LOWhrms/overrides/employee_master.py15CODE
LOWhrms/utils/holiday_list.py342CODE
LOWhrms/www/jobs/index.py112CODE
LOWhrms/hr/utils.py98CODE
LOWhrms/hr/utils.py187CODE
LOW…t/monthly_attendance_sheet/monthly_attendance_sheet.py270CODE
LOW…t/monthly_attendance_sheet/monthly_attendance_sheet.py655CODE
LOW…t/monthly_attendance_sheet/monthly_attendance_sheet.py743CODE
LOWhrms/hr/report/shift_attendance/shift_attendance.py245CODE
LOWhrms/hr/doctype/attendance/attendance.py452CODE
LOWhrms/hr/doctype/expense_claim/expense_claim.py127CODE
LOWhrms/hr/doctype/expense_claim/expense_claim.py438CODE
LOW…ms/hr/doctype/attendance_request/attendance_request.py312CODE
LOW…/hr/doctype/employee_onboarding/employee_onboarding.py69CODE
LOWhrms/hr/doctype/employee_checkin/employee_checkin.py399CODE
LOWhrms/hr/doctype/shift_assignment/shift_assignment.py493CODE
LOW…final_statement/full_and_final_statement_loan_utils.py16CODE
LOWhrms/hr/doctype/leave_application/leave_application.py1347CODE
LOWhrms/hr/doctype/leave_application/leave_application.py188CODE
LOWhrms/hr/doctype/leave_application/leave_application.py308CODE
LOWhrms/hr/doctype/vehicle_log/vehicle_log.py49CODE
LOWhrms/hr/doctype/employee_advance/employee_advance.py137CODE
LOWhrms/api/__init__.py254CODE
LOWhrms/regional/india/utils.py11CODE
LOWhrms/regional/india/utils.py144CODE
LOWhrms/payroll/report/salary_register/salary_register.py17CODE
LOWhrms/payroll/report/salary_register/salary_register.py130CODE
LOW…ry_structure_assignment/salary_structure_assignment.py422CODE
LOW…yroll/doctype/salary_withholding/salary_withholding.py216CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py355CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py688CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py901CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py1253CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py1714CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py2141CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py2232CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py697CODE
LOWhrms/payroll/doctype/salary_slip/test_salary_slip.py2686CODE
LOWhrms/payroll/doctype/salary_slip/test_salary_slip.py1169CODE
LOWhrms/payroll/doctype/salary_slip/test_salary_slip.py1285CODE
LOWhrms/payroll/doctype/arrear/arrear.py251CODE
LOW…s/payroll/doctype/salary_structure/salary_structure.py91CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1587CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1837CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py445CODE
LOWhrms/payroll/doctype/payroll_entry/payroll_entry.py1093CODE
LOWhrms/payroll/doctype/gratuity/gratuity.py234CODE
LOW.github/helper/documentation.py11CODE
Redundant / Tautological Comments10 hits · 16 pts
SeverityFileLineSnippetContext
LOW⚡…/doctype/attendance_request/test_attendance_request.py151 # Check if the attendance record is created on the holidayCOMMENT
LOW⚡…/doctype/attendance_request/test_attendance_request.py148 include_holidays=1, # Set include_holidays to TrueCODE
LOW…ms/hr/doctype/attendance_request/attendance_request.py224 # Check if attendance_date is a holidayCOMMENT
LOW…ms/hr/doctype/attendance_request/attendance_request.py233 # Check if employee is on leaveCOMMENT
LOWhrms/payroll/doctype/salary_slip/salary_slip.py2582 # Check if Employee Benefit Application existsCOMMENT
LOWhrms/payroll/doctype/salary_slip/test_salary_slip.py2221 # Check if zero value component is included in salary slip based on component settingsCOMMENT
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py1314 # Check if employee benefits have been fetched to accrued benefits tableCOMMENT
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py1329 # Check if employee benefit ledger entries have been created for each componentCOMMENT
LOW…ms/payroll/doctype/payroll_entry/test_payroll_entry.py1343 # Check if Employee Benefit Ledger exists for Accrued Earnings ComponentCOMMENT
LOW.github/workflows/run-individual-tests.yml35 # Loop through array and create JSON objectsCOMMENT
Self-Referential Comments4 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUMhrms/tests/test_roster.py40 # Create a shift assignment with a date range, submit it, then cancel itCOMMENT
MEDIUM⚡…/doctype/attendance_request/test_attendance_request.py139 # Create a holiday on today's dateCOMMENT
MEDIUM⚡…/doctype/attendance_request/test_attendance_request.py143 # Create an Attendance Request with include_holidays checkedCOMMENT
MEDIUMhrms/controllers/tests/test_employee_reminders.py24 # Create a test holiday listCOMMENT
AI Structural Patterns16 hits · 15 pts
SeverityFileLineSnippetContext
LOW…oard_chart_source/employees_by_age/employees_by_age.py15CODE
LOW…hiring_vs_attrition_count/hiring_vs_attrition_count.py15CODE
LOW…hiring_vs_attrition_count/hiring_vs_attrition_count.py78CODE
LOWhrms/hr/report/employee_exits/employee_exits.py125CODE
LOWhrms/hr/report/leave_ledger/leave_ledger.py166CODE
LOW…/report/project_profitability/project_profitability.py19CODE
LOWhrms/hr/report/shift_attendance/shift_attendance.py242CODE
LOWhrms/hr/report/shift_attendance/shift_attendance.py297CODE
LOW…e/employee_attendance_tool/employee_attendance_tool.py65CODE
LOW…e/employee_attendance_tool/employee_attendance_tool.py180CODE
LOWhrms/hr/doctype/leave_allocation/test_earned_leaves.py1298CODE
LOWhrms/payroll/doctype/salary_slip/test_salary_slip.py2948CODE
LOW…roll/doctype/salary_structure/test_salary_structure.py164CODE
LOW…roll/doctype/salary_structure/test_salary_structure.py256CODE
LOW…s/payroll/doctype/salary_structure/salary_structure.py393CODE
LOW…s/payroll/doctype/salary_structure/salary_structure.py202CODE
Over-Commented Block11 hits · 10 pts
SeverityFileLineSnippetContext
LOWhrms/hooks.py61 "Bank Transaction": "public/js/erpnext/bank_transaction.js",COMMENT
LOWhrms/hooks.py121COMMENT
LOWhrms/hooks.py141before_app_uninstall = "hrms.setup.before_app_uninstall"COMMENT
LOWhrms/hooks.py361COMMENT
LOWhrms/hooks.py381# {COMMENT
LOWhrms/tests/test_sidebar_fixtures.py21import jsonCOMMENT
LOW…ployee_feedback_criteria/employee_feedback_criteria.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…shift_schedule_assignment/shift_schedule_assignment.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWhrms/hr/doctype/overtime_type/overtime_type.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWhrms/hr/doctype/pwa_notification/pwa_notification.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…ype/job_offer_term_template/job_offer_term_template.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
Modern Structural Boilerplate10 hits · 9 pts
SeverityFileLineSnippetContext
LOWhrms/hr/doctype/leave_block_list/leave_block_list.py42 def set_weekly_off_dates(self, start_date: str, end_date: str, days: list, reason: str) -> None:CODE
LOWhrms/hr/doctype/goal/goal.py245def update_progress(progress: float, goal: str) -> None:CODE
LOWhrms/hr/doctype/goal/goal.py256def update_status(status: str, goals: str | list) -> None:CODE
LOW…ry_structure_assignment/salary_structure_assignment.py187 def set_payroll_cost_centers(self) -> None:CODE
LOW…ee_benefit_application/employee_benefit_application.py88 def set_benefit_components_and_currency(self) -> None:CODE
LOW…yroll/doctype/salary_withholding/salary_withholding.py91 def set_withholding_cycles_and_to_date(self) -> None:CODE
LOW…yroll/doctype/salary_withholding/salary_withholding.py192def _update_payment_status_in_payroll(withholdings: list[dict], cancel: bool = False) -> None:CODE
LOW…yroll/doctype/salary_withholding/salary_withholding.py216def _update_salary_withholdings(withholdings: list[dict], cancel: bool = False) -> None:CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py1339 def _set_evaluated_components(self) -> None:CODE
LOWhrms/payroll/doctype/salary_slip/salary_slip.py2418 def set_totals(self) -> None:CODE
AI Slop Vocabulary1 hit · 2 pts
SeverityFileLineSnippetContext
LOWhrms/telemetry.py295 # Nothing set up yet — a zero-employee site would just add noise.COMMENT
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOWhrms/tests/test_telemetry.py197 "employee_name": "Jane Doe",CODE