merge main to pick up German locale for custom provider keys

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
This commit is contained in:
Cursor Agent
2026-08-03 08:53:06 +00:00
co-authored by Serhii Dziupin
233 changed files with 19087 additions and 1831 deletions
@@ -1073,6 +1073,7 @@ export const registerCommonRequestMiddleware = (app, dependencies) => {
req.path.startsWith('/api/provider') ||
req.path.startsWith('/api/session-folders') ||
req.path.startsWith('/api/small-model') ||
req.path.startsWith('/api/walkthrough') ||
req.path.startsWith('/api/goals') ||
req.path.startsWith('/api/text') ||
req.path.startsWith('/api/voice') ||
@@ -1,6 +1,7 @@
import { registerFsRoutes } from '../fs/routes.js';
import { registerQuotaRoutes } from '../quota/routes.js';
import { registerSmallModelRoutes } from '../small-model/routes.js';
import { registerWalkthroughRoutes } from '../walkthrough/routes.js';
import { registerSessionGoalRoutes } from '../session-goal/routes.js';
import { registerGitHubRoutes } from '../github/routes.js';
import { registerGitRoutes } from '../git/routes.js';
@@ -67,6 +68,18 @@ export const createFeatureRoutesRuntime = (dependencies) => {
return smallModelService;
};
let walkthroughService = null;
const getWalkthroughService = async () => {
if (!walkthroughService) {
const [service, pullRequest] = await Promise.all([
import('../walkthrough/index.js'),
import('../walkthrough/pull-request.js'),
]);
walkthroughService = { ...service, getPullRequestDiff: pullRequest.getPullRequestDiff };
}
return walkthroughService;
};
const registerRoutes = async (app, routeDependencies) => {
const {
crypto,
@@ -265,6 +278,7 @@ export const createFeatureRoutesRuntime = (dependencies) => {
registerQuotaRoutes(app, { getQuotaProviders });
registerSmallModelRoutes(app, { getSmallModelService });
registerWalkthroughRoutes(app, { getWalkthroughService });
registerSessionGoalRoutes(app);
registerGitHubRoutes(app);
registerGitRoutes(app);
@@ -443,6 +443,10 @@ export const createSettingsHelpers = (dependencies) => {
const trimmed = candidate.smallModelOverride.trim();
result.smallModelOverride = trimmed.length > 0 ? trimmed : undefined;
}
if (typeof candidate.walkthroughModelOverride === 'string') {
const trimmed = candidate.walkthroughModelOverride.trim();
result.walkthroughModelOverride = trimmed.length > 0 ? trimmed : undefined;
}
if (typeof candidate.defaultGitIdentityId === 'string') {
const trimmed = candidate.defaultGitIdentityId.trim();
result.defaultGitIdentityId = trimmed.length > 0 ? trimmed : undefined;