Automatically generate model variant groups #16

Merged
kubus merged 1 commit from t3code/auto-generate-watch-groups into main 2026-09-30 16:26:33 +00:00
Owner

Summary

  • Watches with no groups now propose variants automatically after reaching 25 saved listings
  • AI-powered suggestions via OpenRouter (configurable model) with built-in title-analysis fallback when AI is unavailable or fails
  • Proposed groups are validated against actual listings; groups with fewer than ~4% of listings are dropped
  • Users can manually trigger "Suggest from listings" in the watch dialog to preview proposals before saving
  • Generated groups are stored durably and never auto-overwritten; users can edit, remove, or add to them
  • Watch opt-out via "Generate variants automatically" toggle in an empty group list
  • Existing watches without groups automatically start pending generation; watches with groups have it disabled
  • Added /api/watches/:id/variant-suggestions endpoint for proposal requests

Testing

  • Create a watch and verify the "Generate variants automatically" toggle appears when no groups are set
  • Save listings for a watch (25+ via manual scan) and confirm variant suggestions are generated after the next scheduled scan
  • Manually trigger "Suggest from listings" in the watch dialog and verify it shows a preview without saving
  • Confirm generated groups persist and don't get overwritten on subsequent scans
  • Edit, remove, or add terms to a generated group and verify the changes persist
  • Test with OPENROUTER_API_KEY unset or an invalid model to verify title-analysis fallback works
  • Verify that toggling "Generate variants automatically" off clears the flag and prevents future generation
  • Check that archived watches still generate groups when eligible
  • Verify that watches created with initial groups have auto-generation disabled
## Summary - Watches with no groups now propose variants automatically after reaching 25 saved listings - AI-powered suggestions via OpenRouter (configurable model) with built-in title-analysis fallback when AI is unavailable or fails - Proposed groups are validated against actual listings; groups with fewer than ~4% of listings are dropped - Users can manually trigger "Suggest from listings" in the watch dialog to preview proposals before saving - Generated groups are stored durably and never auto-overwritten; users can edit, remove, or add to them - Watch opt-out via "Generate variants automatically" toggle in an empty group list - Existing watches without groups automatically start pending generation; watches with groups have it disabled - Added `/api/watches/:id/variant-suggestions` endpoint for proposal requests ## Testing - Create a watch and verify the "Generate variants automatically" toggle appears when no groups are set - Save listings for a watch (25+ via manual scan) and confirm variant suggestions are generated after the next scheduled scan - Manually trigger "Suggest from listings" in the watch dialog and verify it shows a preview without saving - Confirm generated groups persist and don't get overwritten on subsequent scans - Edit, remove, or add terms to a generated group and verify the changes persist - Test with `OPENROUTER_API_KEY` unset or an invalid model to verify title-analysis fallback works - Verify that toggling "Generate variants automatically" off clears the flag and prevents future generation - Check that archived watches still generate groups when eligible - Verify that watches created with initial groups have auto-generation disabled
Automatically generate model variant groups
Some checks failed
ci / verify (pull_request) Has been cancelled
c28f03cfeb
Proposes groups from saved listing titles after a watch reaches 25 listings, using AI suggestions (OpenRouter when configured) with title analysis fallback. Groups are stored like hand-made ones and never auto-overwritten; users can edit them, toggle auto-generation, or request fresh proposals. Adds `/api/watches/:id/variant-suggestions` endpoint and database columns for tracking auto-generation state.
kubus merged commit bb2193cddf into main 2026-09-30 16:26:33 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kubus/scout!16
No description provided.