🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

openai-ws-opencode

Package Overview
Dependencies
Maintainers
1
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

openai-ws-opencode - npm Package Compare versions

Comparing version
0.1.28
to
0.1.29
+1
-1
bin/setup.js

@@ -23,3 +23,3 @@ #!/usr/bin/env node

var CODEX_ORIGINATOR = "opencode";
var USER_AGENT = "openai-ws-opencode/0.1.28";
var USER_AGENT = "openai-ws-opencode/0.1.29";

@@ -26,0 +26,0 @@ // src/models/catalog.ts

@@ -16,3 +16,3 @@ export declare const PROVIDER_ID = "openai-ws";

export declare const CODEX_RESPONSES_BETA_FEATURES = "remote_compaction_v2";
export declare const USER_AGENT = "openai-ws-opencode/0.1.28";
export declare const USER_AGENT = "openai-ws-opencode/0.1.29";
export declare const CODEX_OAUTH_SCOPE = "openid profile email offline_access";

@@ -19,0 +19,0 @@ export declare const OAUTH_PORT = 1455;

@@ -16,3 +16,3 @@ export const PROVIDER_ID = "openai-ws";

export const CODEX_RESPONSES_BETA_FEATURES = "remote_compaction_v2";
export const USER_AGENT = "openai-ws-opencode/0.1.28";
export const USER_AGENT = "openai-ws-opencode/0.1.29";
export const CODEX_OAUTH_SCOPE = "openid profile email offline_access";

@@ -19,0 +19,0 @@ export const OAUTH_PORT = 1455;

@@ -1,1 +0,1 @@

