@kortix/sdk 0.12.8 → 0.13.0
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 +3 -6
- package/dist/browser/session-sync/session-sync-registry.d.ts +7 -2
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +33 -44
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/stores/opencode-compaction-store.d.ts +9 -3
- package/dist/browser/stores/opencode-compaction-store.d.ts.map +1 -1
- package/dist/browser/stores/opencode-compaction-store.js +5 -12
- package/dist/browser/stores/opencode-compaction-store.js.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts +28 -17
- package/dist/browser/stores/sandbox-connection-store.d.ts.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.js +32 -84
- package/dist/browser/stores/sandbox-connection-store.js.map +1 -1
- package/dist/browser/stores/session-working-store.d.ts +73 -0
- package/dist/browser/stores/session-working-store.d.ts.map +1 -0
- package/dist/browser/stores/session-working-store.js +86 -0
- package/dist/browser/stores/session-working-store.js.map +1 -0
- package/dist/browser/stores/sync-store/types.d.ts +14 -4
- package/dist/browser/stores/sync-store/types.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.d.ts +140 -3
- package/dist/browser/stores/sync-store.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.js +425 -36
- package/dist/browser/stores/sync-store.js.map +1 -1
- package/dist/core/client/kortix.d.ts +102 -1
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +78 -0
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/files/client.d.ts +50 -2
- package/dist/core/files/client.d.ts.map +1 -1
- package/dist/core/files/client.js +253 -44
- package/dist/core/files/client.js.map +1 -1
- package/dist/core/files/types.d.ts +11 -0
- package/dist/core/files/types.d.ts.map +1 -1
- package/dist/core/http/abort-error.d.ts +89 -0
- package/dist/core/http/abort-error.d.ts.map +1 -0
- package/dist/core/http/abort-error.js +190 -0
- package/dist/core/http/abort-error.js.map +1 -0
- package/dist/core/http/api-client.d.ts.map +1 -1
- package/dist/core/http/api-client.js +18 -4
- package/dist/core/http/api-client.js.map +1 -1
- package/dist/core/rest/platform-client/github-app.d.ts +13 -0
- package/dist/core/rest/platform-client/github-app.d.ts.map +1 -1
- package/dist/core/rest/platform-client/github-app.js +2 -0
- package/dist/core/rest/platform-client/github-app.js.map +1 -1
- package/dist/core/rest/platform-client/members.d.ts +10 -64
- package/dist/core/rest/platform-client/members.d.ts.map +1 -1
- package/dist/core/rest/platform-client/members.js +10 -28
- package/dist/core/rest/platform-client/members.js.map +1 -1
- package/dist/core/rest/projects-client/accounts.d.ts +30 -1
- package/dist/core/rest/projects-client/accounts.d.ts.map +1 -1
- package/dist/core/rest/projects-client/accounts.js +1 -1
- package/dist/core/rest/projects-client/accounts.js.map +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +13 -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/assignments.d.ts +114 -0
- package/dist/core/rest/projects-client/assignments.d.ts.map +1 -0
- package/dist/core/rest/projects-client/assignments.js +91 -0
- package/dist/core/rest/projects-client/assignments.js.map +1 -0
- package/dist/core/rest/projects-client/billing.d.ts +10 -1
- package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
- package/dist/core/rest/projects-client/billing.js +11 -2
- package/dist/core/rest/projects-client/billing.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +2 -0
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/files.js +2 -2
- package/dist/core/rest/projects-client/files.js.map +1 -1
- package/dist/core/rest/projects-client/gateway.d.ts +51 -0
- package/dist/core/rest/projects-client/gateway.d.ts.map +1 -1
- package/dist/core/rest/projects-client/gateway.js.map +1 -1
- package/dist/core/rest/projects-client/iam.d.ts +51 -3
- package/dist/core/rest/projects-client/iam.d.ts.map +1 -1
- package/dist/core/rest/projects-client/iam.js +18 -1
- package/dist/core/rest/projects-client/iam.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/projects.d.ts +1 -1
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +3 -0
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/secrets.d.ts +11 -0
- package/dist/core/rest/projects-client/secrets.d.ts.map +1 -1
- package/dist/core/rest/projects-client/secrets.js +1 -1
- package/dist/core/rest/projects-client/secrets.js.map +1 -1
- package/dist/core/rest/projects-client/session-costs.d.ts +33 -0
- package/dist/core/rest/projects-client/session-costs.d.ts.map +1 -1
- package/dist/core/rest/projects-client/session-costs.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +226 -2
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +101 -4
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/rest/projects-client/shared.d.ts +10 -1
- package/dist/core/rest/projects-client/shared.d.ts.map +1 -1
- package/dist/core/rest/projects-client/shared.js.map +1 -1
- package/dist/core/rest/projects-client/tokens.d.ts +13 -1
- package/dist/core/rest/projects-client/tokens.d.ts.map +1 -1
- package/dist/core/rest/projects-client/tokens.js +7 -2
- package/dist/core/rest/projects-client/tokens.js.map +1 -1
- package/dist/core/rest/projects-client/triggers.d.ts +69 -2
- package/dist/core/rest/projects-client/triggers.d.ts.map +1 -1
- package/dist/core/rest/projects-client/triggers.js +1 -1
- package/dist/core/rest/projects-client/triggers.js.map +1 -1
- package/dist/core/session/compaction.d.ts +98 -0
- package/dist/core/session/compaction.d.ts.map +1 -0
- package/dist/core/session/compaction.js +108 -0
- package/dist/core/session/compaction.js.map +1 -0
- package/dist/core/session/health.d.ts +22 -0
- package/dist/core/session/health.d.ts.map +1 -1
- package/dist/core/session/health.js +31 -5
- package/dist/core/session/health.js.map +1 -1
- package/dist/core/session/index.d.ts +2 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +2 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/message-queue.d.ts +79 -15
- package/dist/core/session/message-queue.d.ts.map +1 -1
- package/dist/core/session/message-queue.js +73 -27
- package/dist/core/session/message-queue.js.map +1 -1
- package/dist/core/session/rewind.d.ts +76 -10
- package/dist/core/session/rewind.d.ts.map +1 -1
- package/dist/core/session/rewind.js +68 -11
- package/dist/core/session/rewind.js.map +1 -1
- package/dist/core/session/working.d.ts +241 -0
- package/dist/core/session/working.d.ts.map +1 -0
- package/dist/core/session/working.js +261 -0
- package/dist/core/session/working.js.map +1 -0
- package/dist/core/session-sync/session-sync-controller.d.ts +35 -20
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +48 -115
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/stream/event-stream.d.ts +22 -0
- package/dist/core/stream/event-stream.d.ts.map +1 -1
- package/dist/core/stream/event-stream.js +132 -36
- package/dist/core/stream/event-stream.js.map +1 -1
- package/dist/core/turns/grouping.d.ts +32 -2
- package/dist/core/turns/grouping.d.ts.map +1 -1
- package/dist/core/turns/grouping.js +31 -2
- package/dist/core/turns/grouping.js.map +1 -1
- package/dist/core/turns/index.d.ts +1 -0
- package/dist/core/turns/index.d.ts.map +1 -1
- package/dist/core/turns/index.js +1 -0
- package/dist/core/turns/index.js.map +1 -1
- package/dist/core/turns/open-turn.d.ts +81 -0
- package/dist/core/turns/open-turn.d.ts.map +1 -0
- package/dist/core/turns/open-turn.js +77 -0
- package/dist/core/turns/open-turn.js.map +1 -0
- package/dist/core/turns/state.js +26 -26
- package/dist/core/turns/state.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 +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- 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/server.d.ts.map +1 -1
- package/dist/node/server.js +14 -2
- package/dist/node/server.js.map +1 -1
- package/dist/react/index.d.ts +2 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +7 -1
- package/dist/react/index.js.map +1 -1
- package/dist/react/initial-session-pin.d.ts +17 -0
- package/dist/react/initial-session-pin.d.ts.map +1 -1
- package/dist/react/initial-session-pin.js +58 -0
- package/dist/react/initial-session-pin.js.map +1 -1
- package/dist/react/opencode.d.ts +6 -2
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +5 -1
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/prefetch-session-start.d.ts +10 -4
- package/dist/react/prefetch-session-start.d.ts.map +1 -1
- package/dist/react/prefetch-session-start.js +10 -4
- package/dist/react/prefetch-session-start.js.map +1 -1
- package/dist/react/query-keys.d.ts +8 -2
- package/dist/react/query-keys.d.ts.map +1 -1
- package/dist/react/query-keys.js +8 -2
- package/dist/react/query-keys.js.map +1 -1
- package/dist/react/session-start-stash.d.ts +25 -0
- package/dist/react/session-start-stash.d.ts.map +1 -1
- package/dist/react/session-start-stash.js +34 -3
- package/dist/react/session-start-stash.js.map +1 -1
- package/dist/react/session-title-sync.d.ts +5 -1
- package/dist/react/session-title-sync.d.ts.map +1 -1
- package/dist/react/session-title-sync.js +16 -4
- package/dist/react/session-title-sync.js.map +1 -1
- package/dist/react/use-can.d.ts +105 -0
- package/dist/react/use-can.d.ts.map +1 -0
- package/dist/react/use-can.js +190 -0
- package/dist/react/use-can.js.map +1 -0
- package/dist/react/use-canonical-opencode-session.d.ts +6 -1
- package/dist/react/use-canonical-opencode-session.d.ts.map +1 -1
- package/dist/react/use-canonical-opencode-session.js +46 -3
- package/dist/react/use-canonical-opencode-session.js.map +1 -1
- package/dist/react/use-opencode-events/handle-event.d.ts +10 -0
- package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
- package/dist/react/use-opencode-events/handle-event.js +76 -7
- package/dist/react/use-opencode-events/handle-event.js.map +1 -1
- package/dist/react/use-opencode-events/helpers.d.ts +21 -8
- package/dist/react/use-opencode-events/helpers.d.ts.map +1 -1
- package/dist/react/use-opencode-events/helpers.js +25 -26
- 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 +43 -26
- 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 +66 -3
- package/dist/react/use-opencode-events/use-event-stream-refs.js.map +1 -1
- package/dist/react/use-opencode-local.d.ts +17 -0
- package/dist/react/use-opencode-local.d.ts.map +1 -1
- package/dist/react/use-opencode-local.js +41 -7
- package/dist/react/use-opencode-local.js.map +1 -1
- package/dist/react/use-opencode-sessions/messages.d.ts +101 -1
- package/dist/react/use-opencode-sessions/messages.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/messages.js +481 -63
- package/dist/react/use-opencode-sessions/messages.js.map +1 -1
- package/dist/react/use-project-apps.d.ts +24 -1
- package/dist/react/use-project-apps.d.ts.map +1 -1
- package/dist/react/use-project-apps.js +5 -3
- package/dist/react/use-project-apps.js.map +1 -1
- package/dist/react/use-runtime-boot-stalled.d.ts +32 -0
- package/dist/react/use-runtime-boot-stalled.d.ts.map +1 -0
- package/dist/react/use-runtime-boot-stalled.js +48 -0
- package/dist/react/use-runtime-boot-stalled.js.map +1 -0
- package/dist/react/use-runtime-reconnect.d.ts +67 -1
- package/dist/react/use-runtime-reconnect.d.ts.map +1 -1
- package/dist/react/use-runtime-reconnect.js +116 -18
- package/dist/react/use-runtime-reconnect.js.map +1 -1
- package/dist/react/use-session-prompts.d.ts +113 -0
- package/dist/react/use-session-prompts.d.ts.map +1 -0
- package/dist/react/use-session-prompts.js +242 -0
- package/dist/react/use-session-prompts.js.map +1 -0
- package/dist/react/use-session-send.d.ts +169 -20
- package/dist/react/use-session-send.d.ts.map +1 -1
- package/dist/react/use-session-send.js +178 -29
- package/dist/react/use-session-send.js.map +1 -1
- package/dist/react/use-session-sync.d.ts +35 -2
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +46 -9
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session-working.d.ts +57 -0
- package/dist/react/use-session-working.d.ts.map +1 -0
- package/dist/react/use-session-working.js +178 -0
- package/dist/react/use-session-working.js.map +1 -0
- package/dist/react/use-session.d.ts +122 -5
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +343 -69
- package/dist/react/use-session.js.map +1 -1
- package/package.json +2 -2
- package/dist/browser/stores/tab-store.d.ts +0 -91
- package/dist/browser/stores/tab-store.d.ts.map +0 -1
- package/dist/browser/stores/tab-store.js +0 -369
- package/dist/browser/stores/tab-store.js.map +0 -1
- package/dist/core/session/send-queue.d.ts +0 -70
- package/dist/core/session/send-queue.d.ts.map +0 -1
- package/dist/core/session/send-queue.js +0 -116
- package/dist/core/session/send-queue.js.map +0 -1
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one abort classifier. Every producer of an "this turn was aborted"
|
|
3
|
+
* error in this codebase — the SDK's own optimistic patch, the real opencode
|
|
4
|
+
* wire error, and a plain `AbortController`/`fetch` abort — ends up here.
|
|
5
|
+
*
|
|
6
|
+
* Before this file, FOUR divergent detectors existed across `apps/web` and
|
|
7
|
+
* this package: an identity read, a prose sniff with its own pattern lists, a
|
|
8
|
+
* duck-typed name/message check, and a loose `/abort/i` regex. They agreed
|
|
9
|
+
* often enough to hide the disagreements — e.g. `/abort/i` matches "aborted"
|
|
10
|
+
* as a substring of a transport-failure message ("upstream unreachable …
|
|
11
|
+
* The operation was aborted"), mislabeling a real failure as a user-initiated
|
|
12
|
+
* stop. `isAbortError` is the single, documented replacement.
|
|
13
|
+
*
|
|
14
|
+
* Producers (studied, not guessed):
|
|
15
|
+
* - `SyntheticAbortError` — the client-synthesized marker patched onto a
|
|
16
|
+
* message when the user hits Stop, or when a runtime disposes mid-stream.
|
|
17
|
+
* `{ name: "AbortError", data: { message: string } }`. See
|
|
18
|
+
* `react/use-session-send.ts` (`applyOptimisticAbort`) and
|
|
19
|
+
* `react/use-opencode-events/use-event-stream-refs.ts`
|
|
20
|
+
* (`markSessionAbortedLocally`).
|
|
21
|
+
* - `MessageAbortedError` — the real opencode wire shape, one member of
|
|
22
|
+
* `AssistantMessage['error']` (`@opencode-ai/sdk` `types.gen.d.ts`).
|
|
23
|
+
* `{ name: "MessageAbortedError", data: { message: string } }`.
|
|
24
|
+
* - A `DOMException`/`Error`-shaped `AbortError` from a real
|
|
25
|
+
* `AbortController`/`fetch` abort. `.name === "AbortError"`.
|
|
26
|
+
*/
|
|
27
|
+
/** Error names whose mere presence identifies an abort, no text sniff needed. */
|
|
28
|
+
const ABORT_ERROR_NAMES = new Set(['AbortError', 'MessageAbortedError']);
|
|
29
|
+
/**
|
|
30
|
+
* Phrases that mean a HUMAN stopped this, not that a connection died.
|
|
31
|
+
*
|
|
32
|
+
* Phrases, never bare words: "aborted" is a substring of transport-failure
|
|
33
|
+
* messages too ("The operation was aborted" is exactly how an aborted fetch
|
|
34
|
+
* against an unreachable upstream describes itself), so a substring alone is
|
|
35
|
+
* not evidence of intent.
|
|
36
|
+
*/
|
|
37
|
+
const ABORT_TEXT_PATTERNS = [
|
|
38
|
+
'operation was aborted',
|
|
39
|
+
'aborted by user',
|
|
40
|
+
'interrupted by user',
|
|
41
|
+
'cancelled by user',
|
|
42
|
+
'canceled by user',
|
|
43
|
+
'request was cancelled',
|
|
44
|
+
'request was canceled',
|
|
45
|
+
'aborterror',
|
|
46
|
+
];
|
|
47
|
+
/**
|
|
48
|
+
* Words that mean the TRANSPORT failed. Their presence disqualifies the text
|
|
49
|
+
* sniff outright, however abort-ish the rest of the prose reads.
|
|
50
|
+
*/
|
|
51
|
+
const TRANSPORT_FAILURE_TEXT_PATTERNS = [
|
|
52
|
+
'unreachable',
|
|
53
|
+
'upstream',
|
|
54
|
+
'econnreset',
|
|
55
|
+
'econnrefused',
|
|
56
|
+
'socket hang up',
|
|
57
|
+
'network',
|
|
58
|
+
'fetch failed',
|
|
59
|
+
'timed out',
|
|
60
|
+
'timeout',
|
|
61
|
+
'gateway',
|
|
62
|
+
'502',
|
|
63
|
+
'503',
|
|
64
|
+
'504',
|
|
65
|
+
];
|
|
66
|
+
/**
|
|
67
|
+
* LAST RESORT ONLY — a substring sniff over arbitrary error prose. Used
|
|
68
|
+
* internally by `isAbortError` when no `name` identity is available (a bare
|
|
69
|
+
* string caller) or when `name` doesn't match a known abort shape but the
|
|
70
|
+
* error's own nested text does (some producers carry an abort-ish message
|
|
71
|
+
* under an unrelated/unknown `name`).
|
|
72
|
+
*/
|
|
73
|
+
function looksLikeAbortText(text) {
|
|
74
|
+
const lower = text.toLowerCase();
|
|
75
|
+
if (TRANSPORT_FAILURE_TEXT_PATTERNS.some((p) => lower.includes(p)))
|
|
76
|
+
return false;
|
|
77
|
+
return ABORT_TEXT_PATTERNS.some((p) => lower.includes(p));
|
|
78
|
+
}
|
|
79
|
+
/** The text a structured error carries about itself — `data.message` (the
|
|
80
|
+
* shape every producer above uses) or a bare top-level `message`. */
|
|
81
|
+
function nestedErrorText(rec) {
|
|
82
|
+
const data = rec.data;
|
|
83
|
+
const dataMessage = data && typeof data === 'object' ? data.message : undefined;
|
|
84
|
+
if (typeof dataMessage === 'string')
|
|
85
|
+
return dataMessage;
|
|
86
|
+
return typeof rec.message === 'string' ? rec.message : undefined;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Was this error an abort — a user-initiated stop, or a client-synthesized
|
|
90
|
+
* stand-in for one — as opposed to a genuine failure?
|
|
91
|
+
*
|
|
92
|
+
* Identity first: a `name` matching a known abort shape (`AbortError`,
|
|
93
|
+
* `MessageAbortedError`) is always an abort, regardless of message text.
|
|
94
|
+
* Falls back to sniffing the error's own nested text only when identity
|
|
95
|
+
* doesn't resolve it — a plain string (the last-resort case: a caller that
|
|
96
|
+
* only has a formatted display message, not the original structured error),
|
|
97
|
+
* or a structured error whose `name` doesn't match but whose message reads
|
|
98
|
+
* as an abort anyway.
|
|
99
|
+
*/
|
|
100
|
+
export function isAbortError(error) {
|
|
101
|
+
if (typeof error === 'string')
|
|
102
|
+
return looksLikeAbortText(error);
|
|
103
|
+
if (!error || typeof error !== 'object')
|
|
104
|
+
return false;
|
|
105
|
+
const rec = error;
|
|
106
|
+
const name = rec.name;
|
|
107
|
+
if (typeof name === 'string' && ABORT_ERROR_NAMES.has(name))
|
|
108
|
+
return true;
|
|
109
|
+
const text = nestedErrorText(rec);
|
|
110
|
+
return typeof text === 'string' ? looksLikeAbortText(text) : false;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Every value a producer can stamp into `data.reason` on a
|
|
114
|
+
* `SyntheticAbortError` — the machine-readable WHY behind an abort, read by
|
|
115
|
+
* `abortErrorReason` below. Closed on purpose: a renderer branches on this
|
|
116
|
+
* value (`'user'` → show "Interrupted", anything else → show nothing), so a
|
|
117
|
+
* free-text reason would not fail loudly, it would just silently render
|
|
118
|
+
* wrong.
|
|
119
|
+
*/
|
|
120
|
+
export const ABORT_REASONS = [
|
|
121
|
+
/** `applyOptimisticAbort` (`react/use-session-send.ts`) — a real user Stop
|
|
122
|
+
* click, patched instantly so the "Interrupted" row appears before the
|
|
123
|
+
* SSE round-trip. */
|
|
124
|
+
'user',
|
|
125
|
+
/** `markSessionAbortedLocally` (`react/use-opencode-events/use-event-stream-refs.ts`),
|
|
126
|
+
* invoked from the `server.instance.disposed` handler in `handle-event.ts`.
|
|
127
|
+
* Pure infrastructure — OpenCode disposed and respawned mid-stream — for
|
|
128
|
+
* EVERY non-idle session in the tab, not a user action. Must render
|
|
129
|
+
* nothing: a respawn that recovers cleanly should not scar the transcript. */
|
|
130
|
+
'runtime-disposed',
|
|
131
|
+
/** NOT YET EMITTED — see `ABORT_REASONS_NOT_YET_EMITTED` below. */
|
|
132
|
+
'orphan-finalized',
|
|
133
|
+
/** NOT YET EMITTED — see `ABORT_REASONS_NOT_YET_EMITTED` below. */
|
|
134
|
+
'wake',
|
|
135
|
+
];
|
|
136
|
+
/**
|
|
137
|
+
* Members that NO code path writes today. Read this before reading a zero.
|
|
138
|
+
*
|
|
139
|
+
* `'orphan-finalized'` is reserved for the sandbox daemon's orphan-turn
|
|
140
|
+
* finalizer (`apps/kortix-sandbox-agent-server/src/main.ts`,
|
|
141
|
+
* `finalizeOrphanedTurn` / `abortOpencodeTurn`). That finalizer aborts through
|
|
142
|
+
* OpenCode's OWN `/session/{id}/abort` REST endpoint — a bare `POST` with no
|
|
143
|
+
* body — so the resulting `MessageAbortedError` is entirely opencode's wire
|
|
144
|
+
* shape. There is no hook to inject a client-chosen `data.reason` into it;
|
|
145
|
+
* doing so would mean forking opencode's abort response, which is worse than
|
|
146
|
+
* leaving it untagged. So a genuine wire abort (no synthetic patch involved)
|
|
147
|
+
* stays reason-less on purpose — see `abortErrorReason`'s doc comment.
|
|
148
|
+
*
|
|
149
|
+
* `'wake'` is reserved for a not-yet-built producer (a session woken from a
|
|
150
|
+
* park mid-turn) and is declared ahead of that work for the same reason
|
|
151
|
+
* `apps/api/src/projects/stop-reason.ts` pre-declares `idle_grace` /
|
|
152
|
+
* `boot_floor_expired`: a renderer branching on this union should see a
|
|
153
|
+
* closed set, not discover a new member via a runtime string it never typed.
|
|
154
|
+
*/
|
|
155
|
+
export const ABORT_REASONS_NOT_YET_EMITTED = [
|
|
156
|
+
'orphan-finalized',
|
|
157
|
+
'wake',
|
|
158
|
+
];
|
|
159
|
+
/**
|
|
160
|
+
* The machine-readable reason an abort happened, when the producer sent one
|
|
161
|
+
* (`data.reason`, e.g. `'runtime-disposed'`). Set by `applyOptimisticAbort`
|
|
162
|
+
* (`'user'`) and `markSessionAbortedLocally` (`'runtime-disposed'`). A real
|
|
163
|
+
* opencode wire `MessageAbortedError` — the daemon's own `/abort` call, see
|
|
164
|
+
* `ABORT_REASONS_NOT_YET_EMITTED` above — carries no `data.reason` and never
|
|
165
|
+
* will, so this returns `undefined` for it: that is a genuine, once-only
|
|
166
|
+
* cut turn, not a fabricated marker, and callers render it as "Interrupted"
|
|
167
|
+
* exactly like a `reason: 'user'` abort. Returns `undefined` when absent,
|
|
168
|
+
* never a guess.
|
|
169
|
+
*
|
|
170
|
+
* Validated against `ABORT_REASONS`, not merely typed as `string`: a
|
|
171
|
+
* renderer branches on this value (`'user'` → "Interrupted", anything else →
|
|
172
|
+
* nothing), so an unrecognized/typo'd string previously reached that branch
|
|
173
|
+
* unfiltered and silently suppressed the error UI. An unknown value now
|
|
174
|
+
* returns `undefined` — the same safe default as a reason-less real wire
|
|
175
|
+
* abort — instead of propagating an unvalidated string.
|
|
176
|
+
*/
|
|
177
|
+
export function abortErrorReason(error) {
|
|
178
|
+
if (!error || typeof error !== 'object')
|
|
179
|
+
return undefined;
|
|
180
|
+
const data = error.data;
|
|
181
|
+
if (!data || typeof data !== 'object')
|
|
182
|
+
return undefined;
|
|
183
|
+
const reason = data.reason;
|
|
184
|
+
if (typeof reason !== 'string' || !reason)
|
|
185
|
+
return undefined;
|
|
186
|
+
return ABORT_REASONS.includes(reason)
|
|
187
|
+
? reason
|
|
188
|
+
: undefined;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=abort-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abort-error.js","sourceRoot":"","sources":["../../../src/core/http/abort-error.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../src/core/http/api-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAsD,MAAM,cAAc,CAAC;AAU5F,OAAO,EACL,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAE5D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAuD9D,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAErD;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../src/core/http/api-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAsD,MAAM,cAAc,CAAC;AAU5F,OAAO,EACL,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAE5D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAuD9D,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAErD;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AA8VD,eAAO,MAAM,cAAc;YACX,CAAC,iBACJ,MAAM,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,iBACvC,YAAY,GAC1B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAuC3B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,iBAAe,UAAU,CACvB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CA8BnB;AAED,eAAO,MAAM,UAAU;UACf,CAAC,kBACK,MAAM,YACN,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,GAAG,MAAM,CAAC;WAG5D,CAAC,kBACI,MAAM,SACT,GAAG,YACA,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,CAAC;UAQpD,CAAC,kBACK,MAAM,SACT,GAAG,YACA,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,CAAC;YAQlD,CAAC,kBACG,MAAM,SACT,GAAG,YACA,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,CAAC;aAQjD,CAAC,kBACE,MAAM,YACN,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,GAAG,MAAM,CAAC;aAO1D,CAAC,kBACE,MAAM,YACN,QAAQ,YACR,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,GAAG,MAAM,CAAC;gBAcvD,CAAC,kBACD,MAAM,YACN,QAAQ,YACR,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,QAAQ,GAAG,MAAM,CAAC;;CAepE,CAAC"}
|
|
@@ -202,10 +202,19 @@ async function makeRequest(url, options = {}) {
|
|
|
202
202
|
let errorData = null;
|
|
203
203
|
try {
|
|
204
204
|
errorData = await response.json();
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
205
|
+
// ORDER MATTERS, and `reason` is LAST on purpose.
|
|
206
|
+
//
|
|
207
|
+
// A Kortix error body pairs a machine slug with the sentence written for
|
|
208
|
+
// the user, e.g. the 409 from `POST /sessions/:id/restart`:
|
|
209
|
+
// { error: "The original sandbox is unavailable. …",
|
|
210
|
+
// code: "SESSION_RUNTIME_IDENTITY_UNAVAILABLE",
|
|
211
|
+
// reason: "runtime_identity_unavailable" }
|
|
212
|
+
// `reason` used to be read first, so that customer saw the bare slug
|
|
213
|
+
// `runtime_identity_unavailable` as the card detail AND the toast.
|
|
214
|
+
// Not one `reason` value in the API is a sentence — they are all
|
|
215
|
+
// snake_case slugs — so preferring it could only ever downgrade the
|
|
216
|
+
// message. Branch on `code` (kept below); render the human field.
|
|
217
|
+
if (typeof errorData.message === 'string') {
|
|
209
218
|
errorMessage = errorData.message;
|
|
210
219
|
}
|
|
211
220
|
else if (errorData.error && typeof errorData.error === 'string') {
|
|
@@ -218,6 +227,11 @@ async function makeRequest(url, options = {}) {
|
|
|
218
227
|
else if (typeof errorData.detail?.message === 'string') {
|
|
219
228
|
errorMessage = errorData.detail.message;
|
|
220
229
|
}
|
|
230
|
+
else if (typeof errorData.reason === 'string') {
|
|
231
|
+
// Last resort: a body with no prose at all still says something more
|
|
232
|
+
// useful than `HTTP 409: Conflict`.
|
|
233
|
+
errorMessage = errorData.reason;
|
|
234
|
+
}
|
|
221
235
|
}
|
|
222
236
|
catch { }
|
|
223
237
|
const isRequestDeadline = isRequestDeadlineResponse(response.status, errorData, errorMessage);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/core/http/api-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/core/http/api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,12 @@ export interface GitHubAppStatus {
|
|
|
20
20
|
* 'pat' = a personal/fine-grained access token, via `setGitHubAppPat` or
|
|
21
21
|
* `MANAGED_GIT_GITHUB_TOKEN`. 'none' = unconfigured. */
|
|
22
22
|
source: 'db' | 'env' | 'pat' | 'none';
|
|
23
|
+
/** Whether the App's own OAuth client (client_id/client_secret) is set —
|
|
24
|
+
* required for the account-linking "Continue with GitHub" identity proof
|
|
25
|
+
* (apps/(auth)/github/setup). Independent of `configured`: the manifest
|
|
26
|
+
* flow always sets both together, but `setGitHubAppFromExisting` can leave
|
|
27
|
+
* this false if an operator pastes App creds without OAuth credentials. */
|
|
28
|
+
oauth_configured: boolean;
|
|
23
29
|
}
|
|
24
30
|
/** Whether a GitHub App is configured for this platform, and (if so) which one. */
|
|
25
31
|
export declare function getGitHubAppStatus(): Promise<GitHubAppStatus>;
|
|
@@ -50,6 +56,13 @@ export interface GitHubAppExistingInput {
|
|
|
50
56
|
/** The id of this App's installation on the target account/org. */
|
|
51
57
|
installationId: string;
|
|
52
58
|
slug?: string;
|
|
59
|
+
/** The App's own OAuth client id/secret (GitHub settings → General →
|
|
60
|
+
* "Client secrets"). Optional — without these the App-JWT/installation
|
|
61
|
+
* half still works, but the account-linking "Continue with GitHub"
|
|
62
|
+
* identity proof stays unconfigured for this App until they're supplied
|
|
63
|
+
* here or via KORTIX_GITHUB_APP_CLIENT_ID/SECRET. */
|
|
64
|
+
clientId?: string;
|
|
65
|
+
clientSecret?: string;
|
|
53
66
|
}
|
|
54
67
|
/**
|
|
55
68
|
* "Paste an existing GitHub App" — an alternative to the manifest flow for an
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-app.d.ts","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/github-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;6DAIyD;IACzD,MAAM,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"github-app.d.ts","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/github-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;6DAIyD;IACzD,MAAM,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IACtC;;;;gFAI4E;IAC5E,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,mFAAmF;AACnF,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAOnE;AAED,MAAM,WAAW,2BAA2B;IAC1C,4FAA4F;IAC5F,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,0FAA0F;IAC1F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0FAA0F;IAC1F,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,qGAAqG;IACrG,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,GAAE,2BAAgC,GACtC,OAAO,CAAC,sBAAsB,CAAC,CASjC;AAED,MAAM,WAAW,sBAAsB;IACrC,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,wFAAwF;IACxF,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;0DAIsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAgBtC;AAED,MAAM,WAAW,iBAAiB;IAChC,oGAAoG;IACpG,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC,CAOrF;AAED,mFAAmF;AACnF,wBAAsB,mBAAmB,IAAI,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC,CAOjE"}
|
|
@@ -46,6 +46,8 @@ export async function setGitHubAppFromExisting(input) {
|
|
|
46
46
|
private_key: input.privateKey,
|
|
47
47
|
installation_id: input.installationId,
|
|
48
48
|
slug: input.slug,
|
|
49
|
+
client_id: input.clientId,
|
|
50
|
+
client_secret: input.clientSecret,
|
|
49
51
|
}, { showErrors: false });
|
|
50
52
|
if (response.error)
|
|
51
53
|
throw response.error;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/github-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/github-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAqBnD,mFAAmF;AACnF,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAkB,6BAA6B,EAAE;QACpF,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAgBD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAqC,EAAE;IAEvC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CACpC,qCAAqC,EACrC,KAAK,EACL,EAAE,UAAU,EAAE,KAAK,EAAE,CACtB,CAAC;IACF,IAAI,QAAQ,CAAC,KAAK;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAChF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAmBD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAA6B;IAE7B,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CACpC,0BAA0B,EAC1B;QACE,MAAM,EAAE,KAAK,CAAC,KAAK;QACnB,WAAW,EAAE,KAAK,CAAC,UAAU;QAC7B,eAAe,EAAE,KAAK,CAAC,cAAc;QACrC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,QAAQ;QACzB,aAAa,EAAE,KAAK,CAAC,YAAY;KAClC,EACD,EAAE,UAAU,EAAE,KAAK,EAAE,CACtB,CAAC;IACF,IAAI,QAAQ,CAAC,KAAK;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC/E,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AASD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAwB;IAC5D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CAAe,0BAA0B,EAAE,KAAK,EAAE;QACtF,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACjF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAe,sBAAsB,EAAE;QAC7E,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC5E,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC"}
|
|
@@ -1,69 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Platform API client —
|
|
2
|
+
* Platform API client — the project ACL that lives INSIDE a sandbox.
|
|
3
|
+
*
|
|
4
|
+
* The nine `*SandboxMember*` / `*SandboxScope*` exports that used to sit above
|
|
5
|
+
* this comment were deleted with the canonical-RBAC refactor. They had thrown
|
|
6
|
+
* on every call since the `sandbox_members` store was retired (0 rows), and
|
|
7
|
+
* were kept only so the public-surface snapshot would not move. Carrying nine
|
|
8
|
+
* functions and five types that cannot succeed is worse than one breaking
|
|
9
|
+
* change: it advertises a capability the platform does not have. Access to a
|
|
10
|
+
* project-session sandbox is the project's own access — see
|
|
11
|
+
* `createAssignment` / `listAssignments` in `projects-client/assignments.ts`.
|
|
3
12
|
*/
|
|
4
13
|
import type { SandboxInfo } from './types.js';
|
|
5
|
-
export type SandboxMemberRole = 'owner' | 'admin' | 'member';
|
|
6
|
-
export interface SandboxMember {
|
|
7
|
-
user_id: string;
|
|
8
|
-
email: string | null;
|
|
9
|
-
role: SandboxMemberRole | null;
|
|
10
|
-
added_by: string | null;
|
|
11
|
-
added_at: string;
|
|
12
|
-
monthly_spend_cap_cents?: number | null;
|
|
13
|
-
current_period_cents?: number;
|
|
14
|
-
}
|
|
15
|
-
export interface SandboxPendingInvite {
|
|
16
|
-
invite_id: string;
|
|
17
|
-
email: string;
|
|
18
|
-
role: 'admin' | 'member';
|
|
19
|
-
invited_by: string | null;
|
|
20
|
-
created_at: string;
|
|
21
|
-
expires_at: string;
|
|
22
|
-
}
|
|
23
|
-
export interface SandboxMembersResponse {
|
|
24
|
-
sandbox_id: string;
|
|
25
|
-
can_manage: boolean;
|
|
26
|
-
viewer_user_id: string;
|
|
27
|
-
members: SandboxMember[];
|
|
28
|
-
pending_invites: SandboxPendingInvite[];
|
|
29
|
-
}
|
|
30
|
-
export interface AddSandboxMemberResult {
|
|
31
|
-
status: 'added' | 'invited';
|
|
32
|
-
user_id?: string;
|
|
33
|
-
email?: string;
|
|
34
|
-
role?: 'admin' | 'member';
|
|
35
|
-
}
|
|
36
|
-
export declare function listSandboxMembers(sandboxId: string): Promise<SandboxMembersResponse>;
|
|
37
|
-
export declare function addSandboxMember(sandboxId: string, email: string, role?: 'admin' | 'member'): Promise<AddSandboxMemberResult>;
|
|
38
|
-
export declare function removeSandboxMember(sandboxId: string, userId: string): Promise<void>;
|
|
39
|
-
export declare function updateSandboxMemberRole(sandboxId: string, userId: string, role: SandboxMemberRole): Promise<void>;
|
|
40
|
-
export declare function updateSandboxMemberSpendCap(sandboxId: string, userId: string, capCents: number | null): Promise<void>;
|
|
41
|
-
export type ScopeEffect = 'grant' | 'revoke' | null;
|
|
42
|
-
export interface SandboxScopeCatalogEntry {
|
|
43
|
-
scope: string;
|
|
44
|
-
label: string;
|
|
45
|
-
description: string;
|
|
46
|
-
group: string;
|
|
47
|
-
}
|
|
48
|
-
export interface SandboxMemberScopes {
|
|
49
|
-
sandbox_id: string;
|
|
50
|
-
user_id: string;
|
|
51
|
-
role: 'owner' | 'admin' | 'member' | null;
|
|
52
|
-
inherited: string[];
|
|
53
|
-
grants: string[];
|
|
54
|
-
revokes: string[];
|
|
55
|
-
effective: string[];
|
|
56
|
-
catalog: SandboxScopeCatalogEntry[];
|
|
57
|
-
groups: Record<string, string[]>;
|
|
58
|
-
}
|
|
59
|
-
export interface SandboxViewerScopes {
|
|
60
|
-
sandbox_id: string;
|
|
61
|
-
role: 'owner' | 'admin' | 'member' | null;
|
|
62
|
-
scopes: string[];
|
|
63
|
-
}
|
|
64
|
-
export declare function getViewerSandboxScopes(sandboxId: string): Promise<SandboxViewerScopes>;
|
|
65
|
-
export declare function getSandboxMemberScopes(sandboxId: string, userId: string): Promise<SandboxMemberScopes>;
|
|
66
|
-
export declare function updateSandboxMemberScope(sandboxId: string, userId: string, scope: string, effect: ScopeEffect): Promise<void>;
|
|
67
14
|
export interface SandboxProjectMember {
|
|
68
15
|
user_id: string;
|
|
69
16
|
role: 'owner' | 'admin' | 'member';
|
|
@@ -77,5 +24,4 @@ export interface SandboxProjectMembersResponse {
|
|
|
77
24
|
export declare function listSandboxProjectMembers(sandbox: SandboxInfo, projectId: string): Promise<SandboxProjectMembersResponse>;
|
|
78
25
|
export declare function grantSandboxProjectAccess(sandbox: SandboxInfo, projectId: string, userId: string, role?: 'admin' | 'member'): Promise<void>;
|
|
79
26
|
export declare function revokeSandboxProjectAccess(sandbox: SandboxInfo, projectId: string, userId: string): Promise<void>;
|
|
80
|
-
export declare function revokeSandboxInvite(sandboxId: string, inviteId: string): Promise<void>;
|
|
81
27
|
//# sourceMappingURL=members.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/members.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/members.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAU3C,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IACnC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,oBAAoB,EAAE,CAAC;CACjC;AAoBD,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,6BAA6B,CAAC,CAMxC;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,OAAO,GAAG,QAAmB,GAClC,OAAO,CAAC,IAAI,CAAC,CASf;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1,33 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Platform API client —
|
|
2
|
+
* Platform API client — the project ACL that lives INSIDE a sandbox.
|
|
3
|
+
*
|
|
4
|
+
* The nine `*SandboxMember*` / `*SandboxScope*` exports that used to sit above
|
|
5
|
+
* this comment were deleted with the canonical-RBAC refactor. They had thrown
|
|
6
|
+
* on every call since the `sandbox_members` store was retired (0 rows), and
|
|
7
|
+
* were kept only so the public-surface snapshot would not move. Carrying nine
|
|
8
|
+
* functions and five types that cannot succeed is worse than one breaking
|
|
9
|
+
* change: it advertises a capability the platform does not have. Access to a
|
|
10
|
+
* project-session sandbox is the project's own access — see
|
|
11
|
+
* `createAssignment` / `listAssignments` in `projects-client/assignments.ts`.
|
|
3
12
|
*/
|
|
4
13
|
import { authenticatedFetch } from '../../http/auth.js';
|
|
5
14
|
import { stripTrailingSlashes } from '../../../platform/strings.js';
|
|
6
15
|
import { getSandboxUrl } from './urls.js';
|
|
7
|
-
export async function listSandboxMembers(sandboxId) {
|
|
8
|
-
throw new Error('Sandbox members moved to project access; use project members for project-session sandboxes');
|
|
9
|
-
}
|
|
10
|
-
export async function addSandboxMember(sandboxId, email, role = 'member') {
|
|
11
|
-
throw new Error('Sandbox members moved to project access; invite the user to the project instead');
|
|
12
|
-
}
|
|
13
|
-
export async function removeSandboxMember(sandboxId, userId) {
|
|
14
|
-
throw new Error('Sandbox members moved to project access; update project access instead');
|
|
15
|
-
}
|
|
16
|
-
export async function updateSandboxMemberRole(sandboxId, userId, role) {
|
|
17
|
-
throw new Error('Sandbox members moved to project access; update project access instead');
|
|
18
|
-
}
|
|
19
|
-
export async function updateSandboxMemberSpendCap(sandboxId, userId, capCents) {
|
|
20
|
-
throw new Error('Sandbox member spend caps are not exposed for project-session sandboxes');
|
|
21
|
-
}
|
|
22
|
-
export async function getViewerSandboxScopes(sandboxId) {
|
|
23
|
-
throw new Error('Sandbox scopes moved to project access for project-session sandboxes');
|
|
24
|
-
}
|
|
25
|
-
export async function getSandboxMemberScopes(sandboxId, userId) {
|
|
26
|
-
throw new Error('Sandbox scopes moved to project access for project-session sandboxes');
|
|
27
|
-
}
|
|
28
|
-
export async function updateSandboxMemberScope(sandboxId, userId, scope, effect) {
|
|
29
|
-
throw new Error('Sandbox scopes moved to project access for project-session sandboxes');
|
|
30
|
-
}
|
|
31
16
|
async function fetchKortixMaster(sandbox, path, init) {
|
|
32
17
|
const base = getSandboxUrl(sandbox);
|
|
33
18
|
const res = await authenticatedFetch(`${stripTrailingSlashes(base)}${path}`, {
|
|
@@ -53,7 +38,4 @@ export async function grantSandboxProjectAccess(sandbox, projectId, userId, role
|
|
|
53
38
|
export async function revokeSandboxProjectAccess(sandbox, projectId, userId) {
|
|
54
39
|
await fetchKortixMaster(sandbox, `/kortix/projects/${encodeURIComponent(projectId)}/members/${encodeURIComponent(userId)}`, { method: 'DELETE' });
|
|
55
40
|
}
|
|
56
|
-
export async function revokeSandboxInvite(sandboxId, inviteId) {
|
|
57
|
-
throw new Error('Sandbox invites moved to project access for project-session sandboxes');
|
|
58
|
-
}
|
|
59
41
|
//# sourceMappingURL=members.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/members.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/core/rest/platform-client/members.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAqBvC,KAAK,UAAU,iBAAiB,CAC9B,OAAoB,EACpB,IAAY,EACZ,IAAkB;IAElB,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE;QAC3E,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,GAAG,IAAI;KACR,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,mBAAmB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAoB,EACpB,SAAiB;IAEjB,OAAO,iBAAiB,CACtB,OAAO,EACP,oBAAoB,kBAAkB,CAAC,SAAS,CAAC,UAAU,EAC3D,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAoB,EACpB,SAAiB,EACjB,MAAc,EACd,OAA2B,QAAQ;IAEnC,MAAM,iBAAiB,CACrB,OAAO,EACP,oBAAoB,kBAAkB,CAAC,SAAS,CAAC,UAAU,EAC3D;QACE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAChD,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAoB,EACpB,SAAiB,EACjB,MAAc;IAEd,MAAM,iBAAiB,CACrB,OAAO,EACP,oBAAoB,kBAAkB,CAAC,SAAS,CAAC,YAAY,kBAAkB,CAAC,MAAM,CAAC,EAAE,EACzF,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ApiError } from '../../http/api/errors.js';
|
|
2
|
-
import { type AccountRole, type ServerTokenOptions } from './shared.js';
|
|
2
|
+
import { type AccountRole, type ProjectRole, type ServerTokenOptions } from './shared.js';
|
|
3
3
|
export interface KortixAccount {
|
|
4
4
|
account_id: string;
|
|
5
5
|
name: string;
|
|
@@ -26,12 +26,20 @@ export interface AccountMemberGroup {
|
|
|
26
26
|
group_id: string;
|
|
27
27
|
name: string;
|
|
28
28
|
}
|
|
29
|
+
export interface AccountMemberProject {
|
|
30
|
+
project_id: string;
|
|
31
|
+
name: string;
|
|
32
|
+
role: ProjectRole;
|
|
33
|
+
}
|
|
29
34
|
export interface AccountMember {
|
|
30
35
|
user_id: string;
|
|
31
36
|
email: string | null;
|
|
32
37
|
account_role: AccountRole;
|
|
33
38
|
is_super_admin?: boolean;
|
|
34
39
|
explicit_project_count?: number;
|
|
40
|
+
/** Direct project grants — same scope as explicit_project_count. Powers
|
|
41
|
+
* the "N projects" chip and its "which ones" popover. */
|
|
42
|
+
projects?: AccountMemberProject[];
|
|
35
43
|
groups?: AccountMemberGroup[];
|
|
36
44
|
/** Number of active CLI Personal Access Tokens this user owns in
|
|
37
45
|
* this account. Lets the UI flag members with API automation. */
|
|
@@ -41,16 +49,28 @@ export interface AccountMember {
|
|
|
41
49
|
has_verified_mfa?: boolean;
|
|
42
50
|
joined_at: string;
|
|
43
51
|
}
|
|
52
|
+
export interface InviteProjectGrant {
|
|
53
|
+
project_id: string;
|
|
54
|
+
role?: ProjectRole;
|
|
55
|
+
}
|
|
44
56
|
export type InviteMemberResult = {
|
|
45
57
|
status: 'added';
|
|
46
58
|
user_id: string;
|
|
47
59
|
email: string;
|
|
48
60
|
account_role: AccountRole;
|
|
61
|
+
project_grants: Array<{
|
|
62
|
+
project_id: string;
|
|
63
|
+
role: ProjectRole;
|
|
64
|
+
}>;
|
|
49
65
|
} | {
|
|
50
66
|
status: 'pending';
|
|
51
67
|
invite_id: string;
|
|
52
68
|
email: string;
|
|
53
69
|
account_role: AccountRole;
|
|
70
|
+
project_grants: Array<{
|
|
71
|
+
project_id: string;
|
|
72
|
+
role: ProjectRole;
|
|
73
|
+
}>;
|
|
54
74
|
expires_at: string;
|
|
55
75
|
invite_url: string;
|
|
56
76
|
email_sent: boolean;
|
|
@@ -109,16 +129,25 @@ export declare function listAccountMembers(accountId: string): Promise<AccountMe
|
|
|
109
129
|
export declare function inviteAccountMember(accountId: string, input: {
|
|
110
130
|
email: string;
|
|
111
131
|
role?: AccountRole;
|
|
132
|
+
project_grants?: InviteProjectGrant[];
|
|
112
133
|
}): Promise<{
|
|
113
134
|
status: "added";
|
|
114
135
|
user_id: string;
|
|
115
136
|
email: string;
|
|
116
137
|
account_role: AccountRole;
|
|
138
|
+
project_grants: Array<{
|
|
139
|
+
project_id: string;
|
|
140
|
+
role: ProjectRole;
|
|
141
|
+
}>;
|
|
117
142
|
} | {
|
|
118
143
|
status: "pending";
|
|
119
144
|
invite_id: string;
|
|
120
145
|
email: string;
|
|
121
146
|
account_role: AccountRole;
|
|
147
|
+
project_grants: Array<{
|
|
148
|
+
project_id: string;
|
|
149
|
+
role: ProjectRole;
|
|
150
|
+
}>;
|
|
122
151
|
expires_at: string;
|
|
123
152
|
invite_url: string;
|
|
124
153
|
email_sent: boolean;
|