Commit Graph

119 Commits

Author SHA1 Message Date
cesnimda 4efee0726a docs(email): record provider state evidence
CI and Deploy / test (pull_request) Successful in 4m11s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 09:46:38 +02:00
cesnimda 1e514272e1 docs(email): record hub unlink evidence
CI and Deploy / test (pull_request) Successful in 4m17s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 09:42:10 +02:00
cesnimda 73ee095795 docs(email): record shared context evidence
CI and Deploy / test (pull_request) Successful in 4m23s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 09:36:50 +02:00
cesnimda 75bf14417c test: align career workspace smoke
CI and Deploy / test (pull_request) Successful in 4m20s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 09:26:32 +02:00
cesnimda fa8241f34f docs(email): add local browser evidence
CI and Deploy / test (pull_request) Failing after 4m24s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:56:23 +02:00
cesnimda 3f0eba0525 docs(email): record export lifecycle evidence
CI and Deploy / test (pull_request) Failing after 4m24s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:49:49 +02:00
cesnimda 14f8d4e928 docs(email): record SMTP retirement evidence
CI and Deploy / test (pull_request) Failing after 4m5s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:45:30 +02:00
cesnimda d7b556e494 docs(deps): record advisory remediation
CI and Deploy / test (pull_request) Failing after 4m12s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:42:41 +02:00
cesnimda c14b8a0ee4 docs(email): record recovery evidence
CI and Deploy / test (pull_request) Failing after 1m30s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:21:19 +02:00
cesnimda 4de08b7c77 docs(email): record composer evidence
CI and Deploy / test (pull_request) Failing after 1m33s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:11:40 +02:00
cesnimda 90f9bf576c docs(email): record send API evidence
CI and Deploy / test (pull_request) Failing after 1m34s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-10 00:02:29 +02:00
cesnimda d44c8ceb08 docs(email): record delivery adapter evidence
CI and Deploy / test (pull_request) Failing after 1m32s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 23:48:59 +02:00
cesnimda 429f427f49 docs(email): record send ledger evidence
CI and Deploy / test (pull_request) Failing after 1m34s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 23:41:09 +02:00
cesnimda 3a7e4f1088 docs(email): record message detail evidence
CI and Deploy / test (pull_request) Failing after 1m33s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 21:47:27 +02:00
cesnimda 6f0e9bb516 docs(email): record provider read boundary
CI and Deploy / test (pull_request) Failing after 1m29s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 21:38:21 +02:00
cesnimda 0e2a59a8ef docs(email): track hub consolidation evidence
CI and Deploy / test (pull_request) Failing after 1m35s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 21:22:39 +02:00
cesnimda efacc3a06b docs(cv): complete builder implementation evidence
CI and Deploy / test (pull_request) Failing after 1m36s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 21:08:28 +02:00
cesnimda df89a69306 docs(cv): track builder integrity progress
CI and Deploy / test (pull_request) Failing after 1m31s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 19:10:33 +02:00
cesnimda c201832603 docs(career): record workspace evidence
CI and Deploy / test (pull_request) Failing after 1m35s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 19:02:34 +02:00
cesnimda 3143568df0 docs(match): record term-quality evidence
CI and Deploy / test (pull_request) Failing after 1m33s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 18:49:41 +02:00
cesnimda f2d1963c61 docs(theme): record deterministic state evidence
CI and Deploy / test (pull_request) Failing after 1m31s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 18:37:52 +02:00
cesnimda 378807b3b9 docs(auth): record unified sign-in evidence
CI and Deploy / test (pull_request) Failing after 1m30s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 17:06:08 +02:00
cesnimda 83ddc0718e docs(cv): record durable processing evidence
CI and Deploy / test (pull_request) Failing after 1m38s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 15:14:39 +02:00
cesnimda 39e98049ea docs(cv): record durable processing trace
CI and Deploy / test (pull_request) Failing after 1m39s
CI and Deploy / deploy (pull_request) Has been skipped
2026-08-09 13:27:19 +02:00
cesnimda 89b9cdd92d docs(ai): record strategy queue evidence 2026-08-09 13:24:26 +02:00
cesnimda 5eb9b3cb96 feat(ai): enforce local-first routing
Keep external providers behind server consent, task, and prompt-cost gates while persisting actual provider provenance.
2026-08-09 12:30:11 +02:00
cesnimda c3f4a57195 feat/Update_Controllers_to_Allow_for_Premium_Membership 2026-08-03 09:17:28 +02:00
cesnimda 06518a7d52 fix: require verified production email
CI and Deploy / test (pull_request) Successful in 4m42s
CI and Deploy / deploy (pull_request) Has been skipped
CI and Deploy / test (push) Successful in 4m2s
CI and Deploy / deploy (push) Failing after 1m15s
Expose the existing email-verification setting through Compose and close the completed DataProtection rotation blocker.
2026-08-02 17:59:05 +02:00
cesnimda 955182b7c2 fix: close release preflight gaps
CI and Deploy / test (pull_request) Failing after 1m22s
CI and Deploy / deploy (pull_request) Has been skipped
Route public health checks to the API, backfill and synchronize job opportunities, stabilize SPA smoke tests, and document operator-only production steps.
2026-07-31 20:18:30 +02:00
cesnimda ce76046a29 feat: complete release readiness work
- consolidate API ownership and remove dead vendor code

- add Stripe billing, learning paths, and public CV hardening

