Skip to content

[codex] add JEV settings tab and shared evaluation client - #3159

Merged
EKKOLearnAI merged 3 commits into
mainfrom
feat/jev-settings
Sep 23, 2026
Merged

EKKOLearnAI merged 3 commits into
mainfrom
feat/jev-settings

Conversation

@EKKOLearnAI

@EKKOLearnAI EKKOLearnAI commented Sep 23, 2026

Copy link
Copy Markdown
Owner

Summary

The Models page now provides a JEV tab for configuring TypeSafe independently for each selected Profile. Switching the page Profile reloads its JEV configuration and sends that Profile in request headers without changing the global active Profile.

Adds a shared server facade and client API for typed Choice, Score and Noul evaluations through the official TypeSafe SDK. API keys remain server-side; blank edits preserve a stored key and deleting settings removes it. Calls support a configured timeout and cancellation, with sanitized upstream errors and no automatic retries.

Existing integration changes are limited to the Models tab and authenticated route registration. The remaining files implement JEV, tests, generated API documentation and locale strings in all 11 locale files. Existing business modules are not automatically routed through JEV.

Configuration is stored under config.appHome/models/jev. JEV errors carry stable codes for localized UI feedback; connection tests show a localized model/duration summary.

Validation

  • Focused Vitest: 107 tests passed (JEV, user auth, model tabs, all 11 raw locales including error codes).
  • Playwright: 3 focused JEV tests passed (Profile configuration flow plus English/Chinese labels, failures and success feedback).
  • npm run build
  • npm run harness:check
  • git diff --check

No live TypeSafe API key was available; external responses were mocked. Use Test saved configuration after configuring a real key to verify provider access.

@EKKOLearnAI
EKKOLearnAI merged commit 8295cb4 into main Sep 23, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant