Add search and RAG workspace flows

This commit is contained in:
2026-03-07 20:34:00 -05:00
parent db01f207a5
commit e20aba998b
35 changed files with 3417 additions and 372 deletions

View File

@@ -43,6 +43,34 @@ function toUniqueList(values: string[]) {
return Array.from(new Set(values));
}
function isLoopbackHostname(hostname: string) {
return hostname === 'localhost' || hostname === '127.0.0.1' || hostname === '::1';
}
function replaceOriginHostname(origin: string, hostname: string) {
const url = new URL(origin);
url.hostname = hostname;
url.hash = '';
url.search = '';
const pathName = url.pathname.replace(/\/$/, '');
return `${url.origin}${pathName === '/' ? '' : pathName}`;
}
function buildTrustedOrigins(publicOrigin: string, configuredOrigins: string | undefined) {
const trustedOrigins = [publicOrigin];
const publicOriginUrl = new URL(publicOrigin);
if (isLoopbackHostname(publicOriginUrl.hostname)) {
trustedOrigins.push(replaceOriginHostname(publicOrigin, 'localhost'));
trustedOrigins.push(replaceOriginHostname(publicOrigin, '127.0.0.1'));
}
trustedOrigins.push(...parseCsvList(configuredOrigins));
return toUniqueList(trustedOrigins).join(',');
}
function coercePort(port: string | undefined) {
const parsed = Number.parseInt(port ?? '', 10);
if (Number.isInteger(parsed) && parsed > 0 && parsed <= 65535) {
@@ -113,10 +141,7 @@ export function buildLocalDevConfig(sourceEnv: EnvMap = process.env): LocalDevCo
? DEFAULT_DATABASE_URL
: trim(sourceEnv.DATABASE_URL) ?? DEFAULT_DATABASE_URL;
const secret = trim(sourceEnv.BETTER_AUTH_SECRET);
const trustedOrigins = toUniqueList([
publicOrigin,
...parseCsvList(sourceEnv.BETTER_AUTH_TRUSTED_ORIGINS)
]).join(',');
const trustedOrigins = buildTrustedOrigins(publicOrigin, sourceEnv.BETTER_AUTH_TRUSTED_ORIGINS);
const env: EnvMap = {
...sourceEnv,