@evalops/maestro 0.10.15 → 0.10.16
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/cli.js +62 -10
- package/dist/evalops/managed-context.d.ts.map +1 -1
- package/dist/evalops/managed-context.js +27 -5
- package/dist/evalops/managed-context.js.map +1 -1
- package/dist/mcp/platform-plugin.d.ts.map +1 -1
- package/dist/mcp/platform-plugin.js +27 -5
- package/dist/mcp/platform-plugin.js.map +1 -1
- package/dist/version.json +2 -2
- package/node_modules/@evalops/contracts/package.json +1 -1
- package/node_modules/@evalops/tui/package.json +1 -1
- package/package.json +3 -3
package/dist/cli.js
CHANGED
|
@@ -38353,20 +38353,20 @@ function resolveManagedEvalOpsContext(env = process.env, loadCredentials) {
|
|
|
38353
38353
|
evidencePublisher: managed ? "EvalOps" : "none",
|
|
38354
38354
|
expiresAt: credentials?.expires,
|
|
38355
38355
|
inference: managed ? "managed" : "local",
|
|
38356
|
-
integrationProfile: agentMcp?.integrationProfile,
|
|
38356
|
+
integrationProfile: readEnv2(env, INTEGRATION_PROFILE_ENV) ?? agentMcp?.integrationProfile,
|
|
38357
38357
|
keyPrefix: agentMcp?.keyPrefix,
|
|
38358
38358
|
managed,
|
|
38359
|
-
memoryMode: agentMcp?.memoryMode,
|
|
38359
|
+
memoryMode: readEnv2(env, MEMORY_MODE_ENV) ?? agentMcp?.memoryMode,
|
|
38360
38360
|
mode,
|
|
38361
38361
|
organizationId,
|
|
38362
38362
|
providerRef,
|
|
38363
38363
|
runId,
|
|
38364
|
-
runtimeOwner: agentMcp?.runtimeOwner,
|
|
38364
|
+
runtimeOwner: readEnv2(env, RUNTIME_OWNER_ENV) ?? agentMcp?.runtimeOwner,
|
|
38365
38365
|
sessionExpiresAt: agentMcp?.sessionExpiresAt,
|
|
38366
38366
|
sessionId: readEnv2(env, ["MAESTRO_SESSION_ID"]),
|
|
38367
|
-
shimType: agentMcp?.shimType,
|
|
38367
|
+
shimType: readEnv2(env, SHIM_TYPE_ENV) ?? agentMcp?.shimType,
|
|
38368
38368
|
traceIngestion: managed && runId ? "live" : "not configured",
|
|
38369
|
-
traceMode: agentMcp?.traceMode,
|
|
38369
|
+
traceMode: readEnv2(env, TRACE_MODE_ENV) ?? agentMcp?.traceMode,
|
|
38370
38370
|
userEmail: nonEmptyString(metadata?.email),
|
|
38371
38371
|
userId: readEnv2(env, USER_ENV) ?? nonEmptyString(metadata?.userId),
|
|
38372
38372
|
workspaceId
|
|
@@ -38397,6 +38397,8 @@ function formatManagedEvalOpsStatus(context2, options = {}) {
|
|
|
38397
38397
|
if (context2.integrationProfile) {
|
|
38398
38398
|
lines.push(`${dim("Integration profile")}: ${context2.integrationProfile}`);
|
|
38399
38399
|
}
|
|
38400
|
+
if (context2.runtimeOwner)
|
|
38401
|
+
lines.push(`${dim("Runtime owner")}: ${context2.runtimeOwner}`);
|
|
38400
38402
|
if (context2.shimType)
|
|
38401
38403
|
lines.push(`${dim("Shim")}: ${context2.shimType}`);
|
|
38402
38404
|
if (context2.traceMode)
|
|
@@ -38430,6 +38432,11 @@ var ORG_ENV;
|
|
|
38430
38432
|
var WORKSPACE_ENV;
|
|
38431
38433
|
var USER_ENV;
|
|
38432
38434
|
var TOKEN_ENV;
|
|
38435
|
+
var INTEGRATION_PROFILE_ENV;
|
|
38436
|
+
var MEMORY_MODE_ENV;
|
|
38437
|
+
var RUNTIME_OWNER_ENV;
|
|
38438
|
+
var SHIM_TYPE_ENV;
|
|
38439
|
+
var TRACE_MODE_ENV;
|
|
38433
38440
|
var init_managed_context = __esm2(() => {
|
|
38434
38441
|
init_storage();
|
|
38435
38442
|
ORG_ENV = [
|
|
@@ -38452,6 +38459,26 @@ var init_managed_context = __esm2(() => {
|
|
|
38452
38459
|
"MAESTRO_USER_ID"
|
|
38453
38460
|
];
|
|
38454
38461
|
TOKEN_ENV = ["MAESTRO_EVALOPS_ACCESS_TOKEN", "EVALOPS_TOKEN"];
|
|
38462
|
+
INTEGRATION_PROFILE_ENV = [
|
|
38463
|
+
"MAESTRO_EVALOPS_INTEGRATION_PROFILE",
|
|
38464
|
+
"MAESTRO_INTEGRATION_PROFILE"
|
|
38465
|
+
];
|
|
38466
|
+
MEMORY_MODE_ENV = [
|
|
38467
|
+
"MAESTRO_EVALOPS_MEMORY_MODE",
|
|
38468
|
+
"MAESTRO_MEMORY_MODE"
|
|
38469
|
+
];
|
|
38470
|
+
RUNTIME_OWNER_ENV = [
|
|
38471
|
+
"MAESTRO_EVALOPS_RUNTIME_OWNER",
|
|
38472
|
+
"MAESTRO_RUNTIME_OWNER"
|
|
38473
|
+
];
|
|
38474
|
+
SHIM_TYPE_ENV = [
|
|
38475
|
+
"MAESTRO_EVALOPS_SHIM_TYPE",
|
|
38476
|
+
"MAESTRO_SHIM_TYPE"
|
|
38477
|
+
];
|
|
38478
|
+
TRACE_MODE_ENV = [
|
|
38479
|
+
"MAESTRO_EVALOPS_TRACE_MODE",
|
|
38480
|
+
"MAESTRO_TRACE_MODE"
|
|
38481
|
+
];
|
|
38455
38482
|
});
|
|
38456
38483
|
function entry(type, category, protoMessage, platformConsumers) {
|
|
38457
38484
|
return {
|
|
@@ -87970,14 +87997,14 @@ function buildPlatformMcpHeaders() {
|
|
|
87970
87997
|
"X-EvalOps-Session-Id": getEnvValue3(["MAESTRO_SESSION_ID"]),
|
|
87971
87998
|
"X-EvalOps-Agent-Id": getEnvValue3(PLATFORM_MCP_AGENT_ID_ENV_VARS) ?? stored?.agentId,
|
|
87972
87999
|
"X-EvalOps-Agent-Run-Id": getEnvValue3(["MAESTRO_AGENT_RUN_ID"]) ?? stored?.runId,
|
|
87973
|
-
"X-EvalOps-Integration-Profile": stored?.integrationProfile,
|
|
87974
|
-
"X-EvalOps-Memory-Mode": stored?.memoryMode,
|
|
87975
|
-
"X-EvalOps-Runtime-Owner": stored?.runtimeOwner,
|
|
88000
|
+
"X-EvalOps-Integration-Profile": getEnvValue3(PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS) ?? stored?.integrationProfile,
|
|
88001
|
+
"X-EvalOps-Memory-Mode": getEnvValue3(PLATFORM_MCP_MEMORY_MODE_ENV_VARS) ?? stored?.memoryMode,
|
|
88002
|
+
"X-EvalOps-Runtime-Owner": getEnvValue3(PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS) ?? stored?.runtimeOwner,
|
|
87976
88003
|
"X-EvalOps-Scopes": getEnvValue3(PLATFORM_MCP_SCOPES_ENV_VARS),
|
|
87977
|
-
"X-EvalOps-Shim-Type": stored?.shimType,
|
|
88004
|
+
"X-EvalOps-Shim-Type": getEnvValue3(PLATFORM_MCP_SHIM_TYPE_ENV_VARS) ?? stored?.shimType,
|
|
87978
88005
|
"X-EvalOps-Request-Id": getEnvValue3(["MAESTRO_REQUEST_ID"]),
|
|
87979
88006
|
"X-EvalOps-Trace-Id": getEnvValue3(["TRACE_ID", "OTEL_TRACE_ID"]),
|
|
87980
|
-
"X-EvalOps-Trace-Mode": stored?.traceMode,
|
|
88007
|
+
"X-EvalOps-Trace-Mode": getEnvValue3(PLATFORM_MCP_TRACE_MODE_ENV_VARS) ?? stored?.traceMode,
|
|
87981
88008
|
"X-EvalOps-Maestro-Surface": getEnvValue3(["MAESTRO_SURFACE"]) ?? "maestro"
|
|
87982
88009
|
}).filter((entry2) => typeof entry2[1] === "string" && entry2[1].trim().length > 0));
|
|
87983
88010
|
return Object.keys(headers).length > 0 ? headers : void 0;
|
|
@@ -88026,6 +88053,11 @@ var PLATFORM_MCP_TOKEN_ENV_VARS;
|
|
|
88026
88053
|
var PLATFORM_MCP_WORKSPACE_ENV_VARS;
|
|
88027
88054
|
var PLATFORM_MCP_AGENT_ID_ENV_VARS;
|
|
88028
88055
|
var PLATFORM_MCP_SCOPES_ENV_VARS;
|
|
88056
|
+
var PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS;
|
|
88057
|
+
var PLATFORM_MCP_MEMORY_MODE_ENV_VARS;
|
|
88058
|
+
var PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS;
|
|
88059
|
+
var PLATFORM_MCP_SHIM_TYPE_ENV_VARS;
|
|
88060
|
+
var PLATFORM_MCP_TRACE_MODE_ENV_VARS;
|
|
88029
88061
|
var DEFAULT_PLATFORM_MCP_SERVER_NAME = "evalops";
|
|
88030
88062
|
var AGENT_MCP_MANIFEST_PATH2 = "/.well-known/evalops/agent-mcp.json";
|
|
88031
88063
|
var AGENT_MCP_PATH2 = "/mcp";
|
|
@@ -88074,6 +88106,26 @@ var init_platform_plugin = __esm2(() => {
|
|
|
88074
88106
|
"MAESTRO_EVALOPS_AGENT_MCP_SCOPES",
|
|
88075
88107
|
"MAESTRO_CEREBRO_MCP_SCOPES"
|
|
88076
88108
|
];
|
|
88109
|
+
PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS = [
|
|
88110
|
+
"MAESTRO_EVALOPS_INTEGRATION_PROFILE",
|
|
88111
|
+
"MAESTRO_INTEGRATION_PROFILE"
|
|
88112
|
+
];
|
|
88113
|
+
PLATFORM_MCP_MEMORY_MODE_ENV_VARS = [
|
|
88114
|
+
"MAESTRO_EVALOPS_MEMORY_MODE",
|
|
88115
|
+
"MAESTRO_MEMORY_MODE"
|
|
88116
|
+
];
|
|
88117
|
+
PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS = [
|
|
88118
|
+
"MAESTRO_EVALOPS_RUNTIME_OWNER",
|
|
88119
|
+
"MAESTRO_RUNTIME_OWNER"
|
|
88120
|
+
];
|
|
88121
|
+
PLATFORM_MCP_SHIM_TYPE_ENV_VARS = [
|
|
88122
|
+
"MAESTRO_EVALOPS_SHIM_TYPE",
|
|
88123
|
+
"MAESTRO_SHIM_TYPE"
|
|
88124
|
+
];
|
|
88125
|
+
PLATFORM_MCP_TRACE_MODE_ENV_VARS = [
|
|
88126
|
+
"MAESTRO_EVALOPS_TRACE_MODE",
|
|
88127
|
+
"MAESTRO_TRACE_MODE"
|
|
88128
|
+
];
|
|
88077
88129
|
});
|
|
88078
88130
|
var mcpNameSchema;
|
|
88079
88131
|
var mcpTransportSchema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-context.d.ts","sourceRoot":"","sources":["../../src/evalops/managed-context.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,qBAAqB,CAAC;AAE7B,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAE9C,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,gBAAgB,CAAC;AACjE,MAAM,MAAM,+BAA+B,GAAG,SAAS,GAAG,MAAM,CAAC;AACjE,MAAM,MAAM,4BAA4B,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,+BAA+B,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,4BAA4B,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,iBAAiB,GAAG,uBAAuB,GAAG,OAAO,CAAC;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,wBAAwB,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAiBD,MAAM,MAAM,sBAAsB,GAAG,MAAM,gBAAgB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"managed-context.d.ts","sourceRoot":"","sources":["../../src/evalops/managed-context.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,qBAAqB,CAAC;AAE7B,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAE9C,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,gBAAgB,CAAC;AACjE,MAAM,MAAM,+BAA+B,GAAG,SAAS,GAAG,MAAM,CAAC;AACjE,MAAM,MAAM,4BAA4B,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,+BAA+B,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,4BAA4B,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,iBAAiB,GAAG,uBAAuB,GAAG,OAAO,CAAC;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,wBAAwB,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAiBD,MAAM,MAAM,sBAAsB,GAAG,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAgJnE,wBAAgB,4BAA4B,CAC3C,GAAG,GAAE,GAAiB,EACtB,eAAe,CAAC,EAAE,sBAAsB,GACtC,qBAAqB,CAuDvB;AAED,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,qBAAqB,EAC9B,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAC/B,MAAM,CAqDR"}
|
|
@@ -22,6 +22,26 @@ const USER_ENV = [
|
|
|
22
22
|
"MAESTRO_USER_ID",
|
|
23
23
|
];
|
|
24
24
|
const TOKEN_ENV = ["MAESTRO_EVALOPS_ACCESS_TOKEN", "EVALOPS_TOKEN"];
|
|
25
|
+
const INTEGRATION_PROFILE_ENV = [
|
|
26
|
+
"MAESTRO_EVALOPS_INTEGRATION_PROFILE",
|
|
27
|
+
"MAESTRO_INTEGRATION_PROFILE",
|
|
28
|
+
];
|
|
29
|
+
const MEMORY_MODE_ENV = [
|
|
30
|
+
"MAESTRO_EVALOPS_MEMORY_MODE",
|
|
31
|
+
"MAESTRO_MEMORY_MODE",
|
|
32
|
+
];
|
|
33
|
+
const RUNTIME_OWNER_ENV = [
|
|
34
|
+
"MAESTRO_EVALOPS_RUNTIME_OWNER",
|
|
35
|
+
"MAESTRO_RUNTIME_OWNER",
|
|
36
|
+
];
|
|
37
|
+
const SHIM_TYPE_ENV = [
|
|
38
|
+
"MAESTRO_EVALOPS_SHIM_TYPE",
|
|
39
|
+
"MAESTRO_SHIM_TYPE",
|
|
40
|
+
];
|
|
41
|
+
const TRACE_MODE_ENV = [
|
|
42
|
+
"MAESTRO_EVALOPS_TRACE_MODE",
|
|
43
|
+
"MAESTRO_TRACE_MODE",
|
|
44
|
+
];
|
|
25
45
|
function nonEmptyString(value) {
|
|
26
46
|
return typeof value === "string" && value.trim().length > 0
|
|
27
47
|
? value.trim()
|
|
@@ -129,20 +149,20 @@ export function resolveManagedEvalOpsContext(env = process.env, loadCredentials)
|
|
|
129
149
|
evidencePublisher: managed ? "EvalOps" : "none",
|
|
130
150
|
expiresAt: credentials?.expires,
|
|
131
151
|
inference: managed ? "managed" : "local",
|
|
132
|
-
integrationProfile: agentMcp?.integrationProfile,
|
|
152
|
+
integrationProfile: readEnv(env, INTEGRATION_PROFILE_ENV) ?? agentMcp?.integrationProfile,
|
|
133
153
|
keyPrefix: agentMcp?.keyPrefix,
|
|
134
154
|
managed,
|
|
135
|
-
memoryMode: agentMcp?.memoryMode,
|
|
155
|
+
memoryMode: readEnv(env, MEMORY_MODE_ENV) ?? agentMcp?.memoryMode,
|
|
136
156
|
mode,
|
|
137
157
|
organizationId,
|
|
138
158
|
providerRef,
|
|
139
159
|
runId,
|
|
140
|
-
runtimeOwner: agentMcp?.runtimeOwner,
|
|
160
|
+
runtimeOwner: readEnv(env, RUNTIME_OWNER_ENV) ?? agentMcp?.runtimeOwner,
|
|
141
161
|
sessionExpiresAt: agentMcp?.sessionExpiresAt,
|
|
142
162
|
sessionId: readEnv(env, ["MAESTRO_SESSION_ID"]),
|
|
143
|
-
shimType: agentMcp?.shimType,
|
|
163
|
+
shimType: readEnv(env, SHIM_TYPE_ENV) ?? agentMcp?.shimType,
|
|
144
164
|
traceIngestion: managed && runId ? "live" : "not configured",
|
|
145
|
-
traceMode: agentMcp?.traceMode,
|
|
165
|
+
traceMode: readEnv(env, TRACE_MODE_ENV) ?? agentMcp?.traceMode,
|
|
146
166
|
userEmail: nonEmptyString(metadata?.email),
|
|
147
167
|
userId: readEnv(env, USER_ENV) ?? nonEmptyString(metadata?.userId),
|
|
148
168
|
workspaceId,
|
|
@@ -173,6 +193,8 @@ export function formatManagedEvalOpsStatus(context, options = {}) {
|
|
|
173
193
|
if (context.integrationProfile) {
|
|
174
194
|
lines.push(`${dim("Integration profile")}: ${context.integrationProfile}`);
|
|
175
195
|
}
|
|
196
|
+
if (context.runtimeOwner)
|
|
197
|
+
lines.push(`${dim("Runtime owner")}: ${context.runtimeOwner}`);
|
|
176
198
|
if (context.shimType)
|
|
177
199
|
lines.push(`${dim("Shim")}: ${context.shimType}`);
|
|
178
200
|
if (context.traceMode)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-context.js","sourceRoot":"","sources":["../../src/evalops/managed-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEN,uBAAuB,EACvB,oBAAoB,GACpB,MAAM,qBAAqB,CAAC;AAqD7B,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAC3C,IAAI,sBAMQ,CAAC;AAEb,MAAM,OAAO,GAAG;IACf,wBAAwB;IACxB,yBAAyB;IACzB,gBAAgB;IAChB,2BAA2B;IAC3B,4BAA4B;IAC5B,8BAA8B;CACrB,CAAC;AAEX,MAAM,aAAa,GAAG;IACrB,8BAA8B;IAC9B,sBAAsB;IACtB,oCAAoC;IACpC,sBAAsB;CACb,CAAC;AAEX,MAAM,QAAQ,GAAG;IAChB,yBAAyB;IACzB,iBAAiB;IACjB,iBAAiB;CACR,CAAC;AAEX,MAAM,SAAS,GAAG,CAAC,8BAA8B,EAAE,eAAe,CAAU,CAAC;AAE7E,SAAS,cAAc,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC1D,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;QACd,CAAC,CAAC,SAAS,CAAC;AACd,CAAC;AAED,SAAS,OAAO,CAAC,GAAQ,EAAE,KAAwB;IAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CACnB,MAA2C,EAC3C,GAAW;IAEX,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC/B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACjE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,SAAS,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CACtB,WAAoC;IAEpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO;QACN,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC;QACzC,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC;QACvC,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC3C,kBAAkB,EAAE,WAAW,CAAC,QAAQ,EAAE,oBAAoB,CAAC;QAC/D,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC;QAC7C,UAAU,EAAE,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC;QAC/C,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;QACrC,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE,cAAc,CAAC;QACnD,gBAAgB,EAAE,WAAW,CAAC,QAAQ,EAAE,kBAAkB,CAAC;QAC3D,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC3C,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC;QAC7C,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC;KACjD,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC/B,QAA4B;IAE5B,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,QAAQ,KAAK,iBAAiB;YAAE,OAAO,YAAY,CAAC;QAC/D,IAAI,MAAM,CAAC,QAAQ,KAAK,qBAAqB;YAAE,OAAO,SAAS,CAAC;QAChE,OAAO,MAAM,CAAC,QAAQ,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,QAAQ,CAAC;IACjB,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,eAAuC;IACnE,IAAI,CAAC;QACJ,OAAO,eAAe,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,mCAAmC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;IAC3C,IACC,sBAAsB;QACtB,sBAAsB,CAAC,QAAQ,KAAK,QAAQ;QAC5C,sBAAsB,CAAC,SAAS,GAAG,GAAG,EACrC,CAAC;QACF,OAAO,sBAAsB,CAAC,WAAW,CAAC;IAC3C,CAAC;IACD,MAAM,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACpD,sBAAsB,GAAG;QACxB,WAAW;QACX,SAAS,EAAE,GAAG,GAAG,2BAA2B;QAC5C,QAAQ;KACR,CAAC;IACF,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC3C,MAAW,OAAO,CAAC,GAAG,EACtB,eAAwC;IAExC,MAAM,WAAW,GAAG,mBAAmB,CACtC,eAAe;QACd,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CACzE,CAAC;IACF,MAAM,QAAQ,GAAG,WAAW,EAAE,QAAQ,CAAC;IACvC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,WAAW,GAChB,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAChE,MAAM,cAAc,GACnB,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,WAAW,GAChB,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,QAAQ,EAAE,WAAW,IAAI,cAAc,CAAC;IACxE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC,IAAI,QAAQ,EAAE,OAAO,CAAC;IACxE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC;IACxE,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC;IAC1D,MAAM,mBAAmB,GAAG,OAAO,CAClC,QAAQ,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CACnE,CAAC;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,mBAAmB,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,OAAO;QACnB,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,aAAa;YACd,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,OAAO,CAAC;IAEZ,OAAO;QACN,WAAW;QACX,OAAO;QACP,aAAa;QACb,uBAAuB,EAAE,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QACpE,eAAe,EAAE,QAAQ,EAAE,QAAQ;QACnC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QAC/C,SAAS,EAAE,WAAW,EAAE,OAAO;QAC/B,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;QACxC,kBAAkB,EAAE,QAAQ,EAAE,kBAAkB;QAChD,SAAS,EAAE,QAAQ,EAAE,SAAS;QAC9B,OAAO;QACP,UAAU,EAAE,QAAQ,EAAE,UAAU;QAChC,IAAI;QACJ,cAAc;QACd,WAAW;QACX,KAAK;QACL,YAAY,EAAE,QAAQ,EAAE,YAAY;QACpC,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB;QAC5C,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC;QAC/C,QAAQ,EAAE,QAAQ,EAAE,QAAQ;QAC5B,cAAc,EAAE,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB;QAC5D,SAAS,EAAE,QAAQ,EAAE,SAAS;QAC9B,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC;QAC1C,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC;QAClE,WAAW;KACX,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACzC,OAA8B,EAC9B,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG;QACb,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,IAAI,EAAE;QAClC,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,uBAAuB,IAAI,gBAAgB,EAAE;KAClF,CAAC;IACF,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,mBAAmB,CAAC,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,OAAO,CAAC,SAAS;QACpB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAChE,IAAI,OAAO,CAAC,cAAc;QACzB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,WAAW;QACtB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,KAAK,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAChF,CAAC;IACF,IAAI,OAAO,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,qBAAqB,CAAC,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxE,IAAI,OAAO,CAAC,SAAS;QACpB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1D,IAAI,OAAO,CAAC,UAAU;QACrB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,aAAa,CAAC,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACpE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC1E,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;QAC1E,MAAM,WAAW,GAChB,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,CAAC,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC7E,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,uBAAuB,CAAC,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC;QACjD,KAAK,CAAC,IAAI,CACT,GAAG,GAAG,CAAC,cAAc,CAAC,iBAAiB,OAAO,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAClF,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC","sourcesContent":["import chalk from \"chalk\";\nimport {\n\ttype OAuthCredentials,\n\tgetOAuthStorageRevision,\n\tloadOAuthCredentials,\n} from \"../oauth/storage.js\";\n\ntype Env = Record<string, string | undefined>;\n\nexport type EvalOpsManagedTraceState = \"live\" | \"not configured\";\nexport type EvalOpsManagedEvidencePublisher = \"EvalOps\" | \"none\";\nexport type EvalOpsManagedInferenceState = \"managed\" | \"local\";\n\nexport interface EvalOpsManagedContext {\n\taccessToken?: string;\n\tagentId?: string;\n\tauthenticated: boolean;\n\tcontrolPlaneEnvironment?: string;\n\tcontrolPlaneUrl?: string;\n\tevidencePublisher: EvalOpsManagedEvidencePublisher;\n\texpiresAt?: number;\n\tinference: EvalOpsManagedInferenceState;\n\tintegrationProfile?: string;\n\tkeyPrefix?: string;\n\tmanaged: boolean;\n\tmemoryMode?: string;\n\tmode: \"EvalOps managed\" | \"EvalOps authenticated\" | \"local\";\n\torganizationId?: string;\n\tproviderRef?: Record<string, unknown>;\n\trunId?: string;\n\truntimeOwner?: string;\n\tsessionExpiresAt?: string;\n\tsessionId?: string;\n\tshimType?: string;\n\ttraceIngestion: EvalOpsManagedTraceState;\n\ttraceMode?: string;\n\tuserEmail?: string;\n\tuserId?: string;\n\tworkspaceId?: string;\n}\n\ninterface StoredAgentMcpMetadata {\n\tagentId?: string;\n\tapiKey?: string;\n\tendpoint?: string;\n\tintegrationProfile?: string;\n\tkeyPrefix?: string;\n\tmemoryMode?: string;\n\trunId?: string;\n\truntimeOwner?: string;\n\tsessionExpiresAt?: string;\n\tshimType?: string;\n\ttraceMode?: string;\n\tworkspaceId?: string;\n}\n\nexport type LoadEvalOpsCredentials = () => OAuthCredentials | null;\n\nconst PROCESS_CREDENTIAL_CACHE_MS = 30_000;\nlet processCredentialCache:\n\t| {\n\t\t\tcredentials: OAuthCredentials | null;\n\t\t\texpiresAt: number;\n\t\t\trevision: number;\n\t }\n\t| undefined;\n\nconst ORG_ENV = [\n\t\"MAESTRO_EVALOPS_ORG_ID\",\n\t\"EVALOPS_ORGANIZATION_ID\",\n\t\"EVALOPS_ORG_ID\",\n\t\"MAESTRO_ENTERPRISE_ORG_ID\",\n\t\"MAESTRO_LLM_GATEWAY_ORG_ID\",\n\t\"MAESTRO_REMOTE_RUNNER_ORG_ID\",\n] as const;\n\nconst WORKSPACE_ENV = [\n\t\"MAESTRO_EVALOPS_WORKSPACE_ID\",\n\t\"EVALOPS_WORKSPACE_ID\",\n\t\"MAESTRO_REMOTE_RUNNER_WORKSPACE_ID\",\n\t\"MAESTRO_WORKSPACE_ID\",\n] as const;\n\nconst USER_ENV = [\n\t\"MAESTRO_EVALOPS_USER_ID\",\n\t\"EVALOPS_USER_ID\",\n\t\"MAESTRO_USER_ID\",\n] as const;\n\nconst TOKEN_ENV = [\"MAESTRO_EVALOPS_ACCESS_TOKEN\", \"EVALOPS_TOKEN\"] as const;\n\nfunction nonEmptyString(value: unknown): string | undefined {\n\treturn typeof value === \"string\" && value.trim().length > 0\n\t\t? value.trim()\n\t\t: undefined;\n}\n\nfunction readEnv(env: Env, names: readonly string[]): string | undefined {\n\tfor (const name of names) {\n\t\tconst value = nonEmptyString(env[name]);\n\t\tif (value) return value;\n\t}\n\treturn undefined;\n}\n\nfunction recordValue(\n\trecord: Record<string, unknown> | undefined,\n\tkey: string,\n): string | undefined {\n\treturn nonEmptyString(record?.[key]);\n}\n\nfunction asRecord(value: unknown): Record<string, unknown> | undefined {\n\treturn value && typeof value === \"object\" && !Array.isArray(value)\n\t\t? (value as Record<string, unknown>)\n\t\t: undefined;\n}\n\nfunction storedAgentMcp(\n\tcredentials: OAuthCredentials | null,\n): StoredAgentMcpMetadata | undefined {\n\tconst agentMcp = asRecord(credentials?.metadata?.agentMcp);\n\tif (!agentMcp) return undefined;\n\treturn {\n\t\tagentId: recordValue(agentMcp, \"agentId\"),\n\t\tapiKey: recordValue(agentMcp, \"apiKey\"),\n\t\tendpoint: recordValue(agentMcp, \"endpoint\"),\n\t\tintegrationProfile: recordValue(agentMcp, \"integrationProfile\"),\n\t\tkeyPrefix: recordValue(agentMcp, \"keyPrefix\"),\n\t\tmemoryMode: recordValue(agentMcp, \"memoryMode\"),\n\t\trunId: recordValue(agentMcp, \"runId\"),\n\t\truntimeOwner: recordValue(agentMcp, \"runtimeOwner\"),\n\t\tsessionExpiresAt: recordValue(agentMcp, \"sessionExpiresAt\"),\n\t\tshimType: recordValue(agentMcp, \"shimType\"),\n\t\ttraceMode: recordValue(agentMcp, \"traceMode\"),\n\t\tworkspaceId: recordValue(agentMcp, \"workspaceId\"),\n\t};\n}\n\nfunction controlPlaneEnvironment(\n\tendpoint: string | undefined,\n): string | undefined {\n\tif (!endpoint) return undefined;\n\ttry {\n\t\tconst parsed = new URL(endpoint);\n\t\tif (parsed.hostname === \"app.evalops.dev\") return \"production\";\n\t\tif (parsed.hostname === \"staging.evalops.dev\") return \"staging\";\n\t\treturn parsed.hostname;\n\t} catch {\n\t\treturn endpoint;\n\t}\n}\n\nfunction safeLoadCredentials(loadCredentials: LoadEvalOpsCredentials) {\n\ttry {\n\t\treturn loadCredentials();\n\t} catch {\n\t\treturn null;\n\t}\n}\n\nfunction loadProcessEvalOpsCredentialsCached(): OAuthCredentials | null {\n\tconst now = Date.now();\n\tconst revision = getOAuthStorageRevision();\n\tif (\n\t\tprocessCredentialCache &&\n\t\tprocessCredentialCache.revision === revision &&\n\t\tprocessCredentialCache.expiresAt > now\n\t) {\n\t\treturn processCredentialCache.credentials;\n\t}\n\tconst credentials = loadOAuthCredentials(\"evalops\");\n\tprocessCredentialCache = {\n\t\tcredentials,\n\t\texpiresAt: now + PROCESS_CREDENTIAL_CACHE_MS,\n\t\trevision,\n\t};\n\treturn credentials;\n}\n\nexport function resolveManagedEvalOpsContext(\n\tenv: Env = process.env,\n\tloadCredentials?: LoadEvalOpsCredentials,\n): EvalOpsManagedContext {\n\tconst credentials = safeLoadCredentials(\n\t\tloadCredentials ??\n\t\t\t(env === process.env ? loadProcessEvalOpsCredentialsCached : () => null),\n\t);\n\tconst metadata = credentials?.metadata;\n\tconst providerRef = asRecord(metadata?.providerRef);\n\tconst agentMcp = storedAgentMcp(credentials);\n\tconst accessToken =\n\t\treadEnv(env, TOKEN_ENV) ?? nonEmptyString(credentials?.access);\n\tconst organizationId =\n\t\treadEnv(env, ORG_ENV) ?? nonEmptyString(metadata?.organizationId);\n\tconst workspaceId =\n\t\treadEnv(env, WORKSPACE_ENV) ?? agentMcp?.workspaceId ?? organizationId;\n\tconst agentId = readEnv(env, [\"MAESTRO_AGENT_ID\"]) ?? agentMcp?.agentId;\n\tconst runId = readEnv(env, [\"MAESTRO_AGENT_RUN_ID\"]) ?? agentMcp?.runId;\n\tconst authenticated = Boolean(accessToken || credentials);\n\tconst managedAgentSession = Boolean(\n\t\tagentMcp?.apiKey || (readEnv(env, TOKEN_ENV) && (agentId || runId)),\n\t);\n\tconst managed = Boolean(organizationId && managedAgentSession);\n\tconst mode = managed\n\t\t? \"EvalOps managed\"\n\t\t: authenticated\n\t\t\t? \"EvalOps authenticated\"\n\t\t\t: \"local\";\n\n\treturn {\n\t\taccessToken,\n\t\tagentId,\n\t\tauthenticated,\n\t\tcontrolPlaneEnvironment: controlPlaneEnvironment(agentMcp?.endpoint),\n\t\tcontrolPlaneUrl: agentMcp?.endpoint,\n\t\tevidencePublisher: managed ? \"EvalOps\" : \"none\",\n\t\texpiresAt: credentials?.expires,\n\t\tinference: managed ? \"managed\" : \"local\",\n\t\tintegrationProfile: agentMcp?.integrationProfile,\n\t\tkeyPrefix: agentMcp?.keyPrefix,\n\t\tmanaged,\n\t\tmemoryMode: agentMcp?.memoryMode,\n\t\tmode,\n\t\torganizationId,\n\t\tproviderRef,\n\t\trunId,\n\t\truntimeOwner: agentMcp?.runtimeOwner,\n\t\tsessionExpiresAt: agentMcp?.sessionExpiresAt,\n\t\tsessionId: readEnv(env, [\"MAESTRO_SESSION_ID\"]),\n\t\tshimType: agentMcp?.shimType,\n\t\ttraceIngestion: managed && runId ? \"live\" : \"not configured\",\n\t\ttraceMode: agentMcp?.traceMode,\n\t\tuserEmail: nonEmptyString(metadata?.email),\n\t\tuserId: readEnv(env, USER_ENV) ?? nonEmptyString(metadata?.userId),\n\t\tworkspaceId,\n\t};\n}\n\nexport function formatManagedEvalOpsStatus(\n\tcontext: EvalOpsManagedContext,\n\toptions: { color?: boolean } = {},\n): string {\n\tconst color = options.color ?? true;\n\tconst good = (value: string) => (color ? chalk.green(value) : value);\n\tconst dim = (value: string) => (color ? chalk.dim(value) : value);\n\tconst lines = [\n\t\t`${good(\"Mode\")}: ${context.mode}`,\n\t\t`${good(\"Control plane\")}: ${context.controlPlaneEnvironment ?? \"not configured\"}`,\n\t];\n\tif (context.controlPlaneUrl) {\n\t\tlines.push(`${dim(\"Control plane URL\")}: ${context.controlPlaneUrl}`);\n\t}\n\tif (context.userEmail)\n\t\tlines.push(`${dim(\"Authenticated as\")}: ${context.userEmail}`);\n\tif (context.organizationId)\n\t\tlines.push(`${dim(\"Organization\")}: ${context.organizationId}`);\n\tif (context.workspaceId)\n\t\tlines.push(`${dim(\"Workspace\")}: ${context.workspaceId}`);\n\tlines.push(\n\t\t`${good(\"Agent runtime\")}: ${context.agentId ? \"registered\" : \"not registered\"}`,\n\t);\n\tif (context.agentId) lines.push(`${dim(\"Agent\")}: ${context.agentId}`);\n\tif (context.runId) lines.push(`${dim(\"Run\")}: ${context.runId}`);\n\tif (context.integrationProfile) {\n\t\tlines.push(`${dim(\"Integration profile\")}: ${context.integrationProfile}`);\n\t}\n\tif (context.shimType) lines.push(`${dim(\"Shim\")}: ${context.shimType}`);\n\tif (context.traceMode)\n\t\tlines.push(`${dim(\"Trace mode\")}: ${context.traceMode}`);\n\tif (context.memoryMode)\n\t\tlines.push(`${dim(\"Memory mode\")}: ${context.memoryMode}`);\n\tlines.push(`${good(\"Trace ingestion\")}: ${context.traceIngestion}`);\n\tlines.push(`${good(\"Evidence publisher\")}: ${context.evidencePublisher}`);\n\tlines.push(`${good(\"Inference\")}: ${context.inference}`);\n\tif (context.providerRef) {\n\t\tconst provider = nonEmptyString(context.providerRef.provider) ?? \"openai\";\n\t\tconst environment =\n\t\t\tnonEmptyString(context.providerRef.environment) ?? \"prod\";\n\t\tlines.push(`${dim(\"Provider ref\")}: ${provider}/${environment}`);\n\t}\n\tif (context.keyPrefix) lines.push(`${dim(\"API key\")}: ${context.keyPrefix}`);\n\tif (context.sessionExpiresAt) {\n\t\tlines.push(`${dim(\"Agent session expires\")}: ${context.sessionExpiresAt}`);\n\t}\n\tif (context.expiresAt) {\n\t\tconst remainingMs = Math.max(0, context.expiresAt - Date.now());\n\t\tconst minutes = Math.round(remainingMs / 60_000);\n\t\tlines.push(\n\t\t\t`${dim(\"Access token\")}: expires in ~${minutes} minute${minutes === 1 ? \"\" : \"s\"}`,\n\t\t);\n\t}\n\treturn lines.join(\"\\n\");\n}\n"]}
|
|
1
|
+
{"version":3,"file":"managed-context.js","sourceRoot":"","sources":["../../src/evalops/managed-context.ts"],"names":[],"mappings":"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","sourcesContent":["import chalk from \"chalk\";\nimport {\n\ttype OAuthCredentials,\n\tgetOAuthStorageRevision,\n\tloadOAuthCredentials,\n} from \"../oauth/storage.js\";\n\ntype Env = Record<string, string | undefined>;\n\nexport type EvalOpsManagedTraceState = \"live\" | \"not configured\";\nexport type EvalOpsManagedEvidencePublisher = \"EvalOps\" | \"none\";\nexport type EvalOpsManagedInferenceState = \"managed\" | \"local\";\n\nexport interface EvalOpsManagedContext {\n\taccessToken?: string;\n\tagentId?: string;\n\tauthenticated: boolean;\n\tcontrolPlaneEnvironment?: string;\n\tcontrolPlaneUrl?: string;\n\tevidencePublisher: EvalOpsManagedEvidencePublisher;\n\texpiresAt?: number;\n\tinference: EvalOpsManagedInferenceState;\n\tintegrationProfile?: string;\n\tkeyPrefix?: string;\n\tmanaged: boolean;\n\tmemoryMode?: string;\n\tmode: \"EvalOps managed\" | \"EvalOps authenticated\" | \"local\";\n\torganizationId?: string;\n\tproviderRef?: Record<string, unknown>;\n\trunId?: string;\n\truntimeOwner?: string;\n\tsessionExpiresAt?: string;\n\tsessionId?: string;\n\tshimType?: string;\n\ttraceIngestion: EvalOpsManagedTraceState;\n\ttraceMode?: string;\n\tuserEmail?: string;\n\tuserId?: string;\n\tworkspaceId?: string;\n}\n\ninterface StoredAgentMcpMetadata {\n\tagentId?: string;\n\tapiKey?: string;\n\tendpoint?: string;\n\tintegrationProfile?: string;\n\tkeyPrefix?: string;\n\tmemoryMode?: string;\n\trunId?: string;\n\truntimeOwner?: string;\n\tsessionExpiresAt?: string;\n\tshimType?: string;\n\ttraceMode?: string;\n\tworkspaceId?: string;\n}\n\nexport type LoadEvalOpsCredentials = () => OAuthCredentials | null;\n\nconst PROCESS_CREDENTIAL_CACHE_MS = 30_000;\nlet processCredentialCache:\n\t| {\n\t\t\tcredentials: OAuthCredentials | null;\n\t\t\texpiresAt: number;\n\t\t\trevision: number;\n\t }\n\t| undefined;\n\nconst ORG_ENV = [\n\t\"MAESTRO_EVALOPS_ORG_ID\",\n\t\"EVALOPS_ORGANIZATION_ID\",\n\t\"EVALOPS_ORG_ID\",\n\t\"MAESTRO_ENTERPRISE_ORG_ID\",\n\t\"MAESTRO_LLM_GATEWAY_ORG_ID\",\n\t\"MAESTRO_REMOTE_RUNNER_ORG_ID\",\n] as const;\n\nconst WORKSPACE_ENV = [\n\t\"MAESTRO_EVALOPS_WORKSPACE_ID\",\n\t\"EVALOPS_WORKSPACE_ID\",\n\t\"MAESTRO_REMOTE_RUNNER_WORKSPACE_ID\",\n\t\"MAESTRO_WORKSPACE_ID\",\n] as const;\n\nconst USER_ENV = [\n\t\"MAESTRO_EVALOPS_USER_ID\",\n\t\"EVALOPS_USER_ID\",\n\t\"MAESTRO_USER_ID\",\n] as const;\n\nconst TOKEN_ENV = [\"MAESTRO_EVALOPS_ACCESS_TOKEN\", \"EVALOPS_TOKEN\"] as const;\nconst INTEGRATION_PROFILE_ENV = [\n\t\"MAESTRO_EVALOPS_INTEGRATION_PROFILE\",\n\t\"MAESTRO_INTEGRATION_PROFILE\",\n] as const;\nconst MEMORY_MODE_ENV = [\n\t\"MAESTRO_EVALOPS_MEMORY_MODE\",\n\t\"MAESTRO_MEMORY_MODE\",\n] as const;\nconst RUNTIME_OWNER_ENV = [\n\t\"MAESTRO_EVALOPS_RUNTIME_OWNER\",\n\t\"MAESTRO_RUNTIME_OWNER\",\n] as const;\nconst SHIM_TYPE_ENV = [\n\t\"MAESTRO_EVALOPS_SHIM_TYPE\",\n\t\"MAESTRO_SHIM_TYPE\",\n] as const;\nconst TRACE_MODE_ENV = [\n\t\"MAESTRO_EVALOPS_TRACE_MODE\",\n\t\"MAESTRO_TRACE_MODE\",\n] as const;\n\nfunction nonEmptyString(value: unknown): string | undefined {\n\treturn typeof value === \"string\" && value.trim().length > 0\n\t\t? value.trim()\n\t\t: undefined;\n}\n\nfunction readEnv(env: Env, names: readonly string[]): string | undefined {\n\tfor (const name of names) {\n\t\tconst value = nonEmptyString(env[name]);\n\t\tif (value) return value;\n\t}\n\treturn undefined;\n}\n\nfunction recordValue(\n\trecord: Record<string, unknown> | undefined,\n\tkey: string,\n): string | undefined {\n\treturn nonEmptyString(record?.[key]);\n}\n\nfunction asRecord(value: unknown): Record<string, unknown> | undefined {\n\treturn value && typeof value === \"object\" && !Array.isArray(value)\n\t\t? (value as Record<string, unknown>)\n\t\t: undefined;\n}\n\nfunction storedAgentMcp(\n\tcredentials: OAuthCredentials | null,\n): StoredAgentMcpMetadata | undefined {\n\tconst agentMcp = asRecord(credentials?.metadata?.agentMcp);\n\tif (!agentMcp) return undefined;\n\treturn {\n\t\tagentId: recordValue(agentMcp, \"agentId\"),\n\t\tapiKey: recordValue(agentMcp, \"apiKey\"),\n\t\tendpoint: recordValue(agentMcp, \"endpoint\"),\n\t\tintegrationProfile: recordValue(agentMcp, \"integrationProfile\"),\n\t\tkeyPrefix: recordValue(agentMcp, \"keyPrefix\"),\n\t\tmemoryMode: recordValue(agentMcp, \"memoryMode\"),\n\t\trunId: recordValue(agentMcp, \"runId\"),\n\t\truntimeOwner: recordValue(agentMcp, \"runtimeOwner\"),\n\t\tsessionExpiresAt: recordValue(agentMcp, \"sessionExpiresAt\"),\n\t\tshimType: recordValue(agentMcp, \"shimType\"),\n\t\ttraceMode: recordValue(agentMcp, \"traceMode\"),\n\t\tworkspaceId: recordValue(agentMcp, \"workspaceId\"),\n\t};\n}\n\nfunction controlPlaneEnvironment(\n\tendpoint: string | undefined,\n): string | undefined {\n\tif (!endpoint) return undefined;\n\ttry {\n\t\tconst parsed = new URL(endpoint);\n\t\tif (parsed.hostname === \"app.evalops.dev\") return \"production\";\n\t\tif (parsed.hostname === \"staging.evalops.dev\") return \"staging\";\n\t\treturn parsed.hostname;\n\t} catch {\n\t\treturn endpoint;\n\t}\n}\n\nfunction safeLoadCredentials(loadCredentials: LoadEvalOpsCredentials) {\n\ttry {\n\t\treturn loadCredentials();\n\t} catch {\n\t\treturn null;\n\t}\n}\n\nfunction loadProcessEvalOpsCredentialsCached(): OAuthCredentials | null {\n\tconst now = Date.now();\n\tconst revision = getOAuthStorageRevision();\n\tif (\n\t\tprocessCredentialCache &&\n\t\tprocessCredentialCache.revision === revision &&\n\t\tprocessCredentialCache.expiresAt > now\n\t) {\n\t\treturn processCredentialCache.credentials;\n\t}\n\tconst credentials = loadOAuthCredentials(\"evalops\");\n\tprocessCredentialCache = {\n\t\tcredentials,\n\t\texpiresAt: now + PROCESS_CREDENTIAL_CACHE_MS,\n\t\trevision,\n\t};\n\treturn credentials;\n}\n\nexport function resolveManagedEvalOpsContext(\n\tenv: Env = process.env,\n\tloadCredentials?: LoadEvalOpsCredentials,\n): EvalOpsManagedContext {\n\tconst credentials = safeLoadCredentials(\n\t\tloadCredentials ??\n\t\t\t(env === process.env ? loadProcessEvalOpsCredentialsCached : () => null),\n\t);\n\tconst metadata = credentials?.metadata;\n\tconst providerRef = asRecord(metadata?.providerRef);\n\tconst agentMcp = storedAgentMcp(credentials);\n\tconst accessToken =\n\t\treadEnv(env, TOKEN_ENV) ?? nonEmptyString(credentials?.access);\n\tconst organizationId =\n\t\treadEnv(env, ORG_ENV) ?? nonEmptyString(metadata?.organizationId);\n\tconst workspaceId =\n\t\treadEnv(env, WORKSPACE_ENV) ?? agentMcp?.workspaceId ?? organizationId;\n\tconst agentId = readEnv(env, [\"MAESTRO_AGENT_ID\"]) ?? agentMcp?.agentId;\n\tconst runId = readEnv(env, [\"MAESTRO_AGENT_RUN_ID\"]) ?? agentMcp?.runId;\n\tconst authenticated = Boolean(accessToken || credentials);\n\tconst managedAgentSession = Boolean(\n\t\tagentMcp?.apiKey || (readEnv(env, TOKEN_ENV) && (agentId || runId)),\n\t);\n\tconst managed = Boolean(organizationId && managedAgentSession);\n\tconst mode = managed\n\t\t? \"EvalOps managed\"\n\t\t: authenticated\n\t\t\t? \"EvalOps authenticated\"\n\t\t\t: \"local\";\n\n\treturn {\n\t\taccessToken,\n\t\tagentId,\n\t\tauthenticated,\n\t\tcontrolPlaneEnvironment: controlPlaneEnvironment(agentMcp?.endpoint),\n\t\tcontrolPlaneUrl: agentMcp?.endpoint,\n\t\tevidencePublisher: managed ? \"EvalOps\" : \"none\",\n\t\texpiresAt: credentials?.expires,\n\t\tinference: managed ? \"managed\" : \"local\",\n\t\tintegrationProfile:\n\t\t\treadEnv(env, INTEGRATION_PROFILE_ENV) ?? agentMcp?.integrationProfile,\n\t\tkeyPrefix: agentMcp?.keyPrefix,\n\t\tmanaged,\n\t\tmemoryMode: readEnv(env, MEMORY_MODE_ENV) ?? agentMcp?.memoryMode,\n\t\tmode,\n\t\torganizationId,\n\t\tproviderRef,\n\t\trunId,\n\t\truntimeOwner: readEnv(env, RUNTIME_OWNER_ENV) ?? agentMcp?.runtimeOwner,\n\t\tsessionExpiresAt: agentMcp?.sessionExpiresAt,\n\t\tsessionId: readEnv(env, [\"MAESTRO_SESSION_ID\"]),\n\t\tshimType: readEnv(env, SHIM_TYPE_ENV) ?? agentMcp?.shimType,\n\t\ttraceIngestion: managed && runId ? \"live\" : \"not configured\",\n\t\ttraceMode: readEnv(env, TRACE_MODE_ENV) ?? agentMcp?.traceMode,\n\t\tuserEmail: nonEmptyString(metadata?.email),\n\t\tuserId: readEnv(env, USER_ENV) ?? nonEmptyString(metadata?.userId),\n\t\tworkspaceId,\n\t};\n}\n\nexport function formatManagedEvalOpsStatus(\n\tcontext: EvalOpsManagedContext,\n\toptions: { color?: boolean } = {},\n): string {\n\tconst color = options.color ?? true;\n\tconst good = (value: string) => (color ? chalk.green(value) : value);\n\tconst dim = (value: string) => (color ? chalk.dim(value) : value);\n\tconst lines = [\n\t\t`${good(\"Mode\")}: ${context.mode}`,\n\t\t`${good(\"Control plane\")}: ${context.controlPlaneEnvironment ?? \"not configured\"}`,\n\t];\n\tif (context.controlPlaneUrl) {\n\t\tlines.push(`${dim(\"Control plane URL\")}: ${context.controlPlaneUrl}`);\n\t}\n\tif (context.userEmail)\n\t\tlines.push(`${dim(\"Authenticated as\")}: ${context.userEmail}`);\n\tif (context.organizationId)\n\t\tlines.push(`${dim(\"Organization\")}: ${context.organizationId}`);\n\tif (context.workspaceId)\n\t\tlines.push(`${dim(\"Workspace\")}: ${context.workspaceId}`);\n\tlines.push(\n\t\t`${good(\"Agent runtime\")}: ${context.agentId ? \"registered\" : \"not registered\"}`,\n\t);\n\tif (context.agentId) lines.push(`${dim(\"Agent\")}: ${context.agentId}`);\n\tif (context.runId) lines.push(`${dim(\"Run\")}: ${context.runId}`);\n\tif (context.integrationProfile) {\n\t\tlines.push(`${dim(\"Integration profile\")}: ${context.integrationProfile}`);\n\t}\n\tif (context.runtimeOwner)\n\t\tlines.push(`${dim(\"Runtime owner\")}: ${context.runtimeOwner}`);\n\tif (context.shimType) lines.push(`${dim(\"Shim\")}: ${context.shimType}`);\n\tif (context.traceMode)\n\t\tlines.push(`${dim(\"Trace mode\")}: ${context.traceMode}`);\n\tif (context.memoryMode)\n\t\tlines.push(`${dim(\"Memory mode\")}: ${context.memoryMode}`);\n\tlines.push(`${good(\"Trace ingestion\")}: ${context.traceIngestion}`);\n\tlines.push(`${good(\"Evidence publisher\")}: ${context.evidencePublisher}`);\n\tlines.push(`${good(\"Inference\")}: ${context.inference}`);\n\tif (context.providerRef) {\n\t\tconst provider = nonEmptyString(context.providerRef.provider) ?? \"openai\";\n\t\tconst environment =\n\t\t\tnonEmptyString(context.providerRef.environment) ?? \"prod\";\n\t\tlines.push(`${dim(\"Provider ref\")}: ${provider}/${environment}`);\n\t}\n\tif (context.keyPrefix) lines.push(`${dim(\"API key\")}: ${context.keyPrefix}`);\n\tif (context.sessionExpiresAt) {\n\t\tlines.push(`${dim(\"Agent session expires\")}: ${context.sessionExpiresAt}`);\n\t}\n\tif (context.expiresAt) {\n\t\tconst remainingMs = Math.max(0, context.expiresAt - Date.now());\n\t\tconst minutes = Math.round(remainingMs / 60_000);\n\t\tlines.push(\n\t\t\t`${dim(\"Access token\")}: expires in ~${minutes} minute${minutes === 1 ? \"\" : \"s\"}`,\n\t\t);\n\t}\n\treturn lines.join(\"\\n\");\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-plugin.d.ts","sourceRoot":"","sources":["../../src/mcp/platform-plugin.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"platform-plugin.d.ts","sourceRoot":"","sources":["../../src/mcp/platform-plugin.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAmJlD,wBAAgB,2BAA2B,IAAI,eAAe,EAAE,CAqB/D"}
|
|
@@ -42,6 +42,26 @@ const PLATFORM_MCP_SCOPES_ENV_VARS = [
|
|
|
42
42
|
"MAESTRO_EVALOPS_AGENT_MCP_SCOPES",
|
|
43
43
|
"MAESTRO_CEREBRO_MCP_SCOPES",
|
|
44
44
|
];
|
|
45
|
+
const PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS = [
|
|
46
|
+
"MAESTRO_EVALOPS_INTEGRATION_PROFILE",
|
|
47
|
+
"MAESTRO_INTEGRATION_PROFILE",
|
|
48
|
+
];
|
|
49
|
+
const PLATFORM_MCP_MEMORY_MODE_ENV_VARS = [
|
|
50
|
+
"MAESTRO_EVALOPS_MEMORY_MODE",
|
|
51
|
+
"MAESTRO_MEMORY_MODE",
|
|
52
|
+
];
|
|
53
|
+
const PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS = [
|
|
54
|
+
"MAESTRO_EVALOPS_RUNTIME_OWNER",
|
|
55
|
+
"MAESTRO_RUNTIME_OWNER",
|
|
56
|
+
];
|
|
57
|
+
const PLATFORM_MCP_SHIM_TYPE_ENV_VARS = [
|
|
58
|
+
"MAESTRO_EVALOPS_SHIM_TYPE",
|
|
59
|
+
"MAESTRO_SHIM_TYPE",
|
|
60
|
+
];
|
|
61
|
+
const PLATFORM_MCP_TRACE_MODE_ENV_VARS = [
|
|
62
|
+
"MAESTRO_EVALOPS_TRACE_MODE",
|
|
63
|
+
"MAESTRO_TRACE_MODE",
|
|
64
|
+
];
|
|
45
65
|
const DEFAULT_PLATFORM_MCP_SERVER_NAME = "evalops";
|
|
46
66
|
const AGENT_MCP_MANIFEST_PATH = "/.well-known/evalops/agent-mcp.json";
|
|
47
67
|
const AGENT_MCP_PATH = "/mcp";
|
|
@@ -65,14 +85,16 @@ function buildPlatformMcpHeaders() {
|
|
|
65
85
|
"X-EvalOps-Session-Id": getEnvValue(["MAESTRO_SESSION_ID"]),
|
|
66
86
|
"X-EvalOps-Agent-Id": getEnvValue(PLATFORM_MCP_AGENT_ID_ENV_VARS) ?? stored?.agentId,
|
|
67
87
|
"X-EvalOps-Agent-Run-Id": getEnvValue(["MAESTRO_AGENT_RUN_ID"]) ?? stored?.runId,
|
|
68
|
-
"X-EvalOps-Integration-Profile":
|
|
69
|
-
|
|
70
|
-
"X-EvalOps-
|
|
88
|
+
"X-EvalOps-Integration-Profile": getEnvValue(PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS) ??
|
|
89
|
+
stored?.integrationProfile,
|
|
90
|
+
"X-EvalOps-Memory-Mode": getEnvValue(PLATFORM_MCP_MEMORY_MODE_ENV_VARS) ?? stored?.memoryMode,
|
|
91
|
+
"X-EvalOps-Runtime-Owner": getEnvValue(PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS) ??
|
|
92
|
+
stored?.runtimeOwner,
|
|
71
93
|
"X-EvalOps-Scopes": getEnvValue(PLATFORM_MCP_SCOPES_ENV_VARS),
|
|
72
|
-
"X-EvalOps-Shim-Type": stored?.shimType,
|
|
94
|
+
"X-EvalOps-Shim-Type": getEnvValue(PLATFORM_MCP_SHIM_TYPE_ENV_VARS) ?? stored?.shimType,
|
|
73
95
|
"X-EvalOps-Request-Id": getEnvValue(["MAESTRO_REQUEST_ID"]),
|
|
74
96
|
"X-EvalOps-Trace-Id": getEnvValue(["TRACE_ID", "OTEL_TRACE_ID"]),
|
|
75
|
-
"X-EvalOps-Trace-Mode": stored?.traceMode,
|
|
97
|
+
"X-EvalOps-Trace-Mode": getEnvValue(PLATFORM_MCP_TRACE_MODE_ENV_VARS) ?? stored?.traceMode,
|
|
76
98
|
"X-EvalOps-Maestro-Surface": getEnvValue(["MAESTRO_SURFACE"]) ?? "maestro",
|
|
77
99
|
}).filter((entry) => typeof entry[1] === "string" && entry[1].trim().length > 0));
|
|
78
100
|
return Object.keys(headers).length > 0 ? headers : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-plugin.js","sourceRoot":"","sources":["../../src/mcp/platform-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { getStoredEvalOpsAgentMcpMetadata } from \"../evalops/agent-bootstrap.js\";\nimport {\n\tgetEnvValue,\n\tnormalizeBaseUrl,\n\tresolveConfiguredToken,\n\tresolveWorkspaceId,\n} from \"../platform/client.js\";\nimport type { McpServerConfig } from \"./types.js\";\n\nconst PLATFORM_MCP_DISABLED_VALUES = new Set([\"0\", \"false\", \"no\", \"off\"]);\nconst PLATFORM_MCP_ENABLED_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_ENABLED\",\n\t\"MAESTRO_AGENT_MCP_ENABLED\",\n] as const;\nconst PLATFORM_MCP_NAME_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_NAME\",\n\t\"MAESTRO_AGENT_MCP_NAME\",\n] as const;\nconst PLATFORM_MCP_URL_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_URL\",\n\t\"MAESTRO_AGENT_MCP_URL\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_URL\",\n] as const;\nconst PLATFORM_MCP_MANIFEST_URL_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_MANIFEST_URL\",\n\t\"MAESTRO_AGENT_MCP_MANIFEST_URL\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_MANIFEST_URL\",\n] as const;\nconst PLATFORM_MCP_TOKEN_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_TOKEN\",\n\t\"MAESTRO_AGENT_MCP_TOKEN\",\n\t\"MAESTRO_EVALOPS_ACCESS_TOKEN\",\n\t\"EVALOPS_TOKEN\",\n] as const;\nconst PLATFORM_MCP_WORKSPACE_ENV_VARS = [\n\t\"MAESTRO_WORKSPACE_ID\",\n\t\"MAESTRO_EVALOPS_WORKSPACE_ID\",\n\t\"MAESTRO_EVALOPS_ORG_ID\",\n\t\"EVALOPS_ORGANIZATION_ID\",\n\t\"MAESTRO_ENTERPRISE_ORG_ID\",\n] as const;\nconst PLATFORM_MCP_AGENT_ID_ENV_VARS = [\n\t\"MAESTRO_AGENT_ID\",\n\t\"MAESTRO_EVALOPS_AGENT_ID\",\n] as const;\nconst PLATFORM_MCP_SCOPES_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_SCOPES\",\n\t\"MAESTRO_AGENT_MCP_SCOPES\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_SCOPES\",\n\t\"MAESTRO_CEREBRO_MCP_SCOPES\",\n] as const;\nconst DEFAULT_PLATFORM_MCP_SERVER_NAME = \"evalops\";\nconst AGENT_MCP_MANIFEST_PATH = \"/.well-known/evalops/agent-mcp.json\";\nconst AGENT_MCP_PATH = \"/mcp\";\n\nfunction isPlatformMcpExplicitlyDisabled(): boolean {\n\tconst enabled = getEnvValue(PLATFORM_MCP_ENABLED_ENV_VARS);\n\tif (!enabled) {\n\t\treturn false;\n\t}\n\treturn PLATFORM_MCP_DISABLED_VALUES.has(enabled.trim().toLowerCase());\n}\n\nfunction buildPlatformMcpHeaders(): Record<string, string> | undefined {\n\tconst stored = getStoredEvalOpsAgentMcpMetadata();\n\tconst token =\n\t\tgetEnvValue(PLATFORM_MCP_TOKEN_ENV_VARS) ??\n\t\tstored?.apiKey ??\n\t\tresolveConfiguredToken(PLATFORM_MCP_TOKEN_ENV_VARS);\n\tconst workspaceId =\n\t\tresolveWorkspaceId(PLATFORM_MCP_WORKSPACE_ENV_VARS) ?? stored?.workspaceId;\n\tconst headers = Object.fromEntries(\n\t\tObject.entries({\n\t\t\t...(token ? { Authorization: `Bearer ${token}` } : {}),\n\t\t\t\"Mcp-Session-Id\": getEnvValue([\"MAESTRO_SESSION_ID\"]),\n\t\t\t\"X-EvalOps-Workspace-Id\": workspaceId,\n\t\t\t\"X-EvalOps-Session-Id\": getEnvValue([\"MAESTRO_SESSION_ID\"]),\n\t\t\t\"X-EvalOps-Agent-Id\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_AGENT_ID_ENV_VARS) ?? stored?.agentId,\n\t\t\t\"X-EvalOps-Agent-Run-Id\":\n\t\t\t\tgetEnvValue([\"MAESTRO_AGENT_RUN_ID\"]) ?? stored?.runId,\n\t\t\t\"X-EvalOps-Integration-Profile\": stored?.integrationProfile,\n\t\t\t\"X-EvalOps-Memory-Mode\": stored?.memoryMode,\n\t\t\t\"X-EvalOps-Runtime-Owner\": stored?.runtimeOwner,\n\t\t\t\"X-EvalOps-Scopes\": getEnvValue(PLATFORM_MCP_SCOPES_ENV_VARS),\n\t\t\t\"X-EvalOps-Shim-Type\": stored?.shimType,\n\t\t\t\"X-EvalOps-Request-Id\": getEnvValue([\"MAESTRO_REQUEST_ID\"]),\n\t\t\t\"X-EvalOps-Trace-Id\": getEnvValue([\"TRACE_ID\", \"OTEL_TRACE_ID\"]),\n\t\t\t\"X-EvalOps-Trace-Mode\": stored?.traceMode,\n\t\t\t\"X-EvalOps-Maestro-Surface\":\n\t\t\t\tgetEnvValue([\"MAESTRO_SURFACE\"]) ?? \"maestro\",\n\t\t}).filter(\n\t\t\t(entry): entry is [string, string] =>\n\t\t\t\ttypeof entry[1] === \"string\" && entry[1].trim().length > 0,\n\t\t),\n\t);\n\treturn Object.keys(headers).length > 0 ? headers : undefined;\n}\n\nfunction normalizePlatformMcpEndpoint(url: string): string {\n\tconst normalized = normalizeBaseUrl(url);\n\ttry {\n\t\tconst parsed = new URL(normalized);\n\t\tif (\n\t\t\tparsed.pathname === \"\" ||\n\t\t\tparsed.pathname === \"/\" ||\n\t\t\tparsed.pathname === AGENT_MCP_MANIFEST_PATH\n\t\t) {\n\t\t\tparsed.pathname = AGENT_MCP_PATH;\n\t\t\tparsed.search = \"\";\n\t\t\tparsed.hash = \"\";\n\t\t\treturn normalizeBaseUrl(parsed.toString());\n\t\t}\n\t} catch {\n\t\t// Keep the existing permissive behavior for non-standard local test URLs.\n\t}\n\treturn normalized;\n}\n\nfunction resolvePlatformMcpURL(): string | undefined {\n\treturn (\n\t\tgetEnvValue(PLATFORM_MCP_URL_ENV_VARS) ??\n\t\tgetEnvValue(PLATFORM_MCP_MANIFEST_URL_ENV_VARS) ??\n\t\tgetStoredEvalOpsAgentMcpMetadata()?.endpoint\n\t);\n}\n\nexport function getPlatformMcpPluginServers(): McpServerConfig[] {\n\tif (isPlatformMcpExplicitlyDisabled()) {\n\t\treturn [];\n\t}\n\n\tconst url = resolvePlatformMcpURL();\n\tif (!url) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\t{\n\t\t\tname:\n\t\t\t\tgetEnvValue(PLATFORM_MCP_NAME_ENV_VARS) ??\n\t\t\t\tDEFAULT_PLATFORM_MCP_SERVER_NAME,\n\t\t\ttransport: \"http\",\n\t\t\turl: normalizePlatformMcpEndpoint(url),\n\t\t\theaders: buildPlatformMcpHeaders(),\n\t\t\tscope: \"plugin\",\n\t\t},\n\t];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"platform-plugin.js","sourceRoot":"","sources":["../../src/mcp/platform-plugin.ts"],"names":[],"mappings":"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","sourcesContent":["import { getStoredEvalOpsAgentMcpMetadata } from \"../evalops/agent-bootstrap.js\";\nimport {\n\tgetEnvValue,\n\tnormalizeBaseUrl,\n\tresolveConfiguredToken,\n\tresolveWorkspaceId,\n} from \"../platform/client.js\";\nimport type { McpServerConfig } from \"./types.js\";\n\nconst PLATFORM_MCP_DISABLED_VALUES = new Set([\"0\", \"false\", \"no\", \"off\"]);\nconst PLATFORM_MCP_ENABLED_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_ENABLED\",\n\t\"MAESTRO_AGENT_MCP_ENABLED\",\n] as const;\nconst PLATFORM_MCP_NAME_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_NAME\",\n\t\"MAESTRO_AGENT_MCP_NAME\",\n] as const;\nconst PLATFORM_MCP_URL_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_URL\",\n\t\"MAESTRO_AGENT_MCP_URL\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_URL\",\n] as const;\nconst PLATFORM_MCP_MANIFEST_URL_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_MANIFEST_URL\",\n\t\"MAESTRO_AGENT_MCP_MANIFEST_URL\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_MANIFEST_URL\",\n] as const;\nconst PLATFORM_MCP_TOKEN_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_TOKEN\",\n\t\"MAESTRO_AGENT_MCP_TOKEN\",\n\t\"MAESTRO_EVALOPS_ACCESS_TOKEN\",\n\t\"EVALOPS_TOKEN\",\n] as const;\nconst PLATFORM_MCP_WORKSPACE_ENV_VARS = [\n\t\"MAESTRO_WORKSPACE_ID\",\n\t\"MAESTRO_EVALOPS_WORKSPACE_ID\",\n\t\"MAESTRO_EVALOPS_ORG_ID\",\n\t\"EVALOPS_ORGANIZATION_ID\",\n\t\"MAESTRO_ENTERPRISE_ORG_ID\",\n] as const;\nconst PLATFORM_MCP_AGENT_ID_ENV_VARS = [\n\t\"MAESTRO_AGENT_ID\",\n\t\"MAESTRO_EVALOPS_AGENT_ID\",\n] as const;\nconst PLATFORM_MCP_SCOPES_ENV_VARS = [\n\t\"MAESTRO_PLATFORM_MCP_SCOPES\",\n\t\"MAESTRO_AGENT_MCP_SCOPES\",\n\t\"MAESTRO_EVALOPS_AGENT_MCP_SCOPES\",\n\t\"MAESTRO_CEREBRO_MCP_SCOPES\",\n] as const;\nconst PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS = [\n\t\"MAESTRO_EVALOPS_INTEGRATION_PROFILE\",\n\t\"MAESTRO_INTEGRATION_PROFILE\",\n] as const;\nconst PLATFORM_MCP_MEMORY_MODE_ENV_VARS = [\n\t\"MAESTRO_EVALOPS_MEMORY_MODE\",\n\t\"MAESTRO_MEMORY_MODE\",\n] as const;\nconst PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS = [\n\t\"MAESTRO_EVALOPS_RUNTIME_OWNER\",\n\t\"MAESTRO_RUNTIME_OWNER\",\n] as const;\nconst PLATFORM_MCP_SHIM_TYPE_ENV_VARS = [\n\t\"MAESTRO_EVALOPS_SHIM_TYPE\",\n\t\"MAESTRO_SHIM_TYPE\",\n] as const;\nconst PLATFORM_MCP_TRACE_MODE_ENV_VARS = [\n\t\"MAESTRO_EVALOPS_TRACE_MODE\",\n\t\"MAESTRO_TRACE_MODE\",\n] as const;\nconst DEFAULT_PLATFORM_MCP_SERVER_NAME = \"evalops\";\nconst AGENT_MCP_MANIFEST_PATH = \"/.well-known/evalops/agent-mcp.json\";\nconst AGENT_MCP_PATH = \"/mcp\";\n\nfunction isPlatformMcpExplicitlyDisabled(): boolean {\n\tconst enabled = getEnvValue(PLATFORM_MCP_ENABLED_ENV_VARS);\n\tif (!enabled) {\n\t\treturn false;\n\t}\n\treturn PLATFORM_MCP_DISABLED_VALUES.has(enabled.trim().toLowerCase());\n}\n\nfunction buildPlatformMcpHeaders(): Record<string, string> | undefined {\n\tconst stored = getStoredEvalOpsAgentMcpMetadata();\n\tconst token =\n\t\tgetEnvValue(PLATFORM_MCP_TOKEN_ENV_VARS) ??\n\t\tstored?.apiKey ??\n\t\tresolveConfiguredToken(PLATFORM_MCP_TOKEN_ENV_VARS);\n\tconst workspaceId =\n\t\tresolveWorkspaceId(PLATFORM_MCP_WORKSPACE_ENV_VARS) ?? stored?.workspaceId;\n\tconst headers = Object.fromEntries(\n\t\tObject.entries({\n\t\t\t...(token ? { Authorization: `Bearer ${token}` } : {}),\n\t\t\t\"Mcp-Session-Id\": getEnvValue([\"MAESTRO_SESSION_ID\"]),\n\t\t\t\"X-EvalOps-Workspace-Id\": workspaceId,\n\t\t\t\"X-EvalOps-Session-Id\": getEnvValue([\"MAESTRO_SESSION_ID\"]),\n\t\t\t\"X-EvalOps-Agent-Id\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_AGENT_ID_ENV_VARS) ?? stored?.agentId,\n\t\t\t\"X-EvalOps-Agent-Run-Id\":\n\t\t\t\tgetEnvValue([\"MAESTRO_AGENT_RUN_ID\"]) ?? stored?.runId,\n\t\t\t\"X-EvalOps-Integration-Profile\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS) ??\n\t\t\t\tstored?.integrationProfile,\n\t\t\t\"X-EvalOps-Memory-Mode\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_MEMORY_MODE_ENV_VARS) ?? stored?.memoryMode,\n\t\t\t\"X-EvalOps-Runtime-Owner\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS) ??\n\t\t\t\tstored?.runtimeOwner,\n\t\t\t\"X-EvalOps-Scopes\": getEnvValue(PLATFORM_MCP_SCOPES_ENV_VARS),\n\t\t\t\"X-EvalOps-Shim-Type\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_SHIM_TYPE_ENV_VARS) ?? stored?.shimType,\n\t\t\t\"X-EvalOps-Request-Id\": getEnvValue([\"MAESTRO_REQUEST_ID\"]),\n\t\t\t\"X-EvalOps-Trace-Id\": getEnvValue([\"TRACE_ID\", \"OTEL_TRACE_ID\"]),\n\t\t\t\"X-EvalOps-Trace-Mode\":\n\t\t\t\tgetEnvValue(PLATFORM_MCP_TRACE_MODE_ENV_VARS) ?? stored?.traceMode,\n\t\t\t\"X-EvalOps-Maestro-Surface\":\n\t\t\t\tgetEnvValue([\"MAESTRO_SURFACE\"]) ?? \"maestro\",\n\t\t}).filter(\n\t\t\t(entry): entry is [string, string] =>\n\t\t\t\ttypeof entry[1] === \"string\" && entry[1].trim().length > 0,\n\t\t),\n\t);\n\treturn Object.keys(headers).length > 0 ? headers : undefined;\n}\n\nfunction normalizePlatformMcpEndpoint(url: string): string {\n\tconst normalized = normalizeBaseUrl(url);\n\ttry {\n\t\tconst parsed = new URL(normalized);\n\t\tif (\n\t\t\tparsed.pathname === \"\" ||\n\t\t\tparsed.pathname === \"/\" ||\n\t\t\tparsed.pathname === AGENT_MCP_MANIFEST_PATH\n\t\t) {\n\t\t\tparsed.pathname = AGENT_MCP_PATH;\n\t\t\tparsed.search = \"\";\n\t\t\tparsed.hash = \"\";\n\t\t\treturn normalizeBaseUrl(parsed.toString());\n\t\t}\n\t} catch {\n\t\t// Keep the existing permissive behavior for non-standard local test URLs.\n\t}\n\treturn normalized;\n}\n\nfunction resolvePlatformMcpURL(): string | undefined {\n\treturn (\n\t\tgetEnvValue(PLATFORM_MCP_URL_ENV_VARS) ??\n\t\tgetEnvValue(PLATFORM_MCP_MANIFEST_URL_ENV_VARS) ??\n\t\tgetStoredEvalOpsAgentMcpMetadata()?.endpoint\n\t);\n}\n\nexport function getPlatformMcpPluginServers(): McpServerConfig[] {\n\tif (isPlatformMcpExplicitlyDisabled()) {\n\t\treturn [];\n\t}\n\n\tconst url = resolvePlatformMcpURL();\n\tif (!url) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\t{\n\t\t\tname:\n\t\t\t\tgetEnvValue(PLATFORM_MCP_NAME_ENV_VARS) ??\n\t\t\t\tDEFAULT_PLATFORM_MCP_SERVER_NAME,\n\t\t\ttransport: \"http\",\n\t\t\turl: normalizePlatformMcpEndpoint(url),\n\t\t\theaders: buildPlatformMcpHeaders(),\n\t\t\tscope: \"plugin\",\n\t\t},\n\t];\n}\n"]}
|
package/dist/version.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.10.
|
|
3
|
-
"notes": "Maestro by EvalOps - Deterministic coding agent with TUI/CLI and Web UI for AI-assisted development v0.10.
|
|
2
|
+
"version": "0.10.16",
|
|
3
|
+
"notes": "Maestro by EvalOps - Deterministic coding agent with TUI/CLI and Web UI for AI-assisted development v0.10.16 is now available."
|
|
4
4
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evalops/maestro",
|
|
3
3
|
"description": "Maestro by EvalOps - Deterministic coding agent with TUI/CLI and Web UI for AI-assisted development",
|
|
4
|
-
"version": "0.10.
|
|
4
|
+
"version": "0.10.16",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
7
7
|
"workspaces": [
|
|
@@ -127,8 +127,8 @@
|
|
|
127
127
|
"@aws-sdk/client-bedrock-runtime": "^3.1020.0",
|
|
128
128
|
"@crosscopy/clipboard": "^0.2.8",
|
|
129
129
|
"@daytonaio/sdk": "^0.155.0",
|
|
130
|
-
"@evalops/contracts": "^0.10.
|
|
131
|
-
"@evalops/tui": "^0.10.
|
|
130
|
+
"@evalops/contracts": "^0.10.16",
|
|
131
|
+
"@evalops/tui": "^0.10.16",
|
|
132
132
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
133
133
|
"@opentelemetry/api": "^1.9.1",
|
|
134
134
|
"@opentelemetry/auto-instrumentations-node": "^0.74.0",
|