1. Time-to-First-Token (TTFT) Budgets & Cross-Provider Circuit Breakers
PATTERN-01 // TTFT CIRCUIT BREAKERWhole-response HTTP timeouts (such as 60 seconds) hide hung inference streams until the user has already abandoned the session. Enforce a strict 4-second Time-to-First-Token deadline and trip a half-open circuit breaker on HTTP 429, 502, 503, or 529.
// Deterministic TTFT deadline + secondary model fallback
async function invokeWithFallback(promptPayload, signal) {
const ttftAbort = AbortSignal.timeout(4000);
try {
return await callPrimaryModel(promptPayload, AbortSignal.any([signal, ttftAbort]));
} catch (err) {
if (isRetryableProviderFailure(err)) {
return await callSecondaryModel(promptPayload, signal);
}
throw err;
}
}