cesnimda
83e6430a24
feat: structured salary fields (min/max/currency/period)
...
Adds SalaryMin/SalaryMax/SalaryCurrency/SalaryPeriod alongside the
existing free-text Salary field (kept for back-compat and display).
- JobApplication model + idempotent column bridging for SQLite and MySQL
- Create/Update DTOs with NormalizeSalary (clamps negatives, swaps
inverted min/max, uppercases currency, whitelists period)
- JobApplicationDto exposes the fields; CSV export gains 4 columns
- UI: add/edit dialogs get min/max/currency/period inputs; job table
renders a formatted range via shared salary.ts formatter (falls back
to free-text when structured values are absent)
- EN/NB translations; backend + full frontend suites green
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-02 22:15:37 +02:00
cesnimda
999d6e05e7
feat: automated daily SQLite database backups with retention
...
New DatabaseBackupHostedService + SqliteDatabaseBackupRunner:
- daily VACUUM INTO snapshot to <Data:Root>/backups (safe with WAL)
- catch-up backup at startup when none exists from the last 24h
- retention pruning (Backups:RetainCount, default 14)
- warns and stays idle on MySQL/MariaDB where external backups apply
Production previously had no automated database backup on Linux
(the /api/backup endpoint is Windows-DPAPI-only).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-02 21:49:58 +02:00
cesnimda
54abc9f546
Use Ollama rewrite path for CV generation
2026-04-11 22:26:03 +02:00
cesnimda
591c9b8a64
Clamp AI summarize lengths for CV rewrite
2026-04-11 21:55:51 +02:00
cesnimda
534534b333
Harden CV rewrite diagnostics and preview PDFs
2026-04-11 21:36:45 +02:00
cesnimda
811963749e
Fix cross-user job history leak
2026-04-11 17:05:52 +02:00
cesnimda
09e96ce381
Fail closed on malformed local auth
2026-04-11 16:29:53 +02:00
cesnimda
6a223a4b70
Harden job import SSRF validation
2026-04-11 16:26:14 +02:00
cesnimda
27fd70a2d7
refactor, security updates, cv extraction upgrades
2026-04-11 01:34:32 +02:00
cesnimda
269dcb3487
Handle disconnected Gmail and bound CV rewrite prompts
2026-04-09 22:07:36 +02:00
cesnimda
5cd34f17bb
Complete Gmail correspondence workflow
2026-04-02 12:29:24 +02:00
cesnimda
b87e673d38
feat: add gmail review actions
2026-04-01 21:54:05 +02:00
cesnimda
69e78d8951
refactor: extract gmail matching service
2026-04-01 16:59:29 +02:00
cesnimda
f48136f04c
feat: enrich gmail correspondence metadata
2026-04-01 16:27:34 +02:00
cesnimda
e5bcf9d5ea
feat: harden gmail sync foundation
2026-04-01 16:09:29 +02:00
cesnimda
9191e4cc5b
fix: harden admin system fallback and benchmark review
2026-04-01 13:38:22 +02:00
cesnimda
0d65835857
feat: add cv benchmark workflow and admin visibility
2026-04-01 12:25:45 +02:00
cesnimda
0551a525a8
feat: add server-backed profile CV builder pipeline
2026-04-01 12:25:35 +02:00
cesnimda
f22c6791a7
Improve CV rewrite flow and parser accuracy
2026-04-01 11:30:37 +02:00
cesnimda
f402213526
Extend CV classifier contract and provenance UI
2026-04-01 11:06:55 +02:00
cesnimda
b283f8b9d2
Improve classifier fallback for flat CV parsing
2026-04-01 11:00:53 +02:00
cesnimda
517c42250d
Refactor repeated test host setup
2026-04-01 10:48:28 +02:00
cesnimda
18d1de45cb
Refactor backend project and tighten CV test coverage
2026-04-01 10:42:55 +02:00
cesnimda
44000f96f2
Improve CV parsing and profile editor flow
2026-03-29 14:29:18 +02:00
cesnimda
839a2ed80d
Add CV template preview and PDF export pipeline
2026-03-29 00:43:54 +01:00
cesnimda
2392b135c2
Add CV extraction review surfaces
2026-03-28 23:51:03 +01:00
cesnimda
107c181506
Add canonical CV artifact pipeline
2026-03-28 23:32:54 +01:00
cesnimda
d8ab312f59
Improve structured CV fallback extraction
2026-03-28 22:56:55 +01:00
cesnimda
4103f84f85
Fix account and backup admin settings flows
2026-03-28 15:30:07 +01:00
cesnimda
8f8a34ad9c
Add typed structured CV extraction
2026-03-28 15:01:32 +01:00
cesnimda
19a4da9382
Auto-link verified Google sign-ins by email
2026-03-28 14:24:10 +01:00
cesnimda
9f949ee9df
Harden password reset and email send flows
2026-03-28 14:17:12 +01:00
cesnimda
9adbde3f5e
feat(S05/T01): Unified workflow trust signals across the API, table, da…
...
- JobTrackerApi/Controllers/JobApplicationsController.cs
- JobTrackerApi.Tests/JobApplicationsWorkflowSignalsTests.cs
- job-tracker-ui/src/jobWorkflowSignals.ts
- job-tracker-ui/src/components/JobTable.tsx
- job-tracker-ui/src/components/DashboardView.tsx
- job-tracker-ui/src/components/RemindersView.tsx
- job-tracker-ui/src/workflow-trust-signals.test.tsx
2026-03-24 14:28:01 +01:00
cesnimda
ac1832ea04
chore(M001/S03): auto-commit after complete-slice
2026-03-24 12:40:09 +01:00
cesnimda
13d4e29336
chore(M001/S01): auto-commit after complete-slice
2026-03-24 12:27:04 +01:00
cesnimda
955cae6d4b
test(S01/T01): Added a job-scoped Gmail matching contract with backend-…
...
- JobTrackerApi/Controllers/GmailController.cs
- JobTrackerApi/Services/GmailOAuthService.cs
- JobTrackerApi.Tests/GmailControllerTests.cs
- .gsd/milestones/M001/slices/S01/S01-PLAN.md
- .gsd/KNOWLEDGE.md
2026-03-24 12:07:25 +01:00
cesnimda
0cacb4e51b
Implement S03 follow-up draft context loop
2026-03-24 11:05:41 +01:00
cesnimda
b5b430947b
Complete S02 application package drafting loop
2026-03-24 10:36:05 +01:00
cesnimda
3e5f796326
Complete S01 Gmail matching and import workflow
2026-03-24 10:06:50 +01:00
cesnimda
4c49ffb0d6
feat: improve admin observability and translation-first summaries
2026-03-22 21:37:30 +01:00
cesnimda
7f4068518d
test: add draft workflow coverage and sqlite migration helpers
2026-03-22 18:59:05 +01:00
cesnimda
16b9960c08
feat: add mariadb production support deploy hardening and recruiter drafts
2026-03-22 18:53:41 +01:00
cesnimda
1fe3a68901
feat: add editable application drafts tests and gitea deploy workflow
2026-03-22 18:42:14 +01:00
cesnimda
8041b43f47
feat: add application draft saving modes and reminder grouping
2026-03-22 18:37:55 +01:00
cesnimda
f1c7c38a19
feat: improve reminders summarizer output and system metadata handling
2026-03-22 14:58:56 +01:00
cesnimda
779ba9fc6d
test: add auth system and attachment regression coverage
2026-03-22 14:36:52 +01:00
cesnimda
4ccfd6d055
perf: use stable sha256 cache keys for summarizer requests
2026-03-22 14:01:55 +01:00
cesnimda
47c72de283
test: add backend security regression test foundation
2026-03-22 14:00:49 +01:00