- add migration, recovery, security, audit, and browser gates
2026-07-31 16:54:16 +02:00
cesnimda a23c3dfc97 docs: record remaining product decisions
CI and Deploy / test (push) Successful in 2m34s
CI and Deploy / deploy (push) Successful in 28s
2026-07-31 00:18:32 +02:00
cesnimda 235d22c059 feat: add salary insights
CI and Deploy / test (push) Successful in 2m41s
CI and Deploy / deploy (push) Successful in 58s
2026-07-31 00:15:38 +02:00
cesnimda 9f16a5675a feat: show account AI usage
CI and Deploy / test (push) Successful in 2m40s
CI and Deploy / deploy (push) Successful in 50s
2026-07-31 00:08:41 +02:00
cesnimda 2126a2db5c fix: reconcile orphan migration history
CI and Deploy / test (push) Successful in 2m42s
CI and Deploy / deploy (push) Successful in 55s
2026-07-30 23:51:08 +02:00
cesnimda 988a91a151 feat: persist job source and market
CI and Deploy / test (push) Successful in 2m34s
CI and Deploy / deploy (push) Successful in 56s
2026-07-30 23:38:22 +02:00
cesnimda efc9d83c25 fix: finish prospect workflow safeguards
CI and Deploy / test (push) Successful in 2m37s
CI and Deploy / deploy (push) Successful in 54s
2026-07-30 23:34:42 +02:00
cesnimda 792814b04e feat: cap per-user AI token spend
CI and Deploy / test (push) Successful in 2m43s
CI and Deploy / deploy (push) Successful in 57s
2026-07-30 23:32:13 +02:00
cesnimda 09fc2b03f7 feat: gate premium CV themes
CI and Deploy / test (push) Successful in 2m35s
CI and Deploy / deploy (push) Successful in 1m1s
2026-07-30 23:24:19 +02:00
cesnimda fd2c60e70f feat: complete public CV sharing
CI and Deploy / test (push) Successful in 2m34s
CI and Deploy / deploy (push) Successful in 1m0s
2026-07-30 23:19:17 +02:00
cesnimda 158970fa01 feat: enforce account usage limits
CI and Deploy / test (push) Successful in 2m39s
CI and Deploy / deploy (push) Successful in 55s
2026-07-30 23:14:42 +02:00
cesnimda 9cd2e5c2e3 feat: protect auth with Turnstile
CI and Deploy / test (push) Successful in 2m41s
CI and Deploy / deploy (push) Successful in 59s
2026-07-30 23:08:36 +02:00
cesnimda 6382e83e28 ci: report dependency vulnerabilities
CI and Deploy / test (push) Successful in 2m34s
CI and Deploy / deploy (push) Successful in 29s
2026-07-30 22:58:59 +02:00
cesnimda 405e6d833c feat: add NAV job discovery
CI and Deploy / test (push) Successful in 2m27s
CI and Deploy / deploy (push) Successful in 1m0s
2026-07-30 22:57:17 +02:00
cesnimda 7fab996407 docs: reconcile phase 6 status 2026-07-30 22:42:49 +02:00
cesnimda c08232b9d7 feat: meter AI usage
CI and Deploy / test (push) Failing after 58s
CI and Deploy / deploy (push) Has been skipped
2026-07-30 22:39:24 +02:00
cesnimda f8466c2ebc feat: advance phase 5 AI workflow 2026-07-30 22:27:10 +02:00
cesnimda e4acfbd0bf refactor: complete phase 4 builder cleanup 2026-07-30 22:23:55 +02:00
cesnimda 4cf26405f6 feat: complete phase 3 career workspace
CI and Deploy / test (push) Failing after 1m6s
CI and Deploy / deploy (push) Has been skipped
2026-07-30 22:19:13 +02:00
cesnimda 56fed05d70 feat: complete phase 2 UX improvements
CI and Deploy / test (push) Successful in 2m42s
CI and Deploy / deploy (push) Failing after 9s
2026-07-30 21:35:52 +02:00
cesnimda 173187dcbb feat(cv): Phase 2.1-b — extract Projects, Certifications, and languages-from-prose
The structured model and StructuredCvProfileJson.FromSections already map
Projects/Certifications/Languages headings, but the AI normalize prompt
never emitted them, so on the benchmark CV the entire Projects section and
the in-summary languages (English Native, Norwegian B1) were silently
dropped. This closes that gap upstream — no backend schema or data change.

ai-service (tools/summarizer/app.py):
- /cv/normalize: added # Projects and # Certifications headings; a
  languages-from-prose rule (pull "native English", "Norwegian at B1" out
  of the summary even with no Languages section; ignore programming
  languages); and skill-group prefix stripping ("Development:",
  "DevOps & Infrastructure:", "Practices:" dropped, only the skills kept).
- /cv/classify-block: Projects and Certifications added to the section
  enum + rules (fallback path).

Backend:
- LooksLikeNormalizedMarkdownCv now recognises # Projects / # Certifications
  so those CVs still take the markdown assembly path.

Tests:
- CvExtractionCoverageTests (4) lock the C# mapping of Projects,
  Certifications and Languages sections into the structured profile.
- ai-service test_classify_block_supports_projects_section (1).
426 backend tests, 17 ai-service tests pass; app.py compiles.

The LLM behaviour (prompt -> headings) needs Ollama to observe and was not
run here; the C# side that consumes the headings is proven and the prompt
change is additive. Merge-not-replace + the review screen are the next
increment (2.1-a, approved: always-review, conservative merge).

Deployment: these prompts live in the ai-service container, which
deploy.sh does not rebuild by default -- deploy with
DEPLOY_BUILD_AI_SERVICE=true or the change won't take effect.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-20 11:40:04 +02:00