056c47581f
Ships the second dashboard surface — a Pattern Library + Preview Theatre — that presents the 4-section PDP pilot batch back to Umar, compliance, and the board in an editorial format. Adds the full data layer that drives it: 5 source-backed per-SKU drafts at QA 100/100, 15 competitor PDP semantic extracts, PubMed evidence packs, EFSA claims library extension, JV brand voice guide, hand-curated product FAQs, and the Matrixify-ready CSV exports for Lewis. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
6.6 KiB
6.6 KiB
| 1 | Sequence | Stage | Provider | Action | Status | SpendAllowed | Owner | Evidence | CommandOrFile | StopRule | WhyNext |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | 1 | 0 | No paid provider | Fill and verify Stage 1 ASIN map | blocked | no spend required | Research / project owner | 6 ASINs present / 4 missing; 4 web lookup aids; 2 rejected not-target leads; 575 DataForSEO product-result items saved; 4 unresolved targets have no exact DataForSEO candidate and stay out of the paid payload | bun run dataforseo:products-live with explicit allow flag, then bun run dataforseo:live-asin-evidence && bun run dataforseo:unresolved-asins; data/sources/dataforseo/asin-map.csv | Only accept exact Just Vitamins Amazon UK product matches; leave blank if uncertain. | This remains useful no-spend research, but the capped pilot payload already uses only the live-confirmed ASINs. |
| 3 | 2 | 0 | No paid provider | Promote only Amazon-confirmed high-confidence ASIN candidates | blocked | no spend required | Research | 0 promotion confirmations ready; 0 candidates promoted / 4 candidate rows | bun run dataforseo:asin-confirmations && bun run dataforseo:promote-asins | Only rows marked ready in the confirmation report plus amazon_confirmed_exact_match and Confidence=high can be copied into asin-map.csv; existing ASINs are not overwritten. | This closes confirmed ASINs safely while keeping uncertain third-party candidate evidence out of paid task payloads. |
| 4 | 3 | 1 | DataForSEO | Regenerate capped Amazon Reviews task payload | ready | no spend required | Research | 6 ready task rows / 10 capped targets; 4 unresolved ASINs remain outside the payload | bun run dataforseo:pilot | Payload must stay within Stage 1 cap before any provider call. | Turns the verified ASINs into a reviewable paid-call payload without calling DataForSEO. |
| 5 | 4 | 1 | DataForSEO | Record an explicit Stage 1 budget cap before approval | blocked | blocked | Project owner | 6/9 budget checks passing | data/sources/budgets/source-acquisition-budget.json | Budget must include max spend, max tasks, review depth, and hard stop after the first run. Do not put credentials here. | A subscription is only safe after the hard cap is written down locally and can be checked by the spend gate. |
| 6 | 5 | 1 | DataForSEO | Record current pricing and estimated cost for the capped pilot | blocked | blocked | Project owner / research | 0.00675 estimated / 1 max spend; 5 pricing refs and 5 scenarios available | content_population_exports/source_acquisition_cost_scenarios.md + data/sources/budgets/source-acquisition-cost-plan.json && bun run source:cost-plan | Do not enable budget or approval from guessed pricing; record current provider pricing source and keep estimate within max spend. | This is the anti-credit-burn step before subscription: it turns pricing into an explicit capped first-run estimate. |
| 7 | 6 | 1 | DataForSEO | Record human spend approval for one capped pilot run | blocked | blocked | Project owner | 4/14 spend-gate checks passing; approval valid=false | bun run dataforseo:approval-request && bun run source:approvals && data/sources/approvals/dataforseo-stage1-approval.json | Approval should name the cap, provider, marketplace, target count, and expected max spend before credentials are used. | Prevents accidental credit burn; approval is deliberately local and explicit. |
| 8 | 7 | 1 | DataForSEO | Run only the approved DataForSEO pilot and save raw task_get JSON | blocked | blocked | Research | 0 review tasks posted / 0 reviews returned; 0 raw files / 0 converted reviews | bun run dataforseo:reviews-live then data/sources/dataforseo/raw/ | Do not run a second batch until raw output, useful fields, and actual credit cost are reviewed. | This is the first paid step and should be a single controlled proof of data quality and cost. |
| 9 | 8 | 1 support | DataForSEO | Send provider support escalation if Reviews endpoint remains 50304 | ready | no spend required | Project owner / support | 50304: This function temporarily unavailable. Please contact support for more information.; official docs unavailable=true | bun run dataforseo:reviews-docs-status && bun run dataforseo:support-escalation then content_population_exports/dataforseo_support_escalation.md; when support replies, fill data/sources/provider-responses/dataforseo-reviews-endpoint-response.json and run bun run dataforseo:support-response | Escalation packet must contain no credentials and should include endpoint, status code, tiny payload shape, and proof that Products endpoint works. | This turns the provider-side blocker into an actionable support request instead of more retries or guessing. |
| 10 | 9 | 1 fallback | Manual capture | Capture Amazon reviews manually if DataForSEO support remains blocked | ready | no provider spend | Research | 6 manual capture targets; 0/6 files present; 0/6 files valid; 0 reviews captured | bun run amazon:manual-capture && bun run amazon:manual-capture-validate then content_population_exports/manual_amazon_review_capture_validation.md | Capture only the listed Stage 1 ASINs; do not broaden to catalogue scraping. | This gives a no-spend fallback source path while the DataForSEO Reviews endpoint is unavailable. |
| 11 | 10 | 1 | DataForSEO | Normalize raw provider output into the standard Amazon source-drop path | blocked | no additional spend | Research / dashboard | 0 converted files / 0 ingest issues | bun run dataforseo:ingest && bun run validate:sources | Converted source files must preserve review text, rating, date, source URL, SKU, and provider provenance. | Keeps DataForSEO evidence on the same validation path as manual Amazon drops. |
| 12 | 11 | 1 review | DataForSEO | Review quality, fields, and cost; decide scale vs Apify vs stop | blocked | blocks all scale-up spend | Project owner / research | 1/7 review checks passing; decision=pending | data/sources/reviews/dataforseo-stage1-review.json | Decision must be one of scale_dataforseo, run_apify_gapfill, or stop_adjust_source_map. | Prevents the pilot from silently turning into full-catalogue scraping. |
| 13 | 12 | 2 | Apify selective | Run Apify only for named gaps after DataForSEO review | blocked | blocked | Research | 3 first-batch targets / 4 held; Apify preflight 2/8; Apify budget allowed=false; cost ready=false; approval valid=false; Apify spend allowed=false | bun run apify:task-preflight then content_population_exports/apify_competitor_pdp_input_template.json | One actor, first batch only, inspect raw dataset quality/cost before any further run. | Apify is useful for PDP/social/browser gaps, but only after the cheaper structured pilot proves what is missing. |
| 14 | 13 | control | All source packet lanes | Refresh source packet and delivery index after every change | ready | no spend required | Dashboard | 27/27 required source packet files present | bun run source:refresh-packet && bun run delivery:index | Packet freshness does not mean final handoff readiness; verify:handoff remains the final gate. | Keeps the Export Console and handoff packet aligned with the latest source-acquisition state. |