@kortix/sdk 0.13.5 → 0.13.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -6
- package/dist/browser/session-sync/server-transcript-mirror.d.ts +82 -0
- package/dist/browser/session-sync/server-transcript-mirror.d.ts.map +1 -0
- package/dist/browser/session-sync/server-transcript-mirror.js +143 -0
- package/dist/browser/session-sync/server-transcript-mirror.js.map +1 -0
- package/dist/browser/session-sync/session-sync-registry.d.ts +11 -21
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +48 -3
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts +13 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.js +5 -2
- package/dist/browser/stores/sandbox-connection-store.js.map +1 -1
- package/dist/browser/stores/session-working-store.d.ts +10 -5
- package/dist/browser/stores/session-working-store.d.ts.map +1 -1
- package/dist/browser/stores/session-working-store.js +32 -8
- package/dist/browser/stores/session-working-store.js.map +1 -1
- package/dist/browser/stores/sync-store.d.ts +29 -1
- package/dist/browser/stores/sync-store.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.js +516 -393
- package/dist/browser/stores/sync-store.js.map +1 -1
- package/dist/core/auth/app-viewer.d.ts +57 -0
- package/dist/core/auth/app-viewer.d.ts.map +1 -0
- package/dist/core/auth/app-viewer.js +82 -0
- package/dist/core/auth/app-viewer.js.map +1 -0
- package/dist/core/auth/session.d.ts +45 -0
- package/dist/core/auth/session.d.ts.map +1 -0
- package/dist/core/auth/session.js +113 -0
- package/dist/core/auth/session.js.map +1 -0
- package/dist/core/client/kortix.d.ts +37 -18
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +47 -0
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/http/config.d.ts +4 -2
- package/dist/core/http/config.d.ts.map +1 -1
- package/dist/core/http/config.js.map +1 -1
- package/dist/core/http/opencode-errors.d.ts +17 -0
- package/dist/core/http/opencode-errors.d.ts.map +1 -1
- package/dist/core/http/opencode-errors.js +25 -0
- package/dist/core/http/opencode-errors.js.map +1 -1
- package/dist/core/rest/platform-client/auth.d.ts +120 -0
- package/dist/core/rest/platform-client/auth.d.ts.map +1 -0
- package/dist/core/rest/platform-client/auth.js +98 -0
- package/dist/core/rest/platform-client/auth.js.map +1 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts +5 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts.map +1 -1
- package/dist/core/rest/platform-client/host-boundary.js.map +1 -1
- package/dist/core/rest/projects-client/accounts.d.ts +57 -0
- package/dist/core/rest/projects-client/accounts.d.ts.map +1 -1
- package/dist/core/rest/projects-client/accounts.js +31 -0
- package/dist/core/rest/projects-client/accounts.js.map +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +9 -0
- package/dist/core/rest/projects-client/apps.d.ts.map +1 -1
- package/dist/core/rest/projects-client/apps.js.map +1 -1
- package/dist/core/rest/projects-client/billing.d.ts +2 -0
- package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
- package/dist/core/rest/projects-client/billing.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +104 -19
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js +56 -2
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/index.d.ts +1 -0
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +1 -0
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/oauth-clients.d.ts +47 -0
- package/dist/core/rest/projects-client/oauth-clients.d.ts.map +1 -0
- package/dist/core/rest/projects-client/oauth-clients.js +33 -0
- package/dist/core/rest/projects-client/oauth-clients.js.map +1 -0
- package/dist/core/rest/projects-client/projects.d.ts +23 -6
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +1 -0
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/session-sandbox.d.ts +52 -0
- package/dist/core/rest/projects-client/session-sandbox.d.ts.map +1 -1
- package/dist/core/rest/projects-client/session-sandbox.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +134 -1
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +47 -1
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/session/index.d.ts +1 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +1 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/open-bundle.d.ts +110 -0
- package/dist/core/session/open-bundle.d.ts.map +1 -0
- package/dist/core/session/open-bundle.js +183 -0
- package/dist/core/session/open-bundle.js.map +1 -0
- package/dist/core/session/poll-owner.d.ts +35 -0
- package/dist/core/session/poll-owner.d.ts.map +1 -0
- package/dist/core/session/poll-owner.js +90 -0
- package/dist/core/session/poll-owner.js.map +1 -0
- package/dist/core/session/static-file-preview.d.ts +50 -0
- package/dist/core/session/static-file-preview.d.ts.map +1 -0
- package/dist/core/session/static-file-preview.js +91 -0
- package/dist/core/session/static-file-preview.js.map +1 -0
- package/dist/core/session/wake-escalation.d.ts +188 -0
- package/dist/core/session/wake-escalation.d.ts.map +1 -0
- package/dist/core/session/wake-escalation.js +241 -0
- package/dist/core/session/wake-escalation.js.map +1 -0
- package/dist/core/session/working.d.ts +63 -2
- package/dist/core/session/working.d.ts.map +1 -1
- package/dist/core/session/working.js +66 -9
- package/dist/core/session/working.js.map +1 -1
- package/dist/core/session-sync/session-sync-controller.d.ts +34 -2
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +97 -11
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/stream/keepalive.d.ts +17 -0
- package/dist/core/stream/keepalive.d.ts.map +1 -0
- package/dist/core/stream/keepalive.js +19 -0
- package/dist/core/stream/keepalive.js.map +1 -0
- package/dist/core/turns/grouping.d.ts.map +1 -1
- package/dist/core/turns/grouping.js +13 -0
- package/dist/core/turns/grouping.js.map +1 -1
- package/dist/core/turns/types.d.ts +5 -0
- package/dist/core/turns/types.d.ts.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +25 -25
- package/dist/kortix.global.js +25 -25
- package/dist/node/app-viewer.d.ts +41 -0
- package/dist/node/app-viewer.d.ts.map +1 -0
- package/dist/node/app-viewer.js +150 -0
- package/dist/node/app-viewer.js.map +1 -0
- package/dist/node/auth.d.ts +84 -0
- package/dist/node/auth.d.ts.map +1 -0
- package/dist/node/auth.js +414 -0
- package/dist/node/auth.js.map +1 -0
- package/dist/node/server.d.ts +19 -0
- package/dist/node/server.d.ts.map +1 -1
- package/dist/node/server.js +13 -1
- package/dist/node/server.js.map +1 -1
- package/dist/react/bedrock-invokable.d.ts +58 -0
- package/dist/react/bedrock-invokable.d.ts.map +1 -0
- package/dist/react/bedrock-invokable.js +83 -0
- package/dist/react/bedrock-invokable.js.map +1 -0
- package/dist/react/index.d.ts +3 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +7 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/model-flatten.d.ts +14 -1
- package/dist/react/model-flatten.d.ts.map +1 -1
- package/dist/react/model-flatten.js +3 -4
- package/dist/react/model-flatten.js.map +1 -1
- package/dist/react/opencode.d.ts +2 -1
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +2 -1
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/provider-selection.d.ts +58 -0
- package/dist/react/provider-selection.d.ts.map +1 -1
- package/dist/react/provider-selection.js +253 -2
- package/dist/react/provider-selection.js.map +1 -1
- package/dist/react/session-start-giveup.d.ts +12 -0
- package/dist/react/session-start-giveup.d.ts.map +1 -0
- package/dist/react/session-start-giveup.js +13 -0
- package/dist/react/session-start-giveup.js.map +1 -0
- package/dist/react/session-title-sync.d.ts.map +1 -1
- package/dist/react/session-title-sync.js +15 -5
- package/dist/react/session-title-sync.js.map +1 -1
- package/dist/react/sign-in-with-kortix.d.ts +346 -0
- package/dist/react/sign-in-with-kortix.d.ts.map +1 -0
- package/dist/react/sign-in-with-kortix.js +65 -0
- package/dist/react/sign-in-with-kortix.js.map +1 -0
- package/dist/react/use-admin-accounts.d.ts +1 -1
- package/dist/react/use-admin-accounts.d.ts.map +1 -1
- package/dist/react/use-admin-accounts.js +1 -0
- package/dist/react/use-admin-accounts.js.map +1 -1
- package/dist/react/use-gateway-routing-policy.d.ts +1 -0
- package/dist/react/use-gateway-routing-policy.d.ts.map +1 -1
- package/dist/react/use-gateway-routing-policy.js +12 -1
- package/dist/react/use-gateway-routing-policy.js.map +1 -1
- package/dist/react/use-kortix-app-viewer.d.ts +13 -0
- package/dist/react/use-kortix-app-viewer.d.ts.map +1 -0
- package/dist/react/use-kortix-app-viewer.js +29 -0
- package/dist/react/use-kortix-app-viewer.js.map +1 -0
- package/dist/react/use-model-defaults.d.ts +7 -0
- package/dist/react/use-model-defaults.d.ts.map +1 -1
- package/dist/react/use-model-defaults.js +7 -1
- package/dist/react/use-model-defaults.js.map +1 -1
- package/dist/react/use-model-enablement.d.ts.map +1 -1
- package/dist/react/use-model-enablement.js +5 -1
- package/dist/react/use-model-enablement.js.map +1 -1
- package/dist/react/use-model-store.d.ts +31 -0
- package/dist/react/use-model-store.d.ts.map +1 -1
- package/dist/react/use-model-store.js +31 -2
- package/dist/react/use-model-store.js.map +1 -1
- package/dist/react/use-opencode-events/helpers.d.ts +49 -5
- package/dist/react/use-opencode-events/helpers.d.ts.map +1 -1
- package/dist/react/use-opencode-events/helpers.js +54 -6
- package/dist/react/use-opencode-events/helpers.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +22 -3
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.d.ts.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.js +14 -2
- package/dist/react/use-opencode-events/use-event-stream-refs.js.map +1 -1
- package/dist/react/use-opencode-local.d.ts.map +1 -1
- package/dist/react/use-opencode-local.js +27 -8
- package/dist/react/use-opencode-local.js.map +1 -1
- package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/providers.js +44 -3
- package/dist/react/use-opencode-sessions/providers.js.map +1 -1
- package/dist/react/use-poll-owner.d.ts +14 -0
- package/dist/react/use-poll-owner.d.ts.map +1 -0
- package/dist/react/use-poll-owner.js +32 -0
- package/dist/react/use-poll-owner.js.map +1 -0
- package/dist/react/use-project-llm-gateway.d.ts +27 -0
- package/dist/react/use-project-llm-gateway.d.ts.map +1 -0
- package/dist/react/use-project-llm-gateway.js +41 -0
- package/dist/react/use-project-llm-gateway.js.map +1 -0
- package/dist/react/use-project-models.d.ts +9 -0
- package/dist/react/use-project-models.d.ts.map +1 -1
- package/dist/react/use-project-models.js +24 -1
- package/dist/react/use-project-models.js.map +1 -1
- package/dist/react/use-runtime-reconnect.d.ts +11 -0
- package/dist/react/use-runtime-reconnect.d.ts.map +1 -1
- package/dist/react/use-runtime-reconnect.js +34 -3
- package/dist/react/use-runtime-reconnect.js.map +1 -1
- package/dist/react/use-session-prompts.d.ts +16 -1
- package/dist/react/use-session-prompts.d.ts.map +1 -1
- package/dist/react/use-session-prompts.js +76 -11
- package/dist/react/use-session-prompts.js.map +1 -1
- package/dist/react/use-session-send.d.ts.map +1 -1
- package/dist/react/use-session-send.js +14 -1
- package/dist/react/use-session-send.js.map +1 -1
- package/dist/react/use-session-start-give-up.d.ts +20 -0
- package/dist/react/use-session-start-give-up.d.ts.map +1 -0
- package/dist/react/use-session-start-give-up.js +60 -0
- package/dist/react/use-session-start-give-up.js.map +1 -0
- package/dist/react/use-session-sync.d.ts +22 -0
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +61 -5
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session-working.d.ts +38 -0
- package/dist/react/use-session-working.d.ts.map +1 -1
- package/dist/react/use-session-working.js +81 -10
- package/dist/react/use-session-working.js.map +1 -1
- package/dist/react/use-session.d.ts +13 -13
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +74 -53
- package/dist/react/use-session.js.map +1 -1
- package/dist/react/use-static-file-preview.d.ts +12 -0
- package/dist/react/use-static-file-preview.d.ts.map +1 -0
- package/dist/react/use-static-file-preview.js +119 -0
- package/dist/react/use-static-file-preview.js.map +1 -0
- package/dist/react/use-wake-escalation.d.ts +51 -0
- package/dist/react/use-wake-escalation.d.ts.map +1 -0
- package/dist/react/use-wake-escalation.js +62 -0
- package/dist/react/use-wake-escalation.js.map +1 -0
- package/package.json +6 -4
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
/**
|
|
3
|
+
* `useKortixAppViewer` — who is looking at this Kortix App.
|
|
4
|
+
*
|
|
5
|
+
* Inside a Kortix-hosted App the visitor is already signed in to Kortix, so
|
|
6
|
+
* there is nothing to log in to: this hook reads the gate's answer and hands
|
|
7
|
+
* the component the viewer. Pair with
|
|
8
|
+
* `createKortix({ getToken: kortixAppViewerToken() })` for API calls made as
|
|
9
|
+
* that viewer.
|
|
10
|
+
*/
|
|
11
|
+
import { useEffect, useState } from 'react';
|
|
12
|
+
import { fetchKortixAppViewer, } from '../core/auth/app-viewer.js';
|
|
13
|
+
export function useKortixAppViewer(options = {}) {
|
|
14
|
+
const path = options.path;
|
|
15
|
+
const [state, setState] = useState({ status: 'loading', viewer: null });
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
let cancelled = false;
|
|
18
|
+
fetchKortixAppViewer({ path }).then((viewer) => {
|
|
19
|
+
if (cancelled)
|
|
20
|
+
return;
|
|
21
|
+
setState(viewer ? { status: 'viewer', viewer } : { status: 'anonymous', viewer: null });
|
|
22
|
+
});
|
|
23
|
+
return () => {
|
|
24
|
+
cancelled = true;
|
|
25
|
+
};
|
|
26
|
+
}, [path]);
|
|
27
|
+
return state;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=use-kortix-app-viewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-kortix-app-viewer.js","sourceRoot":"","sources":["../../src/react/use-kortix-app-viewer.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;;;;;;GAQG;AACH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EACL,oBAAoB,GAGrB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,UAAU,kBAAkB,CAAC,UAAkC,EAAE;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAuB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7C,IAAI,SAAS;gBAAE,OAAO;YACtB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACX,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -4,6 +4,13 @@ export interface UseModelDefaults {
|
|
|
4
4
|
data: ModelDefaultsResponse | undefined;
|
|
5
5
|
isLoading: boolean;
|
|
6
6
|
isUpdating: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* The project's `llm_gateway` flag. False ⇒ the model-defaults chain does
|
|
9
|
+
* not exist for this project (native OpenCode mode): `data` never loads,
|
|
10
|
+
* and UIs must hide every set/clear affordance — the write routes answer
|
|
11
|
+
* 404 llm_gateway_disabled.
|
|
12
|
+
*/
|
|
13
|
+
llmGatewayEnabled: boolean;
|
|
7
14
|
accountDefault: ModelKey | undefined;
|
|
8
15
|
agentDefaults: Record<string, ModelKey>;
|
|
9
16
|
projectDefault: ModelKey | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-defaults.d.ts","sourceRoot":"","sources":["../../src/react/use-model-defaults.ts"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,qBAAqB,EAE3B,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,KAAK,QAAQ,EAKd,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"use-model-defaults.d.ts","sourceRoot":"","sources":["../../src/react/use-model-defaults.ts"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,qBAAqB,EAE3B,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,KAAK,QAAQ,EAKd,MAAM,mBAAmB,CAAC;AAI3B,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,QAAQ,GAAG,SAAS,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxC,cAAc,EAAE,QAAQ,GAAG,SAAS,CAAC;IACrC,eAAe,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,KAAK,QAAQ,GAAG,SAAS,CAAC;IAC3E,iBAAiB,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,iBAAiB,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,mBAAmB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,mBAAmB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,qBAAqB,GAAG,SAAS,EACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,QAAQ,GAAG,SAAS,CAOtB;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,gBAAgB,CAgKlB"}
|
|
@@ -6,6 +6,7 @@ import { platformConfig } from '../core/http/config.js';
|
|
|
6
6
|
import { clearModelDefault, getModelDefaults, setModelDefault, } from '../core/rest/projects-client/model-defaults.js';
|
|
7
7
|
import { modelKeyToWire, seedGlobalDefaultFromServer, setGlobalDefaultModel, wireToModelKey, } from './use-model-store.js';
|
|
8
8
|
import { qk } from './query-keys.js';
|
|
9
|
+
import { useProjectLlmGatewayEnabled } from './use-project-llm-gateway.js';
|
|
9
10
|
export function resolveModelDefault(data, agentName) {
|
|
10
11
|
const wire = (agentName ? data?.agentDefaults?.[agentName] : undefined) ??
|
|
11
12
|
data?.projectDefault ??
|
|
@@ -16,10 +17,14 @@ export function resolveModelDefault(data, agentName) {
|
|
|
16
17
|
export function useModelDefaults(projectId) {
|
|
17
18
|
const queryClient = useQueryClient();
|
|
18
19
|
const queryKey = useMemo(() => ['model-defaults', projectId], [projectId]);
|
|
20
|
+
// The model-defaults chain is a GATEWAY concept: with the project's
|
|
21
|
+
// llm_gateway flag off the route answers 404 llm_gateway_disabled and
|
|
22
|
+
// OpenCode resolves the default model in the sandbox — never fetch.
|
|
23
|
+
const gateway = useProjectLlmGatewayEnabled(projectId);
|
|
19
24
|
const { data, isLoading } = useQuery({
|
|
20
25
|
queryKey,
|
|
21
26
|
queryFn: () => getModelDefaults(projectId),
|
|
22
|
-
enabled: !!projectId,
|
|
27
|
+
enabled: !!projectId && gateway.enabled,
|
|
23
28
|
staleTime: 30_000,
|
|
24
29
|
});
|
|
25
30
|
useEffect(() => {
|
|
@@ -114,6 +119,7 @@ export function useModelDefaults(projectId) {
|
|
|
114
119
|
data,
|
|
115
120
|
isLoading,
|
|
116
121
|
isUpdating: setMutation.isPending || clearMutation.isPending,
|
|
122
|
+
llmGatewayEnabled: gateway.enabled,
|
|
117
123
|
accountDefault,
|
|
118
124
|
agentDefaults,
|
|
119
125
|
projectDefault,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-defaults.js","sourceRoot":"","sources":["../../src/react/use-model-defaults.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAEhB,eAAe,GAChB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,cAAc,EACd,2BAA2B,EAC3B,qBAAqB,EACrB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"use-model-defaults.js","sourceRoot":"","sources":["../../src/react/use-model-defaults.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAEhB,eAAe,GAChB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,cAAc,EACd,2BAA2B,EAC3B,qBAAqB,EACrB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AA2BxE,MAAM,UAAU,mBAAmB,CACjC,IAAuC,EACvC,SAA6B;IAE7B,MAAM,IAAI,GACR,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,cAAc;QACpB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,SAAoC;IAEpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAE3E,oEAAoE;IACpE,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC;QACnC,QAAQ;QACR,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAmB,CAAC;QACpD,OAAO,EAAE,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO;QACvC,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,2BAA2B,CACzB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CACtE,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAE9E,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACxC,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC;YAC3C,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,wBAAwB,EAAE,SAAS,CAAC,EAAE,CAAC;YAClF,2DAA2D;YAC3D,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC;YACpF,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,EAAE,SAAS,CAAC,EAAE,CAAC;SAC9E,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvC,MAAM,WAAW,GAAG,WAAW,CAAC;QAC9B,UAAU,EAAE,CAAC,KAIZ,EAAE,EAAE,CAAC,eAAe,CAAC,SAAmB,EAAE,KAAK,CAAC;QACjD,SAAS,EAAE,UAAU;QACrB,0EAA0E;QAC1E,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,yEAAyE;QACzE,kEAAkE;QAClE,2EAA2E;QAC3E,wEAAwE;QACxE,mEAAmE;QACnE,qEAAqE;QACrE,0EAA0E;QAC1E,iEAAiE;QACjE,OAAO,EAAE,CAAC,KAAc,EAAE,EAAE;YAC1B,MAAM,OAAO,GACX,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB;gBACjE,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,KAAK,YAAY,KAAK;oBACtB,CAAC,CAAC,KAAK,CAAC,OAAO;oBACf,CAAC,CAAC,iCAAiC,CAAC;YAC1C,IAAI,CAAC;gBACH,cAAc,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,iDAAiD;YACnD,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,WAAW,CAAC;QAChC,UAAU,EAAE,CAAC,MAGZ,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAmB,EAAE,MAAM,CAAC;QACpD,SAAS,EAAE,UAAU;KACtB,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAC9E,CAAC,IAAI,EAAE,cAAc,CAAC,CACvB,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,CAA2B,GAAG,EAAE;QAC3D,MAAM,QAAQ,GAA6B,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,IAAI,EAAE,CAAC,EAAE,CAAC;YACrE,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;IAC1B,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAC9E,CAAC,IAAI,EAAE,cAAc,CAAC,CACvB,CAAC;IACF,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAChF,CAAC,IAAI,EAAE,eAAe,CAAC,CACxB,CAAC;IACF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,SAA6B,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,EACvE,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CACnC,KAAK,EAAE,KAAe,EAAE,EAAE;QACxB,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,WAAW,CAAC,WAAW,CAAC;YAC5B,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IACF,MAAM,eAAe,GAAG,WAAW,CACjC,KAAK,EAAE,SAAiB,EAAE,KAAe,EAAE,EAAE;QAC3C,MAAM,WAAW,CAAC,WAAW,CAAC;YAC5B,KAAK,EAAE,OAAO;YACd,SAAS;YACT,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IACF,MAAM,iBAAiB,GAAG,WAAW,CACnC,KAAK,EAAE,KAAe,EAAE,EAAE;QACxB,MAAM,WAAW,CAAC,WAAW,CAAC;YAC5B,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IACF,MAAM,mBAAmB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACjD,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACpB,MAAM,iBAAiB,GAAG,WAAW,CACnC,KAAK,EAAE,SAAiB,EAAE,EAAE;QAC1B,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACjE,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;IACF,MAAM,mBAAmB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACjD,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,OAAO;QACL,IAAI;QACJ,SAAS;QACT,UAAU,EAAE,WAAW,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS;QAC5D,iBAAiB,EAAE,OAAO,CAAC,OAAO;QAClC,cAAc;QACd,aAAa;QACb,cAAc;QACd,eAAe;QACf,2EAA2E;QAC3E,wEAAwE;QACxE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;QACrC,iBAAiB;QACjB,iBAAiB;QACjB,eAAe;QACf,iBAAiB;QACjB,mBAAmB;QACnB,iBAAiB;QACjB,mBAAmB;KACpB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-enablement.d.ts","sourceRoot":"","sources":["../../src/react/use-model-enablement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-model-enablement.d.ts","sourceRoot":"","sources":["../../src/react/use-model-enablement.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,aAAa,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,+DAA+D;IAC/D,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,iEAAiE;IACjE,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CA4F3F"}
|
|
@@ -6,6 +6,7 @@ import { setProjectModelEnablement } from '../core/rest/projects-client/model-en
|
|
|
6
6
|
import { applyEnablementToProviderList } from './provider-selection.js';
|
|
7
7
|
import { contract } from './query-contracts.js';
|
|
8
8
|
import { qk } from './query-keys.js';
|
|
9
|
+
import { useProjectLlmGatewayEnabled } from './use-project-llm-gateway.js';
|
|
9
10
|
/**
|
|
10
11
|
* Server-owned per-project model enablement. Every model served by
|
|
11
12
|
* `/model-picker` already carries its own resolved `enabled` flag — read THAT
|
|
@@ -26,10 +27,13 @@ export function useModelEnablement(projectId) {
|
|
|
26
27
|
// restamp + invalidate it too, or the composer keeps offering the
|
|
27
28
|
// pre-toggle list until a hard refresh.
|
|
28
29
|
const providersKey = useMemo(() => ['project-providers', projectId, 'gateway'], [projectId]);
|
|
30
|
+
// Enablement is a gateway-catalog concept; with the project's llm_gateway
|
|
31
|
+
// flag off, /model-picker answers 404 llm_gateway_disabled — never fetch.
|
|
32
|
+
const gateway = useProjectLlmGatewayEnabled(projectId);
|
|
29
33
|
const { data } = useQuery({
|
|
30
34
|
queryKey,
|
|
31
35
|
queryFn: () => getProjectModelPicker(projectId),
|
|
32
|
-
enabled: !!projectId,
|
|
36
|
+
enabled: !!projectId && gateway.enabled,
|
|
33
37
|
...contract('config'),
|
|
34
38
|
retry: false,
|
|
35
39
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-enablement.js","sourceRoot":"","sources":["../../src/react/use-model-enablement.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAG7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"use-model-enablement.js","sourceRoot":"","sources":["../../src/react/use-model-enablement.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,37 @@ interface UserEntry extends ModelKey {
|
|
|
20
20
|
visibility: Visibility;
|
|
21
21
|
favorite?: boolean;
|
|
22
22
|
}
|
|
23
|
+
interface ModelStore {
|
|
24
|
+
user: UserEntry[];
|
|
25
|
+
recent: ModelKey[];
|
|
26
|
+
variant: Record<string, string | undefined>;
|
|
27
|
+
/** Persisted per-agent model selection so it survives refresh/new tabs */
|
|
28
|
+
selectedModel?: Record<string, ModelKey | undefined>;
|
|
29
|
+
/** Per-session agent name — keyed by sessionId so each session remembers its own agent */
|
|
30
|
+
sessionAgentName?: Record<string, string | undefined>;
|
|
31
|
+
/**
|
|
32
|
+
* Globally last-used agent name. Persisted so the dashboard (no sessionId) and
|
|
33
|
+
* freshly-created sessions inherit the agent the user most recently picked,
|
|
34
|
+
* instead of resetting to the first agent in the list on every reload.
|
|
35
|
+
*/
|
|
36
|
+
lastAgentName?: string;
|
|
37
|
+
/** Per-session model selection — keyed by sessionId so each session remembers its own model across reloads */
|
|
38
|
+
sessionModel?: Record<string, ModelKey | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* User-chosen global default model (set during onboarding setup wizard).
|
|
41
|
+
* Takes priority over agent.model but yields to per-session and per-agent selections.
|
|
42
|
+
* This ensures the user's explicit choice during setup is respected everywhere.
|
|
43
|
+
*/
|
|
44
|
+
globalDefault?: ModelKey;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Guarantee the persisted store's shape no matter what localStorage holds.
|
|
48
|
+
* Proven live (Essentia 2026-08-26): a malformed `opencode-model-store-v1`
|
|
49
|
+
* value crashed every route with "a.user is not iterable" because consumers
|
|
50
|
+
* iterate `store.user` and `loadStore` returned `JSON.parse(raw)` unvalidated.
|
|
51
|
+
* Corrupt or legacy data degrades to defaults — it never throws downstream.
|
|
52
|
+
*/
|
|
53
|
+
export declare function sanitizeModelStore(raw: unknown): ModelStore;
|
|
23
54
|
/**
|
|
24
55
|
* Non-hook API to SEED the global-default display cache from the server's
|
|
25
56
|
* account default (useModelDefaults). Always reflects the server value (it's the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-store.d.ts","sourceRoot":"","sources":["../../src/react/use-model-store.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,MAAM,MAAM,QAAQ,GAAG;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAOF,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAGtD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAIrD;AAED,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAElC,UAAU,SAAU,SAAQ,QAAQ;IAClC,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"use-model-store.d.ts","sourceRoot":"","sources":["../../src/react/use-model-store.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,MAAM,MAAM,QAAQ,GAAG;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAOF,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAGtD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAIrD;AAED,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAElC,UAAU,SAAU,SAAQ,QAAQ;IAClC,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5C,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC;IACrD,0FAA0F;IAC1F,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACtD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8GAA8G;IAC9G,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC;IACpD;;;;OAIG;IACH,aAAa,CAAC,EAAE,QAAQ,CAAC;CAC1B;AAwBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAiB3D;AAwCD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,CAU7E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,CAQvE;AA4CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,SAAS,EAAE,EACtB,IAAI,EAAE;IAAE,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/D,OAAO,CAeT;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAEzD;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAajE;AAMD,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,EAAE,EACtB,IAAI,CAAC,EAAE;IACL,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAEnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;CAC7B;uBAsBS,QAAQ,KAAG,OAAO;sBAyDlB,QAAQ,KAAG,OAAO;2BAOc,QAAQ,QAAQ,OAAO;;;wBAyB1B,QAAQ;wBAUrC,QAAQ,KAAG,MAAM,GAAG,SAAS;wBAMA,QAAQ,SAAS,MAAM,GAAG,SAAS;kCAQ5D,MAAM,KAAG,QAAQ,GAAG,SAAS;kCAMM,MAAM,SAAS,QAAQ,GAAG,SAAS;qCAatE,MAAM,KAAG,MAAM,GAAG,SAAS;qCAIW,MAAM,QAAQ,MAAM,GAAG,SAAS;;6BAyBxC,MAAM,GAAG,SAAS;iCAQhD,MAAM,KAAG,QAAQ,GAAG,SAAS;iCAIK,MAAM,SAAS,QAAQ,GAAG,SAAS;;8BActC,QAAQ,GAAG,SAAS;IAiC/D,iEAAiE;;EAGpE"}
|
|
@@ -19,7 +19,7 @@ import { shouldSetSessionAgentName } from './session-agent-name-guard.js';
|
|
|
19
19
|
// ── Gateway wire-model ⟷ ModelKey conversion ───────────────────────────────
|
|
20
20
|
// The LLM gateway identifies a model by its "wire model" — what opencode sends
|
|
21
21
|
// as `body.model`. Under the kortix gateway provider that is just the modelID
|
|
22
|
-
// (a bare managed id like 'glm-5.
|
|
22
|
+
// (a bare managed id like 'glm-5.3-flash', or a BYOK 'provider/model'). A direct
|
|
23
23
|
// provider model uses 'provider/model'.
|
|
24
24
|
export function modelKeyToWire(model) {
|
|
25
25
|
if (model.providerID === 'kortix' || model.providerID === 'opencode')
|
|
@@ -51,6 +51,35 @@ function capSessionMap(map) {
|
|
|
51
51
|
const kept = keys.slice(-MAX_SESSION_ENTRIES);
|
|
52
52
|
return Object.fromEntries(kept.map((k) => [k, map[k]]));
|
|
53
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Guarantee the persisted store's shape no matter what localStorage holds.
|
|
56
|
+
* Proven live (Essentia 2026-08-26): a malformed `opencode-model-store-v1`
|
|
57
|
+
* value crashed every route with "a.user is not iterable" because consumers
|
|
58
|
+
* iterate `store.user` and `loadStore` returned `JSON.parse(raw)` unvalidated.
|
|
59
|
+
* Corrupt or legacy data degrades to defaults — it never throws downstream.
|
|
60
|
+
*/
|
|
61
|
+
export function sanitizeModelStore(raw) {
|
|
62
|
+
const isObj = (v) => typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
63
|
+
if (!isObj(raw))
|
|
64
|
+
return { user: [], recent: [], variant: {} };
|
|
65
|
+
const objArray = (v) => Array.isArray(v) ? v.filter((e) => isObj(e)) : [];
|
|
66
|
+
const out = {
|
|
67
|
+
user: objArray(raw.user),
|
|
68
|
+
recent: objArray(raw.recent),
|
|
69
|
+
variant: isObj(raw.variant) ? raw.variant : {},
|
|
70
|
+
};
|
|
71
|
+
if (isObj(raw.selectedModel))
|
|
72
|
+
out.selectedModel = raw.selectedModel;
|
|
73
|
+
if (isObj(raw.sessionAgentName))
|
|
74
|
+
out.sessionAgentName = raw.sessionAgentName;
|
|
75
|
+
if (typeof raw.lastAgentName === 'string')
|
|
76
|
+
out.lastAgentName = raw.lastAgentName;
|
|
77
|
+
if (isObj(raw.sessionModel))
|
|
78
|
+
out.sessionModel = raw.sessionModel;
|
|
79
|
+
if (isObj(raw.globalDefault))
|
|
80
|
+
out.globalDefault = raw.globalDefault;
|
|
81
|
+
return out;
|
|
82
|
+
}
|
|
54
83
|
function loadStore() {
|
|
55
84
|
if (typeof window === 'undefined') {
|
|
56
85
|
return { user: [], recent: [], variant: {} };
|
|
@@ -58,7 +87,7 @@ function loadStore() {
|
|
|
58
87
|
try {
|
|
59
88
|
const raw = localStorage.getItem(STORE_KEY);
|
|
60
89
|
if (raw)
|
|
61
|
-
return JSON.parse(raw);
|
|
90
|
+
return sanitizeModelStore(JSON.parse(raw));
|
|
62
91
|
}
|
|
63
92
|
catch {
|
|
64
93
|
// ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-model-store.js","sourceRoot":"","sources":["../../src/react/use-model-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-model-store.js","sourceRoot":"","sources":["../../src/react/use-model-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,43 @@
|
|
|
1
1
|
import { type QueryClient } from '@tanstack/react-query';
|
|
2
2
|
import { type Session } from '../use-opencode-sessions/index.js';
|
|
3
3
|
import type { OpenCodeEvent } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* How long a WIRE status frame owns its slot against the reconnect status
|
|
6
|
+
* fill. Equal to the projection's own stream bound on purpose: past it,
|
|
7
|
+
* `projectWorking` no longer lets the frame answer for the present, so
|
|
8
|
+
* letting it keep blocking the one REST read that could correct it protected
|
|
9
|
+
* nothing but the staleness itself.
|
|
10
|
+
*/
|
|
11
|
+
export declare const WIRE_STATUS_FILL_FRESHNESS_MS = 45000;
|
|
12
|
+
/**
|
|
13
|
+
* Whether `hydrateCore`'s `client.session.status()` snapshot must leave a
|
|
14
|
+
* session's status slot alone.
|
|
15
|
+
*
|
|
16
|
+
* Two failures pull in opposite directions, and this rule serves both:
|
|
17
|
+
*
|
|
18
|
+
* - The fill is a reading stamped at ISSUE time. Written unconditionally, a
|
|
19
|
+
* `busy` that was true on the way out overwrote an idle frame that landed
|
|
20
|
+
* while it was in flight (the original bug: Stop came back on a finished
|
|
21
|
+
* turn). So a slot a LIVE stream owns is off limits.
|
|
22
|
+
* - The reconnect that runs this fill happens BECAUSE a stream died — and a
|
|
23
|
+
* dead stream's last frame is exactly what the fill exists to correct. A
|
|
24
|
+
* turn inside one long tool call moves no transcript, so the
|
|
25
|
+
* hydrate-movement evidence is silent, and an unconditionally-protected
|
|
26
|
+
* stale wire idle kept vetoing the open `/turn` row for the whole run
|
|
27
|
+
* (prod, 2026-08-26). So a wire frame's ownership expires with its
|
|
28
|
+
* freshness (`WIRE_STATUS_FILL_FRESHNESS_MS`, from the store's
|
|
29
|
+
* `sessionStatusAt` stamp).
|
|
30
|
+
*
|
|
31
|
+
* A `local` slot never blocks (a fabrication must stay correctable), and a
|
|
32
|
+
* wire slot with no stamp is treated as fresh — conservative, and only
|
|
33
|
+
* reachable for a slot written before the stamp slice existed.
|
|
34
|
+
*/
|
|
35
|
+
export declare function shouldSkipStatusFill(input: {
|
|
36
|
+
hasSlot: boolean;
|
|
37
|
+
origin: 'wire' | 'local' | undefined;
|
|
38
|
+
stampedAtMs: number | undefined;
|
|
39
|
+
nowMs: number;
|
|
40
|
+
}): boolean;
|
|
4
41
|
/**
|
|
5
42
|
* session.created/updated/deleted carry the Session object either nested under
|
|
6
43
|
* `properties.info` (the SDK type) or FLAT as `properties` itself — the opencode
|
|
@@ -59,11 +96,18 @@ export declare function scheduleProjectMetadataRefetch(queryClient: QueryClient)
|
|
|
59
96
|
* project's session queries are ever the ones this event is actually about,
|
|
60
97
|
* and firing a broader refetch would refresh unrelated data (a different
|
|
61
98
|
* project's secrets/gateway state) on every title/tree change for no reason.
|
|
62
|
-
* `qk.project.sessionsScope(projectId)` — the current route's
|
|
63
|
-
* the correct reach: the list
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
99
|
+
* `[...qk.project.sessionsScope(projectId), 'list']` — the current route's
|
|
100
|
+
* project, LIST family only — is the correct reach: the list in every scope,
|
|
101
|
+
* nothing outside the sessions family, and nothing for a project this event was
|
|
102
|
+
* never about. Outside a project route (`projectId` null) there is nothing to
|
|
103
|
+
* mirror, so this is a no-op.
|
|
104
|
+
*
|
|
105
|
+
* NOT the whole `sessionsScope` prefix, which this used to be: that prefix also
|
|
106
|
+
* covers `sessionTurn`, `sessionPrompts` and `messages` (see `query-keys.ts`),
|
|
107
|
+
* so every `session.created` and every title-changing `session.updated`
|
|
108
|
+
* re-issued `GET .../turn` and `GET .../prompts` as a side effect of mirroring
|
|
109
|
+
* a TITLE. Those two have their own cadences and their own reasons to refetch;
|
|
110
|
+
* a title event is not one of them.
|
|
67
111
|
*/
|
|
68
112
|
export declare function refetchKortixSessionMirrors(queryClient: QueryClient, projectId: string | null): void;
|
|
69
113
|
export declare function realRuntimeTitle(value: unknown): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,QAA4B,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAKV;AASD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAalF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,GAAG,SAAS,CAMzE;AAED;;yCAEyC;AACzC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQlE;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAqB7E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,IAAI,CAMN;AAOD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAI9D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,IAAI,CAsBN"}
|
|
@@ -1,5 +1,46 @@
|
|
|
1
|
+
import { STREAM_OBSERVATION_MAX_MS } from '../../core/session/working.js';
|
|
1
2
|
import { opencodeKeys } from '../use-opencode-sessions/index.js';
|
|
2
3
|
import { qk } from '../query-keys.js';
|
|
4
|
+
/**
|
|
5
|
+
* How long a WIRE status frame owns its slot against the reconnect status
|
|
6
|
+
* fill. Equal to the projection's own stream bound on purpose: past it,
|
|
7
|
+
* `projectWorking` no longer lets the frame answer for the present, so
|
|
8
|
+
* letting it keep blocking the one REST read that could correct it protected
|
|
9
|
+
* nothing but the staleness itself.
|
|
10
|
+
*/
|
|
11
|
+
export const WIRE_STATUS_FILL_FRESHNESS_MS = STREAM_OBSERVATION_MAX_MS;
|
|
12
|
+
/**
|
|
13
|
+
* Whether `hydrateCore`'s `client.session.status()` snapshot must leave a
|
|
14
|
+
* session's status slot alone.
|
|
15
|
+
*
|
|
16
|
+
* Two failures pull in opposite directions, and this rule serves both:
|
|
17
|
+
*
|
|
18
|
+
* - The fill is a reading stamped at ISSUE time. Written unconditionally, a
|
|
19
|
+
* `busy` that was true on the way out overwrote an idle frame that landed
|
|
20
|
+
* while it was in flight (the original bug: Stop came back on a finished
|
|
21
|
+
* turn). So a slot a LIVE stream owns is off limits.
|
|
22
|
+
* - The reconnect that runs this fill happens BECAUSE a stream died — and a
|
|
23
|
+
* dead stream's last frame is exactly what the fill exists to correct. A
|
|
24
|
+
* turn inside one long tool call moves no transcript, so the
|
|
25
|
+
* hydrate-movement evidence is silent, and an unconditionally-protected
|
|
26
|
+
* stale wire idle kept vetoing the open `/turn` row for the whole run
|
|
27
|
+
* (prod, 2026-08-26). So a wire frame's ownership expires with its
|
|
28
|
+
* freshness (`WIRE_STATUS_FILL_FRESHNESS_MS`, from the store's
|
|
29
|
+
* `sessionStatusAt` stamp).
|
|
30
|
+
*
|
|
31
|
+
* A `local` slot never blocks (a fabrication must stay correctable), and a
|
|
32
|
+
* wire slot with no stamp is treated as fresh — conservative, and only
|
|
33
|
+
* reachable for a slot written before the stamp slice existed.
|
|
34
|
+
*/
|
|
35
|
+
export function shouldSkipStatusFill(input) {
|
|
36
|
+
if (!input.hasSlot)
|
|
37
|
+
return false;
|
|
38
|
+
if (input.origin === 'local')
|
|
39
|
+
return false;
|
|
40
|
+
if (input.stampedAtMs === undefined)
|
|
41
|
+
return true;
|
|
42
|
+
return input.nowMs - input.stampedAtMs <= WIRE_STATUS_FILL_FRESHNESS_MS;
|
|
43
|
+
}
|
|
3
44
|
const MESSAGE_REHYDRATE_COOLDOWN_MS = 30_000;
|
|
4
45
|
const PROJECT_METADATA_REFETCH_COOLDOWN_MS = 5_000;
|
|
5
46
|
const messageRehydrateInFlight = new Set();
|
|
@@ -103,17 +144,24 @@ export function scheduleProjectMetadataRefetch(queryClient) {
|
|
|
103
144
|
* project's session queries are ever the ones this event is actually about,
|
|
104
145
|
* and firing a broader refetch would refresh unrelated data (a different
|
|
105
146
|
* project's secrets/gateway state) on every title/tree change for no reason.
|
|
106
|
-
* `qk.project.sessionsScope(projectId)` — the current route's
|
|
107
|
-
* the correct reach: the list
|
|
108
|
-
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
147
|
+
* `[...qk.project.sessionsScope(projectId), 'list']` — the current route's
|
|
148
|
+
* project, LIST family only — is the correct reach: the list in every scope,
|
|
149
|
+
* nothing outside the sessions family, and nothing for a project this event was
|
|
150
|
+
* never about. Outside a project route (`projectId` null) there is nothing to
|
|
151
|
+
* mirror, so this is a no-op.
|
|
152
|
+
*
|
|
153
|
+
* NOT the whole `sessionsScope` prefix, which this used to be: that prefix also
|
|
154
|
+
* covers `sessionTurn`, `sessionPrompts` and `messages` (see `query-keys.ts`),
|
|
155
|
+
* so every `session.created` and every title-changing `session.updated`
|
|
156
|
+
* re-issued `GET .../turn` and `GET .../prompts` as a side effect of mirroring
|
|
157
|
+
* a TITLE. Those two have their own cadences and their own reasons to refetch;
|
|
158
|
+
* a title event is not one of them.
|
|
111
159
|
*/
|
|
112
160
|
export function refetchKortixSessionMirrors(queryClient, projectId) {
|
|
113
161
|
if (!projectId)
|
|
114
162
|
return;
|
|
115
163
|
void queryClient.refetchQueries({
|
|
116
|
-
queryKey: qk.project.sessionsScope(projectId),
|
|
164
|
+
queryKey: [...qk.project.sessionsScope(projectId), 'list'],
|
|
117
165
|
type: 'active',
|
|
118
166
|
});
|
|
119
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/helpers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"AAqCA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,QAqUzE;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,SAG1C"}
|
|
@@ -16,7 +16,7 @@ import { opencodeKeys } from '../use-opencode-sessions/index.js';
|
|
|
16
16
|
import { useKortixRouteProjectId } from '../route-project.js';
|
|
17
17
|
import { resetPrefetchState } from '../use-session-prefetch.js';
|
|
18
18
|
import { createEventHandler } from './handle-event.js';
|
|
19
|
-
import { releaseMessageRehydrate, reserveMessageRehydrate, resolveClientEvictionUrl, } from './helpers.js';
|
|
19
|
+
import { releaseMessageRehydrate, reserveMessageRehydrate, resolveClientEvictionUrl, shouldSkipStatusFill, } from './helpers.js';
|
|
20
20
|
import { sessionsNeedingRehydrate } from './rehydrate-targets.js';
|
|
21
21
|
import { createStreamRevival } from './stream-revival.js';
|
|
22
22
|
import { useEventStreamRefs } from './use-event-stream-refs.js';
|
|
@@ -216,13 +216,32 @@ export function useOpenCodeEventStream(options = {}) {
|
|
|
216
216
|
// value; the correction for a session that went idle unseen is
|
|
217
217
|
// `reconcileMissingBusySessions` below, which reads ABSENCE from the
|
|
218
218
|
// complete list rather than a per-session reading.
|
|
219
|
-
|
|
219
|
+
//
|
|
220
|
+
// Only a FRESH wire frame owns the slot (`shouldSkipStatusFill`).
|
|
221
|
+
// A `'local'` value is the tab's own fabrication (the missing-busy
|
|
222
|
+
// sweep, a synthetic abort) and never blocks — letting it block
|
|
223
|
+
// made a fabrication self-sustaining. A STALE wire frame no longer
|
|
224
|
+
// blocks either: this fill runs on reconnect, a reconnect happens
|
|
225
|
+
// because a stream died, and a dead stream's last frame — a wire
|
|
226
|
+
// idle vetoing the open `/turn` row while a long tool call moves
|
|
227
|
+
// no transcript — is exactly what this read exists to correct
|
|
228
|
+
// (prod, 2026-08-26).
|
|
229
|
+
const slotState = useSyncStore.getState();
|
|
230
|
+
if (shouldSkipStatusFill({
|
|
231
|
+
hasSlot: !!slotState.sessionStatus[sessionID],
|
|
232
|
+
origin: slotState.sessionStatusOrigin[sessionID],
|
|
233
|
+
stampedAtMs: slotState.sessionStatusAt[sessionID],
|
|
234
|
+
nowMs: Date.now(),
|
|
235
|
+
}))
|
|
220
236
|
continue;
|
|
221
237
|
// Locally-synthesized event (this is a REST poll, not an SSE
|
|
222
238
|
// frame) — omits the `id` field every real `Event` union member
|
|
223
|
-
// carries, hence the assertion.
|
|
239
|
+
// carries, hence the assertion. `synthetic: true` marks its write
|
|
240
|
+
// `'local'`: a snapshot is a reading ABOUT the runtime taken at
|
|
241
|
+
// issue time, not the runtime speaking on the wire.
|
|
224
242
|
applySyncEvent({
|
|
225
243
|
type: 'session.status',
|
|
244
|
+
synthetic: true,
|
|
226
245
|
properties: { sessionID, status },
|
|
227
246
|
});
|
|
228
247
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAGb,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"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"}
|