feat(tasks): Dual transport handlers and self-healing product_refresh
- Rename product-discovery.ts to product-discovery-curl.ts (axios-based) - Rename payload-fetch.ts to payload-fetch-curl.ts - Add product-discovery-http.ts (Puppeteer browser-based handler) - Add method field to CreateTaskParams for transport selection - Update task-service to insert method column on task creation - Update task-worker with getHandlerForTask() for dual transport routing - product_refresh now queues upstream tasks when no payload exists: - Has platform_dispensary_id → queues product_discovery (http) - No platform_dispensary_id → queues entry_point_discovery This enables HTTP workers to pick up browser-based tasks while curl workers handle axios-based tasks, and prevents product_refresh from failing repeatedly when no crawl has been performed. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,9 +2,15 @@
|
||||
* Task Handlers Index
|
||||
*
|
||||
* Exports all task handlers for the task worker.
|
||||
*
|
||||
* Product Discovery:
|
||||
* - handleProductDiscoveryCurl: curl/axios based (for curl transport)
|
||||
* - handleProductDiscoveryHttp: Puppeteer browser-based (for http transport)
|
||||
*/
|
||||
|
||||
export { handleProductDiscovery } from './product-discovery';
|
||||
export { handleProductDiscovery as handleProductDiscoveryCurl } from './product-discovery-curl';
|
||||
export { handleProductDiscoveryHttp } from './product-discovery-http';
|
||||
export { handlePayloadFetch as handlePayloadFetchCurl } from './payload-fetch-curl';
|
||||
export { handleProductRefresh } from './product-refresh';
|
||||
export { handleStoreDiscovery } from './store-discovery';
|
||||
export { handleEntryPointDiscovery } from './entry-point-discovery';
|
||||
|
||||
Reference in New Issue
Block a user