From 9146d17625933779ae9c4632aeff20533aebd12f Mon Sep 17 00:00:00 2001 From: koko Date: Mon, 27 Apr 2026 17:58:40 +0800 Subject: [PATCH] Align patrol delete module naming Rename the patrol deletion implementation and browser helper scripts away from the generic product name so the filesystem matches the queued patrol-delete task domain. Update imports, script loading, and tests to use the patrol_delete module path. Constraint: Existing task class remains ProductTask to avoid broad API churn beyond the requested file and script naming Rejected: Rename ProductTask class now | would expand the change into a larger API update across tests and task dispatch Confidence: high Scope-risk: narrow Directive: Keep patrol-delete script paths under app/amazon/scripts/patrol_delete when adding new helper scripts Tested: uv run pytest tests/test_product.py Not-tested: Remote push before this commit due previous SSH publickey failure --- app/amazon/main.py | 2 +- app/amazon/{product.py => patrol_delete.py} | 28 +++++++++---------- .../complete_draft_quick_view_debug.js | 0 .../complete_draft_quick_view_diagnostic.js | 0 .../complete_draft_quick_view_tags.js | 0 .../listing_status_click_visible_status.js | 0 .../listing_status_dropdown_debug.js | 0 .../listing_status_dropdown_open.js | 0 .../listing_status_dropdown_options.js | 0 .../listing_status_section.js | 0 .../listing_status_select_option.js | 0 ...recommended_offer_percentage_diagnostic.js | 0 .../recommended_offer_percentage_open.js | 0 .../recommended_offer_percentage_rows.js | 0 app/tests/test_product.py | 4 +-- 15 files changed, 17 insertions(+), 17 deletions(-) rename app/amazon/{product.py => patrol_delete.py} (98%) rename app/amazon/scripts/{product => patrol_delete}/complete_draft_quick_view_debug.js (100%) rename app/amazon/scripts/{product => patrol_delete}/complete_draft_quick_view_diagnostic.js (100%) rename app/amazon/scripts/{product => patrol_delete}/complete_draft_quick_view_tags.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_click_visible_status.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_dropdown_debug.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_dropdown_open.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_dropdown_options.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_section.js (100%) rename app/amazon/scripts/{product => patrol_delete}/listing_status_select_option.js (100%) rename app/amazon/scripts/{product => patrol_delete}/recommended_offer_percentage_diagnostic.js (100%) rename app/amazon/scripts/{product => patrol_delete}/recommended_offer_percentage_open.js (100%) rename app/amazon/scripts/{product => patrol_delete}/recommended_offer_percentage_rows.js (100%) diff --git a/app/amazon/main.py b/app/amazon/main.py index 3adb62b..238e771 100644 --- a/app/amazon/main.py +++ b/app/amazon/main.py @@ -10,7 +10,7 @@ from amazon.approve import ApproveTask from amazon.match_action import MatchTak from amazon.price_match import PriceTask from amazon.asin_status import StatusTask -from amazon.product import ProductTask +from amazon.patrol_delete import ProductTask from amazon.detail_spider import SpiderTask diff --git a/app/amazon/product.py b/app/amazon/patrol_delete.py similarity index 98% rename from app/amazon/product.py rename to app/amazon/patrol_delete.py index b598357..3cdfc9a 100644 --- a/app/amazon/product.py +++ b/app/amazon/patrol_delete.py @@ -30,25 +30,25 @@ RECOMMENDED_OFFER_EXPAND_XPATHS = [ ] -SCRIPT_DIR = Path(__file__).with_name("scripts") / "product" +SCRIPT_DIR = Path(__file__).with_name("scripts") / "patrol_delete" -def _load_product_script(name: str) -> str: +def _load_patrol_delete_script(name: str) -> str: return (SCRIPT_DIR / name).read_text(encoding="utf-8") -LISTING_STATUS_DROPDOWN_DEBUG_SCRIPT = _load_product_script("listing_status_dropdown_debug.js") -LISTING_STATUS_DROPDOWN_OPEN_SCRIPT = _load_product_script("listing_status_dropdown_open.js") -LISTING_STATUS_DROPDOWN_OPTIONS_SCRIPT = _load_product_script("listing_status_dropdown_options.js") -LISTING_STATUS_CLICK_VISIBLE_STATUS_SCRIPT = _load_product_script("listing_status_click_visible_status.js") -LISTING_STATUS_SELECT_OPTION_SCRIPT = _load_product_script("listing_status_select_option.js") -LISTING_STATUS_SECTION_SCRIPT = _load_product_script("listing_status_section.js") -COMPLETE_DRAFT_QUICK_VIEW_DEBUG_SCRIPT = _load_product_script("complete_draft_quick_view_debug.js") -COMPLETE_DRAFT_QUICK_VIEW_TAGS_SCRIPT = _load_product_script("complete_draft_quick_view_tags.js") -COMPLETE_DRAFT_QUICK_VIEW_DIAGNOSTIC_SCRIPT = _load_product_script("complete_draft_quick_view_diagnostic.js") -RECOMMENDED_OFFER_PERCENTAGE_OPEN_SCRIPT = _load_product_script("recommended_offer_percentage_open.js") -RECOMMENDED_OFFER_PERCENTAGE_ROWS_SCRIPT = _load_product_script("recommended_offer_percentage_rows.js") -RECOMMENDED_OFFER_PERCENTAGE_DIAGNOSTIC_SCRIPT = _load_product_script("recommended_offer_percentage_diagnostic.js") +LISTING_STATUS_DROPDOWN_DEBUG_SCRIPT = _load_patrol_delete_script("listing_status_dropdown_debug.js") +LISTING_STATUS_DROPDOWN_OPEN_SCRIPT = _load_patrol_delete_script("listing_status_dropdown_open.js") +LISTING_STATUS_DROPDOWN_OPTIONS_SCRIPT = _load_patrol_delete_script("listing_status_dropdown_options.js") +LISTING_STATUS_CLICK_VISIBLE_STATUS_SCRIPT = _load_patrol_delete_script("listing_status_click_visible_status.js") +LISTING_STATUS_SELECT_OPTION_SCRIPT = _load_patrol_delete_script("listing_status_select_option.js") +LISTING_STATUS_SECTION_SCRIPT = _load_patrol_delete_script("listing_status_section.js") +COMPLETE_DRAFT_QUICK_VIEW_DEBUG_SCRIPT = _load_patrol_delete_script("complete_draft_quick_view_debug.js") +COMPLETE_DRAFT_QUICK_VIEW_TAGS_SCRIPT = _load_patrol_delete_script("complete_draft_quick_view_tags.js") +COMPLETE_DRAFT_QUICK_VIEW_DIAGNOSTIC_SCRIPT = _load_patrol_delete_script("complete_draft_quick_view_diagnostic.js") +RECOMMENDED_OFFER_PERCENTAGE_OPEN_SCRIPT = _load_patrol_delete_script("recommended_offer_percentage_open.js") +RECOMMENDED_OFFER_PERCENTAGE_ROWS_SCRIPT = _load_patrol_delete_script("recommended_offer_percentage_rows.js") +RECOMMENDED_OFFER_PERCENTAGE_DIAGNOSTIC_SCRIPT = _load_patrol_delete_script("recommended_offer_percentage_diagnostic.js") LISTING_STATUS_SELECT_DELAY = 0.8 INVENTORY_ROW_TIMEOUT = 10 diff --git a/app/amazon/scripts/product/complete_draft_quick_view_debug.js b/app/amazon/scripts/patrol_delete/complete_draft_quick_view_debug.js similarity index 100% rename from app/amazon/scripts/product/complete_draft_quick_view_debug.js rename to app/amazon/scripts/patrol_delete/complete_draft_quick_view_debug.js diff --git a/app/amazon/scripts/product/complete_draft_quick_view_diagnostic.js b/app/amazon/scripts/patrol_delete/complete_draft_quick_view_diagnostic.js similarity index 100% rename from app/amazon/scripts/product/complete_draft_quick_view_diagnostic.js rename to app/amazon/scripts/patrol_delete/complete_draft_quick_view_diagnostic.js diff --git a/app/amazon/scripts/product/complete_draft_quick_view_tags.js b/app/amazon/scripts/patrol_delete/complete_draft_quick_view_tags.js similarity index 100% rename from app/amazon/scripts/product/complete_draft_quick_view_tags.js rename to app/amazon/scripts/patrol_delete/complete_draft_quick_view_tags.js diff --git a/app/amazon/scripts/product/listing_status_click_visible_status.js b/app/amazon/scripts/patrol_delete/listing_status_click_visible_status.js similarity index 100% rename from app/amazon/scripts/product/listing_status_click_visible_status.js rename to app/amazon/scripts/patrol_delete/listing_status_click_visible_status.js diff --git a/app/amazon/scripts/product/listing_status_dropdown_debug.js b/app/amazon/scripts/patrol_delete/listing_status_dropdown_debug.js similarity index 100% rename from app/amazon/scripts/product/listing_status_dropdown_debug.js rename to app/amazon/scripts/patrol_delete/listing_status_dropdown_debug.js diff --git a/app/amazon/scripts/product/listing_status_dropdown_open.js b/app/amazon/scripts/patrol_delete/listing_status_dropdown_open.js similarity index 100% rename from app/amazon/scripts/product/listing_status_dropdown_open.js rename to app/amazon/scripts/patrol_delete/listing_status_dropdown_open.js diff --git a/app/amazon/scripts/product/listing_status_dropdown_options.js b/app/amazon/scripts/patrol_delete/listing_status_dropdown_options.js similarity index 100% rename from app/amazon/scripts/product/listing_status_dropdown_options.js rename to app/amazon/scripts/patrol_delete/listing_status_dropdown_options.js diff --git a/app/amazon/scripts/product/listing_status_section.js b/app/amazon/scripts/patrol_delete/listing_status_section.js similarity index 100% rename from app/amazon/scripts/product/listing_status_section.js rename to app/amazon/scripts/patrol_delete/listing_status_section.js diff --git a/app/amazon/scripts/product/listing_status_select_option.js b/app/amazon/scripts/patrol_delete/listing_status_select_option.js similarity index 100% rename from app/amazon/scripts/product/listing_status_select_option.js rename to app/amazon/scripts/patrol_delete/listing_status_select_option.js diff --git a/app/amazon/scripts/product/recommended_offer_percentage_diagnostic.js b/app/amazon/scripts/patrol_delete/recommended_offer_percentage_diagnostic.js similarity index 100% rename from app/amazon/scripts/product/recommended_offer_percentage_diagnostic.js rename to app/amazon/scripts/patrol_delete/recommended_offer_percentage_diagnostic.js diff --git a/app/amazon/scripts/product/recommended_offer_percentage_open.js b/app/amazon/scripts/patrol_delete/recommended_offer_percentage_open.js similarity index 100% rename from app/amazon/scripts/product/recommended_offer_percentage_open.js rename to app/amazon/scripts/patrol_delete/recommended_offer_percentage_open.js diff --git a/app/amazon/scripts/product/recommended_offer_percentage_rows.js b/app/amazon/scripts/patrol_delete/recommended_offer_percentage_rows.js similarity index 100% rename from app/amazon/scripts/product/recommended_offer_percentage_rows.js rename to app/amazon/scripts/patrol_delete/recommended_offer_percentage_rows.js diff --git a/app/tests/test_product.py b/app/tests/test_product.py index 280effc..273f0ef 100644 --- a/app/tests/test_product.py +++ b/app/tests/test_product.py @@ -1,4 +1,4 @@ -from amazon.product import InventoryManage, ProductTask +from amazon.patrol_delete import InventoryManage, ProductTask def test_product_task_post_result_builds_patrol_delete_payload(monkeypatch): @@ -14,7 +14,7 @@ def test_product_task_post_result_builds_patrol_delete_payload(monkeypatch): return Response() monkeypatch.setattr("config.DELETE_BRAND_API_BASE", "http://java.example") - monkeypatch.setattr("amazon.product.requests.post", fake_post) + monkeypatch.setattr("amazon.patrol_delete.requests.post", fake_post) country_sections = [ {