@grackle-ai/core 0.133.1 → 0.135.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/dist/credential-bundle.d.ts +62 -0
- package/dist/credential-bundle.d.ts.map +1 -1
- package/dist/credential-bundle.js +164 -0
- package/dist/credential-bundle.js.map +1 -1
- package/dist/event-processor.d.ts.map +1 -1
- package/dist/event-processor.js +90 -1
- package/dist/event-processor.js.map +1 -1
- package/dist/subagent-session.d.ts +92 -0
- package/dist/subagent-session.d.ts.map +1 -0
- package/dist/subagent-session.js +188 -0
- package/dist/subagent-session.js.map +1 -0
- package/dist/task-session.d.ts.map +1 -1
- package/dist/task-session.js +14 -3
- package/dist/task-session.js.map +1 -1
- package/dist/token-push.d.ts +14 -2
- package/dist/token-push.d.ts.map +1 -1
- package/dist/token-push.js +39 -4
- package/dist/token-push.js.map +1 -1
- package/package.json +9 -9
|
@@ -15,6 +15,13 @@ export interface TokenItem {
|
|
|
15
15
|
filePath?: string;
|
|
16
16
|
/** The credential value. */
|
|
17
17
|
value: string;
|
|
18
|
+
/**
|
|
19
|
+
* The credential-provider block that materialized this token. Server-internal
|
|
20
|
+
* source tag used by {@link findUnsatisfiedNeeds} to decide whether a runtime's
|
|
21
|
+
* advertised needs are met; it is **never delivered** over the wire (the
|
|
22
|
+
* `authenticate` mapper picks only `name`/`type`/`envVar`/`filePath`/`value`).
|
|
23
|
+
*/
|
|
24
|
+
provider?: keyof CredentialProviderConfig;
|
|
18
25
|
}
|
|
19
26
|
/** A bundle of tokens — the return shape of {@link buildProviderTokenBundle}. */
|
|
20
27
|
export interface ProviderTokenBundle {
|
|
@@ -68,6 +75,61 @@ export interface ProtectedResourceDescriptor {
|
|
|
68
75
|
* materializes the actual secret values.
|
|
69
76
|
*/
|
|
70
77
|
export declare function deriveCredentialNeeds(runtime: string, config: CredentialProviderConfig): ProtectedResourceDescriptor[];
|
|
78
|
+
/**
|
|
79
|
+
* The expiry state of a credential, as far as is knowable from a purely offline
|
|
80
|
+
* inspection of a credential file. Only the OAuth-file providers (Claude
|
|
81
|
+
* subscription, Codex) carry an embedded, parseable expiry; for every other
|
|
82
|
+
* credential kind (API keys, GitHub/Copilot/Goose tokens) expiry is not knowable
|
|
83
|
+
* offline and inspection returns `"unknown"`.
|
|
84
|
+
*
|
|
85
|
+
* - `valid` — present and not past expiry.
|
|
86
|
+
* - `expired-recoverable` — past expiry but a refresh token is present, so the
|
|
87
|
+
* runtime transparently refreshes it on launch (not a spawn blocker).
|
|
88
|
+
* - `expired-unrecoverable` — past expiry with no refresh token; re-login required
|
|
89
|
+
* (the genuine "will 401 deep in the runtime" case worth failing fast on).
|
|
90
|
+
* - `unknown` — expiry is not offline-knowable, or the file shape is unexpected
|
|
91
|
+
* (fail open: never treated as a blocker).
|
|
92
|
+
*/
|
|
93
|
+
export type CredentialExpiryState = "valid" | "expired-recoverable" | "expired-unrecoverable" | "unknown";
|
|
94
|
+
/**
|
|
95
|
+
* Determine the offline-knowable {@link CredentialExpiryState} of a materialized
|
|
96
|
+
* credential {@link TokenItem}. Only OAuth-file tokens (`claude-credentials`,
|
|
97
|
+
* `codex-auth`) carry a parseable expiry; every other token returns `"unknown"`
|
|
98
|
+
* because expiry is not derivable without a network call. Pure; fails open.
|
|
99
|
+
*/
|
|
100
|
+
export declare function inspectFileCredentialExpiry(token: TokenItem, now: number): CredentialExpiryState;
|
|
101
|
+
/** A credential need that the materialized bundle does not satisfy, with the reason. */
|
|
102
|
+
export interface UnsatisfiedNeed {
|
|
103
|
+
/** The advertised need that is not met. */
|
|
104
|
+
need: ProtectedResourceDescriptor;
|
|
105
|
+
/** Why the need is unmet: no credential at all, or an expired non-refreshable one. */
|
|
106
|
+
reason: "missing" | "expired";
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Cross-check a runtime's advertised {@link ProtectedResourceDescriptor needs}
|
|
110
|
+
* against the credentials a {@link buildProviderTokenBundle} actually materialized,
|
|
111
|
+
* returning the needs that are not satisfied. A need is unsatisfied when:
|
|
112
|
+
*
|
|
113
|
+
* - **missing** — the bundle contains no token tagged for the need's provider, or
|
|
114
|
+
* - **expired** — the provider materialized credential(s) but **every** one is an
|
|
115
|
+
* expired OAuth file with no refresh token (re-login required).
|
|
116
|
+
*
|
|
117
|
+
* A token counts as usable unless it is `expired-unrecoverable` — a refreshable
|
|
118
|
+
* expiry (the runtime refreshes on launch) and an `unknown`-expiry token (e.g. an
|
|
119
|
+
* API key, whose expiry is not offline-knowable) both satisfy the need. So when a
|
|
120
|
+
* provider emits more than one credential (e.g. Codex emits both `~/.codex/auth.json`
|
|
121
|
+
* *and* `OPENAI_API_KEY`), a stale OAuth file does not fail the spawn as long as a
|
|
122
|
+
* working fallback is present.
|
|
123
|
+
*
|
|
124
|
+
* Pure: derives entirely from `needs` + `bundle` + `now`, reads nothing.
|
|
125
|
+
*/
|
|
126
|
+
export declare function findUnsatisfiedNeeds(needs: ProtectedResourceDescriptor[], bundle: ProviderTokenBundle, now: number): UnsatisfiedNeed[];
|
|
127
|
+
/**
|
|
128
|
+
* Build a human-readable, actionable pre-flight error message for credentials
|
|
129
|
+
* that are required but missing or expired — surfaced to the CLI and web before
|
|
130
|
+
* a spawn instead of as an opaque 401 deep inside the runtime.
|
|
131
|
+
*/
|
|
132
|
+
export declare function formatPreflightCredentialError(runtime: string, unsatisfied: UnsatisfiedNeed[]): string;
|
|
71
133
|
/**
|
|
72
134
|
* Resolve a GitHub token from the `gh` CLI's credential store.
|
|
73
135
|
* Returns `undefined` if the CLI is unavailable, not authenticated, or errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-bundle.d.ts","sourceRoot":"","sources":["../src/credential-bundle.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAG9B;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"credential-bundle.d.ts","sourceRoot":"","sources":["../src/credential-bundle.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAG9B;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;CAC3C;AAED,iFAAiF;AACjF,MAAM,WAAW,mBAAmB;IAClC,wEAAwE;IACxE,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAOD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,wBAAwB,CAAC,EAAE,CAUhF,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,yBAAyB,GAAG,cAAc,CAAC;AAExF;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oEAAoE;IACpE,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;;OAKG;IACH,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,wBAAwB,CAAC;CAC1C;AAqFD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,wBAAwB,GAC/B,2BAA2B,EAAE,CAY/B;AAOD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,qBAAqB,GACrB,uBAAuB,GACvB,SAAS,CAAC;AA8Ed;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,qBAAqB,CAehG;AAED,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,IAAI,EAAE,2BAA2B,CAAC;IAClC,sFAAsF;IACtF,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,2BAA2B,EAAE,EACpC,MAAM,EAAE,mBAAmB,EAC3B,GAAG,EAAE,MAAM,GACV,eAAe,EAAE,CAenB;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,eAAe,EAAE,GAC7B,MAAM,CAYR;AAKD;;;;GAIG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAO7E;AAED;;;;;;;;;GASG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,gBAAgB,EAC3B,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,mBAAmB,CAAC,CAwR9B"}
|
|
@@ -133,6 +133,157 @@ export function deriveCredentialNeeds(runtime, config) {
|
|
|
133
133
|
}
|
|
134
134
|
return needs;
|
|
135
135
|
}
|
|
136
|
+
// ─── Pre-flight credential validation (#1316) ──────────────
|
|
137
|
+
/** Clock-skew buffer: treat a credential expiring within this window as already expired. */
|
|
138
|
+
const CREDENTIAL_EXPIRY_SKEW_MS = 60_000;
|
|
139
|
+
/**
|
|
140
|
+
* Decode a JWT payload **without verifying its signature**, returning the parsed
|
|
141
|
+
* claims or `undefined` when the token is not a well-formed three-segment JWT.
|
|
142
|
+
* Offline only — we trust the locally stored file and only read the `exp` claim.
|
|
143
|
+
*/
|
|
144
|
+
function decodeJwtPayload(token) {
|
|
145
|
+
const segments = token.split(".");
|
|
146
|
+
if (segments.length !== 3) {
|
|
147
|
+
return undefined;
|
|
148
|
+
}
|
|
149
|
+
try {
|
|
150
|
+
const json = Buffer.from(segments[1], "base64url").toString("utf-8");
|
|
151
|
+
const parsed = JSON.parse(json);
|
|
152
|
+
return typeof parsed === "object" && parsed !== null
|
|
153
|
+
? parsed
|
|
154
|
+
: undefined;
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
return undefined;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Inspect a Claude subscription credentials file (`~/.claude/.credentials.json`):
|
|
162
|
+
* the OAuth access token's `expiresAt` is a unix-ms timestamp sibling to a
|
|
163
|
+
* `refreshToken`. Fails open (`"unknown"`) on any unexpected shape.
|
|
164
|
+
*/
|
|
165
|
+
function inspectClaudeCredentials(value, now) {
|
|
166
|
+
let oauth;
|
|
167
|
+
try {
|
|
168
|
+
// A non-object parse (`null`, a primitive) throws on property access and is
|
|
169
|
+
// caught below, yielding "unknown" — exactly the fail-open behavior we want.
|
|
170
|
+
const parsed = JSON.parse(value);
|
|
171
|
+
oauth = parsed.claudeAiOauth;
|
|
172
|
+
}
|
|
173
|
+
catch {
|
|
174
|
+
return "unknown";
|
|
175
|
+
}
|
|
176
|
+
if (!oauth || typeof oauth.accessToken !== "string" || typeof oauth.expiresAt !== "number") {
|
|
177
|
+
return "unknown";
|
|
178
|
+
}
|
|
179
|
+
if (oauth.expiresAt >= now + CREDENTIAL_EXPIRY_SKEW_MS) {
|
|
180
|
+
return "valid";
|
|
181
|
+
}
|
|
182
|
+
return typeof oauth.refreshToken === "string" && oauth.refreshToken.length > 0
|
|
183
|
+
? "expired-recoverable"
|
|
184
|
+
: "expired-unrecoverable";
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Inspect a Codex auth file (`~/.codex/auth.json`): `tokens.access_token` is a
|
|
188
|
+
* JWT whose `exp` claim (unix seconds) carries the expiry, sibling to a
|
|
189
|
+
* `refresh_token`. Fails open (`"unknown"`) on any unexpected shape — the token
|
|
190
|
+
* format is owned by the Codex runtime and may drift.
|
|
191
|
+
*/
|
|
192
|
+
function inspectCodexAuth(value, now) {
|
|
193
|
+
let tokens;
|
|
194
|
+
try {
|
|
195
|
+
const parsed = JSON.parse(value);
|
|
196
|
+
tokens = parsed.tokens;
|
|
197
|
+
}
|
|
198
|
+
catch {
|
|
199
|
+
return "unknown";
|
|
200
|
+
}
|
|
201
|
+
if (!tokens || typeof tokens.access_token !== "string") {
|
|
202
|
+
return "unknown";
|
|
203
|
+
}
|
|
204
|
+
const exp = decodeJwtPayload(tokens.access_token)?.exp;
|
|
205
|
+
if (typeof exp !== "number") {
|
|
206
|
+
return "unknown";
|
|
207
|
+
}
|
|
208
|
+
if (exp * 1000 >= now + CREDENTIAL_EXPIRY_SKEW_MS) {
|
|
209
|
+
return "valid";
|
|
210
|
+
}
|
|
211
|
+
return typeof tokens.refresh_token === "string" && tokens.refresh_token.length > 0
|
|
212
|
+
? "expired-recoverable"
|
|
213
|
+
: "expired-unrecoverable";
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Determine the offline-knowable {@link CredentialExpiryState} of a materialized
|
|
217
|
+
* credential {@link TokenItem}. Only OAuth-file tokens (`claude-credentials`,
|
|
218
|
+
* `codex-auth`) carry a parseable expiry; every other token returns `"unknown"`
|
|
219
|
+
* because expiry is not derivable without a network call. Pure; fails open.
|
|
220
|
+
*/
|
|
221
|
+
export function inspectFileCredentialExpiry(token, now) {
|
|
222
|
+
if (token.type !== "file") {
|
|
223
|
+
return "unknown";
|
|
224
|
+
}
|
|
225
|
+
switch (token.name) {
|
|
226
|
+
case "claude-credentials": {
|
|
227
|
+
return inspectClaudeCredentials(token.value, now);
|
|
228
|
+
}
|
|
229
|
+
case "codex-auth": {
|
|
230
|
+
return inspectCodexAuth(token.value, now);
|
|
231
|
+
}
|
|
232
|
+
default: {
|
|
233
|
+
return "unknown";
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Cross-check a runtime's advertised {@link ProtectedResourceDescriptor needs}
|
|
239
|
+
* against the credentials a {@link buildProviderTokenBundle} actually materialized,
|
|
240
|
+
* returning the needs that are not satisfied. A need is unsatisfied when:
|
|
241
|
+
*
|
|
242
|
+
* - **missing** — the bundle contains no token tagged for the need's provider, or
|
|
243
|
+
* - **expired** — the provider materialized credential(s) but **every** one is an
|
|
244
|
+
* expired OAuth file with no refresh token (re-login required).
|
|
245
|
+
*
|
|
246
|
+
* A token counts as usable unless it is `expired-unrecoverable` — a refreshable
|
|
247
|
+
* expiry (the runtime refreshes on launch) and an `unknown`-expiry token (e.g. an
|
|
248
|
+
* API key, whose expiry is not offline-knowable) both satisfy the need. So when a
|
|
249
|
+
* provider emits more than one credential (e.g. Codex emits both `~/.codex/auth.json`
|
|
250
|
+
* *and* `OPENAI_API_KEY`), a stale OAuth file does not fail the spawn as long as a
|
|
251
|
+
* working fallback is present.
|
|
252
|
+
*
|
|
253
|
+
* Pure: derives entirely from `needs` + `bundle` + `now`, reads nothing.
|
|
254
|
+
*/
|
|
255
|
+
export function findUnsatisfiedNeeds(needs, bundle, now) {
|
|
256
|
+
const unsatisfied = [];
|
|
257
|
+
for (const need of needs) {
|
|
258
|
+
const tokens = bundle.tokens.filter((t) => t.provider === need.provider);
|
|
259
|
+
if (tokens.length === 0) {
|
|
260
|
+
unsatisfied.push({ need, reason: "missing" });
|
|
261
|
+
continue;
|
|
262
|
+
}
|
|
263
|
+
// Report expired only when there is no usable credential — i.e. every token
|
|
264
|
+
// for the provider is an expired, non-refreshable OAuth file.
|
|
265
|
+
if (tokens.every((t) => inspectFileCredentialExpiry(t, now) === "expired-unrecoverable")) {
|
|
266
|
+
unsatisfied.push({ need, reason: "expired" });
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
return unsatisfied;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Build a human-readable, actionable pre-flight error message for credentials
|
|
273
|
+
* that are required but missing or expired — surfaced to the CLI and web before
|
|
274
|
+
* a spawn instead of as an opaque 401 deep inside the runtime.
|
|
275
|
+
*/
|
|
276
|
+
export function formatPreflightCredentialError(runtime, unsatisfied) {
|
|
277
|
+
const lines = unsatisfied.map(({ need, reason }) => {
|
|
278
|
+
const subject = `${need.resourceName} (provider "${need.provider}")`;
|
|
279
|
+
return reason === "missing"
|
|
280
|
+
? ` • ${subject}: enabled but no credential was found`
|
|
281
|
+
: ` • ${subject}: login expired and cannot be refreshed — re-login required`;
|
|
282
|
+
});
|
|
283
|
+
return (`Cannot start runtime "${runtime}": required credential(s) unavailable.\n` +
|
|
284
|
+
`${lines.join("\n")}\n` +
|
|
285
|
+
`Configure or disable the provider with \`grackle credential-provider set <provider> <value>\`, then retry.`);
|
|
286
|
+
}
|
|
136
287
|
/** Timeout for the `gh auth token` subprocess call. */
|
|
137
288
|
const GH_AUTH_TOKEN_TIMEOUT_MS = 5_000;
|
|
138
289
|
/**
|
|
@@ -190,6 +341,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
190
341
|
type: "file",
|
|
191
342
|
filePath: "~/.claude/.credentials.json",
|
|
192
343
|
value,
|
|
344
|
+
provider: "claude",
|
|
193
345
|
}));
|
|
194
346
|
}
|
|
195
347
|
}
|
|
@@ -202,6 +354,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
202
354
|
type: "env_var",
|
|
203
355
|
envVar: "ANTHROPIC_API_KEY",
|
|
204
356
|
value: apiKey,
|
|
357
|
+
provider: "claude",
|
|
205
358
|
}));
|
|
206
359
|
}
|
|
207
360
|
}
|
|
@@ -219,6 +372,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
219
372
|
type: "env_var",
|
|
220
373
|
envVar: "GH_TOKEN",
|
|
221
374
|
value: storedToken,
|
|
375
|
+
provider: "github",
|
|
222
376
|
}));
|
|
223
377
|
}
|
|
224
378
|
else {
|
|
@@ -233,6 +387,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
233
387
|
type: "env_var",
|
|
234
388
|
envVar: varName,
|
|
235
389
|
value,
|
|
390
|
+
provider: "github",
|
|
236
391
|
}));
|
|
237
392
|
}
|
|
238
393
|
}
|
|
@@ -247,6 +402,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
247
402
|
type: "env_var",
|
|
248
403
|
envVar: "GITHUB_TOKEN",
|
|
249
404
|
value: cliToken,
|
|
405
|
+
provider: "github",
|
|
250
406
|
}));
|
|
251
407
|
}
|
|
252
408
|
}
|
|
@@ -267,6 +423,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
267
423
|
type: "file",
|
|
268
424
|
filePath: "~/.copilot/config.json",
|
|
269
425
|
value,
|
|
426
|
+
provider: "copilot",
|
|
270
427
|
}));
|
|
271
428
|
}
|
|
272
429
|
}
|
|
@@ -287,6 +444,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
287
444
|
type: "env_var",
|
|
288
445
|
envVar: varName,
|
|
289
446
|
value,
|
|
447
|
+
provider: "copilot",
|
|
290
448
|
}));
|
|
291
449
|
}
|
|
292
450
|
}
|
|
@@ -306,6 +464,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
306
464
|
type: "env_var",
|
|
307
465
|
envVar: envVarName,
|
|
308
466
|
value: envToken,
|
|
467
|
+
provider: "copilot",
|
|
309
468
|
}));
|
|
310
469
|
}
|
|
311
470
|
}
|
|
@@ -317,6 +476,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
317
476
|
type: "env_var",
|
|
318
477
|
envVar: "GITHUB_TOKEN",
|
|
319
478
|
value: cliToken,
|
|
479
|
+
provider: "copilot",
|
|
320
480
|
}));
|
|
321
481
|
}
|
|
322
482
|
}
|
|
@@ -334,6 +494,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
334
494
|
type: "file",
|
|
335
495
|
filePath: "~/.codex/auth.json",
|
|
336
496
|
value,
|
|
497
|
+
provider: "codex",
|
|
337
498
|
}));
|
|
338
499
|
}
|
|
339
500
|
}
|
|
@@ -344,6 +505,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
344
505
|
type: "env_var",
|
|
345
506
|
envVar: "OPENAI_API_KEY",
|
|
346
507
|
value: openaiKey,
|
|
508
|
+
provider: "codex",
|
|
347
509
|
}));
|
|
348
510
|
}
|
|
349
511
|
}
|
|
@@ -365,6 +527,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
365
527
|
type: "file",
|
|
366
528
|
filePath: gooseConfigFilePath,
|
|
367
529
|
value,
|
|
530
|
+
provider: "goose",
|
|
368
531
|
}));
|
|
369
532
|
}
|
|
370
533
|
}
|
|
@@ -382,6 +545,7 @@ export async function buildProviderTokenBundle(runtime, database, githubAccountI
|
|
|
382
545
|
type: "env_var",
|
|
383
546
|
envVar: varName,
|
|
384
547
|
value,
|
|
548
|
+
provider: "goose",
|
|
385
549
|
}));
|
|
386
550
|
}
|
|
387
551
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-bundle.js","sourceRoot":"","sources":["../src/credential-bundle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"credential-bundle.js","sourceRoot":"","sources":["../src/credential-bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAiCvC,mFAAmF;AACnF,SAAS,SAAS,CAAC,IAAe;IAChC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAuD;IACnF,aAAa,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACnC,OAAO,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC9B,KAAK,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC1B,KAAK,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC1B,IAAI,EAAE,EAAE;IACR,uFAAuF;IACvF,iBAAiB,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACvC,WAAW,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;IAChC,aAAa,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;CACrC,CAAC;AAmCF;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,QAAwC,EACxC,MAAgC;IAEhC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,2BAA2B;gBACrC,YAAY,EAAE,eAAe;gBAC7B,oBAAoB,EAAE,EAAE;gBACxB,eAAe,EAAE,EAAE;gBACnB,eAAe,EAAE;oBACf,MAAM,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,aAAa;iBAC7E;gBACD,QAAQ,EAAE,QAAQ;aACnB,CAAC;QACJ,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC3B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,wBAAwB;gBAClC,YAAY,EAAE,QAAQ;gBACtB,oBAAoB,EAAE,EAAE;gBACxB,eAAe,EAAE,EAAE;gBACnB,eAAe,EAAE,CAAC,aAAa,CAAC;gBAChC,QAAQ,EAAE,QAAQ;aACnB,CAAC;QACJ,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,+BAA+B;gBACzC,YAAY,EAAE,gBAAgB;gBAC9B,oBAAoB,EAAE,EAAE;gBACxB,eAAe,EAAE,EAAE;gBACnB,eAAe,EAAE,CAAC,yBAAyB,EAAE,aAAa,CAAC;gBAC3D,QAAQ,EAAE,SAAS;aACpB,CAAC;QACJ,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,wBAAwB;gBAClC,YAAY,EAAE,QAAQ;gBACtB,oBAAoB,EAAE,EAAE;gBACxB,eAAe,EAAE,EAAE;gBACnB,eAAe,EAAE,CAAC,yBAAyB,EAAE,aAAa,CAAC;gBAC3D,QAAQ,EAAE,OAAO;aAClB,CAAC;QACJ,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,+BAA+B;gBACzC,YAAY,EAAE,OAAO;gBACrB,oBAAoB,EAAE,EAAE;gBACxB,eAAe,EAAE,EAAE;gBACnB,eAAe,EAAE,CAAC,yBAAyB,EAAE,aAAa,CAAC;gBAC3D,QAAQ,EAAE,OAAO;aAClB,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,MAAgC;IAEhC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC;QACzD,CAAC,CAAC,iBAAiB,CAAC,OAAsB,CAAC;QAC3C,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,KAAK,GAAkC,EAAE,CAAC;IAChD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8DAA8D;AAE9D,4FAA4F;AAC5F,MAAM,yBAAyB,GAAW,MAAM,CAAC;AAuBjD;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;QAC3C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YAClD,CAAC,CAAE,MAAkC;YACrC,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,KAAa,EAAE,GAAW;IAC1D,IAAI,KAAyF,CAAC;IAC9F,IAAI,CAAC;QACH,4EAA4E;QAC5E,6EAA6E;QAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAqC,CAAC;QACrE,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3F,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,GAAG,yBAAyB,EAAE,CAAC;QACvD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QAC5E,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,uBAAuB,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,KAAa,EAAE,GAAW;IAClD,IAAI,MAAuE,CAAC;IAC5E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAA+B,CAAC;QAC/D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC;IACvD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,yBAAyB,EAAE,CAAC;QAClD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAChF,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,uBAAuB,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAgB,EAAE,GAAW;IACvE,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,oBAAoB,CAAC,CAAC,CAAC;YAC1B,OAAO,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAoC,EACpC,MAA2B,EAC3B,GAAW;IAEX,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9C,SAAS;QACX,CAAC;QACD,4EAA4E;QAC5E,8DAA8D;QAC9D,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,2BAA2B,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,uBAAuB,CAAC,EAAE,CAAC;YACzF,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAC5C,OAAe,EACf,WAA8B;IAE9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QACjD,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,YAAY,eAAe,IAAI,CAAC,QAAQ,IAAI,CAAC;QACrE,OAAO,MAAM,KAAK,SAAS;YACzB,CAAC,CAAC,OAAO,OAAO,uCAAuC;YACvD,CAAC,CAAC,OAAO,OAAO,6DAA6D,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,OAAO,CACL,yBAAyB,OAAO,0CAA0C;QAC1E,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACvB,4GAA4G,CAC7G,CAAC;AACJ,CAAC;AAED,uDAAuD;AACvD,MAAM,wBAAwB,GAAW,KAAK,CAAC;AAE/C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAC9F,OAAO,MAAM,IAAI,SAAS,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAgB,EAChB,QAA2B,EAC3B,eAAwB;IAExB,MAAM,MAAM,GAAG,mBAAmB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACpE,oGAAoG;IACpG,MAAM,gBAAgB,GACpB,OAAO,KAAK,SAAS;QACnB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC;YACzC,CAAC,CAAC,iBAAiB,CAAC,OAAsB,CAAC;YAC3C,CAAC,CAAC,EAAE;QACN,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,gBAAgB,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,iFAAiF;IACjF,6EAA6E;IAC7E,8EAA8E;IAC9E,IAAI,eAAwD,CAAC;IAC7D,SAAS,WAAW;QAClB,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,eAAe,GAAG,yBAAyB,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,kBAAkB;IAClB,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9F,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QACxE,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrD,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,oBAAoB;oBAC1B,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,6BAA6B;oBACvC,KAAK;oBACL,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChG,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;gBACR,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,mBAAmB;gBAC3B,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,QAAQ;aACnB,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACpF,iFAAiF;QACjF,yEAAyE;QACzE,iDAAiD;QACjD,MAAM,WAAW,GACf,eAAe,KAAK,SAAS,IAAI,kBAAkB,CAAC,uBAAuB,EAAE,KAAK,SAAS;YACzF,CAAC,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,eAAe,IAAI,SAAS,CAAC;YAC3E,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;gBACR,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,UAAU;gBAClB,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,sEAAsE;YACtE,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,KAAK,MAAM,OAAO,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,KAAK,EAAE,CAAC;oBACV,eAAe,GAAG,IAAI,CAAC;oBACvB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;wBACR,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;wBAC9C,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,OAAO;wBACf,KAAK;wBACL,QAAQ,EAAE,QAAQ;qBACnB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,mEAAmE;YACnE,0EAA0E;YAC1E,iEAAiE;YACjE,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;gBACrC,IAAI,QAAQ,EAAE,CAAC;oBACb,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;wBACR,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,cAAc;wBACtB,KAAK,EAAE,QAAQ;wBACf,QAAQ,EAAE,QAAQ;qBACnB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,wDAAwD;IACxD,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACtF,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;QACrE,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YACvD,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,wBAAwB;oBAClC,KAAK;oBACL,QAAQ,EAAE,SAAS;iBACpB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,KAAK,MAAM,OAAO,IAAI;YACpB,sBAAsB;YACtB,iBAAiB;YACjB,kBAAkB;YAClB,yBAAyB;SAC1B,EAAE,CAAC;YACF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,OAAO,KAAK,sBAAsB,EAAE,CAAC;oBACvC,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;gBACD,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;oBAC9C,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,OAAO;oBACf,KAAK;oBACL,QAAQ,EAAE,SAAS;iBACpB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,yEAAyE;QACzE,0EAA0E;QAC1E,4BAA4B;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YAClE,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC;gBACtE,uEAAuE;gBACvE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,EAAE,CAAC;oBACtD,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;wBACR,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;wBACjD,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,UAAU;wBAClB,KAAK,EAAE,QAAQ;wBACf,QAAQ,EAAE,SAAS;qBACpB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;gBACrC,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,EAAE,CAAC;oBACtE,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;wBACR,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,cAAc;wBACtB,KAAK,EAAE,QAAQ;wBACf,QAAQ,EAAE,SAAS;qBACpB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,6DAA6D;IAC7D,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAClF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC7D,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,oBAAoB;oBAC9B,KAAK;oBACL,QAAQ,EAAE,OAAO;iBAClB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAC7C,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;gBACR,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,gBAAgB;gBACxB,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,OAAO;aAClB,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,6EAA6E;IAC7E,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAClF,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;QAC/C,MAAM,eAAe,GAAG,SAAS;YAC/B,CAAC,CAAC,IAAI,CACF,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,EAC5D,OAAO,EACP,OAAO,EACP,QAAQ,EACR,aAAa,CACd;YACH,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QACvD,MAAM,mBAAmB,GAAG,SAAS;YACnC,CAAC,CAAC,0CAA0C;YAC5C,CAAC,CAAC,6BAA6B,CAAC;QAClC,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrD,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,mBAAmB;oBAC7B,KAAK;oBACL,QAAQ,EAAE,OAAO;iBAClB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,KAAK,MAAM,OAAO,IAAI;YACpB,gBAAgB;YAChB,aAAa;YACb,mBAAmB;YACnB,gBAAgB;YAChB,gBAAgB;SACjB,EAAE,CAAC;YACF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CACR,SAAS,CAAC;oBACR,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;oBAC9C,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,OAAO;oBACf,KAAK;oBACL,QAAQ,EAAE,OAAO;iBAClB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-processor.d.ts","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event-processor.d.ts","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAwBpE,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gGAAgG;IAChG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uFAAuF;IACvF,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpD;AAED,kGAAkG;AAClG,MAAM,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAE1F;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAqBvF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,aAAa,CAAC,oBAAoB,CAAC,EAC9C,OAAO,EAAE,kBAAkB,GAC1B,IAAI,CA0bN"}
|
package/dist/event-processor.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { create } from "@bufbuild/protobuf";
|
|
2
|
-
import { grackle, eventTypeToEnum, SESSION_STATUS, TERMINAL_SESSION_STATUSES, END_REASON, } from "@grackle-ai/common";
|
|
2
|
+
import { grackle, eventTypeToEnum, SESSION_STATUS, TERMINAL_SESSION_STATUSES, END_REASON, detectDelegation, delegationIdentityKey, deriveChildSessionId, readAgentResultStatus, } from "@grackle-ai/common";
|
|
3
3
|
import { sessionStore, taskStore } from "@grackle-ai/database";
|
|
4
4
|
import { recordSessionAction } from "./session-action-recorder.js";
|
|
5
5
|
import * as streamHub from "./stream-hub.js";
|
|
@@ -11,6 +11,7 @@ import { logger } from "./logger.js";
|
|
|
11
11
|
import { runWithTrace } from "./trace-context.js";
|
|
12
12
|
import { emitDiagnostic } from "./telemetry.js";
|
|
13
13
|
import { publishChildCompletion } from "./pipe-delivery.js";
|
|
14
|
+
import { ensureChildSession, closeChildSession, appendChildActivity, interruptChildSession, unwrapResultContent, } from "./subagent-session.js";
|
|
14
15
|
import { cleanupLifecycleStream } from "./lifecycle-streams.js";
|
|
15
16
|
import { sendInputToSession } from "./signals/signal-delivery.js";
|
|
16
17
|
import { checkBudget } from "./budget-checker.js";
|
|
@@ -66,6 +67,11 @@ export function processEventStream(envelopes, options) {
|
|
|
66
67
|
taskId: options.taskId || "",
|
|
67
68
|
};
|
|
68
69
|
processorRegistry.register(ctx);
|
|
70
|
+
// #1075: maps a delegation tool_use call id → the child session it
|
|
71
|
+
// materialized, so the paired tool_result can append/close that child, and so
|
|
72
|
+
// the finally block can interrupt any child still open when the stream ends.
|
|
73
|
+
// Scoped to this stream (per parent session), so no cross-session leakage.
|
|
74
|
+
const delegationByToolCall = new Map();
|
|
69
75
|
/** Inner processing logic, extracted so it can be wrapped in runWithTrace. */
|
|
70
76
|
const processEvents = async () => {
|
|
71
77
|
try {
|
|
@@ -153,6 +159,72 @@ export function processEventStream(envelopes, options) {
|
|
|
153
159
|
if (sessionEvent.diagnostic) {
|
|
154
160
|
emitDiagnostic(sessionEvent);
|
|
155
161
|
}
|
|
162
|
+
// #1075: materialize/link subagent child sessions from delegation tool
|
|
163
|
+
// calls (Claude Code `Agent`, Copilot `task`/`read_agent`). The child is
|
|
164
|
+
// a first-class session so the existing activity view can render it.
|
|
165
|
+
if (event.type === "tool_use" && eventToolCallId) {
|
|
166
|
+
try {
|
|
167
|
+
const parsed = JSON.parse(eventContent || "{}");
|
|
168
|
+
const toolName = String(parsed.tool ?? parsed.tool_name ?? parsed.name ?? "");
|
|
169
|
+
const toolArgs = parsed.args ?? parsed.input ?? parsed.arguments;
|
|
170
|
+
const info = toolName ? detectDelegation(toolName, toolArgs) : undefined;
|
|
171
|
+
if (info) {
|
|
172
|
+
const identityKey = delegationIdentityKey(info, eventToolCallId);
|
|
173
|
+
const childId = deriveChildSessionId(sessionId, identityKey);
|
|
174
|
+
ensureChildSession({
|
|
175
|
+
childSessionId: childId,
|
|
176
|
+
parentSessionId: sessionId,
|
|
177
|
+
info,
|
|
178
|
+
});
|
|
179
|
+
delegationByToolCall.set(eventToolCallId, {
|
|
180
|
+
childId,
|
|
181
|
+
isPoll: info.isPoll === true,
|
|
182
|
+
isBackground: info.isBackground === true,
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
catch (err) {
|
|
187
|
+
logger.warn({ err, sessionId }, "Failed to process delegation tool_use");
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
else if (event.type === "tool_result" && eventToolCallId) {
|
|
191
|
+
const link = delegationByToolCall.get(eventToolCallId);
|
|
192
|
+
if (link) {
|
|
193
|
+
// Every tool_result pairs (and consumes) its tool_use entry, so only
|
|
194
|
+
// genuinely-unpaired synchronous spawns remain in the map for the
|
|
195
|
+
// finally block to interrupt. A background/polled child whose work
|
|
196
|
+
// outlives the parent stream is independent and must NOT be interrupted.
|
|
197
|
+
delegationByToolCall.delete(eventToolCallId);
|
|
198
|
+
if (link.isPoll) {
|
|
199
|
+
// A read_agent poll surfaces partial output. On a terminal status,
|
|
200
|
+
// closeChildSession records the result and stops the child; otherwise
|
|
201
|
+
// append the partial output. Recording happens in exactly one path so
|
|
202
|
+
// the terminal poll output isn't duplicated in the child log.
|
|
203
|
+
// Unwrap first: the result may be a JSON envelope
|
|
204
|
+
// ({"is_ok":true,"content":"Agent completed. agent_id: …"}), and the
|
|
205
|
+
// status prefix lives in `content`, not the envelope.
|
|
206
|
+
const status = readAgentResultStatus(unwrapResultContent(eventContent));
|
|
207
|
+
if (status === "completed" ||
|
|
208
|
+
status === "failed" ||
|
|
209
|
+
status === "error" ||
|
|
210
|
+
status === "cancelled") {
|
|
211
|
+
closeChildSession(link.childId, eventContent, status !== "completed");
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
appendChildActivity(link.childId, eventContent);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else if (link.isBackground) {
|
|
218
|
+
// A background spawn's result is just a handle, not completion —
|
|
219
|
+
// keep the child running; its output arrives via read_agent polls.
|
|
220
|
+
appendChildActivity(link.childId, eventContent);
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
// Synchronous spawn (e.g. Claude `Agent`): the result IS the summary.
|
|
224
|
+
closeChildSession(link.childId, eventContent, eventToolError);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
156
228
|
// Intercept usage events and accumulate token counts on the session record
|
|
157
229
|
if (event.type === "usage") {
|
|
158
230
|
try {
|
|
@@ -330,6 +402,23 @@ export function processEventStream(envelopes, options) {
|
|
|
330
402
|
}
|
|
331
403
|
finally {
|
|
332
404
|
processorRegistry.unregister(sessionId);
|
|
405
|
+
// #1075: the stream ended (normally, killed, or crashed) — interrupt any
|
|
406
|
+
// SYNCHRONOUS-spawn child whose tool_result never arrived so it isn't
|
|
407
|
+
// stranded RUNNING with no environment to reconnect to. Background spawns
|
|
408
|
+
// and polled children run independently of the parent stream, so they must
|
|
409
|
+
// NOT be interrupted here even if their handle/result never arrived (e.g.
|
|
410
|
+
// the stream ended right after the spawn tool_use).
|
|
411
|
+
//
|
|
412
|
+
// Known limitation (#1386): a background/polled child whose parent stream
|
|
413
|
+
// ends before a terminal poll stays RUNNING in the DB. It is excluded from
|
|
414
|
+
// all env/task/concurrency queries so it is harmless, but never reaches a
|
|
415
|
+
// terminal state — a reconciliation sweep is tracked as a follow-up.
|
|
416
|
+
for (const link of delegationByToolCall.values()) {
|
|
417
|
+
if (!link.isBackground && !link.isPoll) {
|
|
418
|
+
interruptChildSession(link.childId);
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
delegationByToolCall.clear();
|
|
333
422
|
logWriter.endSession(logPath);
|
|
334
423
|
try {
|
|
335
424
|
writeTranscript(logPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-processor.js","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-processor.js","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EACL,OAAO,EACP,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,iBAAiB,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAoDlD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAiB,EAAE,OAA2B;IAC/E,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;YAC/C,SAAS;YACT,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;YAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAChC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;SAClE,CAAC,CAAC;QACH,KAAK,CAAC,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAChD,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;gBAClE,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,gCAAgC,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC;QACL,CAAC;QACD,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,gCAAgC,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAA8C,EAC9C,OAA2B;IAE3B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEvC,0EAA0E;IAC1E,MAAM,GAAG,GAAqB;QAC5B,SAAS;QACT,OAAO;QACP,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;KAC7B,CAAC;IAEF,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEhC,mEAAmE;IACnE,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAGjC,CAAC;IAEJ,8EAA8E;IAC9E,MAAM,aAAa,GAAG,KAAK,IAAmB,EAAE;QAC9C,IAAI,CAAC;YACH,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3B,YAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;YAEpE,oFAAoF;YACpF,oFAAoF;YACpF,qFAAqF;YACrF,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACrD,SAAS;oBACT,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;oBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,OAAO,CAAC,aAAa;oBAC9B,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;iBAC7C,CAAC,CAAC;gBACH,oEAAoE;gBACpE,mEAAmE;gBACnE,0EAA0E;gBAC1E,WAAW,CAAC,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC/D,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBACjD,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACrD,SAAS;oBACT,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU;oBAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,OAAO,CAAC,MAAM;iBACxB,CAAC,CAAC;gBACH,WAAW,CAAC,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC/D,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBACjD,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC7B,oEAAoE;gBACpE,iEAAiE;gBACjE,qEAAqE;gBACrE,qEAAqE;gBACrE,2CAA2C;gBAC3C,MAAM,YAAY,GAAW,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;gBACjD,sEAAsE;gBACtE,wEAAwE;gBACxE,uEAAuE;gBACvE,uEAAuE;gBACvE,qEAAqE;gBACrE,qEAAqE;gBACrE,mEAAmE;gBACnE,kEAAkE;gBAClE,wDAAwD;gBACxD,MAAM,cAAc,GAAW,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC3E,MAAM,QAAQ,GAAW,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC;gBACzC,MAAM,eAAe,GAAW,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,MAAM,WAAW,GAAW,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;gBAC/C,MAAM,eAAe,GAAY,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC;gBAC3D,MAAM,cAAc,GAAY,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;gBACzD,wEAAwE;gBACxE,6EAA6E;gBAC7E,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBACxC,IAAI,YAAY,EAAE,CAAC;wBACjB,YAAY,CAAC,sBAAsB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAC/D,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACtD,SAAS;oBACT,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;oBACjC,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,YAAY;oBACrB,GAAG,EAAE,QAAQ;oBACb,UAAU,EAAE,eAAe;oBAC3B,UAAU,EAAE,eAAe;oBAC3B,MAAM,EAAE,WAAW;oBACnB,SAAS,EAAE,cAAc;iBAC1B,CAAC,CAAC;gBACH,oEAAoE;gBACpE,oEAAoE;gBACpE,YAAY,CAAC,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACjE,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;gBAClD,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAEhC,qEAAqE;gBACrE,uEAAuE;gBACvE,yEAAyE;gBACzE,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;oBAC5B,cAAc,CAAC,YAAY,CAAC,CAAC;gBAC/B,CAAC;gBAED,uEAAuE;gBACvE,yEAAyE;gBACzE,qEAAqE;gBACrE,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,eAAe,EAAE,CAAC;oBACjD,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAA4B,CAAC;wBAC3E,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;wBAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,CAAC;wBACjE,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;wBACzE,IAAI,IAAI,EAAE,CAAC;4BACT,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;4BACjE,MAAM,OAAO,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;4BAC7D,kBAAkB,CAAC;gCACjB,cAAc,EAAE,OAAO;gCACvB,eAAe,EAAE,SAAS;gCAC1B,IAAI;6BACL,CAAC,CAAC;4BACH,oBAAoB,CAAC,GAAG,CAAC,eAAe,EAAE;gCACxC,OAAO;gCACP,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;gCAC5B,YAAY,EAAE,IAAI,CAAC,YAAY,KAAK,IAAI;6BACzC,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,uCAAuC,CAAC,CAAC;oBAC3E,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,eAAe,EAAE,CAAC;oBAC3D,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oBACvD,IAAI,IAAI,EAAE,CAAC;wBACT,qEAAqE;wBACrE,kEAAkE;wBAClE,mEAAmE;wBACnE,yEAAyE;wBACzE,oBAAoB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;wBAC7C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;4BAChB,mEAAmE;4BACnE,sEAAsE;4BACtE,sEAAsE;4BACtE,8DAA8D;4BAC9D,kDAAkD;4BAClD,qEAAqE;4BACrE,sDAAsD;4BACtD,MAAM,MAAM,GAAG,qBAAqB,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAC;4BACxE,IACE,MAAM,KAAK,WAAW;gCACtB,MAAM,KAAK,QAAQ;gCACnB,MAAM,KAAK,OAAO;gCAClB,MAAM,KAAK,WAAW,EACtB,CAAC;gCACD,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,WAAW,CAAC,CAAC;4BACxE,CAAC;iCAAM,CAAC;gCACN,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;4BAClD,CAAC;wBACH,CAAC;6BAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;4BAC7B,iEAAiE;4BACjE,mEAAmE;4BACnE,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBAClD,CAAC;6BAAM,CAAC;4BACN,sEAAsE;4BACtE,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;wBAChE,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,2EAA2E;gBAC3E,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAI3C,CAAC;wBACF,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;4BACpD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAsB,CAAC,CAAC;4BACtD,CAAC,CAAC,CAAC,CAAC;wBACN,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;4BACtD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAuB,CAAC,CAAC;4BACvD,CAAC,CAAC,CAAC,CAAC;wBACN,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;4BAC1D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAyB,CAAC,CAAC;4BACzD,CAAC,CAAC,CAAC,CAAC;wBACN,IAAI,WAAW,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;4BAC9D,YAAY,CAAC,kBAAkB,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;4BAEtF,gCAAgC;4BAChC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;gCACzC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;gCAC9D,IAAI,YAAY,EAAE,CAAC;oCACjB,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oCACnD,IACE,OAAO;wCACP,CAAC,OAAO,CAAC,aAAa;wCACtB,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAuB,CAAC,EAC/D,CAAC;wCACD,MAAM,UAAU,GACd,8BAA8B,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,MAAM,MAAM,YAAY,CAAC,OAAO,IAAI;4CACrG,yEAAyE;4CACzE,mCAAmC,CAAC;wCACtC,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;wCACzC,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC;wCAC7B,kBAAkB,CAChB,SAAS,EACT,OAAO,CAAC,aAAa,EACrB,UAAU,EACV,iBAAiB,CAClB;6CACE,IAAI,CAAC,CAAC,SAAkB,EAAE,EAAE;4CAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;gDACf,MAAM,CAAC,KAAK,CACV,EAAE,SAAS,EAAE,EACb,6DAA6D,CAC9D,CAAC;gDACF,YAAY,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;gDAC3C,GAAG,CAAC,iBAAiB,GAAG,KAAK,CAAC;4CAChC,CAAC;wCACH,CAAC,CAAC;6CACD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;4CACtB,MAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,SAAS,EAAE,EAClB,2CAA2C,CAC5C,CAAC;4CACF,YAAY,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;4CAC3C,GAAG,CAAC,iBAAiB,GAAG,KAAK,CAAC;wCAChC,CAAC,CAAC,CAAC;wCACL,MAAM,CAAC,IAAI,CACT;4CACE,SAAS;4CACT,MAAM,EAAE,GAAG,CAAC,MAAM;4CAClB,KAAK,EAAE,YAAY,CAAC,KAAK;4CACzB,MAAM,EAAE,YAAY,CAAC,MAAM;yCAC5B,EACD,gCAAgC,CACjC,CAAC;oCACJ,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,+BAA+B,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC5B,qEAAqE;oBACrE,kEAAkE;oBAClE,qEAAqE;oBACrE,4DAA4D;oBAC5D,oCAAoC;oBACpC,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBACzD,MAAM,UAAU,GACd,aAAa,KAAK,SAAS;wBAC3B,yBAAyB,CAAC,GAAG,CAAC,aAAa,CAAC,MAAuB,CAAC,CAAC;oBACvE,yDAAyD;oBACzD,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;wBACrC,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,YAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;wBACnE,CAAC;oBACH,CAAC;yBAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBACtC,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,YAAY,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;wBACtE,CAAC;oBACH,CAAC;yBAAM,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;wBACxC,qGAAqG;wBACrG,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;wBACnD,MAAM,SAAS,GAAG,GAAG,CAAC,iBAAiB;4BACrC,CAAC,CAAC,UAAU,CAAC,eAAe;4BAC5B,CAAC,CAAC,OAAO,EAAE,aAAa;gCACtB,CAAC,CAAC,UAAU,CAAC,UAAU;gCACvB,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;wBAC3B,YAAY,CAAC,aAAa,CACxB,SAAS,EACT,cAAc,CAAC,OAAO,EACtB,SAAS,EACT,SAAS,EACT,SAAS,CACV,CAAC;oBACJ,CAAC;yBAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACrC,MAAM,eAAe,GAAG,GAAG,CAAC,iBAAiB;4BAC3C,CAAC,CAAC,UAAU,CAAC,eAAe;4BAC5B,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;wBACtB,YAAY,CAAC,aAAa,CACxB,SAAS,EACT,cAAc,CAAC,OAAO,EACtB,SAAS,EACT,SAAS,EACT,eAAe,CAChB,CAAC;oBACJ,CAAC;yBAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACrC,YAAY,CAAC,aAAa,CACxB,SAAS,EACT,cAAc,CAAC,OAAO,EACtB,SAAS,EACT,SAAS,EACT,UAAU,CAAC,WAAW,CACvB,CAAC;wBACF,sBAAsB,CAAC,SAAS,CAAC,CAAC;oBACpC,CAAC;yBAAM,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;wBACzC,MAAM,mBAAmB,GAAG,GAAG,CAAC,iBAAiB;4BAC/C,CAAC,CAAC,UAAU,CAAC,eAAe;4BAC5B,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;wBAC1B,YAAY,CAAC,aAAa,CACxB,SAAS,EACT,cAAc,CAAC,OAAO,EACtB,SAAS,EACT,SAAS,EACT,mBAAmB,CACpB,CAAC;oBACJ,CAAC;oBAED,wEAAwE;oBACxE,qEAAqE;oBACrE,uEAAuE;oBACvE,yEAAyE;oBACzE,IACE,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EACvF,CAAC;wBACD,MAAM,sBAAsB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBACxD,CAAC;oBAED,4EAA4E;oBAC5E,wCAAwC;oBACxC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC9D,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAC3C,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gCAC1B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC;oCACpC,MAAM,EAAE,YAAY;oCACpB,OAAO,EAAE,6BAA6B,YAAY,+BAA+B;oCACjF,KAAK,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;iCAC9C,CAAC,CAAC;gCACH,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;4BACnD,CAAC;wBACH,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,yCAAyC,CAAC,CAAC;wBAC7E,CAAC;oBACH,CAAC;oBAED,mFAAmF;oBACnF,8EAA8E;oBAC9E,6EAA6E;oBAC7E,IACE,GAAG,CAAC,MAAM;wBACV,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,QAAQ,CAClF,YAAY,CACb,EACD,CAAC;wBACD,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC7E,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+EAA+E;YAC/E,mFAAmF;YACnF,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACnD,IACE,OAAO;gBACP,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAuB,CAAC;gBAC/D,OAAO,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,EAC3C,CAAC;gBACD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBACf,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACnD,IAAI,OAAO,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAuB,CAAC,EAAE,CAAC;gBAC/E,4EAA4E;gBAC5E,sEAAsE;gBACtE,MAAM,CAAC,IAAI,CACT;oBACE,SAAS;oBACT,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;oBAChB,SAAS,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG;oBACvD,SAAS,EAAG,GAAyB,CAAC,IAAI;iBAC3C,EACD,+CAA+C,CAChD,CAAC;gBACF,YAAY,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACvC,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACxD,SAAS;oBACT,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;oBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,cAAc,CAAC,SAAS;iBAClC,CAAC,CAAC;gBACH,cAAc,CAAC,SAAS,GAAG,mBAAmB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBACrE,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAClC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBACf,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;YACD,8EAA8E;YAC9E,gFAAgF;YAChF,2EAA2E;QAC7E,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACxC,yEAAyE;YACzE,sEAAsE;YACtE,0EAA0E;YAC1E,2EAA2E;YAC3E,0EAA0E;YAC1E,oDAAoD;YACpD,EAAE;YACF,0EAA0E;YAC1E,2EAA2E;YAC3E,0EAA0E;YAC1E,qEAAqE;YACrE,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACvC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YACD,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAC7B,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC;gBACH,eAAe,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,kBAAkB;YACpB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,mEAAmE;QACnE,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,mEAAmE;QACnE,aAAa,EAAE,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subagent child-session materialization (#1075).
|
|
3
|
+
*
|
|
4
|
+
* When a parent session emits a delegation tool call (Claude Code `Agent`,
|
|
5
|
+
* Copilot `task`/`read_agent`), the runtime SDK isolates the subagent's context
|
|
6
|
+
* — the parent stream only carries the final summary, and the subagent has no
|
|
7
|
+
* Grackle session of its own. This module materializes the subagent as a
|
|
8
|
+
* **first-class child session** so it is addressable and navigable:
|
|
9
|
+
*
|
|
10
|
+
* - identity is derived deterministically from the parent + the delegation's
|
|
11
|
+
* identity key, so repeated references (e.g. Copilot `read_agent` polls) all
|
|
12
|
+
* resolve to the *same* child session (dedupe falls out of identity), and
|
|
13
|
+
* - the child's activity is written to its own session log (durable
|
|
14
|
+
* `session_actions` + JSONL + live stream-hub), the same paths every session
|
|
15
|
+
* uses, so the existing session activity view renders it unchanged.
|
|
16
|
+
*
|
|
17
|
+
* SDK-internal subagents only surface their final summary, so the child's
|
|
18
|
+
* activity starts as a "floor" (delegating prompt + result). The model is the
|
|
19
|
+
* same as any other session, so the activity upgrades automatically if/when a
|
|
20
|
+
* runtime exposes richer events.
|
|
21
|
+
*
|
|
22
|
+
* @module
|
|
23
|
+
*/
|
|
24
|
+
import type { DelegationInfo } from "@grackle-ai/common";
|
|
25
|
+
/**
|
|
26
|
+
* Tool results often arrive JSON-wrapped (e.g. `{"is_ok":true,"content":"…"}`).
|
|
27
|
+
* Extract the human-readable `content` string so the child's floor activity
|
|
28
|
+
* shows clean text rather than the raw envelope — and so status parsing
|
|
29
|
+
* (`readAgentResultStatus`) sees the real `read_agent` prefix rather than the
|
|
30
|
+
* envelope. Returns the input unchanged if it isn't a JSON object with a string
|
|
31
|
+
* `content` field.
|
|
32
|
+
*/
|
|
33
|
+
export declare function unwrapResultContent(result: string): string;
|
|
34
|
+
/** Parameters for {@link ensureChildSession}. */
|
|
35
|
+
export interface EnsureChildSessionParams {
|
|
36
|
+
/** Deterministic child session id (see {@link deriveChildSessionId}). */
|
|
37
|
+
childSessionId: string;
|
|
38
|
+
/** The delegating (parent) session id. */
|
|
39
|
+
parentSessionId: string;
|
|
40
|
+
/** Normalized delegation info parsed from the tool args. */
|
|
41
|
+
info: DelegationInfo;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Resolve-or-create the child session for a delegation. Idempotent: if the
|
|
45
|
+
* child already exists (e.g. a `read_agent` poll following the original spawn,
|
|
46
|
+
* or a re-emitted event), this is a no-op so no duplicate session or floor
|
|
47
|
+
* action is created.
|
|
48
|
+
*
|
|
49
|
+
* The child is attached to its parent **session** (via `parentSessionId`), not a
|
|
50
|
+
* task: it is created with `taskId=""` so it is invisible to every task-scoped
|
|
51
|
+
* query (status computation, active/latest session lookups used for signal
|
|
52
|
+
* routing, usage aggregation, reconciliation). It inherits the parent's
|
|
53
|
+
* `environmentId` (the subagent ran in the parent's environment, and the
|
|
54
|
+
* `sessions.env_id` foreign key requires a real environment), but the `subagent`
|
|
55
|
+
* runtime marker keeps it out of env- and lifecycle-scoped queries
|
|
56
|
+
* (`getActiveForEnv`, `listByEnv`, etc.) so reanimate/recovery never tries to
|
|
57
|
+
* reconnect a virtual child. It remains addressable by id for navigation, and
|
|
58
|
+
* the parent edge is recovered via `parentSessionId`. The log directory sits
|
|
59
|
+
* alongside the parent's so the standard session activity view renders it.
|
|
60
|
+
*
|
|
61
|
+
* @param params - Child id, parent id, and parsed delegation info.
|
|
62
|
+
*/
|
|
63
|
+
export declare function ensureChildSession(params: EnsureChildSessionParams): void;
|
|
64
|
+
/**
|
|
65
|
+
* Append a result to a child session and mark it terminal. Called when the
|
|
66
|
+
* delegation's paired `tool_result` arrives. No-op if the child does not exist.
|
|
67
|
+
*
|
|
68
|
+
* @param childSessionId - The child session id.
|
|
69
|
+
* @param result - The subagent's result text (the summary, for SDK-internal subagents).
|
|
70
|
+
* @param isError - Whether the tool result was an error.
|
|
71
|
+
*/
|
|
72
|
+
export declare function closeChildSession(childSessionId: string, result: string, isError: boolean): void;
|
|
73
|
+
/**
|
|
74
|
+
* Append incremental activity to an existing child session without closing it.
|
|
75
|
+
* Used for `read_agent` polls that surface partial output while the subagent is
|
|
76
|
+
* still running. No-op if the child does not exist or the content is empty.
|
|
77
|
+
*
|
|
78
|
+
* @param childSessionId - The child session id.
|
|
79
|
+
* @param content - Incremental output to append.
|
|
80
|
+
*/
|
|
81
|
+
export declare function appendChildActivity(childSessionId: string, content: string): void;
|
|
82
|
+
/**
|
|
83
|
+
* Mark a still-open child session as interrupted (terminal) without recording a
|
|
84
|
+
* result. Called when the parent stream ends while a delegation is still
|
|
85
|
+
* outstanding (e.g. the parent crashed mid-subagent), so a child is never left
|
|
86
|
+
* stranded in `RUNNING` with no environment to reconnect to. No-op if the child
|
|
87
|
+
* does not exist or is already terminal.
|
|
88
|
+
*
|
|
89
|
+
* @param childSessionId - The child session id.
|
|
90
|
+
*/
|
|
91
|
+
export declare function interruptChildSession(childSessionId: string): void;
|
|
92
|
+
//# sourceMappingURL=subagent-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subagent-session.d.ts","sourceRoot":"","sources":["../src/subagent-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAWH,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,oBAAoB,CAAC;AAqBxE;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAa1D;AA8BD,iDAAiD;AACjD,MAAM,WAAW,wBAAwB;IACvC,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,4DAA4D;IAC5D,IAAI,EAAE,cAAc,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,IAAI,CAgCzE;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAyBhG;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAcjF;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAYlE"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subagent child-session materialization (#1075).
|
|
3
|
+
*
|
|
4
|
+
* When a parent session emits a delegation tool call (Claude Code `Agent`,
|
|
5
|
+
* Copilot `task`/`read_agent`), the runtime SDK isolates the subagent's context
|
|
6
|
+
* — the parent stream only carries the final summary, and the subagent has no
|
|
7
|
+
* Grackle session of its own. This module materializes the subagent as a
|
|
8
|
+
* **first-class child session** so it is addressable and navigable:
|
|
9
|
+
*
|
|
10
|
+
* - identity is derived deterministically from the parent + the delegation's
|
|
11
|
+
* identity key, so repeated references (e.g. Copilot `read_agent` polls) all
|
|
12
|
+
* resolve to the *same* child session (dedupe falls out of identity), and
|
|
13
|
+
* - the child's activity is written to its own session log (durable
|
|
14
|
+
* `session_actions` + JSONL + live stream-hub), the same paths every session
|
|
15
|
+
* uses, so the existing session activity view renders it unchanged.
|
|
16
|
+
*
|
|
17
|
+
* SDK-internal subagents only surface their final summary, so the child's
|
|
18
|
+
* activity starts as a "floor" (delegating prompt + result). The model is the
|
|
19
|
+
* same as any other session, so the activity upgrades automatically if/when a
|
|
20
|
+
* runtime exposes richer events.
|
|
21
|
+
*
|
|
22
|
+
* @module
|
|
23
|
+
*/
|
|
24
|
+
import { dirname, join } from "node:path";
|
|
25
|
+
import { create } from "@bufbuild/protobuf";
|
|
26
|
+
import { grackle, SESSION_STATUS, END_REASON, TERMINAL_SESSION_STATUSES, SUBAGENT_RUNTIME, } from "@grackle-ai/common";
|
|
27
|
+
import { sessionStore } from "@grackle-ai/database";
|
|
28
|
+
import { recordSessionAction } from "./session-action-recorder.js";
|
|
29
|
+
import * as streamHub from "./stream-hub.js";
|
|
30
|
+
import * as logWriter from "./log-writer.js";
|
|
31
|
+
import { logger } from "./logger.js";
|
|
32
|
+
/**
|
|
33
|
+
* Maximum length of a floor activity entry (delegation prompt / result) written
|
|
34
|
+
* to a child session. Subagent summaries can be large; cap to keep the log lean.
|
|
35
|
+
*/
|
|
36
|
+
const MAX_FLOOR_ENTRY_LENGTH = 16000;
|
|
37
|
+
/** Truncate a floor entry to {@link MAX_FLOOR_ENTRY_LENGTH}, appending an ellipsis marker. */
|
|
38
|
+
function clamp(text) {
|
|
39
|
+
if (text.length <= MAX_FLOOR_ENTRY_LENGTH) {
|
|
40
|
+
return text;
|
|
41
|
+
}
|
|
42
|
+
return `${text.slice(0, MAX_FLOOR_ENTRY_LENGTH)}\n…[truncated]`;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Tool results often arrive JSON-wrapped (e.g. `{"is_ok":true,"content":"…"}`).
|
|
46
|
+
* Extract the human-readable `content` string so the child's floor activity
|
|
47
|
+
* shows clean text rather than the raw envelope — and so status parsing
|
|
48
|
+
* (`readAgentResultStatus`) sees the real `read_agent` prefix rather than the
|
|
49
|
+
* envelope. Returns the input unchanged if it isn't a JSON object with a string
|
|
50
|
+
* `content` field.
|
|
51
|
+
*/
|
|
52
|
+
export function unwrapResultContent(result) {
|
|
53
|
+
if (!result.trimStart().startsWith("{")) {
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
try {
|
|
57
|
+
const parsed = JSON.parse(result);
|
|
58
|
+
if (typeof parsed.content === "string") {
|
|
59
|
+
return parsed.content;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
/* not JSON — use as-is */
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Record one activity event on a child session via the same three sinks every
|
|
69
|
+
* session uses: durable `session_actions` (serverSeq), JSONL (live read), and
|
|
70
|
+
* the live stream-hub broadcast. Best-effort — failures are logged, not thrown.
|
|
71
|
+
*/
|
|
72
|
+
function recordChildEvent(childSessionId, logPath, type, content) {
|
|
73
|
+
const event = create(grackle.SessionEventSchema, {
|
|
74
|
+
sessionId: childSessionId,
|
|
75
|
+
type,
|
|
76
|
+
timestamp: new Date().toISOString(),
|
|
77
|
+
content: clamp(content),
|
|
78
|
+
});
|
|
79
|
+
// serverSeq first so the durable log, JSONL, and live push share a dedup key.
|
|
80
|
+
event.serverSeq = recordSessionAction(event) ?? "";
|
|
81
|
+
if (logPath) {
|
|
82
|
+
logWriter.ensureLogInitialized(logPath);
|
|
83
|
+
logWriter.writeEvent(logPath, event).catch((err) => {
|
|
84
|
+
logger.error({ err, childSessionId }, "Failed to write subagent child event to JSONL");
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
streamHub.publish(event);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Resolve-or-create the child session for a delegation. Idempotent: if the
|
|
91
|
+
* child already exists (e.g. a `read_agent` poll following the original spawn,
|
|
92
|
+
* or a re-emitted event), this is a no-op so no duplicate session or floor
|
|
93
|
+
* action is created.
|
|
94
|
+
*
|
|
95
|
+
* The child is attached to its parent **session** (via `parentSessionId`), not a
|
|
96
|
+
* task: it is created with `taskId=""` so it is invisible to every task-scoped
|
|
97
|
+
* query (status computation, active/latest session lookups used for signal
|
|
98
|
+
* routing, usage aggregation, reconciliation). It inherits the parent's
|
|
99
|
+
* `environmentId` (the subagent ran in the parent's environment, and the
|
|
100
|
+
* `sessions.env_id` foreign key requires a real environment), but the `subagent`
|
|
101
|
+
* runtime marker keeps it out of env- and lifecycle-scoped queries
|
|
102
|
+
* (`getActiveForEnv`, `listByEnv`, etc.) so reanimate/recovery never tries to
|
|
103
|
+
* reconnect a virtual child. It remains addressable by id for navigation, and
|
|
104
|
+
* the parent edge is recovered via `parentSessionId`. The log directory sits
|
|
105
|
+
* alongside the parent's so the standard session activity view renders it.
|
|
106
|
+
*
|
|
107
|
+
* @param params - Child id, parent id, and parsed delegation info.
|
|
108
|
+
*/
|
|
109
|
+
export function ensureChildSession(params) {
|
|
110
|
+
const { childSessionId, parentSessionId, info } = params;
|
|
111
|
+
if (sessionStore.getSession(childSessionId)) {
|
|
112
|
+
return; // already materialized — dedupe
|
|
113
|
+
}
|
|
114
|
+
const parent = sessionStore.getSession(parentSessionId);
|
|
115
|
+
if (!parent) {
|
|
116
|
+
return; // can't attach a child to a parent that doesn't exist
|
|
117
|
+
}
|
|
118
|
+
// Child log dir sits alongside the parent's (same logs root); empty if the
|
|
119
|
+
// parent is an ad-hoc session without a log path (then activity is session_actions-only).
|
|
120
|
+
const logPath = parent.logPath ? join(dirname(parent.logPath), childSessionId) : "";
|
|
121
|
+
sessionStore.createSession(childSessionId, parent.environmentId, // inherit parent's env (satisfies the env_id FK; subagent runtime excludes it from env queries)
|
|
122
|
+
SUBAGENT_RUNTIME, info.prompt ?? "", info.model ?? "", logPath, "", // taskId — attached to the parent session, not a task (see above)
|
|
123
|
+
"", // personaId
|
|
124
|
+
parentSessionId, "");
|
|
125
|
+
sessionStore.updateSessionStatus(childSessionId, SESSION_STATUS.RUNNING);
|
|
126
|
+
// Floor activity: the delegating prompt as the child's opening context.
|
|
127
|
+
if (info.prompt) {
|
|
128
|
+
recordChildEvent(childSessionId, logPath, grackle.EventType.USER_INPUT, info.prompt);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Append a result to a child session and mark it terminal. Called when the
|
|
133
|
+
* delegation's paired `tool_result` arrives. No-op if the child does not exist.
|
|
134
|
+
*
|
|
135
|
+
* @param childSessionId - The child session id.
|
|
136
|
+
* @param result - The subagent's result text (the summary, for SDK-internal subagents).
|
|
137
|
+
* @param isError - Whether the tool result was an error.
|
|
138
|
+
*/
|
|
139
|
+
export function closeChildSession(childSessionId, result, isError) {
|
|
140
|
+
const session = sessionStore.getSession(childSessionId);
|
|
141
|
+
if (!session) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
// Idempotent: a replayed/reanimated tool_result must not append the summary
|
|
145
|
+
// again to an already-terminal child.
|
|
146
|
+
if (TERMINAL_SESSION_STATUSES.has(session.status)) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
if (result) {
|
|
150
|
+
recordChildEvent(childSessionId, session.logPath ?? "", grackle.EventType.TEXT, unwrapResultContent(result));
|
|
151
|
+
}
|
|
152
|
+
sessionStore.updateSession(childSessionId, SESSION_STATUS.STOPPED, undefined, isError ? result : undefined, isError ? END_REASON.INTERRUPTED : END_REASON.COMPLETED);
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Append incremental activity to an existing child session without closing it.
|
|
156
|
+
* Used for `read_agent` polls that surface partial output while the subagent is
|
|
157
|
+
* still running. No-op if the child does not exist or the content is empty.
|
|
158
|
+
*
|
|
159
|
+
* @param childSessionId - The child session id.
|
|
160
|
+
* @param content - Incremental output to append.
|
|
161
|
+
*/
|
|
162
|
+
export function appendChildActivity(childSessionId, content) {
|
|
163
|
+
if (!content) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
const session = sessionStore.getSession(childSessionId);
|
|
167
|
+
if (!session) {
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
recordChildEvent(childSessionId, session.logPath ?? "", grackle.EventType.TEXT, unwrapResultContent(content));
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Mark a still-open child session as interrupted (terminal) without recording a
|
|
174
|
+
* result. Called when the parent stream ends while a delegation is still
|
|
175
|
+
* outstanding (e.g. the parent crashed mid-subagent), so a child is never left
|
|
176
|
+
* stranded in `RUNNING` with no environment to reconnect to. No-op if the child
|
|
177
|
+
* does not exist or is already terminal.
|
|
178
|
+
*
|
|
179
|
+
* @param childSessionId - The child session id.
|
|
180
|
+
*/
|
|
181
|
+
export function interruptChildSession(childSessionId) {
|
|
182
|
+
const session = sessionStore.getSession(childSessionId);
|
|
183
|
+
if (!session || TERMINAL_SESSION_STATUSES.has(session.status)) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
sessionStore.updateSession(childSessionId, SESSION_STATUS.STOPPED, undefined, undefined, END_REASON.INTERRUPTED);
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=subagent-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subagent-session.js","sourceRoot":"","sources":["../src/subagent-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-session.d.ts","sourceRoot":"","sources":["../src/task-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAIL,SAAS,EAIV,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"task-session.d.ts","sourceRoot":"","sources":["../src/task-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAIL,SAAS,EAIV,MAAM,sBAAsB,CAAC;AAsB9B;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,SAAS,CAAC,OAAO,EACvB,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACvE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAiM7B"}
|
package/dist/task-session.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
11
|
import { envRegistry, sessionStore, workspaceStore, taskStore, personaStore, settingsStore, grackleHome, } from "@grackle-ai/database";
|
|
12
|
+
import { ConnectError } from "@connectrpc/connect";
|
|
12
13
|
import * as adapterManager from "./adapter-manager.js";
|
|
13
14
|
import * as tokenPush from "./token-push.js";
|
|
14
15
|
import { v4 as uuid } from "uuid";
|
|
@@ -112,15 +113,25 @@ export async function startTaskSession(task, options) {
|
|
|
112
113
|
relatedPriorWork,
|
|
113
114
|
knowledgeGuidance: knowledgeOn,
|
|
114
115
|
}).build();
|
|
116
|
+
// Supply credentials on demand for this runtime, just before spawn (AHP HR6).
|
|
117
|
+
// For local envs, skip file tokens — the PowerLine is on the same machine.
|
|
118
|
+
// Pre-flight (#1316): a required-but-missing/expired credential throws here;
|
|
119
|
+
// surface it as a returned error string (the function's failure contract) so
|
|
120
|
+
// the dispatcher keeps the task queued for retry — and crucially before any
|
|
121
|
+
// session row is created or "task.started" emitted below.
|
|
122
|
+
try {
|
|
123
|
+
await tokenPush.authenticateForRuntime(environmentId, runtime, env.adapterType === "local" ? { excludeFileTokens: true } : undefined);
|
|
124
|
+
}
|
|
125
|
+
catch (err) {
|
|
126
|
+
logger.warn({ taskId: freshTask.id, environmentId, runtime }, "startTaskSession failed: pre-flight credential check");
|
|
127
|
+
return err instanceof ConnectError ? err.rawMessage : err.message;
|
|
128
|
+
}
|
|
115
129
|
sessionStore.createSession(sessionId, environmentId, runtime, freshTask.title, model, logPath, freshTask.id, resolved.personaId);
|
|
116
130
|
emit("task.started", {
|
|
117
131
|
taskId: freshTask.id,
|
|
118
132
|
sessionId,
|
|
119
133
|
workspaceId: freshTask.workspaceId || "",
|
|
120
134
|
});
|
|
121
|
-
// Supply credentials on demand for this runtime, just before spawn (AHP HR6).
|
|
122
|
-
// For local envs, skip file tokens — the PowerLine is on the same machine.
|
|
123
|
-
await tokenPush.authenticateForRuntime(environmentId, runtime, env.adapterType === "local" ? { excludeFileTokens: true } : undefined);
|
|
124
135
|
const mcpServersJson = personaMcpServersToJson(resolved.mcpServers, resolved.personaId);
|
|
125
136
|
// Build MCP broker URL + scoped token so runtimes can call the MCP server.
|
|
126
137
|
const mcpPort = parseInt(process.env.GRACKLE_MCP_PORT || String(DEFAULT_MCP_PORT), 10);
|
package/dist/task-session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-session.js","sourceRoot":"","sources":["../src/task-session.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"task-session.js","sourceRoot":"","sources":["../src/task-session.ts"],"names":[],"mappings":"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"}
|
package/dist/token-push.d.ts
CHANGED
|
@@ -7,8 +7,20 @@ export interface AuthenticateOptions {
|
|
|
7
7
|
* Supply credentials for a runtime to its environment on demand, just before a
|
|
8
8
|
* spawn. Combines stored user tokens with the runtime-scoped provider bundle
|
|
9
9
|
* (read fresh from env/disk) and delivers them via the host transport's
|
|
10
|
-
* `authenticate` method.
|
|
11
|
-
*
|
|
10
|
+
* `authenticate` method.
|
|
11
|
+
*
|
|
12
|
+
* **Fail-fast pre-flight (#1316):** before delivery, this validates that every
|
|
13
|
+
* credential the runtime advertises a need for (a provider that is *enabled* in
|
|
14
|
+
* the credential-provider config) is actually present — and, for OAuth-file
|
|
15
|
+
* credentials, not expired-beyond-refresh. When a required credential is missing
|
|
16
|
+
* or its login has expired with no refresh token, it throws a
|
|
17
|
+
* `ConnectError(FailedPrecondition)` with an actionable message rather than
|
|
18
|
+
* letting the runtime fail with an opaque 401 mid-agent. (Providers that are
|
|
19
|
+
* *off* are not validated.) Note this changes the function from never-throws to
|
|
20
|
+
* fail-fast on a required-but-missing credential.
|
|
21
|
+
*
|
|
22
|
+
* Once the pre-flight gate passes, *delivery* remains best-effort: a transport
|
|
23
|
+
* `authenticate` failure is logged and does not block the spawn.
|
|
12
24
|
*/
|
|
13
25
|
export declare function authenticateForRuntime(environmentId: string, runtime: string, options?: AuthenticateOptions): Promise<void>;
|
|
14
26
|
//# sourceMappingURL=token-push.d.ts.map
|
package/dist/token-push.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-push.d.ts","sourceRoot":"","sources":["../src/token-push.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-push.d.ts","sourceRoot":"","sources":["../src/token-push.ts"],"names":[],"mappings":"AAyBA,kDAAkD;AAClD,MAAM,WAAW,mBAAmB;IAClC,2FAA2F;IAC3F,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,sBAAsB,CAC1C,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
package/dist/token-push.js
CHANGED
|
@@ -1,13 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* On-demand credential supply (AHP HR6).
|
|
3
|
+
*
|
|
4
|
+
* Builds the combined credential bundle for a runtime (stored user tokens +
|
|
5
|
+
* provider credentials read fresh from env/disk) and authenticates it to the
|
|
6
|
+
* connected PowerLine just-in-time, immediately before a spawn. This replaces
|
|
7
|
+
* the proactive `PushTokens` injection (eager push before every spawn / on
|
|
8
|
+
* token change / on reconnect): credentials are now supplied on demand, scoped
|
|
9
|
+
* to the runtime being spawned.
|
|
10
|
+
*
|
|
11
|
+
* Pure persistence lives in `@grackle-ai/database` (tokenStore); credential
|
|
12
|
+
* bundle building lives in {@link ./credential-bundle.ts}.
|
|
13
|
+
*/
|
|
14
|
+
import { ConnectError, Code } from "@connectrpc/connect";
|
|
1
15
|
import * as adapterManager from "./adapter-manager.js";
|
|
2
|
-
import { envRegistry, tokenStore } from "@grackle-ai/database";
|
|
3
|
-
import { buildProviderTokenBundle } from "./credential-bundle.js";
|
|
16
|
+
import { credentialProviders, envRegistry, tokenStore } from "@grackle-ai/database";
|
|
17
|
+
import { buildProviderTokenBundle, deriveCredentialNeeds, findUnsatisfiedNeeds, formatPreflightCredentialError, } from "./credential-bundle.js";
|
|
4
18
|
import { logger } from "./logger.js";
|
|
5
19
|
/**
|
|
6
20
|
* Supply credentials for a runtime to its environment on demand, just before a
|
|
7
21
|
* spawn. Combines stored user tokens with the runtime-scoped provider bundle
|
|
8
22
|
* (read fresh from env/disk) and delivers them via the host transport's
|
|
9
|
-
* `authenticate` method.
|
|
10
|
-
*
|
|
23
|
+
* `authenticate` method.
|
|
24
|
+
*
|
|
25
|
+
* **Fail-fast pre-flight (#1316):** before delivery, this validates that every
|
|
26
|
+
* credential the runtime advertises a need for (a provider that is *enabled* in
|
|
27
|
+
* the credential-provider config) is actually present — and, for OAuth-file
|
|
28
|
+
* credentials, not expired-beyond-refresh. When a required credential is missing
|
|
29
|
+
* or its login has expired with no refresh token, it throws a
|
|
30
|
+
* `ConnectError(FailedPrecondition)` with an actionable message rather than
|
|
31
|
+
* letting the runtime fail with an opaque 401 mid-agent. (Providers that are
|
|
32
|
+
* *off* are not validated.) Note this changes the function from never-throws to
|
|
33
|
+
* fail-fast on a required-but-missing credential.
|
|
34
|
+
*
|
|
35
|
+
* Once the pre-flight gate passes, *delivery* remains best-effort: a transport
|
|
36
|
+
* `authenticate` failure is logged and does not block the spawn.
|
|
11
37
|
*/
|
|
12
38
|
export async function authenticateForRuntime(environmentId, runtime, options) {
|
|
13
39
|
const conn = adapterManager.getConnection(environmentId);
|
|
@@ -18,6 +44,15 @@ export async function authenticateForRuntime(environmentId, runtime, options) {
|
|
|
18
44
|
const githubAccountId = env?.githubAccountId || undefined;
|
|
19
45
|
const stored = tokenStore.getBundle();
|
|
20
46
|
const provider = await buildProviderTokenBundle(runtime, undefined, githubAccountId);
|
|
47
|
+
// Pre-flight credential validation (#1316). Validate the runtime's advertised
|
|
48
|
+
// needs against the *unfiltered* provider bundle, so the local-env file-token
|
|
49
|
+
// stripping below cannot mask a credential that is present on disk. Throws
|
|
50
|
+
// before delivery (and before any session row is created at the call site).
|
|
51
|
+
const config = credentialProviders.getCredentialProviders();
|
|
52
|
+
const unsatisfied = findUnsatisfiedNeeds(deriveCredentialNeeds(runtime, config), provider, Date.now());
|
|
53
|
+
if (unsatisfied.length > 0) {
|
|
54
|
+
throw new ConnectError(formatPreflightCredentialError(runtime, unsatisfied), Code.FailedPrecondition);
|
|
55
|
+
}
|
|
21
56
|
// Provider credentials come last so they win over any same-target stored token.
|
|
22
57
|
let combined = [...stored.tokens, ...provider.tokens];
|
|
23
58
|
if (options?.excludeFileTokens) {
|
package/dist/token-push.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-push.js","sourceRoot":"","sources":["../src/token-push.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-push.js","sourceRoot":"","sources":["../src/token-push.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQrC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,aAAqB,EACrB,OAAe,EACf,OAA6B;IAE7B,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,GAAG,EAAE,eAAe,IAAI,SAAS,CAAC;IAE1D,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAErF,8EAA8E;IAC9E,8EAA8E;IAC9E,2EAA2E;IAC3E,4EAA4E;IAC5E,MAAM,MAAM,GAAG,mBAAmB,CAAC,sBAAsB,EAAE,CAAC;IAC5D,MAAM,WAAW,GAAG,oBAAoB,CACtC,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,EACtC,QAAQ,EACR,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,YAAY,CACpB,8BAA8B,CAAC,OAAO,EAAE,WAAW,CAAC,EACpD,IAAI,CAAC,kBAAkB,CACxB,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,IAAI,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC/B,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAA4B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,KAAK,EAAE,CAAC,CAAC,KAAK;KACf,CAAC,CAAC,CAAC;IAEJ,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,iDAAiD,CAAC,CAAC;IAClG,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grackle-ai/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.135.0",
|
|
4
4
|
"description": "Core gRPC business logic for Grackle - RPC handlers, event system, streaming, session lifecycle",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -42,14 +42,14 @@
|
|
|
42
42
|
"pino": "^10.3.1",
|
|
43
43
|
"ulid": "^2.3.0",
|
|
44
44
|
"uuid": "^11.1.1",
|
|
45
|
-
"@grackle-ai/
|
|
46
|
-
"@grackle-ai/
|
|
47
|
-
"@grackle-ai/
|
|
48
|
-
"@grackle-ai/
|
|
49
|
-
"@grackle-ai/
|
|
50
|
-
"@grackle-ai/plugin-sdk": "0.
|
|
51
|
-
"@grackle-ai/
|
|
52
|
-
"@grackle-ai/
|
|
45
|
+
"@grackle-ai/ahp": "0.135.0",
|
|
46
|
+
"@grackle-ai/adapter-sdk": "0.135.0",
|
|
47
|
+
"@grackle-ai/auth": "0.135.0",
|
|
48
|
+
"@grackle-ai/common": "0.135.0",
|
|
49
|
+
"@grackle-ai/database": "0.135.0",
|
|
50
|
+
"@grackle-ai/plugin-sdk": "0.135.0",
|
|
51
|
+
"@grackle-ai/prompt": "0.135.0",
|
|
52
|
+
"@grackle-ai/knowledge": "0.135.0"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@rushstack/heft": "1.2.7",
|