| 136 | } |
| 137 | |
| 138 | function makeDirectEnvApiKeySession(params: { |
| 139 | apiKey: string |
| 140 | envVarName: 'NOUMENA_API_KEY' | 'ANTHROPIC_API_KEY' | 'OPENAI_API_KEY' |
| 141 | providerMode: 'noumena_managed' | 'byok_static_env' |
| 142 | headersKind?: 'api_key' | 'none' |
| 143 | }): ResolvedAuthSession { |
| 144 | return { |
| 145 | principalKind: 'api_key_user', |
| 146 | principalSource: 'direct_api_key_env', |
| 147 | sessionState: 'usable', |
| 148 | headersKind: params.headersKind ?? 'api_key', |
| 149 | providerAuthKind: |
| 150 | params.providerMode === 'noumena_managed' |
| 151 | ? 'noumena_first_party' |
| 152 | : 'byok_static_env', |
| 153 | providerPlan: { |
| 154 | mode: params.providerMode, |
| 155 | source: 'direct_api_key_env', |
| 156 | staticKeyEnvVarName: params.envVarName, |
| 157 | }, |
| 158 | isInteractive: true, |
| 159 | canRefresh: false, |
| 160 | canReauthenticateInteractively: false, |
| 161 | identity: { |
| 162 | email: null, |
| 163 | accountUuid: null, |
| 164 | organizationUuid: null, |
| 165 | organizationName: null, |
| 166 | }, |
| 167 | subscription: { |
| 168 | subscriptionName: null, |
| 169 | subscriptionType: null, |
| 170 | rateLimitTier: null, |
| 171 | }, |
| 172 | scopes: [], |
| 173 | hasUsableToken: false, |
| 174 | hasUsableApiKey: true, |
| 175 | accessToken: null, |
| 176 | accessTokenExpiresAt: null, |
| 177 | refreshTokenPresent: false, |
| 178 | apiKey: params.apiKey, |
| 179 | rawAuthTokenSource: null, |
| 180 | rawApiKeySource: params.envVarName, |
| 181 | recoveryAction: 'none', |
| 182 | recoveryMessage: null, |
| 183 | sourceDetails: { |
| 184 | usedLegacyCompat: false, |
| 185 | usedEnvVar: true, |
| 186 | usedFileDescriptor: false, |
| 187 | usedHelper: false, |
| 188 | }, |
| 189 | } |
| 190 | } |
| 191 | |
| 192 | function withMockCurrentSession<T>( |
| 193 | session: ResolvedAuthSession, |