@assemblyline-agents/runtime 4.0.1 → 5.0.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/artifact-selection.d.ts +16 -0
- package/dist/artifact-selection.d.ts.map +1 -0
- package/dist/artifact-selection.js +41 -0
- package/dist/artifact-selection.js.map +1 -0
- package/dist/builtin-tool-executors.d.ts.map +1 -1
- package/dist/builtin-tool-executors.js +22 -11
- package/dist/builtin-tool-executors.js.map +1 -1
- package/dist/builtin-tools.d.ts +2 -1
- package/dist/builtin-tools.d.ts.map +1 -1
- package/dist/builtin-tools.js +96 -41
- package/dist/builtin-tools.js.map +1 -1
- package/dist/channel-credential-environment.d.ts +4 -0
- package/dist/channel-credential-environment.d.ts.map +1 -0
- package/dist/channel-credential-environment.js +29 -0
- package/dist/channel-credential-environment.js.map +1 -0
- package/dist/channel-operation.d.ts +22 -0
- package/dist/channel-operation.d.ts.map +1 -0
- package/dist/channel-operation.js +33 -0
- package/dist/channel-operation.js.map +1 -0
- package/dist/channel.d.ts +2 -0
- package/dist/channel.d.ts.map +1 -1
- package/dist/connection-events.d.ts.map +1 -1
- package/dist/connection-events.js +10 -8
- package/dist/connection-events.js.map +1 -1
- package/dist/connections.d.ts +22 -3
- package/dist/connections.d.ts.map +1 -1
- package/dist/connections.js +164 -40
- package/dist/connections.js.map +1 -1
- package/dist/credential-broker.d.ts +42 -0
- package/dist/credential-broker.d.ts.map +1 -0
- package/dist/credential-broker.js +92 -0
- package/dist/credential-broker.js.map +1 -0
- package/dist/credential-transfer-client.d.ts +17 -0
- package/dist/credential-transfer-client.d.ts.map +1 -0
- package/dist/credential-transfer-client.js +72 -0
- package/dist/credential-transfer-client.js.map +1 -0
- package/dist/delivery-send.d.ts.map +1 -1
- package/dist/delivery-send.js +6 -4
- package/dist/delivery-send.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +45 -9
- package/dist/index.js.map +1 -1
- package/dist/instrumentation-environment.d.ts +9 -0
- package/dist/instrumentation-environment.d.ts.map +1 -0
- package/dist/instrumentation-environment.js +15 -0
- package/dist/instrumentation-environment.js.map +1 -0
- package/dist/mcp-client.d.ts +0 -2
- package/dist/mcp-client.d.ts.map +1 -1
- package/dist/mcp-client.js +10 -19
- package/dist/mcp-client.js.map +1 -1
- package/dist/public-api.d.ts +1 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +1 -0
- package/dist/public-api.js.map +1 -1
- package/dist/relay-mcp-client.d.ts.map +1 -1
- package/dist/relay-mcp-client.js +4 -4
- package/dist/relay-mcp-client.js.map +1 -1
- package/dist/replay-resume.d.ts +2 -0
- package/dist/replay-resume.d.ts.map +1 -1
- package/dist/replay-resume.js +2 -1
- package/dist/replay-resume.js.map +1 -1
- package/dist/runtime-types.d.ts +11 -3
- package/dist/runtime-types.d.ts.map +1 -1
- package/dist/sandbox-authored-tool-executor.d.ts +1 -1
- package/dist/sandbox-authored-tool-executor.d.ts.map +1 -1
- package/dist/sandbox-authored-tool-executor.js +5 -3
- package/dist/sandbox-authored-tool-executor.js.map +1 -1
- package/dist/sandbox-tool-bridge.js +4 -4
- package/dist/sandbox-tool-bridge.js.map +1 -1
- package/dist/subagent-handoff.d.ts +1 -0
- package/dist/subagent-handoff.d.ts.map +1 -1
- package/dist/subagent-handoff.js +37 -19
- package/dist/subagent-handoff.js.map +1 -1
- package/dist/tool-apis.d.ts +2 -2
- package/dist/tool-apis.d.ts.map +1 -1
- package/dist/tool-apis.js +10 -9
- package/dist/tool-apis.js.map +1 -1
- package/dist/tool-execution.d.ts +5 -0
- package/dist/tool-execution.d.ts.map +1 -1
- package/dist/tool-execution.js +1 -1
- package/dist/tool-execution.js.map +1 -1
- package/package.json +3 -3
package/dist/connections.js
CHANGED
|
@@ -7,6 +7,8 @@ import { SandboxCliConnectionClient } from "./sandbox-cli-client.js";
|
|
|
7
7
|
import { audienceAllowsConnectionAccess } from "./audience.js";
|
|
8
8
|
import { InMemoryConnectionAuthorizationSessionStore, InMemoryConnectionGrantStore } from "./connection-stores.js";
|
|
9
9
|
import { connectionToolAccess, connectionToolApproval, isLiveConnection, isRecord, liveDefinitionUrl, parseQualifiedName, scoreMatch, stringValue, timestamp, tokenize } from "./connection-util.js";
|
|
10
|
+
import { CredentialBroker } from "./credential-broker.js";
|
|
11
|
+
import { CredentialTransferConnectionClient } from "./credential-transfer-client.js";
|
|
10
12
|
export * from "./connection-auth-util.js";
|
|
11
13
|
export * from "./connection-clients.js";
|
|
12
14
|
export * from "./connection-stores.js";
|
|
@@ -137,14 +139,19 @@ export class RuntimeConnectionRegistry {
|
|
|
137
139
|
resolved = new Map();
|
|
138
140
|
clients = new Map();
|
|
139
141
|
tokenCache = new Map();
|
|
140
|
-
executionContext;
|
|
142
|
+
executionContext = new AsyncLocalStorage();
|
|
141
143
|
authorizationIntent = new AsyncLocalStorage();
|
|
142
144
|
pendingAuthorizationCreations = new Map();
|
|
143
145
|
grantStore;
|
|
144
146
|
authorizationSessionStore;
|
|
147
|
+
credentialBroker;
|
|
145
148
|
constructor(options) {
|
|
146
149
|
this.options = options;
|
|
147
|
-
this.grantStore = options.grantStore ?? new InMemoryConnectionGrantStore();
|
|
150
|
+
this.grantStore = options.grantStore ?? options.credentialBroker?.grantStore ?? new InMemoryConnectionGrantStore();
|
|
151
|
+
this.credentialBroker = options.credentialBroker ?? new CredentialBroker({
|
|
152
|
+
store: { resolve: async () => undefined },
|
|
153
|
+
grantStore: this.grantStore
|
|
154
|
+
});
|
|
148
155
|
this.authorizationSessionStore = options.authorizationSessionStore ?? new InMemoryConnectionAuthorizationSessionStore();
|
|
149
156
|
}
|
|
150
157
|
hasLiveConnections() {
|
|
@@ -164,7 +171,7 @@ export class RuntimeConnectionRegistry {
|
|
|
164
171
|
const definition = (await this.resolveConnection(compiled)).definition;
|
|
165
172
|
if (!definition.events)
|
|
166
173
|
throw new ConnectionConfigurationError(`Connection ${connectionName} does not accept provider events.`);
|
|
167
|
-
const context = this.resolverContext();
|
|
174
|
+
const context = this.resolverContext(compiled);
|
|
168
175
|
let principal;
|
|
169
176
|
if (definition.events.scope === "connection") {
|
|
170
177
|
principal = { type: "app" };
|
|
@@ -188,6 +195,8 @@ export class RuntimeConnectionRegistry {
|
|
|
188
195
|
events: definition.events,
|
|
189
196
|
principal,
|
|
190
197
|
principalKey: connectionPrincipalKey(principal),
|
|
198
|
+
config: context.config,
|
|
199
|
+
credentials: context.credentials,
|
|
191
200
|
getToken: async () => {
|
|
192
201
|
if (!definition.auth)
|
|
193
202
|
throw new ConnectionConfigurationError(`Connection ${connectionName} event adapter requested a token without connection auth.`);
|
|
@@ -320,7 +329,7 @@ export class RuntimeConnectionRegistry {
|
|
|
320
329
|
throw new Error(`Connection ${connectionName} does not support pairing codes.`);
|
|
321
330
|
if (!code.trim())
|
|
322
331
|
throw new Error("A pairing code is required.");
|
|
323
|
-
const context = this.resolverContext();
|
|
332
|
+
const context = this.resolverContext(compiled);
|
|
324
333
|
const token = await redeem({ code }, context);
|
|
325
334
|
const authorization = definition.auth
|
|
326
335
|
? await normalizeAuthorization(definition.auth, context)
|
|
@@ -403,7 +412,7 @@ export class RuntimeConnectionRegistry {
|
|
|
403
412
|
throw new ConnectionConfigurationError(`Connection ${connectionName} is not registered as a live connection.`);
|
|
404
413
|
}
|
|
405
414
|
const resolved = () => this.resolveConnection(compiled);
|
|
406
|
-
const
|
|
415
|
+
const baseClient = compiled.protocol === "credential"
|
|
407
416
|
? new CredentialConnectionClient()
|
|
408
417
|
: compiled.protocol === "cli"
|
|
409
418
|
? new SandboxCliConnectionClient(compiled, resolved, this)
|
|
@@ -418,18 +427,69 @@ export class RuntimeConnectionRegistry {
|
|
|
418
427
|
: compiled.protocol === "a2a"
|
|
419
428
|
? new A2AConnectionClient(compiled, resolved, this)
|
|
420
429
|
: new HttpApiConnectionClient(compiled, resolved, this);
|
|
430
|
+
const client = new CredentialTransferConnectionClient(compiled, baseClient, resolved, this);
|
|
421
431
|
this.clients.set(connectionName, client);
|
|
422
432
|
return client;
|
|
423
433
|
}
|
|
434
|
+
async transferCredential(input) {
|
|
435
|
+
const source = this.options.connections.find((connection) => connection.name === input.sourceConnection);
|
|
436
|
+
const sink = this.options.connections.find((connection) => connection.name === input.sinkConnection);
|
|
437
|
+
if (!source || !sink || !this.toolAllowed(source) || !this.toolAllowed(sink)) {
|
|
438
|
+
throw new Error("Credential transfer source or sink is unavailable for this audience.");
|
|
439
|
+
}
|
|
440
|
+
const sourceDefinition = (await this.resolveConnection(source)).definition;
|
|
441
|
+
const sinkDefinition = (await this.resolveConnection(sink)).definition;
|
|
442
|
+
const sourceCapability = "credentialSource" in sourceDefinition ? sourceDefinition.credentialSource : undefined;
|
|
443
|
+
const sinkCapability = "credentialSink" in sinkDefinition ? sinkDefinition.credentialSink : undefined;
|
|
444
|
+
if (!sourceCapability || !sinkCapability)
|
|
445
|
+
throw new Error("Credential transfer source or sink is not configured.");
|
|
446
|
+
const principal = this.connectionPrincipal(sink);
|
|
447
|
+
const execution = this.executionContext.getStore();
|
|
448
|
+
const runId = execution?.runId ?? this.options.runId;
|
|
449
|
+
const identity = {
|
|
450
|
+
principal,
|
|
451
|
+
audience: this.options.audience ?? { private: true },
|
|
452
|
+
...(runId ? { runId } : {})
|
|
453
|
+
};
|
|
454
|
+
const context = {
|
|
455
|
+
sourceConnection: source.name,
|
|
456
|
+
sinkConnection: sink.name,
|
|
457
|
+
...(runId ? { runId } : {}),
|
|
458
|
+
principal,
|
|
459
|
+
purpose: input.purpose
|
|
460
|
+
};
|
|
461
|
+
try {
|
|
462
|
+
const value = await sourceCapability.resolve(input.reference, context);
|
|
463
|
+
await sinkCapability.consume(value, input.target, context);
|
|
464
|
+
await this.credentialBroker.recordTransfer({
|
|
465
|
+
credential: input.reference,
|
|
466
|
+
connection: sink.name,
|
|
467
|
+
identity,
|
|
468
|
+
purpose: input.purpose,
|
|
469
|
+
success: true
|
|
470
|
+
});
|
|
471
|
+
return { status: "filled" };
|
|
472
|
+
}
|
|
473
|
+
catch {
|
|
474
|
+
await this.credentialBroker.recordTransfer({
|
|
475
|
+
credential: input.reference,
|
|
476
|
+
connection: sink.name,
|
|
477
|
+
identity,
|
|
478
|
+
purpose: input.purpose,
|
|
479
|
+
success: false
|
|
480
|
+
}).catch(() => undefined);
|
|
481
|
+
throw new Error(`Credential transfer from ${source.name} to ${sink.name} failed.`);
|
|
482
|
+
}
|
|
483
|
+
}
|
|
424
484
|
async executeSandboxCli(invocation) {
|
|
425
485
|
if (!this.options.executeSandboxCli) {
|
|
426
486
|
throw new Error("Sandbox CLI connection execution requires an active agent run sandbox.");
|
|
427
487
|
}
|
|
428
|
-
return this.options.executeSandboxCli(invocation, this.executionContext);
|
|
488
|
+
return this.options.executeSandboxCli(invocation, this.executionContext.getStore());
|
|
429
489
|
}
|
|
430
490
|
async resolveHeaders(connection, definition) {
|
|
431
491
|
const headers = {};
|
|
432
|
-
const context = this.resolverContext();
|
|
492
|
+
const context = this.resolverContext(connection);
|
|
433
493
|
if (definition.auth !== undefined) {
|
|
434
494
|
const token = await this.resolveToken(connection, definition.auth, context, liveDefinitionUrl(definition));
|
|
435
495
|
const tokenType = token.tokenType?.trim() || "Bearer";
|
|
@@ -474,7 +534,7 @@ export class RuntimeConnectionRegistry {
|
|
|
474
534
|
if (!definition.auth)
|
|
475
535
|
return { status: "unavailable", reason: "connection_has_no_auth" };
|
|
476
536
|
try {
|
|
477
|
-
await this.resolveToken(compiled, definition.auth, this.resolverContext(), liveDefinitionUrl(definition));
|
|
537
|
+
await this.resolveToken(compiled, definition.auth, this.resolverContext(compiled), liveDefinitionUrl(definition));
|
|
478
538
|
return { status: "connected" };
|
|
479
539
|
}
|
|
480
540
|
catch (error) {
|
|
@@ -504,10 +564,10 @@ export class RuntimeConnectionRegistry {
|
|
|
504
564
|
async materializeCredentialsWithContext(run) {
|
|
505
565
|
const materialized = [];
|
|
506
566
|
const pending = [];
|
|
507
|
-
const context = this.resolverContext();
|
|
508
567
|
for (const compiled of this.options.connections) {
|
|
509
568
|
if (!this.toolAllowed(compiled))
|
|
510
569
|
continue;
|
|
570
|
+
const context = this.resolverContext(compiled);
|
|
511
571
|
const failClosed = compiled.protocol === "credential"
|
|
512
572
|
&& sandboxCredentialWasRequested(run, compiled.name);
|
|
513
573
|
let definition;
|
|
@@ -573,7 +633,8 @@ export class RuntimeConnectionRegistry {
|
|
|
573
633
|
run,
|
|
574
634
|
principal,
|
|
575
635
|
session: context.session,
|
|
576
|
-
|
|
636
|
+
config: context.config,
|
|
637
|
+
credentials: context.credentials,
|
|
577
638
|
fetch: this.options.fetch,
|
|
578
639
|
getToken: async () => {
|
|
579
640
|
if (!definition.auth)
|
|
@@ -639,7 +700,7 @@ export class RuntimeConnectionRegistry {
|
|
|
639
700
|
async evictToken(connection, definition) {
|
|
640
701
|
if (!definition.auth)
|
|
641
702
|
return;
|
|
642
|
-
const context = this.resolverContext();
|
|
703
|
+
const context = this.resolverContext(connection);
|
|
643
704
|
const authorization = await normalizeAuthorization(definition.auth, context);
|
|
644
705
|
const principal = connectionPrincipalFor(connection, authorization, context);
|
|
645
706
|
const cacheKey = tokenCacheKey(connection.name, principal);
|
|
@@ -683,11 +744,7 @@ export class RuntimeConnectionRegistry {
|
|
|
683
744
|
if (!resolved.definition.auth) {
|
|
684
745
|
throw new ConnectionAuthorizationFailedError(session.connectionName, { reason: "auth_not_configured", retryable: false });
|
|
685
746
|
}
|
|
686
|
-
const authorization = await normalizeAuthorization(resolved.definition.auth,
|
|
687
|
-
env: this.options.env,
|
|
688
|
-
fetch: this.options.fetch,
|
|
689
|
-
session: session.session
|
|
690
|
-
});
|
|
747
|
+
const authorization = await normalizeAuthorization(resolved.definition.auth, this.resolverContext(compiled, session.session));
|
|
691
748
|
const connectionContext = { url: compiled.url ?? "" };
|
|
692
749
|
let token;
|
|
693
750
|
if (authorization.kind === "oauth" && authorization.oauth) {
|
|
@@ -723,8 +780,38 @@ export class RuntimeConnectionRegistry {
|
|
|
723
780
|
request(input, init) {
|
|
724
781
|
return this.options.fetch(input, init);
|
|
725
782
|
}
|
|
726
|
-
|
|
727
|
-
|
|
783
|
+
async processEnvironment(connection) {
|
|
784
|
+
const context = this.factoryContext(connection);
|
|
785
|
+
const environment = {};
|
|
786
|
+
for (const name of connection.requiredConfig ?? []) {
|
|
787
|
+
const value = context.config[name];
|
|
788
|
+
if (value === undefined)
|
|
789
|
+
throw new ConnectionConfigurationError(`Connection ${connection.name} requires configuration ${name}.`);
|
|
790
|
+
environment[name] = value;
|
|
791
|
+
}
|
|
792
|
+
for (const name of connection.optionalConfig ?? []) {
|
|
793
|
+
const value = context.config[name];
|
|
794
|
+
if (value !== undefined)
|
|
795
|
+
environment[name] = value;
|
|
796
|
+
}
|
|
797
|
+
for (const name of connection.requiredCredentials ?? []) {
|
|
798
|
+
environment[name] = await context.credentials.get(name, {
|
|
799
|
+
purpose: "connection process authentication",
|
|
800
|
+
delivery: "stdio_env"
|
|
801
|
+
});
|
|
802
|
+
}
|
|
803
|
+
for (const name of connection.optionalCredentials ?? []) {
|
|
804
|
+
const value = await context.credentials.optional(name, {
|
|
805
|
+
purpose: "connection process authentication",
|
|
806
|
+
delivery: "stdio_env"
|
|
807
|
+
});
|
|
808
|
+
if (value !== undefined)
|
|
809
|
+
environment[name] = value;
|
|
810
|
+
}
|
|
811
|
+
return environment;
|
|
812
|
+
}
|
|
813
|
+
async credentialValue(connection, name, purpose) {
|
|
814
|
+
return this.factoryContext(connection).credentials.get(name, { purpose, delivery: "relay" });
|
|
728
815
|
}
|
|
729
816
|
async resolveConnection(compiled) {
|
|
730
817
|
const existing = this.resolved.get(compiled.name);
|
|
@@ -739,7 +826,12 @@ export class RuntimeConnectionRegistry {
|
|
|
739
826
|
if (compiled.hostRequirements?.platforms?.length && !compiled.hostRequirements.platforms.includes(platform)) {
|
|
740
827
|
throw new Error(`${compiled.hostRequirements.message} Current runtime platform: ${platform}.`);
|
|
741
828
|
}
|
|
742
|
-
const
|
|
829
|
+
const loaded = await this.options.loadDefinition(compiled);
|
|
830
|
+
const factoryContext = this.factoryContext(compiled);
|
|
831
|
+
const dynamic = compiled.source.path.startsWith("dynamic://");
|
|
832
|
+
const raw = !dynamic && isConnectionFactory(loaded)
|
|
833
|
+
? await loaded.create(factoryContext)
|
|
834
|
+
: loaded;
|
|
743
835
|
if (!isRecord(raw))
|
|
744
836
|
throw new Error(`Connection ${compiled.name} did not export an object.`);
|
|
745
837
|
if (compiled.protocol === "mcp") {
|
|
@@ -758,8 +850,8 @@ export class RuntimeConnectionRegistry {
|
|
|
758
850
|
if (compiled.source.path.startsWith("dynamic://")) {
|
|
759
851
|
throw new Error(`Dynamic MCP connection ${compiled.name} cannot use a device relay.`);
|
|
760
852
|
}
|
|
761
|
-
if (typeof raw.url !== "string" || typeof raw.
|
|
762
|
-
throw new Error(`Relay MCP connection ${compiled.name} must export url and
|
|
853
|
+
if (typeof raw.url !== "string" || typeof raw.credential !== "string") {
|
|
854
|
+
throw new Error(`Relay MCP connection ${compiled.name} must export url and credential.`);
|
|
763
855
|
}
|
|
764
856
|
}
|
|
765
857
|
else if (typeof raw.url !== "string") {
|
|
@@ -913,23 +1005,50 @@ export class RuntimeConnectionRegistry {
|
|
|
913
1005
|
throw error;
|
|
914
1006
|
}
|
|
915
1007
|
}
|
|
916
|
-
resolverContext() {
|
|
1008
|
+
resolverContext(connection, session = this.options.session) {
|
|
1009
|
+
const factory = this.factoryContext(connection, session);
|
|
917
1010
|
return {
|
|
918
|
-
|
|
1011
|
+
config: factory.config,
|
|
1012
|
+
credentials: factory.credentials,
|
|
919
1013
|
fetch: this.options.fetch,
|
|
920
|
-
session
|
|
1014
|
+
session
|
|
921
1015
|
};
|
|
922
1016
|
}
|
|
923
|
-
|
|
924
|
-
const
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
return
|
|
929
|
-
}
|
|
930
|
-
|
|
931
|
-
|
|
1017
|
+
factoryContext(connection, session = this.options.session) {
|
|
1018
|
+
const principal = this.connectionPrincipal(connection, session);
|
|
1019
|
+
const audience = this.options.audience ?? { private: true };
|
|
1020
|
+
const identity = () => {
|
|
1021
|
+
const runId = this.executionContext.getStore()?.runId ?? this.options.runId;
|
|
1022
|
+
return { principal, audience, ...(runId ? { runId } : {}) };
|
|
1023
|
+
};
|
|
1024
|
+
const configNames = [...(connection.requiredConfig ?? []), ...(connection.optionalConfig ?? [])];
|
|
1025
|
+
return {
|
|
1026
|
+
connectionName: connection.name,
|
|
1027
|
+
agentId: this.options.agentId ?? "",
|
|
1028
|
+
principal,
|
|
1029
|
+
audience,
|
|
1030
|
+
config: Object.freeze(Object.fromEntries(configNames.map((name) => [name, this.options.config?.[name]]))),
|
|
1031
|
+
credentials: this.credentialBroker.scoped(connection, identity),
|
|
1032
|
+
fetch: this.options.fetch,
|
|
1033
|
+
session
|
|
1034
|
+
};
|
|
1035
|
+
}
|
|
1036
|
+
connectionPrincipal(connection, session = this.options.session) {
|
|
1037
|
+
if (connection.subject !== "user")
|
|
1038
|
+
return { type: "app" };
|
|
1039
|
+
if (session.principal?.type === "user")
|
|
1040
|
+
return session.principal;
|
|
1041
|
+
if (session.userId) {
|
|
1042
|
+
return {
|
|
1043
|
+
type: "user",
|
|
1044
|
+
id: session.userId,
|
|
1045
|
+
issuer: session.channel ?? "assembly-line"
|
|
1046
|
+
};
|
|
932
1047
|
}
|
|
1048
|
+
throw new ConnectionConfigurationError(`Connection ${connection.name} requires an authenticated user principal.`);
|
|
1049
|
+
}
|
|
1050
|
+
async withExecutionContext(execution, fn) {
|
|
1051
|
+
return execution ? this.executionContext.run(execution, fn) : fn();
|
|
933
1052
|
}
|
|
934
1053
|
async createAuthorizationRequiredError(connection, authorization, principal, principalKey, context, connectionContext, cause) {
|
|
935
1054
|
if (this.authorizationIntent.getStore() === "discover") {
|
|
@@ -1027,12 +1146,14 @@ export class RuntimeConnectionRegistry {
|
|
|
1027
1146
|
session.codeVerifier = codeVerifier;
|
|
1028
1147
|
if (resume !== undefined)
|
|
1029
1148
|
session.resume = resume;
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
if (
|
|
1033
|
-
session.
|
|
1034
|
-
if (
|
|
1035
|
-
session.
|
|
1149
|
+
const execution = this.executionContext.getStore();
|
|
1150
|
+
const runId = execution?.runId ?? this.options.runId;
|
|
1151
|
+
if (runId)
|
|
1152
|
+
session.runId = runId;
|
|
1153
|
+
if (execution?.toolCallId)
|
|
1154
|
+
session.toolCallId = execution.toolCallId;
|
|
1155
|
+
if (execution?.toolName)
|
|
1156
|
+
session.toolName = execution.toolName;
|
|
1036
1157
|
await this.authorizationSessionStore.createSession(session);
|
|
1037
1158
|
const errorOptions = {
|
|
1038
1159
|
reason: cause?.reason ?? "authorization_required",
|
|
@@ -1043,7 +1164,7 @@ export class RuntimeConnectionRegistry {
|
|
|
1043
1164
|
return new ConnectionAuthorizationRequiredError(connection.name, errorOptions);
|
|
1044
1165
|
}
|
|
1045
1166
|
callbackUrl() {
|
|
1046
|
-
const base = (this.options.callbackBaseUrl ?? this.options.
|
|
1167
|
+
const base = (this.options.callbackBaseUrl ?? this.options.config?.ASSEMBLY_LINE_PUBLIC_URL ?? "http://localhost").replace(/\/+$/u, "");
|
|
1047
1168
|
return `${base}/assembly-line/connections/callback`;
|
|
1048
1169
|
}
|
|
1049
1170
|
async exchangeOAuthAuthorizationCode(oauth, session, callback) {
|
|
@@ -1169,4 +1290,7 @@ function sandboxCredentialWasRequested(run, connectionName) {
|
|
|
1169
1290
|
&& !Array.isArray(requests)
|
|
1170
1291
|
&& Object.prototype.hasOwnProperty.call(requests, connectionName));
|
|
1171
1292
|
}
|
|
1293
|
+
function isConnectionFactory(value) {
|
|
1294
|
+
return Boolean(value && typeof value === "object" && typeof value.create === "function");
|
|
1295
|
+
}
|
|
1172
1296
|
//# sourceMappingURL=connections.js.map
|
package/dist/connections.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../src/connections.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../src/connections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { AgentAudience, CompiledConnection, ConnectionCredentialAccessor, ConnectionCredentialRequest, ConnectionPrincipal, CredentialStore } from "@assemblyline-agents/core";
|
|
2
|
+
import type { ConnectionGrantStore } from "./connection-stores.js";
|
|
3
|
+
export interface CredentialUseAuditRecord {
|
|
4
|
+
credential: string;
|
|
5
|
+
connection: string;
|
|
6
|
+
runId?: string;
|
|
7
|
+
principal: string;
|
|
8
|
+
purpose: string;
|
|
9
|
+
delivery: NonNullable<ConnectionCredentialRequest["delivery"]>;
|
|
10
|
+
success: boolean;
|
|
11
|
+
expiresAt?: number;
|
|
12
|
+
}
|
|
13
|
+
export interface CredentialBrokerOptions {
|
|
14
|
+
store: CredentialStore;
|
|
15
|
+
grantStore: ConnectionGrantStore;
|
|
16
|
+
audit?(record: CredentialUseAuditRecord): Promise<void> | void;
|
|
17
|
+
}
|
|
18
|
+
export interface ScopedCredentialIdentity {
|
|
19
|
+
principal: ConnectionPrincipal;
|
|
20
|
+
audience: AgentAudience;
|
|
21
|
+
runId?: string;
|
|
22
|
+
}
|
|
23
|
+
/** Runtime-owned boundary with no bulk-read or enumeration API. */
|
|
24
|
+
export declare class CredentialBroker {
|
|
25
|
+
private readonly options;
|
|
26
|
+
readonly grantStore: ConnectionGrantStore;
|
|
27
|
+
constructor(options: CredentialBrokerOptions);
|
|
28
|
+
scoped(connection: CompiledConnection, identity: ScopedCredentialIdentity | (() => ScopedCredentialIdentity)): ConnectionCredentialAccessor;
|
|
29
|
+
recordTransfer(input: {
|
|
30
|
+
credential: string;
|
|
31
|
+
connection: string;
|
|
32
|
+
identity: ScopedCredentialIdentity;
|
|
33
|
+
purpose: string;
|
|
34
|
+
success: boolean;
|
|
35
|
+
}): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
export declare class CredentialAccessError extends Error {
|
|
38
|
+
constructor(message: string);
|
|
39
|
+
}
|
|
40
|
+
/** Host environment is a credential-store backend, never runtime context. */
|
|
41
|
+
export declare function environmentCredentialStore(environment: Readonly<Record<string, string | undefined>>): CredentialStore;
|
|
42
|
+
//# sourceMappingURL=credential-broker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-broker.d.ts","sourceRoot":"","sources":["../src/credential-broker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,4BAA4B,EAC5B,2BAA2B,EAC3B,mBAAmB,EACnB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,WAAW,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/D,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,eAAe,CAAC;IACvB,UAAU,EAAE,oBAAoB,CAAC;IACjC,KAAK,CAAC,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAChE;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,mEAAmE;AACnE,qBAAa,gBAAgB;IAGf,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;gBAEb,OAAO,EAAE,uBAAuB;IAI7D,MAAM,CACJ,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,wBAAwB,GAAG,CAAC,MAAM,wBAAwB,CAAC,GACpE,4BAA4B;IAmDzB,cAAc,CAAC,KAAK,EAAE;QAC1B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,wBAAwB,CAAC;QACnC,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;KAClB,GAAG,OAAO,CAAC,IAAI,CAAC;CAWlB;AAeD,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AAED,6EAA6E;AAC7E,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,GACxD,eAAe,CAEjB"}
|