build: move local development off port 3000

Run the dev API on 6262 and Vite on 6263 with strictPort; production
defaults stay on 3000. Define the dev client origin once and read the
typed appConfig instead of repeating its fallback in every gateway.
This commit is contained in:
neon
2026-09-23 18:18:51 +00:00
parent 1dd29c742f
commit 4b86ff73cf
35 changed files with 132 additions and 113 deletions
@@ -579,7 +579,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
const callbackPayload = {
code: 'authorization-code-provisioned',
codeVerifier: 'verifier-provisioned',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-provisioned',
state,
};
@@ -691,7 +691,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
payload: {
code: 'authorization-code-linked',
codeVerifier: 'verifier-linked',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-linked',
state,
},
@@ -800,7 +800,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
payload: {
code: 'authorization-code-invalid-state',
codeVerifier: 'verifier-invalid-state',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-invalid-state',
state: `invalid-${randomUUID()}`,
},
@@ -822,7 +822,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
payload: {
code: 'authorization-code-missing-subject',
codeVerifier: 'verifier-missing-subject',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-missing-subject',
state,
},
@@ -864,7 +864,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
payload: {
code: 'authorization-code-disabled',
codeVerifier: 'verifier-disabled',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-disabled',
state: disabledState,
},
@@ -903,7 +903,7 @@ describe('App settings OIDC contract (e2e)', { timeout: SCENARIO_TIMEOUT_MS }, (
payload: {
code: 'authorization-code-inactive',
codeVerifier: 'verifier-inactive',
redirectUri: 'http://localhost:5173/oauth2-callback',
redirectUri: 'http://localhost:6263/oauth2-callback',
nonce: 'nonce-inactive',
state: inactiveState,
},
@@ -769,7 +769,7 @@ describe('Auth recovery and OIDC logout hardening (e2e)', () => {
url: '/api/v1/auth/logout',
headers: {
cookie: cookieHeader(session.jar),
origin: 'http://localhost:5173',
origin: 'http://localhost:6263',
},
});
expect(logoutResponse.statusCode).toBe(200);