AI Slop Code RIsk Monitor

frappe/erpnext

Free and Open Source Enterprise Resource Planning (ERP)

10.7 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for frappe/erpnext, a Python project with 39,985 GitHub stars. SynthScan examined 967,254 lines of code across 5580 source files, recording 10231 pattern matches distributed across 19 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-10
Last Push
40.0K
Stars
Python
Language
967.3K
Lines of Code
5.6K
Files
10.2K
Pattern Hits
2026-10-12
Scan Date
0.02
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 36.4/100 · MEDIUM

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

Hallucinated Dependency & Supply Chain Risk 3.0/100 · LOW

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

Agent Over-Engineering Ratio 37.0/100 · MEDIUM

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

PR Review Velocity Impact 44.3/100 · MEDIUM

Which changes need focused human review? 10231 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 39HIGH 91MEDIUM 140LOW 9961

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 10231 distinct pattern matches across 19 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 Identifiers8652 hits · 7874 pts
SeverityFileLineSnippetContext
LOWbanking/src/hooks/useMultiFileUploadProgress.ts4export function useMultiFileUploadProgress() {CODE
LOWerpnext/__init__.py77def is_perpetual_inventory_enabled(company):CODE
LOWerpnext/__init__.py211def _is_within_user_permissions(doctype: str, name) -> bool:CODE
LOWerpnext/deprecation_dumpster.py130def taxes_and_totals_get_itemised_taxable_amount(items):CODE
LOWerpnext/deprecation_dumpster.py148def get_pos_profile_item_details(company, ctx, pos_profile=None, update_data=False):CODE
LOWerpnext/deprecation_dumpster.py172def project_update_daily_reminder():CODE
LOWerpnext/deprecation_dumpster.py224def project_update_email_sending(CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py51def import_genericode_from_url(CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py68def get_uploaded_genericode_file() -> tuple[bytes, str | None]:CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py94def fetch_genericode_from_url(url: str) -> bytes:CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py100def import_genericode_content(CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py156def process_genericode_import(CODE
LOWerpnext/edi/doctype/code_list/code_list_import.py178def get_genericode_columns_and_examples(root):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py45 def test_version_key_orders_integers_and_iso_dates(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py53 def test_canonical_uri_resolves_to_latest_version(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py56 def test_name_resolves_to_itself(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py60 def test_name_takes_precedence_over_canonical_uri(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py73 def test_unknown_uri_resolves_to_none(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py76 def test_lookups_are_empty_for_unknown_code_list(self):CODE
LOW⚡erpnext/edi/doctype/code_list/test_code_list.py82 def test_default_code_follows_latest_version(self):CODE
LOWerpnext/edi/doctype/code_list/test_code_list_import.py54 def test_import_genericode_rejects_remote_file_url(self):STRING
LOWerpnext/edi/doctype/code_list/test_code_list_import.py65 def test_import_genericode_rejects_file_scheme_url(self):STRING
LOWerpnext/edi/doctype/code_list/test_code_list_import.py76 def test_import_genericode_from_trusted_url(self):STRING
LOW⚡erpnext/edi/doctype/code_list/test_code_list_import.py99 def test_import_genericode_from_trusted_url_propagates_fetch_errors(self):STRING
LOW⚡erpnext/edi/doctype/code_list/test_code_list_import.py107 def test_import_genericode_from_uploaded_file_returns_metadata(self):STRING
LOW⚡erpnext/edi/doctype/code_list/test_code_list_import.py116 def test_process_genericode_import_reads_file_doc_content(self):STRING
LOWerpnext/edi/doctype/code_list/test_code_list_import.py137 def test_import_genericode_from_local_file_url(self):STRING
LOWerpnext/edi/doctype/common_code/common_code.py37 def validate_distinct_references(self):CODE
LOW…type/bulk_transaction_log/test_bulk_transaction_log.py35 def test_load_raises_when_no_detail_rows(self):CODE
LOW…type/bulk_transaction_log/test_bulk_transaction_log.py46 def test_load_succeeds_and_aggregates_after_detail_inserted(self):CODE
LOW…type/bulk_transaction_log/test_bulk_transaction_log.py66 def test_load_isolated_per_date(self):CODE
LOW…n/doctype/bulk_transaction_log/bulk_transaction_log.py106def serialize_transaction_log(data):CODE
LOWerpnext/portal/utils.py22def create_customer_or_supplier():CODE
LOWerpnext/buying/test_utils.py39 def test_permitted_role_can_fetch_linked_material_requests(self):CODE
LOWerpnext/buying/test_utils.py47 def test_populated_result_is_a_flat_list_of_rows(self):CODE
LOW⚡erpnext/buying/test_utils.py63 def test_empty_result_is_a_flat_empty_list(self):CODE
LOW⚡erpnext/buying/test_utils.py72 def test_a_single_item_code_is_treated_as_one_code(self):CODE
LOW⚡erpnext/buying/test_utils.py81 def test_items_that_are_not_item_codes_are_rejected(self):CODE
LOW⚡erpnext/buying/test_utils.py97 def test_manufacturing_manager_can_fetch_linked_material_requests(self):CODE
LOW⚡erpnext/buying/test_utils.py107 def test_unpermitted_role_cannot_fetch_linked_material_requests(self):CODE
LOW⚡erpnext/buying/test_utils.py113 def test_role_with_only_select_permission_cannot_fetch_linked_material_requests(self):CODE
LOW⚡erpnext/buying/test_utils.py122 def test_results_are_restricted_by_user_permissions(self):CODE
LOWerpnext/buying/utils.py14def update_last_purchase_rate(doc, is_submit) -> None:CODE
LOWerpnext/buying/utils.py104def validate_item_and_get_basic_data(row) -> dict:CODE
LOWerpnext/buying/utils.py117def validate_stock_item_warehouse(row, item) -> None:CODE
LOWerpnext/buying/utils.py126def check_on_hold_or_closed_status(doctype, docname) -> None:CODE
LOWerpnext/buying/utils.py141def get_linked_material_requests(items: str | list):CODE
LOW…ying/report/procurement_tracker/procurement_tracker.py194def get_ordered_stock_qty_by_request_item(purchase_order_entry):CODE
LOW…ying/report/procurement_tracker/procurement_tracker.py284def get_hidden_order_statuses(filters):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py28 def test_report_executes_and_lists_po(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py39 def test_request_item_ordered_on_two_lines_is_estimated_once(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py52 def test_filtered_out_order_keeps_its_share_of_the_estimate(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py64 def test_each_po_line_is_a_row(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py85 def test_actual_cost_adds_up_every_invoice(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py95 def test_unordered_rows_of_a_partly_ordered_request_are_listed(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py108 def test_billed_receipt_keeps_actual_delivery_date(self):CODE
LOW…report/procurement_tracker/test_procurement_tracker.py116 def test_cost_center_and_project_filters_both_apply(self):CODE
LOW⚡…report/procurement_tracker/test_procurement_tracker.py130 def test_transfer_request_is_not_listed(self):CODE
LOW⚡…report/procurement_tracker/test_procurement_tracker.py137 def test_quantity_is_shown_in_its_order_unit(self):CODE
LOW⚡…report/procurement_tracker/test_procurement_tracker.py145 def test_completed_and_closed_orders_are_shown_on_request(self):CODE
8592 more matches not shown…
Deep Nesting543 hits · 437 pts
SeverityFileLineSnippetContext
LOW…n/doctype/bulk_transaction_log/bulk_transaction_log.py116CODE
LOWerpnext/portal/utils.py4CODE
LOWerpnext/buying/utils.py14CODE
LOWerpnext/buying/doctype/purchase_order/mapper.py239CODE
LOWerpnext/buying/doctype/purchase_order/purchase_order.py617CODE
LOWerpnext/buying/doctype/purchase_order/purchase_order.py370CODE
LOW…ying/doctype/purchase_order/services/subcontracting.py17CODE
LOW…doctype/request_for_quotation/request_for_quotation.py394CODE
LOWerpnext/selling/page/point_of_sale/point_of_sale.py685CODE
LOW…next/selling/report/sales_analytics/sales_analytics.py155CODE
LOW…next/selling/report/sales_analytics/sales_analytics.py542CODE
LOW…on_item_group/item_group_wise_sales_target_variance.py155CODE
LOW…for_packing_items/available_stock_for_packing_items.py12CODE
LOW…sition_and_loyalty/customer_acquisition_and_loyalty.py98CODE
LOW…ng/report/address_and_contacts/address_and_contacts.py80CODE
LOW…or_sales_order/payment_terms_status_for_sales_order.py99CODE
LOW…or_sales_order/payment_terms_status_for_sales_order.py287CODE
LOW…chase_request/pending_so_items_for_purchase_request.py77CODE
LOWerpnext/selling/doctype/quotation/quotation.py312CODE
LOWerpnext/selling/doctype/sales_order/sales_order.py775CODE
LOWerpnext/selling/doctype/sales_order/sales_order.py871CODE
LOWerpnext/selling/doctype/sales_order/sales_order.py435CODE
LOWerpnext/selling/doctype/sales_order/mapper.py38CODE
LOWerpnext/selling/doctype/sales_order/mapper.py194CODE
LOWerpnext/selling/doctype/sales_order/mapper.py243CODE
LOW…xt/selling/doctype/sales_order/services/reservation.py35CODE
LOW…selling/doctype/sales_order/services/subcontracting.py14CODE
LOWerpnext/selling/doctype/sms_center/sms_center.py44CODE
LOW…ty_management/doctype/quality_review/quality_review.py68CODE
LOW…agement/doctype/quality_procedure/quality_procedure.py78CODE
LOW…agement/doctype/quality_procedure/quality_procedure.py113CODE
LOW…patches/v16_0/mirror_select_perms_to_custom_docperm.py579CODE
LOW…6_0/set_not_applicable_on_german_item_tax_templates.py163CODE
LOWerpnext/patches/v16_0/migrate_tax_withholding_data.py1056CODE
LOW…atches/v16_0/mirror_release_perms_to_custom_docperm.py77CODE
LOW…atches/v16_0/mirror_release_perms_to_custom_docperm.py129CODE
LOW…_0/repost_stock_ledger_entries_for_target_warehouse.py8CODE
LOW…hes/v12_0/set_purchase_receipt_delivery_note_detail.py6CODE
LOW…hes/v12_0/set_purchase_receipt_delivery_note_detail.py23CODE
LOW…hes/v12_0/set_purchase_receipt_delivery_note_detail.py66CODE
LOW…ext/patches/v12_0/fix_percent_complete_for_projects.py5CODE
LOWerpnext/patches/v12_0/set_priority_for_support.py31CODE
LOWerpnext/patches/v12_0/set_priority_for_support.py72CODE
LOWerpnext/patches/v12_0/set_serial_no_status.py5CODE
LOW…xt/patches/v12_0/move_item_tax_to_item_tax_template.py102CODE
LOW…es/v12_0/move_credit_limit_to_customer_credit_limit.py20CODE
LOW…/v12_0/update_end_date_and_status_in_email_campaign.py5CODE
LOW…t/patches/v15_0/recalculate_amount_difference_field.py11CODE
LOW…pnext/patches/v15_0/link_purchase_item_to_asset_doc.py48CODE
LOW…15_0/migrate_old_item_wise_tax_detail_data_to_table.py32CODE
LOW…15_0/migrate_old_item_wise_tax_detail_data_to_table.py301CODE
LOW…15_0/migrate_old_item_wise_tax_detail_data_to_table.py178CODE
LOW…s/v15_0/update_total_number_of_booked_depreciations.py8CODE
LOW…/move_item_defaults_to_child_table_for_multicompany.py8CODE
LOWerpnext/patches/v11_0/add_item_group_defaults.py8CODE
LOWerpnext/patches/v11_0/update_delivery_trip_status.py8CODE
LOW…atches/v14_0/set_packed_qty_in_draft_delivery_notes.py8CODE
LOWerpnext/patches/v14_0/migrate_gl_to_payment_ledger.py99CODE
LOWerpnext/patches/v13_0/update_sla_enhancements.py8CODE
LOWerpnext/patches/v13_0/delete_orphaned_tables.py9CODE
483 more matches not shown…
Hallucination Indicators39 hits · 390 pts
SeverityFileLineSnippetContext
CRITICALerpnext/buying/doctype/purchase_order/purchase_order.js285 this.frm.fields_dict.items_section.wrapper.addClass("hide-border");CODE
CRITICALerpnext/buying/doctype/purchase_order/purchase_order.js287 this.frm.fields_dict.items_section.wrapper.removeClass("hide-border");CODE
CRITICALerpnext/selling/page/point_of_sale/pos_controller.js52 dialog.fields_dict.balance_details.df.data.push({ mode_of_payment, opening_amount: "0" });CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js269 dialog.fields_dict.items.df.data.forEach((row) => {CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js306 dialog.fields_dict.items.df.data.forEach((row) => {CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js313 dialog.fields_dict.items.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js447 dialog.fields_dict.items.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js471 dialog.fields_dict.items.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js579 dialog.fields_dict.sr_entries.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js731 frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js780 frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js803 frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({CODE
CRITICALerpnext/selling/doctype/sales_order/sales_order.js1438 this.frm.fields_dict.items.grid.toggle_reqd(CODE
CRITICALerpnext/manufacturing/doctype/bom/bom.js573 dialog.fields_dict.items.df.data.push({CODE
CRITICALerpnext/manufacturing/doctype/bom/bom.js1294 frm._bom_rm_dialog.fields_dict.items.df.data.push({CODE
CRITICALerpnext/manufacturing/doctype/bom/bom.js1301 frm._bom_rm_dialog.fields_dict.items.grid.refresh();CODE
CRITICALerpnext/manufacturing/doctype/work_order/work_order.js539 dialog.fields_dict.operations.df.data.push({CODE
CRITICALerpnext/public/js/stock_reservation.js183 dialog.fields_dict.items.df.data.push(args);CODE
CRITICALerpnext/public/js/stock_reservation.js258 dialog.fields_dict.sr_entries.df.data.push({CODE
CRITICALerpnext/public/js/utils.js772 dialog.fields_dict.alternative_items.df.data.push({CODE
CRITICALerpnext/public/js/utils.js898 const row = dialog.fields_dict.trans_items.df.data.find(CODE
CRITICALerpnext/public/js/utils.js946 dialog.fields_dict.trans_items.df.data.some((doc) => {CODE
CRITICAL…/public/js/bom_configurator/bom_configurator.bundle.js345 this.layout.fields_dict.items.grid.data.forEach((row) => {CODE
CRITICAL…/public/js/bom_configurator/bom_configurator.bundle.js349 this.layout.fields_dict.items.grid.refresh();CODE
CRITICALerpnext/public/js/utils/serial_no_batch_selector.js818 this.dialog.fields_dict.entries.df.data.push(d);CODE
CRITICALerpnext/public/js/utils/serial_no_batch_selector.js821 this.dialog.fields_dict.entries.grid.refresh();CODE
CRITICALerpnext/public/js/controllers/transaction.js1772 this.frm.fields_dict.items.grid.toggle_enable(CODE
CRITICALerpnext/public/js/controllers/buying.js148 this.frm.fields_dict.supplied_items.grid.update_docfield_property(CODE
CRITICAL…ctype/payment_reconciliation/payment_reconciliation.js243 const selected_invoices = this.frm.fields_dict.invoices.grid.get_selected_children();CODE
CRITICAL…ctype/payment_reconciliation/payment_reconciliation.js244 const selected_payments = this.frm.fields_dict.payments.grid.get_selected_children();CODE
CRITICAL…ctype/payment_reconciliation/payment_reconciliation.js285 let payments = this.frm.fields_dict.payments.grid.get_selected_children();CODE
CRITICAL…ctype/payment_reconciliation/payment_reconciliation.js289 let invoices = this.frm.fields_dict.invoices.grid.get_selected_children();CODE
CRITICAL…ctype/payment_reconciliation/payment_reconciliation.js404 dialog.fields_dict.allocation.df.data.push({CODE
CRITICALerpnext/accounts/doctype/pos_invoice/pos_invoice.js256 dialog.fields_dict.payments.df.data.some((d) => {CODE
CRITICAL…/accounts/doctype/purchase_invoice/purchase_invoice.js211 this.frm.fields_dict.items.grid.update_docfield_property(CODE
CRITICAL…g/doctype/subcontracting_order/subcontracting_order.js308 dialog.fields_dict.items.df.data.push({CODE
CRITICAL…g/doctype/subcontracting_order/subcontracting_order.js412 dialog.fields_dict.sr_entries.df.data.push({CODE
CRITICALerpnext/stock/doctype/stock_entry/stock_entry.js1430 this.frm.fields_dict.items.grid.get_field("item_code").get_query = function () {CODE
CRITICALerpnext/stock/doctype/stock_entry/stock_entry.js1459 this.frm.fields_dict.items.grid.get_field("expense_account").get_query = function () {CODE
Decorative Section Separators78 hits · 256 pts
SeverityFileLineSnippetContext
MEDIUMerpnext/hooks.py757# ------------STRING
MEDIUMerpnext/hooks.py772# -----------STRING
MEDIUM⚡erpnext/patches/v16_0/migrate_tax_withholding_data.py467 # -------------------------------------------------------------------------COMMENT
MEDIUM⚡erpnext/patches/v16_0/migrate_tax_withholding_data.py469 # -------------------------------------------------------------------------COMMENT
MEDIUM⚡erpnext/patches/v16_0/migrate_tax_withholding_data.py1231# =============================================================================COMMENT
MEDIUM⚡erpnext/patches/v16_0/migrate_tax_withholding_data.py1233# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py294# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py296# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py350 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py352 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py561 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py563 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py803 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py805 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py864 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py866 # -------------------------------------------------------------------------COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py897# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py899# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py1051# =============================================================================COMMENT
MEDIUMerpnext/patches/v16_0/migrate_tax_withholding_data.py1053# =============================================================================COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js638 // ── Determine which action buttons to show ────────────────────────COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js686 // ── Timer color reflects job state ────────────────────────────────COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js693 // ── Action button HTML ────────────────────────────────────────────COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js719 // ── Render widget ─────────────────────────────────────────────────COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js745 // ── Wire up button click handlers ─────────────────────────────────COMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/job_card.js803 // ── Timer tick ────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js72 // ── App shell ────────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js262 // ── Manager board ────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js440 // ── Operator pane ──────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js699 // ── Operator actions (unchanged behaviour, reload() instead of load()) ─────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js978 // ── Inline Quality Check ─────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1211 // ── Timers ────────────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1250 // ── Realtime + lifecycle ───────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1284 // ── Keyboard ────────────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1478 // ── Scanner ──────────────────────────────────────────────────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1588 // ── Route options (e.g. the Work Order "Shop Floor" button) ────────────────COMMENT
MEDIUMerpnext/public/js/shop_floor/shop_floor.js1606 // ── Styles ──────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡erpnext/accounts/test/test_pre_submit_validation.py220# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡erpnext/accounts/test/test_pre_submit_validation.py222# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…counts/doctype/payment_request/test_payment_request.py1693 # ============================================================================COMMENT
MEDIUM⚡…counts/doctype/payment_request/test_payment_request.py1695 # ============================================================================COMMENT
MEDIUM⚡…counts/doctype/payment_request/test_payment_request.py1853 # ============================================================================COMMENT
MEDIUM⚡…counts/doctype/payment_request/test_payment_request.py1855 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1292 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1294 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1539 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1541 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1917 # ============================================================================COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1919 # ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py47# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py49# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py207# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py209# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py362# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py364# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py1137# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py1139# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py1379# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py1381# ============================================================================COMMENT
MEDIUM…e/financial_report_template/financial_report_engine.py1932# ============================================================================COMMENT
18 more matches not shown…
Empty Error Handlers46 hits · 230 pts
SeverityFileLineSnippetContext
HIGH…t/buying/doctype/purchase_order/test_purchase_order.py1033except Exception:CODE
HIGHerpnext/patches/v12_0/stock_entry_enhancements.py35except frappe.DuplicateEntryError:CODE
HIGH…15_0/unset_incorrect_additional_discount_percentage.py77except Exception:CODE
HIGH…/move_item_defaults_to_child_table_for_multicompany.py37except Exception:CODE
HIGH…es/v11_0/create_department_records_for_each_company.py33except frappe.DuplicateEntryError:CODE
HIGHerpnext/patches/v11_0/uom_conversion_data.py19except frappe.LinkExistsError:CODE
HIGH…t/patches/v11_0/set_user_permissions_for_department.py21except frappe.DuplicateEntryError:CODE
HIGH…te_accounting_dimensions_in_subcontracting_doctypes.py42except Exception:CODE
HIGHerpnext/patches/v14_0/delete_non_profit_doctypes.py44except frappe.LinkExistsError:CODE
HIGHerpnext/patches/v13_0/reset_corrupt_defaults.py28except Exception:CODE
HIGHerpnext/patches/v13_0/reset_corrupt_defaults.py22except Exception:CODE
HIGH…atches/v13_0/create_accounting_dimensions_in_orders.py37except Exception:CODE
HIGHerpnext/setup/install.py173except frappe.ValidationError:CODE
HIGHerpnext/setup/install.py155except frappe.ValidationError:CODE
HIGHerpnext/setup/demo.py240except frappe.exceptions.DoesNotExistError:CODE
HIGHerpnext/setup/setup_wizard/operations/taxes_setup.py127except (ImportError, AttributeError):CODE
HIGHerpnext/setup/doctype/employee/employee.py256except frappe.DuplicateEntryError:CODE
HIGHerpnext/setup/doctype/company/company.py999except ImportError:CODE
HIGH…octype/production_plan/services/work_order_planning.py222except OverProductionError:CODE
HIGH…_integrations/doctype/plaid_settings/plaid_settings.py292except KeyError:CODE
HIGHerpnext/utilities/naming.py30except NamingSeriesNotSetError:CODE
HIGHerpnext/accounts/utils.py1564except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py255except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py267except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py360except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py380except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py406except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py418except frappe.DuplicateEntryError:CODE
HIGH…unts/doctype/bank_transaction/test_bank_transaction.py449except frappe.DuplicateEntryError:CODE
HIGH…financial_report_template/financial_report_template.py114except (json.JSONDecodeError, KeyError):CODE
HIGH…unts/doctype/purchase_invoice/test_purchase_invoice.py330except Exception:CODE
HIGH…t/accounts/doctype/payment_entry/test_payment_entry.py156except Exception:CODE
HIGHerpnext/accounts/doctype/budget/test_budget.py779except frappe.DuplicateEntryError:CODE
HIGH…ontracting_inward_order/subcontracting_inward_order.py326except OverProductionError:CODE
HIGHerpnext/stock/doctype/pick_list/test_pick_list.py128except EmptyStockReconciliationItemsError:CODE
HIGHerpnext/stock/doctype/pick_list/test_pick_list.py218except EmptyStockReconciliationItemsError:CODE
HIGHerpnext/stock/doctype/pick_list/test_pick_list.py238except EmptyStockReconciliationItemsError:CODE
HIGHerpnext/stock/doctype/pick_list/test_pick_list.py321except EmptyStockReconciliationItemsError:CODE
HIGHerpnext/stock/doctype/pick_list/test_pick_list.py593except EmptyStockReconciliationItemsError:CODE
HIGH…tock/doctype/item_alternative/test_item_alternative.py559except EmptyStockReconciliationItemsError:CODE
HIGH…type/stock_reconciliation/test_stock_reconciliation.py2732except EmptyStockReconciliationItemsError:CODE
HIGH…erial_and_batch_bundle/test_serial_and_batch_bundle.py2514except (frappe.ValidationError, frappe.PermissionError):CODE
HIGH…type/asset_capitalization/test_asset_capitalization.py543except EmptyStockReconciliationItemsError:CODE
HIGHerpnext/assets/doctype/asset/test_asset.py2428except frappe.DuplicateEntryError:CODE
HIGHerpnext/assets/doctype/asset/test_asset.py2327except frappe.DuplicateEntryError:CODE
HIGH…t/assets/doctype/asset_category/test_asset_category.py31except frappe.DuplicateEntryError:CODE
Cross-File Repetition44 hits · 220 pts
SeverityFileLineSnippetContext
HIGH…uying/doctype/supplier_quotation/supplier_quotation.py0if permitted in settings and any item has 0 qty, the so has unit price items.STRING
HIGHerpnext/buying/doctype/purchase_order/purchase_order.py0if permitted in settings and any item has 0 qty, the so has unit price items.STRING
HIGH…doctype/request_for_quotation/request_for_quotation.py0if permitted in settings and any item has 0 qty, the so has unit price items.STRING
HIGHerpnext/selling/doctype/quotation/quotation.py0if permitted in settings and any item has 0 qty, the so has unit price items.STRING
HIGHerpnext/selling/doctype/sales_order/sales_order.py0if permitted in settings and any item has 0 qty, the so has unit price items.STRING
HIGHerpnext/buying/doctype/purchase_order/purchase_order.py0update requested qty (before ordered_qty is updated)STRING
HIGH…xt/selling/doctype/sales_order/services/reservation.py0update requested qty (before ordered_qty is updated)STRING
HIGH…ext/stock/doctype/material_request/material_request.py0update requested qty (before ordered_qty is updated)STRING
HIGHerpnext/selling/doctype/sales_order/sales_order.py0creates stock reservation entries for sales order items.STRING
HIGH…xt/selling/doctype/sales_order/services/reservation.py0creates stock reservation entries for sales order items.STRING
HIGH…ype/stock_reservation_entry/stock_reservation_entry.py0creates stock reservation entries for sales order items.STRING
HIGHerpnext/selling/doctype/sales_order/sales_order.py0returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param filSTRING
HIGHerpnext/projects/doctype/timesheet/timesheet.py0returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param filSTRING
HIGHerpnext/setup/doctype/holiday_list/holiday_list.py0returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param filSTRING
HIGHerpnext/selling/doctype/customer/customer.py0hook to return the target email address for notifications.STRING
HIGHerpnext/crm/doctype/opportunity/opportunity.py0hook to return the target email address for notifications.STRING
HIGHerpnext/crm/doctype/prospect/prospect.py0hook to return the target email address for notifications.STRING
HIGHerpnext/crm/doctype/lead/lead.py0hook to return the target email address for notifications.STRING
HIGH…atches/v13_0/delete_report_requested_items_to_order.py0check for one or multiple auto email reports and deleteSTRING
HIGHerpnext/patches/v13_0/delete_old_purchase_reports.py0check for one or multiple auto email reports and deleteSTRING
HIGHerpnext/patches/v13_0/delete_old_sales_reports.py0check for one or multiple auto email reports and deleteSTRING
HIGHerpnext/setup/doctype/item_group/item_group.py0check whether tax rate is not entered twice for same tax typeSTRING
HIGH…ccounts/doctype/item_tax_template/item_tax_template.py0check whether tax rate is not entered twice for same tax typeSTRING
HIGHerpnext/stock/doctype/item/item.py0check whether tax rate is not entered twice for same tax typeSTRING
HIGHerpnext/manufacturing/report/test_reports.py0test that all script report in stock modules are executable with supported filtersSTRING
HIGHerpnext/accounts/test/test_reports.py0test that all script report in stock modules are executable with supported filtersSTRING
HIGHerpnext/stock/report/test_reports.py0test that all script report in stock modules are executable with supported filtersSTRING
HIGHerpnext/accounts/report/financial_statements.py0returns a dict like { "account": [gl entries], ... }STRING
HIGH…inancial_statement/consolidated_financial_statement.py0returns a dict like { "account": [gl entries], ... }STRING
HIGH…eport/profitability_analysis/profitability_analysis.py0returns a dict like { "account": [gl entries], ... }STRING
HIGH…nsolidated_trial_balance/consolidated_trial_balance.py0return columns and data for the report. this is the main entry point for the report. it accepts the filters as a dictionSTRING
HIGH…eport/invalid_ledger_entries/invalid_ledger_entries.py0return columns and data for the report. this is the main entry point for the report. it accepts the filters as a dictionSTRING
HIGH…_and_batch_bundle/incorrect_serial_and_batch_bundle.py0return columns and data for the report. this is the main entry point for the report. it accepts the filters as a dictionSTRING
HIGH…/report/negative_batch_report/negative_batch_report.py0return columns and data for the report. this is the main entry point for the report. it accepts the filters as a dictionSTRING
HIGH…next/accounts/report/gross_profit/test_gross_profit.py0helper function to populate default values in sales invoiceSTRING
HIGH…/payment_reconciliation/test_payment_reconciliation.py0helper function to populate default values in sales invoiceSTRING
HIGH…type/payment_ledger_entry/test_payment_ledger_entry.py0helper function to populate default values in sales invoiceSTRING
HIGHerpnext/controllers/tests/test_accounts_controller.py0helper function to populate default values in sales invoiceSTRING
HIGH…/payment_reconciliation/test_payment_reconciliation.py0helper function to populate default values in payment entrySTRING
HIGH…type/payment_ledger_entry/test_payment_ledger_entry.py0helper function to populate default values in payment entrySTRING
HIGHerpnext/controllers/tests/test_accounts_controller.py0helper function to populate default values in payment entrySTRING
HIGHerpnext/stock/utils.py0keep a company-restricted caller inside their own companies; a no-op for everyone else.STRING
HIGHerpnext/stock/doctype/pick_list/pick_list.py0keep a company-restricted caller inside their own companies; a no-op for everyone else.STRING
HIGHerpnext/assets/doctype/asset/asset.py0keep a company-restricted caller inside their own companies; a no-op for everyone else.STRING
Excessive Try-Catch Wrapping166 hits · 183 pts
SeverityFileLineSnippetContext
LOW…lier_scorecard_criteria/supplier_scorecard_criteria.py44 except Exception:CODE
LOWerpnext/buying/doctype/purchase_order/mapper.py256 except Exception as e:CODE
LOW⚡…t/buying/doctype/purchase_order/test_purchase_order.py1033 except Exception:CODE
LOW…supplier_scorecard_period/supplier_scorecard_period.py93 except Exception:CODE
LOW…supplier_scorecard_period/supplier_scorecard_period.py113 except Exception:CODE
MEDIUM…supplier_scorecard_period/supplier_scorecard_period.py108def calculate_weighted_score(self, weighing_function):CODE
LOW…type/supplier/patches/migrate_supplier_portal_users.py12 except Exception:CODE
MEDIUM…type/supplier/patches/migrate_supplier_portal_users.py8def execute():CODE
LOW…uying/doctype/supplier_scorecard/supplier_scorecard.py211 except Exception:CODE
LOWerpnext/selling/doctype/sales_order/test_sales_order.py2439 except Exception:CODE
LOWerpnext/selling/doctype/customer/customer_overview.py43 except Exception:CODE
LOW…s/v16_0/remove_all_role_from_payment_terms_template.py30 except Exception:CODE
LOW…patches/v16_0/mirror_select_perms_to_custom_docperm.py635 except Exception:CODE
LOW…16_0/set_posting_datetime_for_sabb_and_drop_indexes.py30 except Exception:CODE
LOW…atches/v16_0/mirror_release_perms_to_custom_docperm.py187 except Exception:CODE
LOW…atches/v16_0/mirror_release_perms_to_custom_docperm.py210 except Exception:CODE
LOW…pnext/patches/v4_2/update_requested_and_ordered_qty.py32 except Exception:CODE
LOW…atches/v12_0/move_bank_account_swift_number_to_bank.py19 except Exception:CODE
LOWerpnext/patches/v15_0/drop_sle_indexes.py16 except Exception:CODE
LOW…_task_assignee_email_field_in_asset_maintenance_log.py17 except Exception:CODE
LOW…t_based_on_num_days_in_month_to_daily_prorata_based.py19 except Exception as e:CODE
MEDIUM…t_based_on_num_days_in_month_to_daily_prorata_based.py8def execute():CODE
LOW…n_to_depreciation_amount_based_on_num_days_in_month.py19 except Exception as e:CODE
MEDIUM…n_to_depreciation_amount_based_on_num_days_in_month.py8def execute():CODE
LOW…15_0/migrate_old_item_wise_tax_detail_data_to_table.py305 except Exception:CODE
LOW…/patches/v15_0/drop_index_posting_datetime_from_sle.py15 except Exception:CODE
LOWerpnext/patches/v15_0/remove_exotel_integration.py20 except Exception:CODE
LOW…15_0/unset_incorrect_additional_discount_percentage.py77 except Exception:CODE
MEDIUM…15_0/unset_incorrect_additional_discount_percentage.py74def get_semantic_version(version):CODE
LOW…/move_item_defaults_to_child_table_for_multicompany.py37 except Exception:CODE
LOWerpnext/patches/v14_0/crm_ux_cleanup.py21 except Exception as e:CODE
LOW…es/v14_0/migrate_deferred_accounts_to_item_defaults.py8 except Exception:CODE
MEDIUM…es/v14_0/migrate_deferred_accounts_to_item_defaults.py4def execute():CODE
LOWerpnext/patches/v14_0/migrate_gl_to_payment_ledger.py187 except Exception as err:CODE
LOW…atches/v14_0/rename_ongoing_status_in_sla_documents.py20 except Exception:CODE
LOW…te_accounting_dimensions_in_subcontracting_doctypes.py42 except Exception:CODE
LOW…/patches/v10_0/rename_price_to_rate_in_pricing_rule.py12 except Exception as e:CODE
LOWerpnext/patches/v13_0/drop_unused_sle_index_parts.py9 except Exception:CODE
MEDIUMerpnext/patches/v13_0/drop_unused_sle_index_parts.py6def execute():CODE
LOW…pnext/patches/v13_0/trim_whitespace_from_serial_nos.py68 except Exception:CODE
LOWerpnext/patches/v13_0/reset_corrupt_defaults.py22 except Exception:CODE
LOWerpnext/patches/v13_0/reset_corrupt_defaults.py28 except Exception:CODE
LOW…t/patches/v13_0/modify_invalid_gain_loss_gl_entries.py63 except Exception:CODE
LOW…atches/v13_0/create_accounting_dimensions_in_orders.py37 except Exception:CODE
LOWerpnext/patches/v13_0/job_card_status_on_hold.py18 except Exception:CODE
LOW…t/patches/v13_0/add_missing_fg_item_for_stock_entry.py92 except Exception:CODE
LOWerpnext/crm/frappe_crm_api.py29 except Exception:CODE
LOWerpnext/crm/frappe_crm_api.py102 except Exception:CODE
LOWerpnext/crm/frappe_crm_api.py160 except Exception:CODE
LOWerpnext/crm/frappe_crm_api.py172 except Exception:CODE
LOW⚡erpnext/crm/frappe_crm_api.py218 except Exception:CODE
LOW⚡erpnext/crm/frappe_crm_api.py232 except Exception:CODE
MEDIUMerpnext/crm/frappe_crm_api.py208def remove_allowed_users_on_crm_install():CODE
MEDIUMerpnext/crm/frappe_crm_api.py222def disable_frappe_crm_data_synchronization_on_crm_uninstall():CODE
LOWerpnext/crm/doctype/opportunity/opportunity.py213 except Exception:CODE
LOWerpnext/crm/doctype/email_campaign/email_campaign.py167 except Exception:CODE
LOWerpnext/crm/doctype/email_campaign/email_campaign.py264 except Exception:CODE
LOWerpnext/setup/utils.py155 except Exception:CODE
LOWerpnext/setup/demo.py30 except Exception:CODE
LOWerpnext/setup/demo.py73 except Exception:CODE
106 more matches not shown…
Unused Imports242 hits · 174 pts
SeverityFileLineSnippetContext
LOWerpnext/edi/doctype/code_list/code_list_import.py1CODE
LOWerpnext/edi/doctype/code_list/code_list.py12CODE
LOWerpnext/buying/utils.py5CODE
LOW…uying/doctype/supplier_quotation/supplier_quotation.py7CODE
LOWerpnext/buying/doctype/supplier_quotation/mapper.py4CODE
LOWerpnext/buying/doctype/purchase_order/purchase_order.py5CODE
LOWerpnext/buying/doctype/purchase_order/purchase_order.py9CODE
LOW…doctype/request_for_quotation/request_for_quotation.py10CODE
LOWerpnext/buying/doctype/request_for_quotation/mapper.py4CODE
LOWerpnext/selling/page/point_of_sale/point_of_sale.py5CODE
LOWerpnext/selling/doctype/quotation/quotation.py8CODE
LOWerpnext/selling/doctype/quotation/mapper.py4CODE
LOW…pnext/selling/doctype/product_bundle/product_bundle.py10CODE
LOWerpnext/selling/doctype/sales_order/sales_order.py5CODE
LOWerpnext/selling/doctype/sales_order/sales_order.py11CODE
LOWerpnext/selling/doctype/customer/customer.py5CODE
LOW…_0/crm_settings_handle_allowed_users_for_frappe_crm.py1CODE
LOWerpnext/projects/doctype/project/project.py691CODE
LOWerpnext/projects/doctype/task/task.py5CODE
LOWerpnext/projects/doctype/timesheet/timesheet.py5CODE
LOWerpnext/crm/frappe_crm_api.py1CODE
LOW…ext/crm/doctype/contract_template/contract_template.py5CODE
LOWerpnext/crm/doctype/opportunity/opportunity.py5CODE
LOWerpnext/crm/doctype/opportunity/opportunity.py10CODE
LOWerpnext/crm/doctype/lead/mapper.py5CODE
LOWerpnext/setup/install.py6CODE
LOWerpnext/setup/doctype/holiday_list/holiday_list.py5CODE
LOW…p/doctype/terms_and_conditions/terms_and_conditions.py5CODE
LOW…doctype/authorization_control/authorization_control.py20CODE
LOWerpnext/setup/doctype/department/department.py5CODE
LOWerpnext/tests/bootstrap_test_data.py3CODE
LOWerpnext/manufacturing/scheduling/test_plan_adapter.py6CODE
LOWerpnext/manufacturing/scheduling/models.py4CODE
LOWerpnext/manufacturing/scheduling/engine.py4CODE
LOWerpnext/manufacturing/doctype/bom/bom.py9CODE
LOWerpnext/manufacturing/doctype/bom/bom.py10CODE
LOWerpnext/manufacturing/doctype/bom/bom.py26CODE
LOWerpnext/manufacturing/doctype/bom/bom.py26CODE
LOWerpnext/manufacturing/doctype/bom/bom.py26CODE
LOWerpnext/manufacturing/doctype/bom/bom.py26CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py38CODE
LOWerpnext/manufacturing/doctype/bom/bom.py672CODE
LOWerpnext/manufacturing/doctype/job_card/job_card.py42CODE
LOW…facturing/doctype/bom_update_log/bom_updation_utils.py10CODE
LOWerpnext/manufacturing/doctype/work_order/mapper.py11CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py4CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py9CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py12CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
LOWerpnext/manufacturing/doctype/work_order/work_order.py30CODE
182 more matches not shown…
Self-Referential Comments40 hits · 126 pts
SeverityFileLineSnippetContext
MEDIUMerpnext/edi/doctype/code_list/code_list_import.py117 # Create a new Code List document with the extracted nameCOMMENT
MEDIUM…t/buying/doctype/purchase_order/test_purchase_order.py1541 # Create a Purchase Order and Fully Bill itCOMMENT
MEDIUMerpnext/buying/doctype/request_for_quotation/mapper.py58# This method is used to make supplier quotation from supplier's portal.COMMENT
MEDIUM…pe/request_for_quotation/test_request_for_quotation.py140 # Create a Purchase Taxes and Charges Template for testingCOMMENT
MEDIUM⚡…t_sales_partner_target_variance_based_on_item_group.py21 # Create a Target DistributionCOMMENT
MEDIUM⚡…t_sales_partner_target_variance_based_on_item_group.py29 # Create a Sales Invoice for the PartnerCOMMENT
MEDIUM…st_sales_person_target_variance_based_on_item_group.py17 # Create a Target DistributionCOMMENT
MEDIUM…st_sales_person_target_variance_based_on_item_group.py28 # Create a Sales Order with 50-50 contribution between both Sales peopleCOMMENT
MEDIUMerpnext/selling/doctype/sales_order/test_sales_order.py1466 # Create the Material Request from the sales order for the Packing ItemsCOMMENT
MEDIUMerpnext/selling/doctype/sales_order/test_sales_order.py2865 # Create a advance payment against that Sales OrderCOMMENT
MEDIUMerpnext/setup/setup_wizard/operations/taxes_setup.py267 # Create a new group account named 'Duties and Taxes' or 'Tax Assets' justCOMMENT
MEDIUM…saction_deletion_record/transaction_deletion_record.py665 # This method is the entry point for the chain of events that followCOMMENT
MEDIUMerpnext/tests/bootstrap_test_data.py1# This file is solely to trigger BootStrapTestData from CICOMMENT
MEDIUMerpnext/manufacturing/doctype/job_card/test_job_card.py856 # Create a corrective operation against itCOMMENT
MEDIUM…xt/manufacturing/doctype/work_order/test_work_order.py2642 # Create a work orderCOMMENT
MEDIUM…xt/manufacturing/doctype/work_order/test_work_order.py2661 # Create a stock entry to manufacture the itemCOMMENT
MEDIUM…turing/doctype/production_plan/test_production_plan.py4192 # Create the shared phantom BOMCOMMENT
MEDIUMerpnext/www/book_appointment/index.py120 # Create a appointment document from formCOMMENT
MEDIUM…report/accounts_receivable/test_accounts_receivable.py928 # Create a list of customer groups, e.g., ["Group1", "Group2"]COMMENT
MEDIUM…counts/doctype/payment_request/test_payment_request.py1135 # Create a customer with contact and address to ensure assertions runCOMMENT
MEDIUM…t/accounts/doctype/sales_invoice/test_sales_invoice.py4714 # Create a sales orderCOMMENT
MEDIUM⚡…ext/accounts/doctype/subscription/test_subscription.py361 # Create a non pre-billed subscription, processing should not createCOMMENT
MEDIUM…counts/doctype/loyalty_program/test_loyalty_program.py201 # Create a new loyalty program with multiple tiersCOMMENT
MEDIUM⚡…unts/doctype/purchase_invoice/test_purchase_invoice.py132 # Create a Purchase Invoice with update_stock=TrueCOMMENT
MEDIUM…unts/doctype/purchase_invoice/test_purchase_invoice.py2676 # Create a SupplierCOMMENT
MEDIUM…e/bank_reconciliation_tool/bank_reconciliation_tool.py173 # Create a new journal entry based on the bank transactionCOMMENT
MEDIUM…e/bank_reconciliation_tool/bank_reconciliation_tool.py340 # Create a new payment entry based on the bank transactionCOMMENT
MEDIUM…e/bank_reconciliation_tool/bank_reconciliation_tool.py765 # Create a new journal entry based on the bank transactionCOMMENT
MEDIUM…doctype/repost_item_valuation/repost_item_valuation.py818 # This function is called every 15 minutes via hooks.py as a recovery net;COMMENT
MEDIUM…doctype/repost_item_valuation/repost_item_valuation.py900 # This function is called every hour via hooks.pyCOMMENT
MEDIUM…tock/doctype/purchase_receipt/test_purchase_receipt.py4816 # Create a Purchase Receipt and Fully Bill itCOMMENT
MEDIUM…tock/doctype/purchase_receipt/test_purchase_receipt.py7716 # Create a Company without Stock Accounts Linked.COMMENT
MEDIUMerpnext/stock/doctype/stock_entry/test_stock_entry.py4227 # Create a Material Request for Material TransferCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py849 # Create a Sales Taxes and Charges TemplateCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py865 # Create a Sales InvoiceCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py881 # Create a Sales InvoiceCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py2190 # Create a sales order with discount amountCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py2226 # Create a purchase order with discount amountCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py2262 # Create a sales order with discount amountCOMMENT
MEDIUMerpnext/controllers/tests/test_accounts_controller.py2300 # Create a sales order with discount percentage instead of amountCOMMENT
Modern Structural Boilerplate115 hits · 123 pts
SeverityFileLineSnippetContext
LOWerpnext/buying/utils.py14def update_last_purchase_rate(doc, is_submit) -> None:CODE
LOWerpnext/buying/utils.py81def set_stock_levels(row) -> None:CODE
LOW…ying/doctype/purchase_order/services/subcontracting.py47 def set_service_items_for_finished_goods(self) -> None:CODE
LOW⚡…ying/doctype/purchase_order/services/subcontracting.py89 def update_subcontracting_order_status(self) -> None:CODE
LOW…xt/buying/doctype/purchase_order/services/drop_ship.py14 def update_dropship_received_qty(self, data: list[dict]) -> None:CODE
LOW…xt/buying/doctype/purchase_order/services/drop_ship.py74 def update_delivered_qty_in_sales_order(self) -> None:CODE
LOW…xt/buying/doctype/purchase_order/services/drop_ship.py88 def set_received_qty_to_zero_for_drop_ship_items(self) -> None:CODE
LOW…pnext/buying/doctype/purchase_order/services/status.py23 def update_status(self, status: str) -> None:CODE
LOW⚡…pnext/buying/doctype/purchase_order/services/status.py59 def update_receiving_percentage(self) -> None:CODE
LOWerpnext/selling/doctype/sales_order/mapper.py923def set_delivery_date(items: list, sales_order: str) -> None:CODE
LOWerpnext/selling/doctype/sales_order/mapper.py1085 def update_item_quantity(source, target, source_parent) -> None:CODE
LOWerpnext/selling/doctype/sales_order/mapper.py1097 def update_packed_item_qty(source, target, source_parent) -> None:CODE
LOW…xt/selling/doctype/sales_order/services/reservation.py35 def update_reserved_qty(self, so_item_rows: list | None = None) -> None:CODE
LOW⚡…ling/doctype/sales_order/services/delivery_schedule.py65 def update_delivery_date_based_on_schedule(self, child_row, first_delivery_date) -> None:CODE
LOW…selling/doctype/sales_order/services/subcontracting.py57 def update_subcontracting_order_status(self) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py20 def set_default_statuses(self) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py29 def update_status(self, status: str) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py59 def update_delivery_percentage(self, update_modified: bool = True) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py74 def update_billing_percentage(self, update_modified: bool = True) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py95 def update_delivery_status(self) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py125 def update_picking_status(self) -> None:CODE
LOWerpnext/selling/doctype/sales_order/services/status.py154 def set_indicator(self) -> None:CODE
LOW…t/selling/doctype/proforma_invoice/proforma_invoice.py57 def set_item_values(self) -> None:CODE
LOW…t/selling/doctype/proforma_invoice/proforma_invoice.py81 def set_rate_and_amount(self, item, sales_order_rate: float) -> None:CODE
LOW…t/selling/doctype/proforma_invoice/proforma_invoice.py110 def set_total_qty(self) -> None:CODE
LOWerpnext/projects/doctype/task/task.py518 def set_missing_values(source: dict, target: dict) -> None:CODE
LOW…ring/report/process_loss_report/process_loss_report.py122def update_data_with_total_pl_value(data: Data) -> None:CODE
LOW…facturing/doctype/bom_update_log/bom_updation_utils.py46def update_cost_in_level(doc: "BOMUpdateLog", bom_list: list[str], batch_name: int | str) -> None:CODE
LOW…facturing/doctype/bom_update_log/bom_updation_utils.py99def update_new_bom_in_bom_items(unit_cost: float, current_bom: str, new_bom: str) -> None:CODE
LOW…facturing/doctype/bom_update_log/bom_updation_utils.py119def update_cost_in_boms(bom_list: list[str]) -> None:CODE
LOW…facturing/doctype/bom_update_log/bom_updation_utils.py210def set_values_in_log(log_name: str, values: dict[str, Any], commit: bool = False) -> None:CODE
LOW…t/manufacturing/doctype/blanket_order/blanket_order.py73 def update_status(self, status: str) -> None:CODE
LOWerpnext/utilities/transaction_base.py396 def set_fetched_values(self, item_obj: object, item_details: dict) -> None:CODE
LOWerpnext/utilities/transaction_base.py461 def set_rate_based_on_price_list(self, item_obj: object, item_details: dict) -> None:CODE
LOWerpnext/utilities/transaction_base.py523 def set_item_rate_and_discounts(self, item_obj: object, item_details: dict) -> None:CODE
LOW⚡erpnext/accounts/utils.py2887def update_subscription_on_invoice_update(doc: "Document", method: str | None = None) -> None:CODE
LOWerpnext/accounts/services/advances.py27def set_advances(doc) -> None:CODE
LOWerpnext/accounts/services/advances.py128def set_advance_gain_or_loss(doc) -> None:CODE
LOWerpnext/accounts/services/advances.py162def set_total_advance_paid(doc) -> None:CODE
LOWerpnext/accounts/services/advances.py177def set_advance_payment_status(doc) -> None:CODE
LOWerpnext/accounts/services/taxes.py26 def set_taxes(self) -> None:CODE
LOWerpnext/accounts/services/taxes.py49 def set_taxes_and_charges(self) -> None:CODE
LOW⚡erpnext/accounts/services/taxes.py111 def set_other_charges(self) -> None:CODE
LOWerpnext/accounts/services/taxes.py398def set_child_tax_template_and_map(item, child_item, parent_doc) -> None:CODE
LOWerpnext/accounts/services/internal_transfer.py36 def set_account(self) -> None:CODE
LOWerpnext/accounts/services/child_item_update.py523def update_bin_on_delete(row, doctype: str) -> None:CODE
LOWerpnext/accounts/services/child_item_update.py698def update_child_item_uom_and_weight(child_item, new_data) -> None:CODE
LOWerpnext/accounts/services/exchange_gain_loss.py210def set_transaction_currency_and_rate_in_gl_map(doc, gl_entries: list) -> None:CODE
LOWerpnext/accounts/services/payment_schedule.py18 def set_payment_schedule(self) -> None:CODE
LOWerpnext/accounts/services/payment_schedule.py210 def set_due_date(self) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py36 def _set_default_change_amount_account(self) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py105 def _set_selling_price_list(self, pos) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py123 def _set_update_stock_from_profile(self, pos) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py141 def _set_terms_and_taxes(self, pos) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py151 def update_paid_amount(self) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py169 def set_account_for_mode_of_payment(self) -> None:CODE
LOWerpnext/accounts/doctype/sales_invoice/services/pos.py339def update_multi_mode_option(doc, pos_profile) -> None:CODE
LOW…counts/doctype/sales_invoice/services/inter_company.py76def update_linked_doc(doctype: str, name: str, inter_company_reference: str | None) -> None:CODE
LOW⚡…ccounts/doctype/sales_invoice/services/fixed_assets.py72 def set_income_account_for_fixed_assets(self) -> None:CODE
LOW…ccounts/doctype/sales_invoice/services/fixed_assets.py124 def _update_asset(self) -> None:CODE
55 more matches not shown…
Redundant / Tautological Comments66 hits · 103 pts
SeverityFileLineSnippetContext
LOWerpnext/buying/utils.py42 # Check if item code is presentCOMMENT
LOW…t/buying/doctype/purchase_order/test_purchase_order.py1553 # Check if the billed amount reducedCOMMENT
LOW…t/buying/doctype/purchase_order/test_purchase_order.py1566 # Check if the billed amount stayed the sameCOMMENT
LOW…ort/customer_credit_balance/customer_credit_balance.py15 # Check if customer id is according to naming series or customer nameCOMMENT
LOWerpnext/selling/doctype/quotation/mapper.py248 # Check if a Customer already exists for the Lead or Prospect.COMMENT
LOW⚡erpnext/selling/doctype/sales_order/test_sales_order.py763 # Check if payment terms are copied from sales order to sales invoiceCOMMENT
LOW⚡erpnext/selling/doctype/sales_order/test_sales_order.py779 # Check if payment terms are not copied from sales order to sales invoiceCOMMENT
LOWerpnext/selling/doctype/sales_order/test_sales_order.py2294 # Check if Work Orders were raisedCOMMENT
LOW…agement/doctype/quality_procedure/quality_procedure.py56 # Check if any child process belongs to another parent.COMMENT
LOW…pnext/patches/v15_0/link_purchase_item_to_asset_doc.py64 # Check if the asset is groupedCOMMENT
LOWerpnext/patches/v13_0/update_member_email_address.py15 # Check if email_id already existsCOMMENT
LOWerpnext/crm/doctype/appointment/appointment.py166 # Set status to "Unverified" for new Appointments.COMMENT
LOW…saction_deletion_record/transaction_deletion_record.py411 # Check if doctype exists and is not a child table or virtualCOMMENT
LOW…saction_deletion_record/transaction_deletion_record.py555 if "company" in db_company_fields: # Check if 'company' is a valid fieldCODE
LOWerpnext/manufacturing/doctype/job_card/test_job_card.py377 # Check if 'For Quantity' is negativeCOMMENT
LOWerpnext/www/book_appointment/index.py77 # Check if holidayCOMMENT
LOW…ort/customer_ledger_summary/customer_ledger_summary.py283 # Check if this is a direct return invoice (most specific condition first)COMMENT
LOW…ort/customer_ledger_summary/customer_ledger_summary.py286 # Check if this entry is against a return invoiceCOMMENT
LOWerpnext/accounts/report/balance_sheet/balance_sheet.py189 # Check if previous year balance sheet closedCOMMENT
LOW…ce_creation_tool/test_opening_invoice_creation_tool.py56 # Check if update stock is not enabledCOMMENT
LOW…ce_creation_tool/test_opening_invoice_creation_tool.py96 # Check if missing debit account error raisedCOMMENT
LOW…unts/doctype/bank_transaction/test_bank_transaction.py136 # Check if ERPNext can correctly filter a linked payments based on the debit/credit amountCOMMENT
LOW…bank_statement_import_log/bank_statement_import_log.py1153 # Check if there's an amount columnCOMMENT
LOW…/payment_reconciliation/test_payment_reconciliation.py1036 # Check if difference journal entry gets generated for difference amount after reconciliationCOMMENT
LOW…/payment_reconciliation/test_payment_reconciliation.py1209 # Check if difference journal entry gets generated for difference amount after reconciliationCOMMENT
LOW…t/accounts/doctype/sales_invoice/test_sales_invoice.py2475 # Check if SO is unlinked/replaced by SI in PE & if SO advance paid is 0COMMENT
LOW…t/accounts/doctype/sales_invoice/test_sales_invoice.py3566 # Check if adjustment entry is createdCOMMENT
LOW…t/accounts/doctype/sales_invoice/test_sales_invoice.py4731 # Check if loyalty points are applied correctlyCOMMENT
LOW…/cost_center_allocation/test_cost_center_allocation.py95 # Check if any child cost center is used as main cost center in any other existing allocationCOMMENT
LOW⚡…ctype/cost_center_allocation/cost_center_allocation.py69 # Check if GLE exists against the main cost centerCOMMENT
LOW…ctype/cost_center_allocation/cost_center_allocation.py89 # Check if there are any future existing allocation records against the main cost centerCOMMENT
LOW…ctype/cost_center_allocation/cost_center_allocation.py143 # Check if child cost center is used as main cost center in any existing allocationCOMMENT
LOWerpnext/accounts/doctype/tax_rule/test_tax_rule.py379 # Check if accounts heads and rate fetched are also fetched from tax template or notCOMMENT
LOW…doctype/bank_transaction_rule/bank_transaction_rule.py98 # Set priority to 1 if no rules exist, otherwise increment by 1COMMENT
LOW⚡…unts/doctype/purchase_invoice/test_purchase_invoice.py138 # Check if the received quantity is updated in Material RequestCOMMENT
LOW…/accounts/doctype/purchase_invoice/purchase_invoice.py801 # Check if there exists any item with cwip accounting enabled in it's asset categoryCOMMENT
LOW…/accounts/doctype/purchase_invoice/purchase_invoice.py968 # Check if outstanding amount is 0 due to debit note issued against invoiceCOMMENT
LOWerpnext/accounts/doctype/account/test_account.py170 # Check if renamed in childrenCOMMENT
LOWerpnext/accounts/doctype/account/account.py481 # Check if any previous balance existsCOMMENT
LOW…e/bank_reconciliation_tool/bank_reconciliation_tool.py794 # Check if this account is a Income or Expense AccountCOMMENT
LOW⚡…ype/service_level_agreement/service_level_agreement.py106 # Check if repeated priorityCOMMENT
LOW…ype/service_level_agreement/service_level_agreement.py79 # Check if response and resolution time is set for every priorityCOMMENT
LOW…type/maintenance_schedule/test_maintenance_schedule.py68 # Check if item is mapped in visit.COMMENT
LOWerpnext/regional/italy/utils.py86 # Check if stamp duty (Bollo) of 2 EUR exists.COMMENT
LOW⚡…type/stock_reconciliation/test_stock_reconciliation.py341 # Check if Serial No from Stock Reconcilation is intactCOMMENT
LOW⚡…type/stock_reconciliation/test_stock_reconciliation.py345 # Check if Serial No from Stock Entry is Unlinked and InactiveCOMMENT
LOWerpnext/stock/doctype/batch/test_batch.py197 # Set user to session userCOMMENT
LOWerpnext/stock/doctype/item/item.py993 # Check if old attributes were removed from the listCOMMENT
LOW…next/stock/doctype/delivery_note/test_delivery_note.py376 # Check if Original DN updatedCOMMENT
LOW…next/stock/doctype/delivery_note/test_delivery_note.py384 # Check if unreturned amount is mapped in 2nd returnCOMMENT
LOW…next/stock/doctype/delivery_note/test_delivery_note.py445 # Check if Original DN updatedCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py6365 # Check if Original PR updatedCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py6374 # Check if the first partial debit billing percentage got updatedCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py6384 # Check if the second partial debit note billing percentage got updatedCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py503 # Check if Original PR updatedCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py512 # Check if unreturned amount is mapped in 2nd returnCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py568 # Check if Original PR updatedCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4828 # Check if the billed amount reducedCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4841 # Check if the billed amount stayed the sameCOMMENT
LOWerpnext/stock/doctype/item_price/test_item_price.py180 # Check if none/empty values are not compared during insert validationCOMMENT
6 more matches not shown…
Verbosity Indicators37 hits · 60 pts
SeverityFileLineSnippetContext
LOW…ents/features/BankReconciliation/MatchAndReconcile.tsx837 // We need to check if the following details match:COMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py22 ### Step 1: Update remarks in GL EntriesCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py25 ### Step 2: Update remarks in Payment Ledger EntriesCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py28 ### Step 3: Update remarks in Sales InvoiceCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py55 ### Step 1: Update remarks in GL EntriesSTRING
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py58 ### Step 2: Update remarks in Payment Ledger EntriesSTRING
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py61 ### Step 3: Update remarks in Purchase InvoiceSTRING
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1061 # Step 1: Create BOMCOMMENT
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1080 # Step 2: Uncheck is_active fieldCOMMENT
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1086 # Step 3: Check is_active fieldCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py2911 # Step 1: Create a Payment Entry with over withheld amount at 10% rateCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py2919 # Step 2: Create Purchase Invoice with partial adjustment and manual rate changeCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py3032 # Step 1: Create a Payment Entry with over withheld amount at 10% rateCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py3040 # Step 2: Create Purchase Invoice with partial adjustment and manual rate changeCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py2964 # Step 3: Verify the tax withholding entriesCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py3085 # Step 3: Verify the tax withholding entriesCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py3188 # Step 3: Verify the tax withholding entries on invoiceCOMMENT
LOW…ancial_report_template/test_financial_report_engine.py2077 # Step 1: opening JV in current year (FY 2024) — must be posted before PCVCOMMENT
LOW…ancial_report_template/test_financial_report_engine.py2091 # Step 2: opening JV in next year (FY 2025)COMMENT
LOW…ancial_report_template/test_financial_report_engine.py2104 # Step 3: book Period Closing Voucher for previous year (FY 2023)COMMENT
LOW…/subcontracting_receipt/test_subcontracting_receipt.py1663 # Step 1: Create Subcontracting Receipt with rejected quantityCOMMENT
LOW…/subcontracting_receipt/test_subcontracting_receipt.py1677 # Step 2: Create Subcontract Return from Rejected WarehouseCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py3982 # Step 1: Create ItemCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py3985 # Step 2: Create Stock Entry (Material Receipt)COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4134 # Step 2: Create Stock Entry (Material Receipt)COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4187 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4197 # Step 2: Create One more Purchase Receipt with valuation rate 200COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4207 # Step 3: Create Purchase Return for 2 qtyCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4702 # Step 1: Create Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py3997 # Step 3: Create Delivery Note with Internal CustomerCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4012 # Step 4: Create Internal Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4026 # Step 5: Test Over Receipt AllowanceCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4145 # Step 3: Create Delivery Note with Internal CustomerCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4160 # Step 4: Create Internal Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4237 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4742 # Step 2: Create Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py5426 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
Structural Annotation Overuse36 hits · 58 pts
SeverityFileLineSnippetContext
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py22 ### Step 1: Update remarks in GL EntriesCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py25 ### Step 2: Update remarks in Payment Ledger EntriesCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py28 ### Step 3: Update remarks in Sales InvoiceCOMMENT
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py55 ### Step 1: Update remarks in GL EntriesSTRING
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py58 ### Step 2: Update remarks in Payment Ledger EntriesSTRING
LOW⚡erpnext/patches/v15_0/update_invoice_remarks.py61 ### Step 3: Update remarks in Purchase InvoiceSTRING
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1061 # Step 1: Create BOMCOMMENT
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1080 # Step 2: Uncheck is_active fieldCOMMENT
LOW⚡erpnext/manufacturing/doctype/bom/test_bom.py1086 # Step 3: Check is_active fieldCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py2911 # Step 1: Create a Payment Entry with over withheld amount at 10% rateCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py2919 # Step 2: Create Purchase Invoice with partial adjustment and manual rate changeCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py3032 # Step 1: Create a Payment Entry with over withheld amount at 10% rateCOMMENT
LOW⚡…_withholding_category/test_tax_withholding_category.py3040 # Step 2: Create Purchase Invoice with partial adjustment and manual rate changeCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py2964 # Step 3: Verify the tax withholding entriesCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py3085 # Step 3: Verify the tax withholding entriesCOMMENT
LOW…_withholding_category/test_tax_withholding_category.py3188 # Step 3: Verify the tax withholding entries on invoiceCOMMENT
LOW…ancial_report_template/test_financial_report_engine.py2077 # Step 1: opening JV in current year (FY 2024) — must be posted before PCVCOMMENT
LOW…ancial_report_template/test_financial_report_engine.py2091 # Step 2: opening JV in next year (FY 2025)COMMENT
LOW…ancial_report_template/test_financial_report_engine.py2104 # Step 3: book Period Closing Voucher for previous year (FY 2023)COMMENT
LOW…/subcontracting_receipt/test_subcontracting_receipt.py1663 # Step 1: Create Subcontracting Receipt with rejected quantityCOMMENT
LOW…/subcontracting_receipt/test_subcontracting_receipt.py1677 # Step 2: Create Subcontract Return from Rejected WarehouseCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py3982 # Step 1: Create ItemCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py3985 # Step 2: Create Stock Entry (Material Receipt)COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4134 # Step 2: Create Stock Entry (Material Receipt)COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4187 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4197 # Step 2: Create One more Purchase Receipt with valuation rate 200COMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4207 # Step 3: Create Purchase Return for 2 qtyCOMMENT
LOW⚡…tock/doctype/purchase_receipt/test_purchase_receipt.py4702 # Step 1: Create Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py3997 # Step 3: Create Delivery Note with Internal CustomerCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4012 # Step 4: Create Internal Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4026 # Step 5: Test Over Receipt AllowanceCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4145 # Step 3: Create Delivery Note with Internal CustomerCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4160 # Step 4: Create Internal Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4237 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py4742 # Step 2: Create Purchase ReceiptCOMMENT
LOW…tock/doctype/purchase_receipt/test_purchase_receipt.py5426 # Step 1: Create Purchase Receipt with valuation rate 100COMMENT
AI Structural Patterns56 hits · 47 pts
SeverityFileLineSnippetContext
LOW…ort/purchase_order_analysis/purchase_order_analysis.py108CODE
LOW…next/patches/v14_0/update_pos_return_ledger_entries.py16CODE
LOW…timesheet_billing_summary/timesheet_billing_summary.py124CODE
LOWerpnext/projects/doctype/task/test_task.py488CODE
LOWerpnext/projects/doctype/timesheet/test_timesheet.py826CODE
LOWerpnext/crm/utils.py243CODE
LOW…ort/work_order_stock_report/work_order_stock_report.py112CODE
LOWerpnext/utilities/product.py148CODE
LOWerpnext/accounts/utils.py66CODE
LOWerpnext/accounts/utils.py99CODE
LOWerpnext/accounts/utils.py200CODE
LOWerpnext/accounts/utils.py1263CODE
LOWerpnext/accounts/utils.py2540CODE
LOWerpnext/accounts/party.py79CODE
LOWerpnext/accounts/party.py118CODE
LOWerpnext/accounts/party.py480CODE
LOW…e/account_balance_timeline/account_balance_timeline.py15CODE
LOWerpnext/accounts/report/financial_statements.py688CODE
LOW…lance_report/dimension_wise_accounts_balance_report.py80CODE
LOWerpnext/accounts/report/trial_balance/trial_balance.py149CODE
LOW…nsolidated_trial_balance/consolidated_trial_balance.py217CODE
LOW…n_invoice_date/payment_period_based_on_invoice_date.py189CODE
LOW…pnext/accounts/report/general_ledger/general_ledger.py161CODE
LOW…eport/profitability_analysis/profitability_analysis.py95CODE
LOWerpnext/accounts/services/base_gl_composer.py129CODE
LOWerpnext/accounts/services/base_gl_composer.py250CODE
LOW…xt/accounts/doctype/payment_request/payment_request.py1398CODE
LOW…ctype/payment_reconciliation/payment_reconciliation.py570CODE
LOWerpnext/accounts/doctype/sales_invoice/mapper.py542CODE
LOW…ctype/period_closing_voucher/period_closing_voucher.py913CODE
LOWerpnext/accounts/doctype/journal_entry/journal_entry.py1299CODE
LOW…e/bank_reconciliation_tool/bank_reconciliation_tool.py161CODE
LOW…e/bank_reconciliation_tool/bank_reconciliation_tool.py327CODE
LOW…e/bank_reconciliation_tool/bank_reconciliation_tool.py1381CODE
LOW…e/bank_reconciliation_tool/bank_reconciliation_tool.py1421CODE
LOW…ccounts/doctype/pos_closing_entry/pos_closing_entry.py290CODE
LOW…ccounts/doctype/pos_closing_entry/pos_closing_entry.py373CODE
LOW…ervice_level_agreement/test_service_level_agreement.py412CODE
LOWerpnext/stock/stock_ledger.py2337CODE
LOWerpnext/stock/stock_ledger.py2471CODE
LOWerpnext/stock/get_item_details.py223CODE
LOW…rehouse_wise_stock_value/warehouse_wise_stock_value.py14CODE
LOW…stock_value_by_item_group/stock_value_by_item_group.py18CODE
LOW…t_serial_no_valuation/incorrect_serial_no_valuation.py27CODE
LOW…_and_batch_bundle/incorrect_serial_and_batch_bundle.py102CODE
LOW…_and_batch_bundle/incorrect_serial_and_batch_bundle.py134CODE
LOW…transaction/incorrect_balance_qty_after_transaction.py25CODE
LOWerpnext/stock/report/reserved_stock/reserved_stock.py83CODE
LOW…eport/available_batch_report/available_batch_report.py79CODE
LOW…ype/stock_reservation_entry/stock_reservation_entry.py1910CODE
LOWerpnext/stock/doctype/batch/batch.py272CODE
LOWerpnext/stock/doctype/item/test_item.py1403CODE
LOWerpnext/stock/doctype/stock_entry/stock_entry_utils.py18CODE
LOW…ype/serial_and_batch_bundle/serial_and_batch_bundle.py3529CODE
LOWerpnext/controllers/stock_controller.py444CODE
LOWerpnext/controllers/tests/test_accounts_controller.py254CODE
Over-Commented Block50 hits · 46 pts
SeverityFileLineSnippetContext
LOWbanking/src/lib/namespace/sync.js61 }COMMENT
LOWerpnext/edi/doctype/common_code/common_code.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…_transaction_log_detail/bulk_transaction_log_detail.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…/delivery_schedule_item/test_delivery_schedule_item.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…ctype/delivery_schedule_item/delivery_schedule_item.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…p/doctype/terms_and_conditions/terms_and_conditions.js1// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOWerpnext/setup/doctype/incoterm/incoterm.js1// Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWerpnext/setup/doctype/uom/uom.js1// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…ccount/test_workstation_operating_component_account.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…ent_account/workstation_operating_component_account.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…ting_component/test_workstation_operating_component.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…operating_component/workstation_operating_component.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…ring/doctype/workstation_cost/test_workstation_cost.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…facturing/doctype/workstation_cost/workstation_cost.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWerpnext/public/js/shop_floor/shop_floor.js1// Shop Floor — an immersive, keyboard-first operator/manager interface.COMMENT
LOWerpnext/public/js/utils/barcode_scanner.js21 // shouldn't cap further scans.COMMENT
LOWerpnext/public/scss/erpnext.scss621COMMENT
LOW…ated_discount_mismatch/calculated_discount_mismatch.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…unts/report/accounts_receivable/accounts_receivable.py21 get_advance_payment_doctypes,COMMENT
LOW…s/doctype/process_subscription/process_subscription.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…doctype/ledger_health_monitor/ledger_health_monitor.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…ts/doctype/pegged_currencies/test_pegged_currencies.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW…ccounts/doctype/pegged_currencies/pegged_currencies.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWerpnext/accounts/doctype/ledger_health/ledger_health.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…doctype/subscription_settings/subscription_settings.js1// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…s/doctype/bank_account_balance/bank_account_balance.js1// Copyright (c) 2026, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWerpnext/accounts/doctype/bisect_nodes/bisect_nodes.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…doctype/tax_withholding_group/tax_withholding_group.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…s/doctype/subscription_invoice/subscription_invoice.js1// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…/accounts/doctype/account_category/account_category.js1// Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…unts/doctype/account_category/test_account_category.py1# Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOWerpnext/support/doctype/issue/issue.js141COMMENT
LOWerpnext/support/doctype/issue/issue.js161 // frappe.set_route("Form", "Help Article", doc.name);COMMENT
LOW…doctype/stock_closing_balance/stock_closing_balance.js1// Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py861 # Run assertionsCOMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py881 # )COMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py901 # old3 = make_stock_entry(COMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py921 # self.assertSLEs(COMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py941 # "actual_qty": 10,COMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py961 # },COMMENT
LOW…/doctype/stock_ledger_entry/test_stock_ledger_entry.py981 # item_code=item_code, source=warehouse, qty=10, batch_no=batches[1]COMMENT
LOWerpnext/startup/__init__.py1# ERPNext - web based ERP (http://erpnext.com)COMMENT
LOWerpnext/assets/doctype/asset_activity/asset_activity.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOW…ssets/doctype/asset_shift_factor/asset_shift_factor.js1// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributorsCOMMENT
LOWerpnext/shopping_cart/__init__.py1# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and ContributorsCOMMENT
LOW.github/workflows/sync-hotfix-translations.yml1# Orchestrator — lives on develop only.COMMENT
LOW.github/helper/start-db.sh1#!/bin/bashCOMMENT
LOW.github/helper/install.sh1#!/bin/bashCOMMENT
LOW.github/helper/hydrate.sh1#!/bin/bashCOMMENT
LOW.github/helper/hydrate.sh21COMMENT
Fake / Example Data15 hits · 16 pts
SeverityFileLineSnippetContext
LOW⚡erpnext/selling/doctype/customer/test_customer.py596 first, middle, last = parse_full_name("John Doe")CODE
LOW⚡…projects/doctype/project_update/test_project_update.py71 receive_reply(project_update, "admin@example.com", "Done with design")CODE
LOW⚡…projects/doctype/project_update/test_project_update.py79 receive_reply(project_update, "admin@example.com", "Done with design")CODE
LOW⚡…projects/doctype/project_update/test_project_update.py81 receive_reply(project_update, "admin@example.com", "Done with design")CODE
LOW⚡…projects/doctype/project_update/test_project_update.py92 receive_reply(project_update, "admin@example.com", "Done with design")CODE
LOW⚡…projects/doctype/project_update/test_project_update.py103 receive_reply(project_update, "admin@example.com", "Done with design")CODE
LOWerpnext/setup/setup_wizard/data/sample_blog_post.html3<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore mCODE
LOWerpnext/setup/setup_wizard/data/sample_blog_post.html3<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore mCODE
LOW…report/accounts_receivable/test_accounts_receivable.py983 "customer_name": "Jane Doe",CODE
LOW…report/accounts_receivable/test_accounts_receivable.py1202 "customer_name": "Jane Doe",CODE
LOW…counts/doctype/payment_request/test_payment_request.py249 recipient_id="user@example.com",CODE
LOW…counts/doctype/payment_request/test_payment_request.py274 recipient_id="user@example.com",CODE
LOW…counts/doctype/payment_request/test_payment_request.py293 recipient_id="user@example.com",CODE
LOW…counts/doctype/payment_request/test_payment_request.py1788 "address_line1": "123 Main St",CODE
LOW…counts/doctype/payment_request/test_payment_request.py1811 self.assertEqual(address.get("address_line1"), "123 Main St")CODE
AI Slop Vocabulary4 hits · 10 pts
SeverityFileLineSnippetContext
MEDIUM…_quotation_comparison/supplier_quotation_comparison.py162 group_entries = group_wise_map[group] # all entries pertaining to item/supplierCODE
MEDIUMerpnext/selling/page/sales_funnel/test_sales_funnel.py40 # Baseline before creating anything (robust against pre-existing rows).COMMENT
MEDIUM…selling/report/sales_analytics/test_sales_analytics.py203 # robust to any pre-existing rows in the historical window.COMMENT
LOWerpnext/accounts/general_ledger.py237 # if there is already an entry in this account then just add itCOMMENT
Cross-Language Confusion1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHerpnext/hooks.py263 "condition": "eval: frappe.boot.sysdefaults.demo_company && frappe.boot.sysdefaults.demo_company.length > 0",CODE
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…saction_deletion_record/transaction_deletion_record.py612 def execute_task(self, task_to_execute: str | None = None):CODE