{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA6ExD,QAAA,MAAM,qBAAqB,EAAE,MAuK5B,CAAA;AAED,eAAe,qBAAqB,CAAA"}
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAiGxD,QAAA,MAAM,qBAAqB,EAAE,MAuM5B,CAAA;AAED,eAAe,qBAAqB,CAAA"}

@@ -9,4 +9,4 @@ import crypto from "node:crypto";

import { prepareHttpFallbackBody } from "./transport/body.js";
import { bridgeWebSocket } from "./transport/bridge.js";
import { closeConnections, ensureWarmConnection, invalidateStaleAuthConnections } from "./transport/pool.js";
import { abortAllBridgeStreams, abortBridgeStreamsForSession, bridgeWebSocket } from "./transport/bridge.js";
import { clearAllTransportState, clearSessionTransportState, closeConnections, ensureWarmConnection, invalidateStaleAuthConnections, } from "./transport/pool.js";
import { extractTransportContext, httpAuthHeaders, transportIdentity } from "./transport/headers.js";

@@ -56,3 +56,13 @@ function stableHash(value) {

}
function matchesSessionConnection(conn, sessionID) {
return (conn.activeSessionID === sessionID ||
conn.lastSessionID === sessionID ||
conn.headers.session_id === sessionID ||
conn.headers["session-id"] === sessionID);
}
const OpenAIWebSocketPlugin = async ({ client }) => {
let currentIdentity;
const setIdentity = (identity) => {
currentIdentity = identity;
};
const hooks = {

@@ -67,2 +77,14 @@ "chat.headers": async (input, output) => {

headers[INTERNAL_PREFIX_HASH_HEADER] = stableHash(input.message);
const identity = currentIdentity;
if (!identity)
return;
try {
ensureWarmConnection(identity.wsUrl, identity.wsHeaders, {
sessionID: input.sessionID,
agent: input.agent,
});
}
catch {
// Best-effort prewarm: admission/network failures must not break chat.headers.
}
},

@@ -91,3 +113,7 @@ "chat.params": async (input, _output) => {

const deletedSessionID = event.properties?.info?.id;
closeConnections((conn) => conn.activeSessionID === deletedSessionID || conn.lastSessionID === deletedSessionID);
if (typeof deletedSessionID === "string" && deletedSessionID) {
abortBridgeStreamsForSession(deletedSessionID, new Error("Session disposed"));
closeConnections((conn) => matchesSessionConnection(conn, deletedSessionID));
clearSessionTransportState(deletedSessionID);
}
return;

@@ -97,3 +123,5 @@ }

if (eventType === "server.instance.disposed" || eventType === "global.disposed") {
abortAllBridgeStreams(new Error("Session disposed"));
closeConnections();
clearAllTransportState();
}

@@ -105,4 +133,6 @@ },

const auth = (await getAuth().catch(() => undefined));
if (!auth)
if (!auth) {
setIdentity(undefined);
return {};
}
if (auth?.type === "api" && auth.key) {

@@ -116,3 +146,3 @@ const apiKey = auth.key;

invalidateStaleAuthConnections(identity.wsUrl, identity.wsHeaders);
ensureWarmConnection(identity.wsUrl, identity.wsHeaders);
setIdentity({ wsUrl: identity.wsUrl, wsHeaders: identity.wsHeaders });
return {

@@ -162,2 +192,3 @@ apiKey,

catch {
setIdentity(undefined);
if (provider)

@@ -174,3 +205,3 @@ provider.models = resolveModelsForOAuth(undefined, provider.models);

invalidateStaleAuthConnections(initialIdentity.wsUrl, initialIdentity.wsHeaders);
ensureWarmConnection(initialIdentity.wsUrl, initialIdentity.wsHeaders);
setIdentity({ wsUrl: initialIdentity.wsUrl, wsHeaders: initialIdentity.wsHeaders });
return {

@@ -181,4 +212,6 @@ apiKey: initialAuth.accessToken,

const currentAuth = (await getAuth());
if (currentAuth?.type !== "oauth")
if (currentAuth?.type !== "oauth") {
setIdentity(undefined);
throw new Error("OpenAI WebSocket OAuth auth is missing");
}
const { accessToken, accountId } = await resolveOAuthAuth(currentAuth, client);

@@ -188,2 +221,3 @@ const clientVersion = await resolveCodexClientVersion();

invalidateStaleAuthConnections(identity.wsUrl, identity.wsHeaders);
setIdentity({ wsUrl: identity.wsUrl, wsHeaders: identity.wsHeaders });
const url = typeof input === "string" ? new URL(input) : input instanceof URL ? input : new URL(input.url);

@@ -225,2 +259,3 @@ const context = extractTransportContext(init?.headers);

}
setIdentity(undefined);
return {};

@@ -227,0 +262,0 @@ },

@@ -1,1 +0,1 @@

{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
export { oauthTesting } from "./auth/oauth.js";
export { prepareBody, prepareHttpFallbackBody } from "./transport/body.js";
export { apiKeyWebSocketHeaders, oauthWebSocketHeaders, extractTransportContext, transportIdentity } from "./transport/headers.js";
export { connectionPool, readyState, ensureWarmConnection, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js";
export { connectionPool, readyState, ensureWarmConnection, clearTransportContextState, clearSessionTransportState, clearAllTransportState, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js";
export { bridgeWebSocket } from "./transport/bridge.js";

@@ -16,2 +16,3 @@ export { fallbackCodexClientVersion, fetchCodexCatalog, fetchOpenAIModelIds, resetCatalogCacheForTesting, resolveCodexClientVersion } from "./models/catalog.js";

export declare function transportSnapshot(): {
contextEntries: number;
physicalSockets: number;

@@ -50,2 +51,3 @@ connecting: number;

stale_auth: number;
other: number;
};

@@ -64,4 +66,6 @@ httpByReason: {

handshake_timeout: number;
stale_auth: number;
provider_connection_limit: number;
previous_response_not_found: number;
other: number;
};

@@ -68,0 +72,0 @@ leaseAttempts: number;

@@ -1,1 +0,1 @@

{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,KAAK,eAAe,GACrB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAU5D,oEAAoE;AACpE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,QAG7E;AAED,+EAA+E;AAC/E,wBAAgB,8BAA8B,SAG7C;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhC"}
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,KAAK,eAAe,GACrB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAU5D,oEAAoE;AACpE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,QAG7E;AAED,+EAA+E;AAC/E,wBAAgB,8BAA8B,SAG7C;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhC"}
export { oauthTesting } from "./auth/oauth.js";
export { prepareBody, prepareHttpFallbackBody } from "./transport/body.js";
export { apiKeyWebSocketHeaders, oauthWebSocketHeaders, extractTransportContext, transportIdentity } from "./transport/headers.js";
export { connectionPool, readyState, ensureWarmConnection, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js";
export { connectionPool, readyState, ensureWarmConnection, clearTransportContextState, clearSessionTransportState, clearAllTransportState, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js";
export { bridgeWebSocket } from "./transport/bridge.js";

@@ -6,0 +6,0 @@ export { fallbackCodexClientVersion, fetchCodexCatalog, fetchOpenAIModelIds, resetCatalogCacheForTesting, resolveCodexClientVersion } from "./models/catalog.js";

@@ -1,1 +0,1 @@

{"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,GAEhB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,8BAA8B,IAAI,uBAAuB,EACzD,4BAA4B,IAAI,qBAAqB,GACtD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,qBAAqB,CAAA;AAE5B,oEAAoE;AACpE,MAAM,UAAU,4BAA4B,CAAC,OAAiC;IAC5E,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAC9B,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,8BAA8B;IAC5C,uBAAuB,EAAE,CAAA;IACzB,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,8BAA8B,EAAE,CAAA;AACzC,CAAC"}
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,GAEhB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,8BAA8B,IAAI,uBAAuB,EACzD,4BAA4B,IAAI,qBAAqB,GACtD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,qBAAqB,CAAA;AAE5B,oEAAoE;AACpE,MAAM,UAAU,4BAA4B,CAAC,OAAiC;IAC5E,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAC9B,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,8BAA8B;IAC5C,uBAAuB,EAAE,CAAA;IACzB,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,8BAA8B,EAAE,CAAA;AACzC,CAAC"}

@@ -8,4 +8,10 @@ import type { TransportContext } from "./headers.js";

type FallbackFetch = (signal: AbortSignal, context?: FallbackFetchContext) => Promise<Response>;
/** Fixed-cardinality active bridge count for tests (no session IDs). */
export declare function activeBridgeStreamCountForTesting(): number;
/** Abort active bridge turns for a session (hashed identity; idempotent). */
export declare function abortBridgeStreamsForSession(sessionID: string, reason?: unknown): void;
/** Abort every active bridge turn (idempotent). */
export declare function abortAllBridgeStreams(reason?: unknown): void;
export declare function bridgeWebSocket(wsUrl: string, headers: Record<string, string>, requestBody: Record<string, unknown>, isOAuth: boolean, context?: TransportContext, signal?: AbortSignal, fallbackFetch?: FallbackFetch): Response;
export {};
//# sourceMappingURL=bridge.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG;IACjC,mFAAmF;IACnF,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AA2L/F,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,gBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,aAAa,GAC5B,QAAQ,CAkOV"}
{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG;IACjC,mFAAmF;IACnF,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAqC/F,wEAAwE;AACxE,wBAAgB,iCAAiC,IAAI,MAAM,CAE1D;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAItF;AAED,mDAAmD;AACnD,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAE5D;AA0MD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,gBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,aAAa,GAC5B,QAAQ,CAuSV"}

@@ -0,3 +1,4 @@

import { createHash } from "node:crypto";
import { prepareBody } from "./body.js";
import { acquireConnection, allocateStreamKey, closeConnection, closeConnections, sendPending, } from "./pool.js";
import { acquireConnection, allocateStreamKey, clearTransportContextState, closeConnection, closeConnections, sendPending, } from "./pool.js";
import { transportConfig } from "./config.js";

@@ -8,2 +9,48 @@ import { getTransportCoordinator } from "./coordinator.js";

const encoder = new TextEncoder();
const activeBridgeStreams = new Set();
const activeBridgeStreamsBySession = new Map();
function hashSessionIdentity(sessionID) {
return createHash("sha256").update(sessionID).digest("hex");
}
function registerBridgeStream(sessionID, handle) {
activeBridgeStreams.add(handle);
if (!sessionID)
return;
const key = hashSessionIdentity(sessionID);
let set = activeBridgeStreamsBySession.get(key);
if (!set) {
set = new Set();
activeBridgeStreamsBySession.set(key, set);
}
set.add(handle);
}
function unregisterBridgeStream(sessionID, handle) {
activeBridgeStreams.delete(handle);
if (!sessionID)
return;
const key = hashSessionIdentity(sessionID);
const set = activeBridgeStreamsBySession.get(key);
if (!set)
return;
set.delete(handle);
if (set.size === 0)
activeBridgeStreamsBySession.delete(key);
}
/** Fixed-cardinality active bridge count for tests (no session IDs). */
export function activeBridgeStreamCountForTesting() {
return activeBridgeStreams.size;
}
/** Abort active bridge turns for a session (hashed identity; idempotent). */
export function abortBridgeStreamsForSession(sessionID, reason) {
const set = activeBridgeStreamsBySession.get(hashSessionIdentity(sessionID));
if (!set || set.size === 0)
return;
for (const handle of [...set])
handle.abort(reason);
}
/** Abort every active bridge turn (idempotent). */
export function abortAllBridgeStreams(reason) {
for (const handle of [...activeBridgeStreams])
handle.abort(reason);
}
function providerForUrl(wsUrl) {

@@ -50,2 +97,9 @@ return wsUrl === CODEX_WS_URL || wsUrl.includes("chatgpt.com/backend-api/codex") ? "codex" : "openai";

}
function asAbortError(reason) {
if (reason instanceof Error)
return reason;
if (reason === undefined)
return new DOMException("Aborted", "AbortError");
return new DOMException(String(reason), "AbortError");
}
function queueOverflowError() {

@@ -61,2 +115,12 @@ return new WebSocketTransportError({

}
function isSseContentType(value) {
if (!value)
return false;
const media = value.split(";", 1)[0].trim().toLowerCase();
return media === "text/event-stream";
}
function fallbackResponseError(response) {
const contentType = response.headers.get("content-type") ?? "";
return new Error(`HTTP fallback failed: status=${response.status} content-type=${contentType || "unknown"}`);
}
class BoundedSseSink {

@@ -198,7 +262,10 @@ provider;

let fallbackContext;
let fallbackReader = null;
let sink;
let streamController;
let streamSettled = false;
let registered = false;
const streamKey = allocateStreamKey();
const provider = providerForUrl(wsUrl);
const sessionID = context.sessionID;
const cleanupAbort = () => {

@@ -208,6 +275,28 @@ if (signal)

};
const cancelFallbackReader = () => {
const reader = fallbackReader;
fallbackReader = null;
if (!reader)
return;
try {
void reader.cancel().catch(() => { });
}
catch { }
try {
reader.releaseLock();
}
catch { }
};
const unregister = () => {
if (!registered)
return;
registered = false;
unregisterBridgeStream(sessionID, bridgeHandle);
};
const finalize = () => {
finalized = true;
cleanupAbort();
cancelFallbackReader();
fallbackController.abort(new DOMException("Stream finalized", "AbortError"));
unregister();
};

@@ -246,4 +335,21 @@ const settleError = (error) => {

const response = await fallbackFetch(fallbackController.signal, fallbackContext);
if (finalized || sink.getError())
if (finalized || sink.getError()) {
try {
await response.body?.cancel();
}
catch { }
return;
}
if (!response.ok || !isSseContentType(response.headers.get("content-type"))) {
const error = fallbackResponseError(response);
try {
await response.body?.cancel();
}
catch { }
try {
sink.error(error);
}
catch { }
return;
}
if (!response.body) {

@@ -254,2 +360,3 @@ sink.close();

const reader = response.body.getReader();
fallbackReader = reader;
try {

@@ -271,3 +378,8 @@ while (!finalized && !sink.getError()) {

finally {
reader.releaseLock();
if (fallbackReader === reader)
fallbackReader = null;
try {
reader.releaseLock();
}
catch { }
}

@@ -295,2 +407,5 @@ if (!finalized && !sink.getError())

fallbackStarted = true;
// Clear WSS continuation + turn state for this exact hashed context once before HTTP fallback.
// Does not mutate the caller request body; previous_response hint stays typed below.
clearTransportContextState(wsUrl, headers, context);
if (error instanceof WebSocketTransportError && error.code === "previous_response_not_found") {

@@ -302,3 +417,3 @@ fallbackContext = { clearPreviousResponseId: true };

};
const onAbort = () => {
const abortBridge = (reason) => {
if (finalized)

@@ -308,3 +423,4 @@ return;

cleanupAbort();
const error = abortError(signal);
const error = asAbortError(reason ?? (signal ? abortError(signal) : undefined));
cancelFallbackReader();
fallbackController.abort(error);

@@ -320,3 +436,10 @@ if (conn)

}
unregister();
};
const bridgeHandle = {
abort: abortBridge,
};
const onAbort = () => {
abortBridge(signal ? abortError(signal) : undefined);
};
const startStream = (acquired, streamSink) => {

@@ -355,2 +478,4 @@ conn = acquired;

};
// highWaterMark: 0 so pull() reflects real reader demand; unread first chunks
// stay in BoundedSseSink and honor per-stream / aggregate queue caps.
const readable = new ReadableStream({

@@ -365,2 +490,4 @@ start(controller) {

}
registered = true;
registerBridgeStream(sessionID, bridgeHandle);
sink = new BoundedSseSink(provider, streamKey, () => {

@@ -427,7 +554,11 @@ const err = sink?.getError();

// Terminal-but-undrained sinks set finalized before the consumer drains; still release.
if (streamSettled)
if (streamSettled) {
cancelFallbackReader();
unregister();
return;
}
streamSettled = true;
finalized = true;
cleanupAbort();
cancelFallbackReader();
fallbackController.abort(new DOMException("Aborted", "AbortError"));

@@ -437,4 +568,5 @@ sink?.cancel();

abortPending(conn, new DOMException("Aborted", "AbortError"));
unregister();
},
});
}, { highWaterMark: 0 });
return new Response(readable, {

@@ -441,0 +573,0 @@ status: 200,

@@ -1,1 +0,1 @@

{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"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"}

@@ -86,3 +86,3 @@ import { type TransportBreaker } from "./breaker.js";

private memoryBlocked;
private boundMap;
private isFixedRateKey;
reserveSocket(input: {

@@ -105,2 +105,5 @@ accountFp: string;

private rateBlock;
private activeRateKeys;
/** Make room for required rate keys without evicting process/provider windows. */
private ensureRateCapacity;
private recordRates;

@@ -180,2 +183,3 @@ private boundRateWindows;

stale_auth: number;
other: number;
};

@@ -194,4 +198,6 @@ httpByReason: {

handshake_timeout: number;
stale_auth: number;
provider_connection_limit: number;
previous_response_not_found: number;
other: number;
};

@@ -198,0 +204,0 @@ leaseAttempts: number;

@@ -1,1 +0,1 @@

{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"}

@@ -16,2 +16,3 @@ import { monitorEventLoopDelay } from "node:perf_hooks";

"stale_auth",
"other",
];

@@ -30,4 +31,6 @@ const HTTP_REASONS = [

"handshake_timeout",
"stale_auth",
"provider_connection_limit",
"previous_response_not_found",
"other",
];

@@ -209,9 +212,4 @@ const DEFAULT_PROCESS_MAX_SOCKETS = 64;

}
boundMap(map) {
while (map.size > this.maxAccountingEntries) {
const key = map.keys().next().value;
if (key === undefined)
break;
map.delete(key);
}
isFixedRateKey(key) {
return key === "process" || key.startsWith("provider:");
}

@@ -233,3 +231,3 @@ reserveSocket(input) {

if (accountCount === 0 && this.accountSockets.size >= this.maxAccountingEntries) {
return { ok: false, reason: "queue_overflow" };
return { ok: false, reason: "memory_guard" };
}

@@ -268,2 +266,30 @@ this.physicalSockets++;

}
activeRateKeys(scopes) {
return scopes.filter(([, limit]) => limit > 0).map(([key]) => key);
}
/** Make room for required rate keys without evicting process/provider windows. */
ensureRateCapacity(scopes, now) {
for (const key of [...this.rateWindows.keys()])
this.pruneWindow(key, now);
const required = this.activeRateKeys(scopes);
const missing = required.filter((key) => !this.rateWindows.has(key));
if (missing.length === 0) {
this.boundRateWindows(now);
return true;
}
const requiredSet = new Set(required);
const evictable = [...this.rateWindows.keys()].filter((key) => !this.isFixedRateKey(key) && !requiredSet.has(key));
const sizeAfterEvict = this.rateWindows.size - evictable.length;
const room = this.maxAccountingEntries - sizeAfterEvict;
if (missing.length > room)
return false;
let need = missing.length - Math.max(0, this.maxAccountingEntries - this.rateWindows.size);
for (const key of evictable) {
if (need <= 0)
break;
this.rateWindows.delete(key);
need--;
}
return true;
}
recordRates(scopes, now) {

@@ -287,3 +313,8 @@ for (const [key, limit] of scopes) {

}
this.boundMap(this.rateWindows);
while (this.rateWindows.size > this.maxAccountingEntries) {
const victim = [...this.rateWindows.keys()].find((key) => !this.isFixedRateKey(key));
if (victim === undefined)
break;
this.rateWindows.delete(victim);
}
}

@@ -306,2 +337,4 @@ startConnect(input) {

return { ok: false, reason: "handshake_rate" };
if (!this.ensureRateCapacity(scopes, now))
return { ok: false, reason: "handshake_rate" };
const breakerDecision = this.breaker.allow(input.scopeKey);

@@ -415,11 +448,19 @@ if (!breakerDecision.allowed)

noteAdmissionMiss(reason) {
if (reason in this.counters.admissionMissesByReason) {
this.counters.admissionMissesByReason[reason]++;
const map = this.counters.admissionMissesByReason;
if (Object.hasOwn(map, reason)) {
map[reason]++;
}
else {
map.other++;
}
}
noteFallback(reason) {
this.counters.fallbacks++;
if (reason in this.counters.httpByReason) {
this.counters.httpByReason[reason]++;
const map = this.counters.httpByReason;
if (Object.hasOwn(map, reason)) {
map[reason]++;
}
else {
map.other++;
}
}

@@ -426,0 +467,0 @@ noteAuthStale() {

@@ -1,1 +0,1 @@

{"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA0B,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,sBAAsB,EAAyB,MAAM,cAAc,CAAA;AA4C5E,MAAM,sBAAsB,GAAG;IAC7B,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,aAAa;IACb,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,iBAAiB;IACjB,mBAAmB;IACnB,YAAY;IACZ,OAAO;CACC,CAAA;AAEV,MAAM,YAAY,GAAG;IACnB,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,aAAa;IACb,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,iBAAiB;IACjB,mBAAmB;IACnB,YAAY;IACZ,2BAA2B;IAC3B,6BAA6B;IAC7B,OAAO;CACC,CAAA;AAEV,MAAM,2BAA2B,GAAG,EAAE,CAAA;AACtC,MAAM,gCAAgC,GAAG,EAAE,CAAA;AAC3C,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAChC,MAAM,8BAA8B,GAAG,CAAC,CAAA;AACxC,MAAM,8BAA8B,GAAG,CAAC,CAAA;AACxC,MAAM,4BAA4B,GAAG,GAAG,CAAA;AACxC,MAAM,6BAA6B,GAAG,GAAG,CAAA;AACzC,MAAM,2BAA2B,GAAG,GAAG,CAAA;AACvC,MAAM,4BAA4B,GAAG,EAAE,CAAA;AACvC,MAAM,8BAA8B,GAAG,IAAI,CAAA;AAC3C,MAAM,kCAAkC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;AAC3D,MAAM,6BAA6B,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAA;AACvD,MAAM,sBAAsB,GAAG,KAAK,CAAA;AAEpC,SAAS,eAAe,CAAC,MAAgB;IACvC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;AAC7D,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAoB,EAAE,KAAa;IAC3D,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,CAAA;IACnE,SAAS,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAE,EAAE,CAAA;AAClE,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAoB;IAC7C,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;AACzE,CAAC;AAED,SAAS,aAAa,CAAmB,IAAkB;IACzD,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAsB,CAAA;AAC7E,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,GAAG,CAAA;AACtC,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK;QAAE,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAA;IAClD,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM;QAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACpD,OAAO,GAAG,CAAC,MAAM,CAAA;AACnB,CAAC;AAED,MAAM,OAAO,oBAAoB;IACtB,iBAAiB,CAAQ;IACzB,qBAAqB,CAAQ;IAC7B,oBAAoB,CAAQ;IAC5B,aAAa,CAAQ;IACrB,oBAAoB,CAAQ;IAC5B,oBAAoB,CAAQ;IAC5B,oBAAoB,CAAQ;IAC5B,sBAAsB,CAAQ;IAC9B,kBAAkB,CAAQ;IAC1B,WAAW,CAAQ;IACnB,cAAc,CAAQ;IACtB,KAAK,CAAQ;IACb,OAAO,CAAkB;IACzB,GAAG,CAAc;IACjB,QAAQ,CAAc;IACtB,iBAAiB,CAAc;IAEvB,UAAU,CAK1B;IAEO,eAAe,GAAG,CAAC,CAAA;IACnB,UAAU,GAAG,CAAC,CAAA;IACd,UAAU,GAAG,CAAC,CAAA;IACd,QAAQ,GAAG,CAAC,CAAA;IACZ,kBAAkB,GAAG,CAAC,CAAA;IACtB,qBAAqB,GAAG,CAAC,CAAA;IACzB,cAAc,GAAG,CAAC,CAAA;IAET,cAAc,GAAmE;QAChG,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;QAChC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;KAClC,CAAA;IACgB,eAAe,GAAsC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;IAC5E,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1C,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAA;IACzC,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC7C,eAAe,GAAG,IAAI,OAAO,EAAU,CAAA;IAEhD,UAAU,GAA6B,IAAI,CAAA;IAC3C,QAAQ,GAA0C,IAAI,CAAA;IACtD,SAAS,GAAG,CAAC,CAAA;IACb,QAAQ,GAAG,KAAK,CAAA;IAEP,QAAQ,GAAG;QAC1B,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,uBAAuB,EAAE,aAAa,CAAC,sBAAsB,CAAC;QAC9D,YAAY,EAAE,aAAa,CAAC,YAAY,CAAC;QACzC,eAAe,EAAE,CAAC;QAClB,gBAAgB,EAAE,CAAC;QACnB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,CAAC;QAClB,gBAAgB,EAAE,CAAC;QACnB,gBAAgB,EAAE,CAAC;QACnB,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,CAAC;KACjB,CAAA;IAEgB,UAAU,GAAG;QAC5B,kBAAkB,EAAE,eAAe,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACzE,gBAAgB,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACzG,kBAAkB,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,0BAA0B,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAChG,6BAA6B,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;KAC3E,CAAA;IAED,YAAY,OAAoC,EAAE;QAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,2BAA2B,CAAA;QAC9E,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,IAAI,gCAAgC,CAAA;QAC3F,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAA;QAC1D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,sBAAsB,CAAA;QACjE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,8BAA8B,CAAA;QACvF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,8BAA8B,CAAA;QACvF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,8BAA8B,CAAA;QACvF,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,IAAI,kCAAkC,CAAA;QAC/F,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,IAAI,6BAA6B,CAAA;QAClF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,sBAAsB,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAA;QAChG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAA;QAC7C,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO,EAAE,IAAI,CAAC,wBAAwB,IAAI,4BAA4B;YACtE,QAAQ,EAAE,IAAI,CAAC,yBAAyB,IAAI,6BAA6B;YACzE,MAAM,EAAE,IAAI,CAAC,uBAAuB,IAAI,2BAA2B;YACnE,OAAO,EAAE,IAAI,CAAC,wBAAwB,IAAI,4BAA4B;SACvE,CAAA;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAA;QACjD,CAAC;aAAM,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,qBAAqB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YACzD,OAAO,CAAC,MAAM,EAAE,CAAA;YAChB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAA;YACzB,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC/C,OAAO,CAAC,KAAK,EAAE,CAAA;YACjB,CAAC,CAAA;YACD,MAAM,EAAE,CAAA;YACR,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;YACzD,KAAK,CAAC,KAAK,EAAE,EAAE,CAAA;YACf,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;YACrB,IAAI,CAAC,iBAAiB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAA;QAC/C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAM;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACtB,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QACxB,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAA;QAC3F,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QAChE,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAA;QAC1E,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,cAAc,CAAC,GAAW;QAChC,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;IACzD,CAAC;IAED,aAAa,CAAC,KAIb;QACC,IAAI,IAAI,CAAC,aAAa,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;QAEtE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,GAAG,OAAO,EAAE,CAAC;YAC7D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;QAC7C,CAAC;QAED,IAAI,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACzG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;QAC9C,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAClE,IAAI,IAAI,CAAC,oBAAoB,GAAG,CAAC,IAAI,YAAY,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;QAC7C,CAAC;QACD,IAAI,YAAY,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;QAC9C,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAA;QACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,GAAG,CAAC,CAAC,CAAA;QAC1D,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;IACzC,CAAC;IAED,aAAa,CAAC,KAAyD;QACrE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAA;QAC5D,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;QAC5F,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QAChE,IAAI,IAAI,GAAG,CAAC;YAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;;YACvD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAClD,CAAC;IAEO,WAAW,CAAC,GAAW,EAAE,GAAW;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAA;QACtB,MAAM,MAAM,GAAG,GAAG,GAAG,MAAM,CAAA;QAC3B,OAAO,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAE,IAAI,MAAM;YAAE,MAAM,CAAC,KAAK,EAAE,CAAA;QAC5D,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,SAAS,CAAC,MAA+B,EAAE,GAAW;QAC5D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YAClC,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAA;QAC1E,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,cAAc,CAAC,MAA+B;QACpD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;IACpE,CAAC;IAED,kFAAkF;IAC1E,kBAAkB,CAAC,MAA+B,EAAE,GAAW;QACrE,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAE1E,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QACpE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;YAC1B,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;QACrC,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CACnD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAC5D,CAAA;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,MAAM,CAAA;QAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAA;QACvD,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI;YAAE,OAAO,KAAK,CAAA;QAEvC,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC1F,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,IAAI,IAAI,CAAC;gBAAE,MAAK;YACpB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,IAAI,EAAE,CAAA;QACR,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,WAAW,CAAC,MAA+B,EAAE,GAAW;QAC9D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YAClC,IAAI,KAAK,IAAI,CAAC;gBAAE,SAAQ;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YACzC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAChB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACnC,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAEO,gBAAgB,CAAC,GAAW;QAClC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAM;QAC9D,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB;gBAAE,OAAM;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACzD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAA;YACpF,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAK;YAC/B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAED,YAAY,CAAC,KAMZ;QACC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,GAAG,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;QAChG,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;QAC7C,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,MAAM,GAA4B;YACtC,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YACpC,CAAC,YAAY,KAAK,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YACxD,CAAC,UAAU,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAClD,CAAC,WAAW,KAAK,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;SACxD,CAAA;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAA;QAC/E,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAA;QAEzF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC1D,IAAI,CAAC,eAAe,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAA;QAE9E,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC7B,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;QAC/B,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,EAAE,CAAA;QAEjD,MAAM,MAAM,GAAkB;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,GAAG;SACf,CAAA;QACD,IAAI,eAAe,CAAC,UAAU,KAAK,SAAS;YAAE,MAAM,CAAC,UAAU,GAAG,eAAe,CAAC,UAAU,CAAA;QAC5F,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAC7B,CAAC;IAED,aAAa,CACX,MAAqB,EACrB,MAA0E;QAE1E,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAM;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEhC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;QACnF,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;QAEhG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;YAChC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;YAC9D,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;QAC/B,IAAI,MAAM,CAAC,OAAO;YAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;QAChE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC1C,QAAQ,EAAE,MAAM,CAAC,eAAe,KAAK,IAAI;YACzC,KAAK,EAAE,MAAM,CAAC,UAAU;SACzB,CAAC,CAAA;IACJ,CAAC;IAED,WAAW,CAAC,KAKX;QACC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACtD,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACvF,IAAI,CAAC,cAAc,EAAE,CAAA;YACrB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAA;QAC/E,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC/D,IAAI,CAAC,cAAc,EAAE,CAAA;gBACrB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACpE,IAAI,CAAC,cAAc,EAAE,CAAA;gBACrB,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;QACpE,IAAI,SAAS,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;aAC/E,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE;gBACrC,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5E,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACjD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QACpD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE7D,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACpB,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,0BAA0B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAA;YACrF,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,6BAA6B,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAA;QAC7F,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QAC9E,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QACvF,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACnD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QACtD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC/D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACrC,CAAC;IAED,eAAe;QACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QACzB,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAA;QACvB,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;QACrD,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IACxD,CAAC;IAED,cAAc,CAAC,KAAa;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAA;IACpD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAA;IAC/B,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;IACjC,CAAC;IAED,iBAAiB,CAAC,MAAc;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAA;QACjD,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,MAA0B,CAAC,EAAE,CAAA;QACnC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,EAAE,CAAA;QACb,CAAC;IACH,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAA;QACtC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,MAA0B,CAAC,EAAE,CAAA;QACnC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,EAAE,CAAA;QACb,CAAC;IACH,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;QAChC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IACtC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;IAClC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;IACjC,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;IACjC,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAA;IAC/B,CAAC;IAED,gBAAgB,CAAC,UAAkB,EAAE,KAAa;QAChD,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAA;QAC3E,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC1E,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;IAED,QAAQ;QACN,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;YACxC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAClC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE;gBACd,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;gBACvC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;aAC1C;YACD,QAAQ,EAAE;gBACR,GAAG,IAAI,CAAC,QAAQ;gBAChB,uBAAuB,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE;gBACrE,YAAY,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;aAChD;YACD,aAAa,EAAE;gBACb,kBAAkB,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBACzE,gBAAgB,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;gBACrE,kBAAkB,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBACzE,0BAA0B,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC;gBACzF,6BAA6B,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC;aAChG;YACD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;SACjC,CAAA;IACH,CAAC;CACF;AAED,MAAM,UAAU,kCAAkC;IAChD,OAAO;QACL,iBAAiB,EAAE,2BAA2B;QAC9C,qBAAqB,EAAE,gCAAgC;QACvD,aAAa,EAAE,sBAAsB;QACrC,oBAAoB,EAAE,8BAA8B;QACpD,oBAAoB,EAAE,8BAA8B;QACpD,wBAAwB,EAAE,4BAA4B;QACtD,yBAAyB,EAAE,6BAA6B;QACxD,uBAAuB,EAAE,2BAA2B;QACpD,wBAAwB,EAAE,4BAA4B;QACtD,oBAAoB,EAAE,8BAA8B;QACpD,sBAAsB,EAAE,kCAAkC;QAC1D,kBAAkB,EAAE,6BAA6B;KAClD,CAAA;AACH,CAAC;AAED,IAAI,SAA2C,CAAA;AAE/C,MAAM,UAAU,uBAAuB;IACrC,IAAI,CAAC,SAAS;QAAE,SAAS,GAAG,IAAI,oBAAoB,CAAC,kCAAkC,EAAE,CAAC,CAAA;IAC1F,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,OAAoC;IAChF,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,SAAS,GAAG,IAAI,oBAAoB,CAAC,EAAE,GAAG,kCAAkC,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;IAC7F,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,mCAAmC;IACjD,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,SAAS,GAAG,SAAS,CAAA;AACvB,CAAC"}

@@ -78,2 +78,5 @@ import { type WebSocketConstructor, type WebSocketLike } from "./bun-websocket.js";

breakerDomain: string;
contextEpoch: number;
sawConnectTimeout: boolean;
sawConnectNonTimeout: boolean;
}

@@ -91,3 +94,6 @@ export declare const connectionPool: PooledConnection[];

export declare function acquireConnection(wsUrl: string, headers: Record<string, string>, context: TransportContext, _signal?: AbortSignal): PooledConnection;
export declare function ensureWarmConnection(wsUrl: string, headers: Record<string, string>): PooledConnection | undefined;
export declare function ensureWarmConnection(wsUrl: string, headers: Record<string, string>, context?: TransportContext): PooledConnection | undefined;
export declare function clearTransportContextState(wsUrl: string, headers: Record<string, string>, context: TransportContext): void;
export declare function clearSessionTransportState(sessionID: string): void;
export declare function clearAllTransportState(): void;
export declare function closeConnections(predicate?: (conn: PooledConnection) => boolean, message?: string): void;

@@ -98,2 +104,3 @@ export declare function nextStreamKeyForTesting(): string;

export declare function getTransportSnapshotForTesting(): {
contextEntries: number;
physicalSockets: number;

@@ -132,2 +139,3 @@ connecting: number;

stale_auth: number;
other: number;
};

@@ -146,4 +154,6 @@ httpByReason: {

handshake_timeout: number;
stale_auth: number;
provider_connection_limit: number;
previous_response_not_found: number;
other: number;
};

@@ -150,0 +160,0 @@ leaseAttempts: number;

@@ -1,1 +0,1 @@

{"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"}

@@ -12,6 +12,10 @@ import crypto from "node:crypto";

const lastResponseIDByContext = new Map();
const contextEpochByKey = new Map();
const contextOwnerByKey = new Map();
const scopeCooldowns = new Map();
const authEndpoints = new Map();
const OAUTH_MISSING_ACCOUNT_SEED = "codex-oauth-missing-account";
let nextConnectionID = 1;
let nextStreamID = 1;
let contextEpochClock = 1;
export const readyState = {

@@ -43,3 +47,3 @@ CONNECTING: 0,

}
function accountFingerprint(headers) {
function accountFingerprint(headers, wsUrl) {
const account = headers["ChatGPT-Account-ID"] ?? headers["ChatGPT-Account-Id"] ?? headers["chatgpt-account-id"] ?? "";

@@ -49,5 +53,16 @@ if (account) {

}
// Codex OAuth without account id: stable shared sentinel so bearer rotation cannot bypass account caps.
if (providerForUrl(wsUrl) === "codex") {
return crypto.createHash("sha256").update(`acct:${OAUTH_MISSING_ACCOUNT_SEED}`).digest("hex").slice(0, 32);
}
// Public API keys: fingerprint by auth material.
const auth = headers.Authorization ?? headers.authorization ?? "";
return crypto.createHash("sha256").update(`auth:${auth}`).digest("hex").slice(0, 32);
}
function authGenerationKey(endpoint, accountFp) {
return `${endpoint}::${accountFp}`;
}
function hashIdentity(kind, value) {
return crypto.createHash("sha256").update(`${kind}:${value}`).digest("hex").slice(0, 32);
}
function breakerDomainKey(provider, origin, accountFp) {

@@ -66,4 +81,89 @@ return crypto.createHash("sha256").update(`${provider}\n${origin}\n${accountFp}`).digest("hex");

function contextScopeKey(wsUrl, headers, context) {
return `${scopeKey(wsUrl, headers)}::session:${context.sessionID ?? ""}::agent:${context.agent ?? ""}`;
const sessionHash = context.sessionID ? hashIdentity("session", context.sessionID) : "";
const agentHash = context.agent ? hashIdentity("agent", context.agent) : "";
return `${scopeKey(wsUrl, headers)}::ctx:${sessionHash}::agt:${agentHash}`;
}
function contextKeyMatchesSession(contextKey, sessionID) {
const sessionHash = hashIdentity("session", sessionID);
return contextKey.includes(`::ctx:${sessionHash}::`);
}
function contextEntryCount() {
const keys = new Set();
for (const key of turnStateByContext.keys())
keys.add(key);
for (const key of lastResponseIDByContext.keys())
keys.add(key);
for (const key of contextEpochByKey.keys())
keys.add(key);
for (const key of contextOwnerByKey.keys())
keys.add(key);
return keys.size;
}
function scrubIdleConnectionContext(contextKey) {
for (const conn of connectionPool) {
if (conn.contextKey !== contextKey || conn.busy)
continue;
conn.lastResponseID = undefined;
conn.turnState = undefined;
}
}
function boundContextMaps() {
const max = transportConfig.maxAccountingEntries;
while (contextEntryCount() > max) {
const oldest = contextEpochByKey.keys().next().value ??
turnStateByContext.keys().next().value ??
lastResponseIDByContext.keys().next().value ??
contextOwnerByKey.keys().next().value;
if (oldest === undefined)
break;
turnStateByContext.delete(oldest);
lastResponseIDByContext.delete(oldest);
contextEpochByKey.delete(oldest);
contextOwnerByKey.delete(oldest);
// Evicted map keys must not be reintroduced from idle local connection state.
scrubIdleConnectionContext(oldest);
}
}
function currentContextEpoch(contextKey) {
return contextEpochByKey.get(contextKey) ?? 0;
}
function bumpContextEpoch(contextKey) {
const next = Math.max(contextEpochClock, currentContextEpoch(contextKey) + 1);
contextEpochClock = next + 1;
contextEpochByKey.delete(contextKey);
contextEpochByKey.set(contextKey, next);
boundContextMaps();
return next;
}
function setContextMapValue(map, contextKey, value) {
map.delete(contextKey);
map.set(contextKey, value);
if (!contextEpochByKey.has(contextKey)) {
contextEpochByKey.set(contextKey, currentContextEpoch(contextKey));
}
else {
const epoch = contextEpochByKey.get(contextKey);
contextEpochByKey.delete(contextKey);
contextEpochByKey.set(contextKey, epoch);
}
boundContextMaps();
}
function clearContextAccounting(contextKey, options = {}) {
turnStateByContext.delete(contextKey);
lastResponseIDByContext.delete(contextKey);
contextOwnerByKey.delete(contextKey);
if (options.bumpEpoch !== false)
bumpContextEpoch(contextKey);
else
boundContextMaps();
}
function canPublishContextState(conn) {
if (conn.staleAuth || !isCurrentAuth(conn))
return false;
return conn.contextEpoch === currentContextEpoch(conn.contextKey);
}
function admitContextTurn(conn) {
conn.contextEpoch = currentContextEpoch(conn.contextKey);
setContextMapValue(contextOwnerByKey, conn.contextKey, conn.id);
}
function headersForConnection(wsUrl, baseHeaders, context, key) {

@@ -150,7 +250,8 @@ const headers = { ...baseHeaders };

}
function bindAuthGeneration(endpoint, hash) {
let state = authEndpoints.get(endpoint);
function bindAuthGeneration(endpoint, accountFp, hash) {
const key = authGenerationKey(endpoint, accountFp);
let state = authEndpoints.get(key);
if (!state) {
state = { currentGeneration: 1, currentHash: hash, bindings: new Map([[hash, 1]]), order: [hash] };
authEndpoints.set(endpoint, state);
authEndpoints.set(key, state);
boundAuthEndpoints();

@@ -179,9 +280,13 @@ return 1;

}
// Refresh map insertion order for bounded eviction fairness.
authEndpoints.delete(key);
authEndpoints.set(key, state);
boundAuthEndpoints();
return state.currentGeneration;
}
function currentAuthGeneration(endpoint) {
return authEndpoints.get(endpoint)?.currentGeneration ?? 0;
function currentAuthGeneration(endpoint, accountFp) {
return authEndpoints.get(authGenerationKey(endpoint, accountFp))?.currentGeneration ?? 0;
}
function isCurrentAuth(conn) {
return conn.authGeneration === currentAuthGeneration(conn.endpointKey);
return conn.authGeneration === currentAuthGeneration(conn.endpointKey, conn.accountFp);
}

@@ -563,4 +668,6 @@ function finishConnectPermit(conn, result) {

function persistLastResponseID(conn, responseID) {
if (!canPublishContextState(conn))
return;
conn.lastResponseID = responseID;
lastResponseIDByContext.set(conn.contextKey, responseID);
setContextMapValue(lastResponseIDByContext, conn.contextKey, responseID);
}

@@ -815,2 +922,3 @@ function frameResponseID(frame) {

conn.lastCloseReason = "connection timed out";
conn.sawConnectTimeout = true;
finishConnectPermit(conn, { success: false, breakerEligible: true, timeout: true });

@@ -833,5 +941,5 @@ handleSocketLoss(conn);

const turnState = headerValue(response, X_CODEX_TURN_STATE_HEADER);
if (turnState) {
if (turnState && canPublishContextState(conn)) {
conn.turnState = turnState;
turnStateByContext.set(conn.contextKey, turnState);
setContextMapValue(turnStateByContext, conn.contextKey, turnState);
}

@@ -842,2 +950,20 @@ conn.serverReasoningIncluded = headerValue(response, X_REASONING_INCLUDED_HEADER) !== undefined;

};
const rejectInboundOverflow = (message, probeBytes) => {
const streamKey = conn.pending?.streamKey ?? `overflow:${conn.id}`;
// Non-mutating reject path: oversized probe increments queueOverflows and retains zero bytes.
getTransportCoordinator().adjustQueue({
provider: conn.provider,
streamKey,
bytes: probeBytes,
messages: 1,
});
fail(conn, transportError({
code: "queue_overflow",
phase: "active",
message,
fallbackEligible: false,
breakerEligible: false,
safeToReplay: false,
}), true);
};
const handleMessage = (data, isBinary) => {

@@ -851,3 +977,19 @@ if (generation !== conn.generation)

}
const decoded = decodeFrameData(data);
const maxBytes = transportConfig.queueMaxBytesPerStream;
const incomingBytes = Buffer.byteLength(decoded, "utf8");
if (incomingBytes > maxBytes) {
rejectInboundOverflow("OpenAI WebSocket inbound frame queue overflow", incomingBytes);
return;
}
const carryBytes = Buffer.byteLength(conn.frameCarryover, "utf8");
if (carryBytes + incomingBytes > maxBytes) {
rejectInboundOverflow("OpenAI WebSocket inbound carryover queue overflow", carryBytes + incomingBytes);
return;
}
const parsed = parseFrames(data, conn.frameCarryover);
if (Buffer.byteLength(parsed.carryover, "utf8") > maxBytes) {
rejectInboundOverflow("OpenAI WebSocket inbound carryover queue overflow", Buffer.byteLength(parsed.carryover, "utf8"));
return;
}
conn.frameCarryover = parsed.carryover;

@@ -861,2 +1003,3 @@ for (const frame of parsed.frames)

conn.lastErrorMessage = messageFromError(error) ?? "unknown websocket error";
conn.sawConnectNonTimeout = true;
finishConnectPermit(conn, { success: false, breakerEligible: true });

@@ -875,2 +1018,4 @@ handleSocketLoss(conn);

}
if (conn.lastCloseReason !== "connection timed out")
conn.sawConnectNonTimeout = true;
finishConnectPermit(conn, { success: false, breakerEligible: true });

@@ -887,2 +1032,3 @@ handleSocketLoss(conn);

conn.lastCloseReason = `websocket handshake failed${status !== undefined ? ` with status ${status}` : ""}`;
conn.sawConnectNonTimeout = true;
finishConnectPermit(conn, { success: false, breakerEligible: true });

@@ -896,3 +1042,3 @@ handleSocketLoss(conn);

headers: conn.headers,
perMessageDeflate: true,
perMessageDeflate: false,
finishRequest(request) {

@@ -907,2 +1053,3 @@ if (attachUpgrade)

conn.lastErrorMessage = messageFromError(error) ?? "websocket constructor failed";
conn.sawConnectNonTimeout = true;
finishConnectPermit(conn, { success: false, breakerEligible: true });

@@ -983,2 +1130,13 @@ queueMicrotask(() => handleSocketLoss(conn));

}
if (conn.staleAuth || !isCurrentAuth(conn)) {
getTransportCoordinator().noteAuthStale();
fail(conn, transportError({
code: "stale_auth",
phase: "pre_send",
message: "OpenAI WebSocket auth generation is stale; refusing reconnect",
fallbackEligible: true,
safeToReplay: true,
}), true);
return;
}
connect(conn);

@@ -988,4 +1146,5 @@ }, retryDelay(conn.reconnectAttempts, retryAfterMs)));

}
const allTimeouts = conn.sawConnectTimeout && !conn.sawConnectNonTimeout;
fail(conn, transportError({
code: "connect_failure",
code: allTimeouts ? "handshake_timeout" : "connect_failure",
phase: "handshake",

@@ -1008,3 +1167,3 @@ message: formatFailureMessage(conn, "retry limit reached before response.create was sent"),

const origin = canonicalWebSocketOrigin(wsUrl);
const accountFp = accountFingerprint(headers);
const accountFp = accountFingerprint(headers, wsUrl);
const now = Date.now();

@@ -1023,3 +1182,3 @@ const conn = {

origin,
authGeneration: bindAuthGeneration(endpoint, hash),
authGeneration: bindAuthGeneration(endpoint, accountFp, hash),
busy: false,

@@ -1048,2 +1207,5 @@ warm,

breakerDomain: breakerDomainKey(provider, origin, accountFp),
contextEpoch: currentContextEpoch(key),
sawConnectTimeout: false,
sawConnectNonTimeout: false,
};

@@ -1079,16 +1241,21 @@ connectionPool.push(conn);

const endpoint = endpointKey(wsUrl);
const accountFp = accountFingerprint(headers, wsUrl);
const hash = authScopeHash(headers);
const state = authEndpoints.get(endpoint);
const authKey = authGenerationKey(endpoint, accountFp);
const state = authEndpoints.get(authKey);
// ABA: presenting an old remembered binding must not become current or stale newer sockets.
if (state && hash !== state.currentHash && state.bindings.has(hash))
return;
const generation = bindAuthGeneration(endpoint, hash);
const keepHash = authEndpoints.get(endpoint)?.currentHash ?? hash;
const keepGen = authEndpoints.get(endpoint)?.currentGeneration ?? generation;
const generation = bindAuthGeneration(endpoint, accountFp, hash);
const keepHash = authEndpoints.get(authKey)?.currentHash ?? hash;
const keepGen = authEndpoints.get(authKey)?.currentGeneration ?? generation;
for (const conn of [...connectionPool]) {
if (conn.wsUrl !== wsUrl)
continue;
if (conn.accountFp !== accountFp)
continue;
if (conn.scopeHash === keepHash && conn.authGeneration === keepGen)
continue;
conn.staleAuth = true;
clearContextAccounting(conn.contextKey);
if (conn.busy)

@@ -1149,4 +1316,5 @@ continue;

const hash = authScopeHash(headers);
const generation = bindAuthGeneration(endpoint, hash);
if (generation !== currentAuthGeneration(endpoint)) {
const accountFp = accountFingerprint(headers, wsUrl);
const generation = bindAuthGeneration(endpoint, accountFp, hash);
if (generation !== currentAuthGeneration(endpoint, accountFp)) {
coordinator.noteAuthStale();

@@ -1163,6 +1331,9 @@ admitMiss("stale_auth", "OpenAI WebSocket auth generation is stale");

reusable.turnCount += 1;
// Always take the bounded map as source of truth, including absences after clear/eviction.
reusable.lastResponseID = lastResponseIDByContext.get(key);
reusable.turnState = turnStateByContext.get(key);
admitContextTurn(reusable);
coordinator.noteLeaseAdmission();
return reusable;
}
const accountFp = accountFingerprint(headers);
const provider = providerForUrl(wsUrl);

@@ -1188,2 +1359,3 @@ const origin = canonicalWebSocketOrigin(wsUrl);

conn.turnCount += 1;
admitContextTurn(conn);
coordinator.noteLeaseAdmission();

@@ -1195,7 +1367,7 @@ return conn;

}
export function ensureWarmConnection(wsUrl, headers) {
export function ensureWarmConnection(wsUrl, headers, context = {}) {
const coordinator = getTransportCoordinator();
coordinator.notePrewarmAttempt();
invalidateStaleAuthConnections(wsUrl, headers);
const key = contextScopeKey(wsUrl, headers, {});
const key = contextScopeKey(wsUrl, headers, context);
const now = Date.now();

@@ -1214,3 +1386,3 @@ cleanupExpiredIdle(now);

}
const accountFp = accountFingerprint(headers);
const accountFp = accountFingerprint(headers, wsUrl);
const provider = providerForUrl(wsUrl);

@@ -1235,4 +1407,63 @@ const origin = canonicalWebSocketOrigin(wsUrl);

}
return create(wsUrl, headers, {}, true, started.permit);
return create(wsUrl, headers, context, true, started.permit);
}
export function clearTransportContextState(wsUrl, headers, context) {
const key = contextScopeKey(wsUrl, headers, context);
clearContextAccounting(key);
for (const conn of connectionPool) {
if (conn.contextKey !== key)
continue;
conn.lastResponseID = undefined;
conn.turnState = undefined;
}
}
export function clearSessionTransportState(sessionID) {
const keys = new Set();
for (const key of turnStateByContext.keys()) {
if (contextKeyMatchesSession(key, sessionID))
keys.add(key);
}
for (const key of lastResponseIDByContext.keys()) {
if (contextKeyMatchesSession(key, sessionID))
keys.add(key);
}
for (const key of contextEpochByKey.keys()) {
if (contextKeyMatchesSession(key, sessionID))
keys.add(key);
}
for (const key of contextOwnerByKey.keys()) {
if (contextKeyMatchesSession(key, sessionID))
keys.add(key);
}
for (const key of scopeCooldowns.keys()) {
if (contextKeyMatchesSession(key, sessionID))
scopeCooldowns.delete(key);
}
for (const key of keys)
clearContextAccounting(key);
for (const conn of connectionPool) {
if (!contextKeyMatchesSession(conn.contextKey, sessionID))
continue;
conn.lastResponseID = undefined;
conn.turnState = undefined;
}
}
export function clearAllTransportState() {
const keys = new Set([
...turnStateByContext.keys(),
...lastResponseIDByContext.keys(),
...contextEpochByKey.keys(),
...contextOwnerByKey.keys(),
]);
for (const key of keys)
clearContextAccounting(key);
turnStateByContext.clear();
lastResponseIDByContext.clear();
contextOwnerByKey.clear();
// Keep bumped epochs so in-flight completions cannot republish under a recycled 0 epoch.
for (const conn of connectionPool) {
conn.lastResponseID = undefined;
conn.turnState = undefined;
}
}
export function closeConnections(predicate = () => true, message = "Session disposed") {

@@ -1282,3 +1513,6 @@ for (const conn of [...connectionPool]) {

export function getTransportSnapshotForTesting() {
return getTransportCoordinator().snapshot();
return {
...getTransportCoordinator().snapshot(),
contextEntries: contextEntryCount(),
};
}

@@ -1299,4 +1533,7 @@ export function resetPoolForTesting() {

lastResponseIDByContext.clear();
contextEpochByKey.clear();
contextOwnerByKey.clear();
scopeCooldowns.clear();
authEndpoints.clear();
contextEpochClock = 1;
nextStreamID = 1;

@@ -1303,0 +1540,0 @@ resetTransportCoordinatorForTesting();

@@ -1,1 +0,1 @@

{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"}
{
"name": "openai-ws-opencode",
"version": "0.1.28",
"version": "0.1.29",
"description": "OpenCode plugin for OpenAI Responses WebSocket transport.",

@@ -5,0 +5,0 @@ "type": "module",

@@ -124,3 +124,3 @@ # openai-ws-opencode

bun run typecheck
bun test
bun run test
bun run build

@@ -127,0 +127,0 @@ npm pack --dry-run