From 285b094bce78535a3f9d645fea94bfd60c1dbcbe Mon Sep 17 00:00:00 2001 From: ilia Date: Sun, 26 Jul 2026 15:54:12 -0400 Subject: [PATCH] chore: replace personal seed data with generic demo profiles Seeds now insert generic Demo User personas (INSERT OR IGNORE, so existing databases keep their current profile data). Drops the every-boot UPDATE backfills that re-asserted personal values, and removes the personal cron env example templates in favor of the generic scripts/jobber-cron.env.example. --- .env.example | 10 +- docs-site/docs/features/settings.md | 4 +- .../client/components/ManualImportFlow.tsx | 4 +- orchestrator/src/client/components/layout.tsx | 6 +- .../src/server/api/routes/stats-proxy.test.ts | 2 +- .../server/api/routes/tracer-links.test.ts | 4 +- orchestrator/src/server/db/migrate.ts | 152 +++++------------- .../src/server/repositories/profiles.test.ts | 14 +- .../src/server/repositories/profiles.ts | 2 +- scripts/jobber-cron-cherepaha.env.example | 24 --- scripts/jobber-cron-dobkin-ai.env.example | 25 --- scripts/jobber-cron-dobkin-us.env.example | 30 ---- scripts/jobber-cron-dobkin.env.example | 24 --- scripts/jobber-cron.env.example | 2 +- 14 files changed, 67 insertions(+), 236 deletions(-) delete mode 100644 scripts/jobber-cron-cherepaha.env.example delete mode 100644 scripts/jobber-cron-dobkin-ai.env.example delete mode 100644 scripts/jobber-cron-dobkin-us.env.example delete mode 100644 scripts/jobber-cron-dobkin.env.example diff --git a/.env.example b/.env.example index 7fb54081..72885bfd 100644 --- a/.env.example +++ b/.env.example @@ -23,7 +23,7 @@ MODEL=google/gemini-3-flash-preview # Takes precedence over Settings → local path. PDF export still uses RxResume when enabled. # Example (monorepo): hand-authored v5 JSON may live under `data/resumes/` (that folder is gitignored by default). # If you use seeded search profiles with `resumeLocalPath` + login auto-activate, leave this unset so Settings → local path wins. -# JOBOPS_LOCAL_RESUME_PATH=../data/resumes/ilia-dobkin.json +# JOBOPS_LOCAL_RESUME_PATH=../data/resumes/demo-user.json # RXResume credentials for PDF generation # Create an account at: https://v4.rxresu.me @@ -37,10 +37,10 @@ RXRESUME_PASSWORD=your_password_here # BASIC_AUTH_USER_2= # BASIC_AUTH_PASSWORD_2= # Example local pairing with DB-seeded profiles (change passwords before exposing the UI): -# BASIC_AUTH_USER=ilia -# BASIC_AUTH_PASSWORD=changeme-ilia -# BASIC_AUTH_USER_2=cherepaha -# BASIC_AUTH_PASSWORD_2=changeme-cherepaha +# BASIC_AUTH_USER=demo +# BASIC_AUTH_PASSWORD=changeme-demo +# BASIC_AUTH_USER_2=demo-qa +# BASIC_AUTH_PASSWORD_2=changeme-demo-qa BASIC_AUTH_USER= BASIC_AUTH_PASSWORD= diff --git a/docs-site/docs/features/settings.md b/docs-site/docs/features/settings.md index 775f1f28..1d62b5e5 100644 --- a/docs-site/docs/features/settings.md +++ b/docs-site/docs/features/settings.md @@ -156,9 +156,9 @@ Readiness requires: ### Job search profiles and local resume - **Search profiles** store target roles, deal-breakers, locations, and scoring context. Use the profile picker in Settings to create, switch, or activate a profile. -- When **Basic Auth** is enabled, each login user maps to profiles whose `basicAuthUser` field lists that username. Comma-separated aliases are supported (for example `ilia,dobkin` accepts either login name). +- When **Basic Auth** is enabled, each login user maps to profiles whose `basicAuthUser` field lists that username. Comma-separated aliases are supported (for example `demo,demo-user` accepts either login name). - Jobs are scoped per profile (`owner_profile_id`). Pipeline runs and the orchestrator board only show jobs for the profile tied to your current login. -- **Local resume** JSON paths can be set per profile via `resumeLocalPath` in profile data (for example `../data/resumes/ilia-dobkin.json`). JobOps resolves that path relative to the orchestrator working directory when `JOBOPS_LOCAL_RESUME_PATH` is unset. +- **Local resume** JSON paths can be set per profile via `resumeLocalPath` in profile data (for example `../data/resumes/demo-user.json`). JobOps resolves that path relative to the orchestrator working directory when `JOBOPS_LOCAL_RESUME_PATH` is unset. - Activating a profile on Settings calls `POST /api/profiles/:id/activate` and updates `activeProfileId`, `jobSearchProfile`, and `localResumeProfilePath` when Basic Auth is off. ### Backup diff --git a/orchestrator/src/client/components/ManualImportFlow.tsx b/orchestrator/src/client/components/ManualImportFlow.tsx index aa1f5345..dc1190ff 100644 --- a/orchestrator/src/client/components/ManualImportFlow.tsx +++ b/orchestrator/src/client/components/ManualImportFlow.tsx @@ -362,8 +362,8 @@ export const ManualImportFlow: React.FC = ({

- Synthetic postings for quick manual-import testing (Ilia vs - Cherepaha-style roles). + Synthetic postings for quick manual-import testing (SDET vs + Guidewire QA-style roles).

diff --git a/orchestrator/src/client/components/layout.tsx b/orchestrator/src/client/components/layout.tsx index 663dd992..9d363108 100644 --- a/orchestrator/src/client/components/layout.tsx +++ b/orchestrator/src/client/components/layout.tsx @@ -124,10 +124,8 @@ export const PageHeader: React.FC = ({ only visible to this login — sign out to use another user (e.g.{" "} - ilia vs{" "} - - cherepaha - + demo vs{" "} + demo-qa ).