perf(gmail): batch CreateSuggestedJob N+1 + landing product preview #4

Merged
cesnimda merged 2 commits from feat/email-provider-migration into main 2026-07-05 21:34:34 +02:00
Owner
  • perf(gmail): batch the duplicate-message check in CreateSuggestedJob (removes a per-message AnyAsync N+1)
  • feat(ui): add product-preview (dashboard/pipeline/workspace SVGs) to the landing page

Build clean; backend 135/135 green.

- perf(gmail): batch the duplicate-message check in CreateSuggestedJob (removes a per-message AnyAsync N+1) - feat(ui): add product-preview (dashboard/pipeline/workspace SVGs) to the landing page Build clean; backend 135/135 green.
cesnimda added 2 commits 2026-07-05 21:30:48 +02:00
CreateSuggestedJob ran one AnyAsync per message in the thread to decide
imported-vs-skip — an N+1 that scales with thread length. Replace it with a
single query that loads the already-imported ExternalMessageIds for the job,
then check in memory (identical skip/import behaviour), mirroring the batched
pattern RelinkThread already uses.

Build clean; backend suite 135/135 green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(ui): add product preview (mockups) to landing page
CI and Deploy / test (pull_request) Successful in 2m11s
CI and Deploy / deploy (pull_request) Has been skipped
aa19edbc49
"See it in action" section showing the dashboard, pipeline board and per-job
workspace. Uses the design-mockup SVGs (small + crisp, ~27KB total) served from
public/mockups/, honestly captioned "Interface preview". Verified live: all three
render at "/".

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
cesnimda merged commit 1badff1437 into main 2026-07-05 21:34:34 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cesnimda/jobtrackingapp#4