Spaces:
Running
Running
Commit History
-
Switch the UI to a warm ink-studio dark theme.
The washi-light palette was high-contrast and fought dark OS preference and the overnight-agent product. Co-authored-by: Cursor <cursoragent@cursor.com>26af279
-
Saturation pass, nav label unification, chat chip/stop polish, discovery filter diagnostics
Color confidence (visual only): - primary-light #ebe9f8 -> #ded9f5; card border 0.07 -> 0.10; border-strong 0.16 - add terracotta secondary accent (#c2542f) tokens; use on pricing label/highlight - give signal/verdict/accessibility pills real borders instead of borderless tints - retune leftover blue/amber rgba literals to the indigo/terracotta palette Nav labels unified to Dashboard / Agent / Job Scorer / Job preferences: - 'Job Agent' -> 'Agent', 'My Findings' -> 'Dashboard', drop 'Back to' prefix - consistent order across DashboardNav, agent, batch/crawl/scrape, home, shortlist Agent chat: - Stop button is now ghost/secondary with danger-tinted hover - suggestion chips are single-line, width-capped, ellipsised, with title tooltips (display text only; full label is still the message payload) Discovery diagnostics: - log per-angle Hirebase queries plus drop counts and a 10-row sample with the accessibility classification behind each exclusion - refresh stale 'Global remote onl…eba4dee
-
Bold UI refresh with shared tokens and CSS-only surface updates.
Refresh marketing, agent, dashboard, and ScoreBar styling while keeping routes and behavior unchanged. Co-authored-by: Cursor <cursoragent@cursor.com>e0402df
-
style: premium dark SaaS design system (Geist, tokens, surfaces)
Made-with: Cursor5db94e2
-
Remove launcher Smart Search; background batch is the only async path
Delete the launcher Smart Search API routes, QStash worker, and lib modules (smart-search-jobs, smart-search-qstash, run-smart-search-pipeline). Strip all Smart Search state, refs, callbacks, effects, JSX, and CSS from JobSearchLauncher; prune launcher query persistence. Add a Redis TTL auto-expiry note to lib/batch-jobs/redis.ts so legacy smartsearch:*, search:status:*, and smartsearch:active:* keys are known to expire on their own. Update README, docs/BATCH_JOBS, docs/HUGGINGFACE_SPACES, env.pipeline.example, and the welcome email to describe the background batch job flow as the sole server-side launcher search path. Made-with: Cursore20deee
-
feat: stream Smart Search partial results, meaningful progress, and reassurance
Worker now persists hits to a new `smartsearch:partial:{id}` key on every `onHit`; the status route exposes them as `partialResults` while the job is in SEARCHING or SCORING. The launcher polls and renders these live with a "More results loading…" indicator, replaces the list with the final sorted results on COMPLETED, fires a one-time "First match found — more coming…" toast, surfaces "Searching job board N of M…" / "Scoring match N of M…" copy, gently smooths the progress bar between polls (1.6s ease-out, matched to the poll cadence), and softens the message to "Still searching — some job boards take a moment to respond." after 20s with no URLs found yet. Pipeline, QStash scheduling, credit deduction, and ownership checks are unchanged. Made-with: Cursora10c0fc -
feat: welcome credits default, banner, FTUX launcher draft, subscriber query persistence
- Default WELCOME_CREDITS_BONUS to 30 credits when unset; WELCOME_CREDITS_BONUS=0 disables - Credits balance API exposes hasAnyUsage for first-run detection - WelcomeCreditsBanner for signed-in commercial users until dismissed (localStorage) - First-time launcher: draft queue from buildDigestSiteQueries after onboarding when no usage - FTUX tip and CSS pulse on preview line and Run smart search; tip dismiss key ftux-tip-dismissed - Active subscribers persist launcher query state debounced 1s to job-scorer:last-query-state:{userId} Made-with: Cursor8875123
-
Make Smart Search a persistent Redis job with reconnect UI and jobId API.
- POST /api/launcher/smart-search returns only jobId; adds per-user active job key, dedupes in-flight jobs, stores primaryRoleType on payload. - Phases use INITIALIZING; worker clears active pointer on completion, refunds with needsCreditReview on refund failure. - GET /api/launcher/smart-search/active returns jobId for signed-in users; status poll exposes jobId and progress fields. - JobSearchLauncher: server-first resume on mount, progress bar replacing Run while busy, richer status lines from Redis. Made-with: Cursorc6d1e20 -
Add Ghost Mode: tag taught-board hits in digest email, batch Redis, and headless UI
Made-with: Cursora5aea1a
-
Add batch apply to batch results with Redis persistence and UI feedback
Made-with: Cursor50663a0 -
Add subtle global motion: tokens, transitions, shell entrance
- Define --motion-* and easing on :root; collapse durations when prefers-reduced-motion. - Smooth scroll (html) only when motion is allowed. - Unify transitions on buttons, links, inputs/selects; soft focus-visible rings. - Light hover lift on shell surfaces and result cards (skipped when reduced motion). - Selection tint; disable button active scale when reduced motion. - Shell main: one-time translateY entrance (no opacity flash); footer brand color transition. - Launcher chips use shared motion tokens. Made-with: Cursorea8d6bb
-
Fix Phrase style checkboxes: use grid for label text (avoid flex split)
Made-with: Cursore7f7244 -
Cursor rule: default to commit and npm run push; fix Phrase style checkbox layout
Made-with: Cursor5b68284 -
feat(job-launcher): custom job boards UI, tokens, and hardened storage
Made-with: Cursora10b9e4
-
Unify app-shell UI across launcher, Search Lab, batch status, and profile setup
- Share header, surfaces, section labels, status/error patterns from globals - Harden batch status against missing progress payload; safer Search Lab alt keys - Row-label selects use auto width to match inputs Made-with: Cursor5b7932e
-
feat(batch): localStorage recent jobs and JSON export from status page
Made-with: Cursor6165fef -
feat: add JobSearchLauncher component for configuring and launching job search queries
30f7fec -
fix(launcher): preset neg preview, headless fetch timeout, softer dark panel
Made-with: Cursor7e13dde -
feat(ui): add headless search N/M explainer with info disclosure
Made-with: Cursor8c020ff -
fix(a11y): segmented toggles use aria-pressed for visible active state
Made-with: Cursor6d9b597 -
fix(ui): show segmented control active state (CSS specificity)
Made-with: Cursorfe8847f -
fix(ui): unify job launcher as full page surface + app-wide dark mode
Made-with: Cursor5bb1632 -
fix(ui): align job launcher layout with app and Search Lab
Made-with: Cursor6b28b5d -
fix(ui): full-viewport job launcher page, drop expand overlay
Made-with: Cursor5921e35 -
feat(ui): move job search launcher to /job-launcher like Search Lab
Made-with: Cursorfd04860 -
feat: port job search launcher from iframe to React
Replace static HTML iframe with JobSearchLauncher client component, shared launcher data module, and CSS module; remove public/job_search_launcher.html and update README. Made-with: Cursor0f918bb