Shaheer Sarfaraz
6353a23f6f
Small wins style tickets ( #88 )
...
* wrap text
* version check!
* initial commit for "remove below score" in pipeline, or manually
* comments
2026-02-05 19:17:14 +00:00
Shaheer Sarfaraz
c4749b4211
feat: opinionated public DEMO_MODE with simulated/blocked actions, resets, and demo toasts ( #87 )
...
* feat(demo): add DEMO_MODE runtime helpers and /api/demo/info endpoint
* feat(demo): enforce simulated and blocked API actions under DEMO_MODE
* feat(demo): add deterministic seed dataset and 6-hour auto-reset
* feat(demo-ui): add demo banner and custom sonner toasts for simulated/blocked actions
* test+docs(demo): add demo mode coverage, behavior matrix, and operator docs
* formatting
* tests
* feat(demo): seed resets from typed baseline defaults
* formatting
* feat(demo): enrich baseline seed data and demo project catalog
* feat(demo): expand seeded applications and chart time ranges
* refactor(demo): split demo seed data from generation logic
* feat(demo): cap generated application history to 30 days
* feat(demo): rebalance generated job status distribution
* feat(demo-ui): make demo banner fixed and topmost
* minor fixes
* formatting
* duration revert
* durations
* feat(demo): share demo info hook, brighten demo toasts, and enforce webhook auth
* comment explaning
* formatting
* comments
* deadline builder comment
2026-02-05 16:04:04 +00:00
Devin Collins
d18464548e
feat: add salary display and missing salary penalty scoring ( #86 )
2026-02-05 07:35:17 +00:00
Shaheer Sarfaraz
16a8f1d15a
Use logger! add shim to convert backend responses to same format ( #84 )
...
* chore(orchestrator): add @infra import alias
* feat(server): add error/http/context/logger/sanitize infrastructure
* refactor(core): propagate request context, structured logs, and sanitization
* test/docs: update API contract assertions and contributor standards
* all pages working
* normalizing
2026-02-04 23:07:24 +00:00
Shaheer Sarfaraz
82b261c7bc
Refactor LLM service into modular adapters and policies ( #83 )
...
* llm migration
* orchestrator runer
* Decompose runPipeline steps
* dedupe
* refactor(settings): unify settings conversion metadata and round-trip tests
* refactor(llm): extract shared provider strategy factory
* refactor(settings-ui): add reusable numeric setting section
* test(orchestrator): stabilize usePipelineSources localStorage setup
* comments
2026-02-04 21:48:28 +00:00
Shaheer Sarfaraz
b94f85b149
Reduce low risk duplication ( #79 )
...
* clean up helpers
* shared in it's own top level folder
* workspaces setup
* build fix
* disable workspaces?
* run ci
* rename job-flow to gradcracker
* optional dependencies
* formatting?
* more optional modules
* allow post install runs
* node bump
* remove post install
* add optionals
* add more
* formatting
* comments, but im unsure
* run typescript DIRECTLY
* better build
* camoufox simplification
* lint
* build process doesn't exist
* build fix
* lockfile
* type check everything, build only for client
* rename steps correctly
* import from package!
* fix formatting
* don't fetch twice
* fix concern
2026-02-02 21:30:14 +00:00
Shaheer Sarfaraz
179deffe13
Database backups ( #75 )
...
* initial commit
* test fix
* manual test
* copilot comments
* code quality skill
* comments
* fix types problem
* formatting
* tests now correct for new backup method
* UTC dates
2026-02-02 00:07:39 +00:00
Shaheer Sarfaraz
b02dac5fe8
Fix for level 1 being added to skills ( #73 )
...
* single commit fix!
* fix tests!
2026-01-31 23:20:05 +00:00
Devin Collins
65952259ce
feat: add remote jobs filter for JobSpy ( #70 )
...
* feat(types): add jobspyIsRemote to TypeScript type definitions
- Add jobspyIsRemote boolean fields to AppSettings interface
- Follow three-field pattern: value, default, override
- Update test fixture with default values (false)
* feat(validation): add jobspyIsRemote validation schema
Add Zod validation schema for jobspyIsRemote boolean setting to ensure type safety in the settings API endpoint.
* feat(db): add jobspyIsRemote to database repository setting keys
* feat(api): add jobspyIsRemote storage to settings API route
* feat(service): add jobspyIsRemote to settings service with environment variable support
* feat(jobspy): add isRemote parameter to JobSpy service interface
* feat(pipeline): pass isRemote setting to JobSpy service
* feat(python): add is_remote parameter to JobSpy scraper script
* feat(ui): add Remote Jobs checkbox to JobSpy settings
* feat(ui): add Remote badge to job display
- Display Remote badge when job.isRemote === true
- Position badge next to Source badge in JobHeader
- Use Badge component with outline variant
- Badge does not display when isRemote is false or null
* docs(env): add JOBSPY_IS_REMOTE environment variable documentation
- Added JobSpy section to .env.example with JOBSPY_IS_REMOTE variable
- Documents remote-only job filtering option with default value of 0 (disabled)
- Follows existing .env.example format with clear section headers and descriptions
* test(remote-jobs): verify end-to-end functionality with comprehensive feedback loops
2026-01-31 16:48:17 +00:00
Shaheer Sarfaraz
3be0d25c87
Starting work on Dashboard! ( #65 )
...
* initial commit
* fix build issues and configurable time duration
* show in nav
* Positive response rate by posting freshness
* load today's jobs for charts
* fix infinite refetching with onboarding gate
* application to response rate
* refactor charts to their own directory
* bar hover color
* Duration selector embedded in navbar
* always load env
* remove warning about low conversion rate
* trend graph for applications per day
* better copy
* remove freshness response chart
* bottom line chart color and tooltip improved
* introduce check all command
* fix lint
* tests added and CI passing
2026-01-30 11:40:17 +00:00
DaKheera47
0e27dbe52b
fix tests
2026-01-30 09:37:58 +00:00
DaKheera47
8e56378794
documentation update
2026-01-29 16:46:01 +00:00
DaKheera47
5a53c0063d
deprecate openrouterApiKey
2026-01-29 16:42:46 +00:00
Shaheer Sarfaraz
b4641ad9cb
Customise llm base url ( #68 )
...
* backend initial commit
* frontend initial commit
* better copy
* make lmstudio work
* enum of providers
* better error messages
* llm model settings stay in one place
* llm settings should be under the model accordion
* skip llm key step in onboarding if provider is set to local
* onboarding now factors in new llm provider flow
* fix tests
* fix typecheck
2026-01-29 16:20:12 +00:00
Shaheer Sarfaraz
6e771ce728
Timeline introduced ( #38 )
...
* initial implementation
* onboarding doesn't pop until invalid values are present
* link to job page
* proactive inputs working slightly
* onboarding gate reinstated
* better proactive buttons
* fully manual tracking for now.
* edit and delete timeline events
* status showing correctly
* tests update
* tests
* Update orchestrator/src/server/services/applicationTracking.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update orchestrator/src/server/services/applicationTracking.test.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update orchestrator/src/server/services/applicationTracking.test.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update orchestrator/src/client/pages/job/Timeline.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update orchestrator/src/client/pages/JobPage.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* add tests for application tracking routes and remove unused actionId from client API
* remove unnecessary await from synchronous transitionStage calls and improve test isolation
* relax externalUrl validation to allow non-URL metadata
* add toast notifications for data loading and event logging in JobPage
* comments
* fix: resolve type error in sponsor-matching.test.ts
* fix ci
* tests fix for github
* lint
* github comments
* build fix
* dedupe
* format
* types fix
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* formatting
* title and group id are discrete fields
* backfill
* hide view button on page
* show relevant dropdown options
* confetti!
* remove redundant
* confirm delete is a custom element now
* formatting
* fix styling
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-27 23:49:11 +00:00
DaKheera47
480e601cd8
lint fix
2026-01-27 15:14:06 +00:00
DaKheera47
9d53dd6477
fix test fiels
2026-01-27 15:12:58 +00:00
DaKheera47
b3c8a04b71
fix working files
2026-01-27 15:12:53 +00:00
DaKheera47
ff822aaf81
setup typechecking in CI
2026-01-27 15:10:34 +00:00
DaKheera47
b432691414
mock settings fetch in test
2026-01-26 11:05:02 +00:00
DaKheera47
86c8e76bb1
tests passing
2026-01-26 11:01:42 +00:00
DaKheera47
8acb5dbc27
fix tests
2026-01-25 13:49:23 +00:00
DaKheera47
d4e83c0674
gem3 flash lint fix
2026-01-25 13:14:59 +00:00
DaKheera47
8b9b7f8bba
formatting
2026-01-25 12:43:50 +00:00
DaKheera47
5c2eef2fc8
ran check:fix in orchestrator
2026-01-25 12:41:44 +00:00
DaKheera47
ac02a5fd1d
add commands
2026-01-25 12:29:13 +00:00
DaKheera47
ca5486fcb4
country dropdown
2026-01-25 12:24:28 +00:00
Shaheer Sarfaraz
63b67baacf
Merge pull request #36 from DaKheera47/copilot/update-ukvisajobs-search-copy
...
Clarify UK Visa Jobs search limitation to job titles only
2026-01-25 12:07:31 +00:00
DaKheera47
85976caf9c
useRescoreJob to reduce duplication
2026-01-25 12:06:14 +00:00
DaKheera47
f491f4634e
better copy
2026-01-25 11:56:25 +00:00
DaKheera47
35365b5fca
initial commit
2026-01-25 11:50:04 +00:00
Shaheer Sarfaraz
a2114cc454
Merge pull request #30 from anasyd/main
...
feat: add option to fetch from a link
2026-01-24 13:47:32 +00:00
copilot-swe-agent[bot]
9f5380fa69
Add clarifying note about job title-only search limitation
...
Co-authored-by: DaKheera47 <53654735+DaKheera47@users.noreply.github.com>
2026-01-24 05:18:22 +00:00
Anas Syed
867a13cf22
feat: add option to fetch from a link
...
Clean raw HTML to JSON to pass to an LLM
2026-01-23 18:22:37 +00:00
DaKheera47
b2c42fadef
fix: fix filter race condition and dedup filter source logic
2026-01-23 13:47:04 +00:00
DaKheera47
d7cbf81808
button shows how many selected
2026-01-23 13:43:37 +00:00
DaKheera47
3652abab3e
codex oneshots ftw!
2026-01-23 13:39:28 +00:00
DaKheera47
ba9beaf01e
Readme updates
2026-01-23 13:11:34 +00:00
DaKheera47
d1d663b06c
Merge branch 'reactive-resume-v5' of https://github.com/DaKheera47/job-ops into reactive-resume-v5
2026-01-23 12:41:23 +00:00
DaKheera47
1dd5a34447
comments
2026-01-23 12:41:00 +00:00
Shaheer Sarfaraz
852e2ff6fc
Update orchestrator/src/server/api/routes/profile.test.ts
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-23 12:36:25 +00:00
Shaheer Sarfaraz
442e600b58
Update orchestrator/src/client/pages/settings/components/ReactiveResumeSection.tsx
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-23 12:36:07 +00:00
DaKheera47
fa13709738
tests
2026-01-23 12:25:00 +00:00
DaKheera47
3f37029dfd
address comments
2026-01-23 12:08:17 +00:00
DaKheera47
a268bfdd59
onboarding UI ensures that we have a resume base id when we're in the app
2026-01-23 11:59:02 +00:00
DaKheera47
9dfb862649
ready panel now works with external resume json instead of local
2026-01-23 11:40:34 +00:00
DaKheera47
7a358db317
settings page can pull and save resume details from v4 api template
2026-01-23 11:06:25 +00:00
DaKheera47
4798846483
v4 api based, with the same code facing api as v5
2026-01-23 00:55:44 +00:00
DaKheera47
11aab30b11
ignore nodeModules
2026-01-22 22:59:01 +00:00
DaKheera47
44779c96fa
Merge branch 'main' into reactive-resume-v5
2026-01-22 22:57:37 +00:00