Patrol delete can spend a long time switching countries, reading listing states, and confirming deletes, so the flow now emits concise progress logs around each high-value step. The logs avoid full DOM dumps outside existing diagnostics and focus on task, shop, country, status, deletion counts, and callback boundaries.
Constraint: Existing patrol delete runs are browser-driven and need observable progress without changing deletion behavior
Rejected: Log every DOM probe | too noisy for routine task monitoring
Confidence: high
Scope-risk: narrow
Tested: uv run --group dev pytest tests\\test_patrol_delete.py
Tested: uv run --group dev ruff check amazon\\patrol_delete.py
Tested: uv run python -m py_compile amazon\\patrol_delete.py
Not-tested: Live Seller Central browser run
Patrol delete can spend a long time switching countries, reading listing states, and confirming deletes, so the flow now emits concise progress logs around each high-value step. The logs avoid full DOM dumps outside existing diagnostics and focus on task, shop, country, status, deletion counts, and callback boundaries.
Constraint: Existing patrol delete runs are browser-driven and need observable progress without changing deletion behavior
Rejected: Log every DOM probe | too noisy for routine task monitoring
Confidence: high
Scope-risk: narrow
Tested: uv run --group dev pytest tests\\test_patrol_delete.py
Tested: uv run --group dev ruff check amazon\\patrol_delete.py
Tested: uv run python -m py_compile amazon\\patrol_delete.py
Not-tested: Live Seller Central browser run
Keep the patrol deletion test module aligned with the renamed patrol_delete implementation and update test function names so future searches no longer point at the old product module name.
Constraint: This is a naming-only follow-up to the patrol_delete module rename
Confidence: high
Scope-risk: narrow
Tested: uv run pytest tests/test_patrol_delete.py
Keep the patrol deletion test module aligned with the renamed patrol_delete implementation and update test function names so future searches no longer point at the old product module name.
Constraint: This is a naming-only follow-up to the patrol_delete module rename
Confidence: high
Scope-risk: narrow
Tested: uv run pytest tests/test_patrol_delete.py
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
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
Merge origin/master into dev/koko while preserving the patrol delete task added on dev/koko. The task dispatcher now recognizes both patrol deletion and appearance patent collection, and the master-side SpiderTask implementation is included.
Constraint: origin fetch and push over SSH are blocked in this environment by Gitee publickey authentication
Rejected: Overwrite dev/koko with master | would drop the patrol delete branch work
Confidence: medium
Scope-risk: moderate
Directive: Do not remove either patrol-delete-run or appearance-patent-run without checking queued task producers
Tested: python -m py_compile app/amazon/approve.py app/amazon/asin_status.py app/amazon/detail_spider.py app/amazon/main.py app/amazon/match_action.py app/amazon/price_match.py
Not-tested: Remote push, blocked by SSH publickey authentication
Merge origin/master into dev/koko while preserving the patrol delete task added on dev/koko. The task dispatcher now recognizes both patrol deletion and appearance patent collection, and the master-side SpiderTask implementation is included.
Constraint: origin fetch and push over SSH are blocked in this environment by Gitee publickey authentication
Rejected: Overwrite dev/koko with master | would drop the patrol delete branch work
Confidence: medium
Scope-risk: moderate
Directive: Do not remove either patrol-delete-run or appearance-patent-run without checking queued task producers
Tested: python -m py_compile app/amazon/approve.py app/amazon/asin_status.py app/amazon/detail_spider.py app/amazon/main.py app/amazon/match_action.py app/amazon/price_match.py
Not-tested: Remote push, blocked by SSH publickey authentication
Update the README so new contributors start from the latest patrol-delete automation flow instead of treating delete-brand as the primary example. Keep the older delete-brand path as contrast for the file-driven workflow.
Constraint: Recent repository changes made patrol-delete the newest automation module, so the onboarding example needed to match current development reality
Rejected: Leave delete-brand as the primary example | would mislead readers about the latest automation entry point
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Revisit this section when a newer automation module replaces patrol-delete as the primary example
Tested: README diff review
Not-tested: lint, typecheck, unit/integration tests not run (documentation-only change)
Update the README so new contributors start from the latest patrol-delete automation flow instead of treating delete-brand as the primary example. Keep the older delete-brand path as contrast for the file-driven workflow.
Constraint: Recent repository changes made patrol-delete the newest automation module, so the onboarding example needed to match current development reality
Rejected: Leave delete-brand as the primary example | would mislead readers about the latest automation entry point
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Revisit this section when a newer automation module replaces patrol-delete as the primary example
Tested: README diff review
Not-tested: lint, typecheck, unit/integration tests not run (documentation-only change)
new file: "brand - \345\211\257\346\234\254.html"
new file: "brand-\346\227\247.html"
new file: brand.html
new file: home.html
new file: index.html
new file: login.html