Imprevista

Deploy Log

← Back to Deploy Log
|Marketing Bot|DEPLOYED

Add deal-data lint + auto-filed GDA data-bug queue (#18)

Charles's draft review surfaced GDA-side data defects (a $1,799 Razor HD scope bundled under the $400 UH-1 sight; M855A1 priced by box not per round; SR-15 lower-receiver kits blended into the rifle price). Those live

Charles's draft review surfaced GDA-side data defects (a $1,799 Razor HD scope bundled under the $400 UH-1 sight; M855A1 priced by box not per round; SR-15 lower-receiver kits blended into the rifle price). Those live in the GDA www repo, but the marketing-bot is where they get noticed — so it should detect and route them, not rely on a human to spot and forward.

  • dealClassifier.js: detectBundle() flags multi-product (|-joined/combo)

titles whose single price can't be attributed to one product; segmentDeals now pulls bundles out of price stats and returns them separately.

  • dealLint.js: lintDeals() emits structured tickets for bundle_contaminated_price,

parts_blended_with_complete, price_outlier_suspected (3x+ over bucket median), and ammo_price_not_cpr. writeTickets() appends deduped to learnings/gda-data-bugs.jsonl.

  • agent.js: lints every product's live deals each run, auto-files tickets (dry-run too).
  • dealLint.test.mjs: 9 tests incl. the exact Vortex bundle title + live m855a1/sr-15 feeds.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Files Changed

Commit:b1fb707