veryfront 0.1.548 → 0.1.549

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/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.548",
3
+ "version": "0.1.549",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -137,8 +137,8 @@ export declare function publishInvokeAgentChildRunProgress(input: {
137
137
  childMessageId: string;
138
138
  description?: string;
139
139
  status: "pending" | "running" | "waiting_for_tool" | "completed" | "failed" | "cancelled";
140
- sourceTargetKind?: "project" | "production" | "environment" | "preview_branch" | null;
141
- runtimeTargetKind?: "production" | "environment" | "preview_branch" | null;
140
+ sourceTargetKind?: "project" | "main_branch" | "environment" | "preview_branch" | null;
141
+ runtimeTargetKind?: "main_branch" | "environment" | "preview_branch" | null;
142
142
  targetEnvironmentId?: string | null;
143
143
  targetBranchId?: string | null;
144
144
  publishParentRunEvents?: (events: InvokeAgentChildRunProgressEvent[]) => Promise<void> | void;
@@ -1 +1 @@
1
- {"version":3,"file":"invoke-agent-child-runs.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/child-run/invoke-agent-child-runs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoke-agent-child-runs.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/child-run/invoke-agent-child-runs.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQpE,eAAO,MAAM,0CAA0C;;;;;;;;;;;;GAgBtD,CAAC;AAEF,mEAAmE;AACnE,eAAO,MAAM,uCAAuC;;;;;;;;;;;;GAEnD,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,WAAW,CACzD,UAAU,CAAC,OAAO,0CAA0C,CAAC,CAC9D,CAAC;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;GAWlD,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;GAE/C,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,WAAW,CACrD,UAAU,CAAC,OAAO,sCAAsC,CAAC,CAC1D,CAAC;AAEF,eAAO,MAAM,gDAAgD;;;;;;;;;;;;;;;;GAM5D,CAAC;AAEF,yEAAyE;AACzE,eAAO,MAAM,6CAA6C;;;;;;;;;;;;;;;;GAEzD,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG,WAAW,CAC/D,UAAU,CAAC,OAAO,gDAAgD,CAAC,CACpE,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,kBAAkB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC1F,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GACxC,6BAA6B,GAC7B,uCAAuC,CAAC;AAwB5C,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,gCAAgC,GACtC,6BAA6B,CAY/B;AAED,wBAAgB,4CAA4C,CAC1D,KAAK,EAAE,gCAAgC,GACtC,uCAAuC,CAMzC;AAED,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,gCAAgC,GACtC,SAAS,CAAC,6BAA6B,EAAE,uCAAuC,CAAC,CAKnF;AAED,wBAAsB,kCAAkC,CAAC,KAAK,EAAE;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qCAAqC,CAAC,EAAE,MAAM,CAAC;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,kBAAkB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC1F,gBAAgB,CAAC,EAAE,SAAS,GAAG,aAAa,GAAG,aAAa,GAAG,gBAAgB,GAAG,IAAI,CAAC;IACvF,iBAAiB,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,gBAAgB,GAAG,IAAI,CAAC;IAC5E,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,gCAAgC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9F,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BhB"}
@@ -10,9 +10,9 @@ export const getInvokeAgentChildRunLifecycleValueSchema = defineSchema((v) => v.
10
10
  childAgentId: v.string().min(1),
11
11
  description: v.string().min(1).optional(),
12
12
  status: v.enum(["pending", "running", "waiting_for_tool", "completed", "failed", "cancelled"]),
13
- sourceTargetKind: v.enum(["project", "production", "environment", "preview_branch"]).nullable()
13
+ sourceTargetKind: v.enum(["project", "main_branch", "environment", "preview_branch"]).nullable()
14
14
  .optional(),
15
- runtimeTargetKind: v.enum(["production", "environment", "preview_branch"]).nullable()
15
+ runtimeTargetKind: v.enum(["main_branch", "environment", "preview_branch"]).nullable()
16
16
  .optional(),
17
17
  targetEnvironmentId: v.string().uuid().nullable().optional(),
18
18
  targetBranchId: v.string().uuid().nullable().optional(),
@@ -29,7 +29,7 @@ function createTimedAbortSignal(timeoutMs, abortSignal) {
29
29
  }
30
30
  export const getConversationRunTargetsSchema = defineSchema((v) => v.object({
31
31
  sourceTargetKind: v.enum(["project", "preview_branch"]).nullable(),
32
- runtimeTargetKind: v.enum(["production", "preview_branch"]).nullable(),
32
+ runtimeTargetKind: v.enum(["main_branch", "preview_branch"]).nullable(),
33
33
  targetBranchId: v.string().uuid().nullable(),
34
34
  }));
35
35
  /** @deprecated Use getConversationRunTargetsSchema() */
@@ -49,7 +49,7 @@ export function resolveConversationRunTargets(input) {
49
49
  }
50
50
  : {
51
51
  sourceTargetKind: "project",
52
- runtimeTargetKind: "production",
52
+ runtimeTargetKind: "main_branch",
53
53
  targetBranchId: null,
54
54
  });
55
55
  }
@@ -78,16 +78,16 @@ export const getRuntimeAgentSourceContextSchema = defineSchema((v) => v.discrimi
78
78
  ]));
79
79
  /** @deprecated Use getRuntimeAgentSourceContextSchema() */
80
80
  export const RuntimeAgentSourceContextSchema = lazySchema(getRuntimeAgentSourceContextSchema);
81
- export const getRuntimeAgentTargetKindSchema = defineSchema((v) => v.enum(["production", "environment", "preview_branch"]));
81
+ export const getRuntimeAgentTargetKindSchema = defineSchema((v) => v.enum(["main_branch", "environment", "preview_branch"]));
82
82
  /** @deprecated Use getRuntimeAgentTargetKindSchema() */
83
83
  export const RuntimeAgentTargetKindSchema = lazySchema(getRuntimeAgentTargetKindSchema);
84
84
  export function validateRuntimeAgentTargetSelection(input, ctx) {
85
85
  const kind = input.runtimeTargetKind;
86
- if (!kind || kind === "production") {
86
+ if (!kind || kind === "main_branch") {
87
87
  if (input.runtimeTargetEnvironmentId || input.runtimeTargetBranchId) {
88
88
  ctx.addIssue({
89
89
  code: "custom",
90
- message: "production target does not accept environment or branch identifiers",
90
+ message: "main_branch target does not accept environment or branch identifiers",
91
91
  path: ["runtimeTargetKind"],
92
92
  });
93
93
  }
@@ -69,6 +69,7 @@ export type HostedAgentServiceRouteSet<TExecution extends object> = {
69
69
  handleRuntimeAgentRunInvocationExecuteRequest: (input: {
70
70
  request: Request;
71
71
  requestOrCtx?: unknown;
72
+ runId?: string;
72
73
  }) => Promise<Response>;
73
74
  handleDurableChatRunCancelRequest: (input: {
74
75
  request: Request;
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/routes.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { parseProviderError } from "../../chat/provider-errors.js";
2
- import { CONTROL_PLANE_AGENT_STREAM_PATH } from "../../channels/control-plane.js";
2
+ import { CONTROL_PLANE_RUN_STREAM_PATH } from "../../channels/control-plane.js";
3
3
  import { createAgUiRunErrorEvent, createAgUiSseErrorResponse } from "../ag-ui/host-support.js";
4
4
  import { createAgUiRuntimeHandler } from "../ag-ui/runtime-handler.js";
5
5
  import { createAgUiCancelHandler } from "../ag-ui/run-control.js";
@@ -137,6 +137,9 @@ export function createHostedAgentServiceRouteSet(options) {
137
137
  if (req instanceof Response) {
138
138
  return req;
139
139
  }
140
+ if (input.runId && req.durableRootRun?.runId !== input.runId) {
141
+ return Response.json({ errorCode: "CONTROL_PLANE_RUN_ID_MISMATCH" }, { status: 400 });
142
+ }
140
143
  return executeParsedDurableChatRun({
141
144
  req,
142
145
  request: input.request,
@@ -181,8 +184,8 @@ export function createHostedAgentServiceRouteSet(options) {
181
184
  },
182
185
  {
183
186
  method: "POST",
184
- path: CONTROL_PLANE_AGENT_STREAM_PATH,
185
- handler: (request) => handleRuntimeAgentRunInvocationExecuteRequest({ request }),
187
+ path: CONTROL_PLANE_RUN_STREAM_PATH,
188
+ handler: (request, params) => handleRuntimeAgentRunInvocationExecuteRequest({ request, runId: params.runId }),
186
189
  },
187
190
  ];
188
191
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../../src/src/agent/testing/durable-run-canaries/runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAIvE,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAClF;AAED,MAAM,WAAW,kCAAkC;IACjD,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oCAAoC;IACnD,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,6BAA8B,SAAQ,kCAAkC;IACvF,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,gCAAgC;;;;;;;;4BAO5C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,WAAW,CAC/C,UAAU,CAAC,OAAO,gCAAgC,CAAC,CACpD,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AA4CD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,0BAA0B,CAoC1F;AAmFD,MAAM,WAAW,yBAAyB;IACxC,oBAAoB,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnF,aAAa,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAClG,qBAAqB,EAAE,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IACjG,wBAAwB,EAAE,CACxB,KAAK,EAAE,oCAAoC,KACxC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACtC,eAAe,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,yBAAyB,GAChC,yBAAyB,CAgF3B;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,4BAA4B;IAC3C,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,QAAQ,EAAE,uBAAuB,EAAE,CAAC;QACpC,GAAG,EAAE,0BAA0B,CAAC;KACjC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,OAAO,CAAC,4BAA4B,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;IAC7E,sBAAsB,EAAE,OAAO,CAAC;CACjC;AA0DD,iBAAS,qCAAqC,CAAC,QAAQ,EAAE,uBAAuB,EAAE,GAAG,MAAM,EAAE,CAc5F;AAQD,iBAAS,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEpD;AA2CD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,4BAA4B,EACpC,SAAS,GAAE,yBAAmE;wBAkB7C,oBAAoB,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAqFxF;AAED,eAAO,MAAM,+BAA+B;;;CAG3C,CAAC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../../src/src/agent/testing/durable-run-canaries/runner.ts"],"names":[],"mappings":"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"}
@@ -93,6 +93,24 @@ function createApiUrl(config, path) {
93
93
  const relativePath = path.startsWith("/") ? path.slice(1) : path;
94
94
  return new URL(relativePath, baseHref);
95
95
  }
96
+ function buildCreateRootRunTargetFields(config) {
97
+ if (!config.projectId) {
98
+ return {};
99
+ }
100
+ if (config.branchId) {
101
+ return {
102
+ source_target_kind: "preview_branch",
103
+ runtime_target_kind: "preview_branch",
104
+ source_target_branch_id: config.branchId,
105
+ runtime_target_branch_id: config.branchId,
106
+ };
107
+ }
108
+ return {
109
+ source_target_kind: "project",
110
+ runtime_target_kind: "main_branch",
111
+ runtime_target_branch_id: null,
112
+ };
113
+ }
96
114
  function buildCreateRootRunBody(config, input) {
97
115
  return {
98
116
  kind: "agent",
@@ -105,13 +123,7 @@ function buildCreateRootRunBody(config, input) {
105
123
  mode: "default_chat",
106
124
  agent_id: config.agentId,
107
125
  initial_status: "pending",
108
- ...(config.projectId
109
- ? {
110
- source_target_kind: "project",
111
- runtime_target_kind: "production",
112
- runtime_target_branch_id: config.branchId ?? null,
113
- }
114
- : {}),
126
+ ...buildCreateRootRunTargetFields(config),
115
127
  },
116
128
  };
117
129
  }
@@ -3,8 +3,8 @@ import type { Agent } from "../agent/types.js";
3
3
  import type { HandlerContext } from "../types/server.js";
4
4
  import type { InferSchema, Schema } from "../extensions/schema/index.js";
5
5
  export declare const CONTROL_PLANE_AGENTS_LIST_PATH = "/api/control-plane/agents/list";
6
- export declare const CONTROL_PLANE_AGENT_STREAM_PATH = "/api/control-plane/agents/stream";
7
- export declare const CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX = "/api/control-plane/agents/runs/";
6
+ export declare const CONTROL_PLANE_RUNS_PATH_PREFIX = "/api/control-plane/runs/";
7
+ export declare const CONTROL_PLANE_RUN_STREAM_PATH = "/api/control-plane/runs/:runId/stream";
8
8
  export declare const getControlPlaneSurfaceSchema: () => Schema<string>;
9
9
  export declare const ControlPlaneSurfaceSchema: Schema<string>;
10
10
  export declare const getControlPlaneAgentsListRequestSchema: () => Schema<import("../extensions/schema/schema-validator.js").InferShape<{
@@ -1 +1 @@
1
- {"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../../src/src/channels/control-plane.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../../src/src/channels/control-plane.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ import { base64urlEncodeBytes } from "../utils/base64url.js";
5
5
  import { defineSchema, lazySchema } from "../schemas/index.js";
6
6
  const SIGNATURE_SKEW_SECONDS = 5;
7
7
  export const CONTROL_PLANE_AGENTS_LIST_PATH = "/api/control-plane/agents/list";
8
- export const CONTROL_PLANE_AGENT_STREAM_PATH = "/api/control-plane/agents/stream";
9
- export const CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX = "/api/control-plane/agents/runs/";
8
+ export const CONTROL_PLANE_RUNS_PATH_PREFIX = "/api/control-plane/runs/";
9
+ export const CONTROL_PLANE_RUN_STREAM_PATH = "/api/control-plane/runs/:runId/stream";
10
10
  const getCompactJwsHeaderSchema = defineSchema((v) => v.object({
11
11
  alg: v.literal("EdDSA"),
12
12
  typ: v.string().optional(),
@@ -60,7 +60,7 @@ const INTERNAL_CONTROL_PLANE_SIGNATURE_HEADERS = [
60
60
  ];
61
61
  function isInternalControlPlanePath(pathname) {
62
62
  return pathname === "/channels/invoke" ||
63
- pathname.startsWith("/api/control-plane/agents/") ||
63
+ pathname.startsWith("/api/control-plane/") ||
64
64
  pathname.startsWith("/internal/tasks/") ||
65
65
  pathname.startsWith("/internal/workflows/");
66
66
  }
@@ -1,10 +1,10 @@
1
- import { CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX } from "../../../channels/control-plane.js";
1
+ import { CONTROL_PLANE_RUNS_PATH_PREFIX } from "../../../channels/control-plane.js";
2
2
  import { ControlPlaneRequestError, verifyControlPlaneRequest, } from "../../../internal-agents/control-plane-auth.js";
3
3
  import { agentRunSessionManager, } from "../../../internal-agents/session-manager.js";
4
4
  import { INTERNAL_AGENT_CONTROL_PLANE_MAX_BODY_BYTES, InternalAgentRequestBodyTooLargeError, readInternalAgentRequestBody, } from "../../../internal-agents/request-body.js";
5
5
  import { BaseHandler } from "../response/base.js";
6
6
  import { PRIORITY_MEDIUM_API } from "../../../utils/constants/index.js";
7
- const CANCEL_PATH_REGEX = /^\/api\/control-plane\/agents\/runs\/([^/]+)$/;
7
+ const CANCEL_PATH_REGEX = /^\/api\/control-plane\/runs\/([^/]+)$/;
8
8
  function getRunId(pathname) {
9
9
  return CANCEL_PATH_REGEX.exec(pathname)?.[1] ?? null;
10
10
  }
@@ -14,7 +14,7 @@ export class AgentRunCancelHandler extends BaseHandler {
14
14
  name: "AgentRunCancelHandler",
15
15
  priority: PRIORITY_MEDIUM_API,
16
16
  patterns: [
17
- { pattern: CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX, prefix: true, method: "DELETE" },
17
+ { pattern: CONTROL_PLANE_RUNS_PATH_PREFIX, prefix: true, method: "DELETE" },
18
18
  ],
19
19
  };
20
20
  constructor(sessionManager = agentRunSessionManager) {
@@ -1,11 +1,11 @@
1
- import { CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX } from "../../../channels/control-plane.js";
1
+ import { CONTROL_PLANE_RUNS_PATH_PREFIX } from "../../../channels/control-plane.js";
2
2
  import { ControlPlaneRequestError, verifyControlPlaneRequest, } from "../../../internal-agents/control-plane-auth.js";
3
3
  import { agentRunSessionManager, RunNotActiveError, ToolResultConflictError, ToolResultNotWaitingError, } from "../../../internal-agents/session-manager.js";
4
4
  import { INTERNAL_AGENT_CONTROL_PLANE_MAX_BODY_BYTES, InternalAgentRequestBodyTooLargeError, readInternalAgentRequestBody, } from "../../../internal-agents/request-body.js";
5
5
  import { getResumeSignalSchema } from "../../../internal-agents/schema.js";
6
6
  import { BaseHandler } from "../response/base.js";
7
7
  import { PRIORITY_MEDIUM_API } from "../../../utils/constants/index.js";
8
- const RESUME_PATH_REGEX = /^\/api\/control-plane\/agents\/runs\/([^/]+)\/resume$/;
8
+ const RESUME_PATH_REGEX = /^\/api\/control-plane\/runs\/([^/]+)\/resume$/;
9
9
  function getRunId(pathname) {
10
10
  return RESUME_PATH_REGEX.exec(pathname)?.[1] ?? null;
11
11
  }
@@ -15,7 +15,7 @@ export class AgentRunResumeHandler extends BaseHandler {
15
15
  name: "AgentRunResumeHandler",
16
16
  priority: PRIORITY_MEDIUM_API,
17
17
  patterns: [
18
- { pattern: CONTROL_PLANE_AGENT_RUNS_PATH_PREFIX, prefix: true, method: "POST" },
18
+ { pattern: CONTROL_PLANE_RUNS_PATH_PREFIX, prefix: true, method: "POST" },
19
19
  ],
20
20
  };
21
21
  constructor(sessionManager = agentRunSessionManager) {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-stream.handler.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/request/agent-stream.handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,4BAA4B,EAE7B,MAAM,2CAA2C,CAAC;AAwBnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAmB,aAAa,EAAE,MAAM,aAAa,CAAC;AAKnG,MAAM,WAAW,sBACf,SAAQ,yBAAyB,EAAE,+BAA+B;IAClE,4BAA4B,CAAC,EAAE,OAAO,4BAA4B,CAAC;CACpE;AAwFD,qBAAa,kBAAmB,SAAQ,WAAW;IASrC,OAAO,CAAC,QAAQ,CAAC,IAAI;IARjC,QAAQ,EAAE,eAAe,CAMvB;gBAE2B,IAAI,GAAE,sBAAoC;IAIvE,OAAO,CAAC,sBAAsB;IAwBxB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CAgHxE"}
1
+ {"version":3,"file":"agent-stream.handler.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/request/agent-stream.handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,4BAA4B,EAE7B,MAAM,2CAA2C,CAAC;AAwBnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAmB,aAAa,EAAE,MAAM,aAAa,CAAC;AAKnG,MAAM,WAAW,sBACf,SAAQ,yBAAyB,EAAE,+BAA+B;IAClE,4BAA4B,CAAC,EAAE,OAAO,4BAA4B,CAAC;CACpE;AA8FD,qBAAa,kBAAmB,SAAQ,WAAW;IASrC,OAAO,CAAC,QAAQ,CAAC,IAAI;IARjC,QAAQ,EAAE,eAAe,CAMvB;gBAE2B,IAAI,GAAE,sBAAoC;IAIvE,OAAO,CAAC,sBAAsB;IAwBxB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CAoHxE"}
@@ -1,5 +1,4 @@
1
1
  import { defaultChannelInvokeDeps } from "../../../channels/invoke.js";
2
- import { CONTROL_PLANE_AGENT_STREAM_PATH, } from "../../../channels/control-plane.js";
3
2
  import { createRuntimeAgentStreamResponse, } from "../../../internal-agents/run-stream.js";
4
3
  import { resolveRuntimeOwnerInvokeUrl, RUNTIME_OWNER_INVOKE_URL_HEADER, } from "../../../internal-agents/runtime-owner.js";
5
4
  import { ControlPlaneRequestError, verifyControlPlaneRequest, } from "../../../internal-agents/control-plane-auth.js";
@@ -17,6 +16,7 @@ const defaultDeps = {
17
16
  resolveRuntimeOwnerInvokeUrl,
18
17
  };
19
18
  const logger = serverLogger.component("agent-stream-handler");
19
+ const RUN_STREAM_PATH_REGEX = /^\/api\/control-plane\/runs\/([^/]+)\/stream$/;
20
20
  function buildAgentSourceRunOptions(sourceContext) {
21
21
  switch (sourceContext.type) {
22
22
  case "branch":
@@ -67,13 +67,17 @@ function parseAgentStreamPayload(rawPayload) {
67
67
  }
68
68
  return internalAgentStreamRequestSchema.parse(rawPayload);
69
69
  }
70
+ function getPathRunId(pathname) {
71
+ const match = RUN_STREAM_PATH_REGEX.exec(pathname);
72
+ return match?.[1] ? decodeURIComponent(match[1]) : null;
73
+ }
70
74
  export class AgentStreamHandler extends BaseHandler {
71
75
  deps;
72
76
  metadata = {
73
77
  name: "AgentStreamHandler",
74
78
  priority: PRIORITY_MEDIUM_API,
75
79
  patterns: [
76
- { pattern: CONTROL_PLANE_AGENT_STREAM_PATH, exact: true, method: "POST" },
80
+ { pattern: RUN_STREAM_PATH_REGEX, method: "POST" },
77
81
  ],
78
82
  };
79
83
  constructor(deps = defaultDeps) {
@@ -100,8 +104,12 @@ export class AgentStreamHandler extends BaseHandler {
100
104
  .withCORS(req, ctx.securityConfig?.cors)
101
105
  .withSecurity(ctx.securityConfig ?? undefined, req);
102
106
  try {
107
+ const pathRunId = getPathRunId(new URL(req.url).pathname);
103
108
  const rawBody = await readInternalAgentRequestBody(req, INTERNAL_AGENT_STREAM_MAX_BODY_BYTES);
104
109
  const payload = parseAgentStreamPayload(JSON.parse(rawBody));
110
+ if (!pathRunId || pathRunId !== payload.runId) {
111
+ return this.respond(builder.json({ error: "CONTROL_PLANE_RUN_ID_MISMATCH" }, 400));
112
+ }
105
113
  await verifyControlPlaneRequest(req, ctx, rawBody, {
106
114
  expectedSubject: payload.runId,
107
115
  expectedSurface: "studio",
@@ -20,12 +20,12 @@ export function resolveEnvironment(opts) {
20
20
  let releaseId = opts.releaseId;
21
21
  // Some framework control-plane surfaces are routed directly to a runtime owner pod and
22
22
  // rely on signed control-plane auth instead of a user-facing release address.
23
- const isAgentControlPlanePath = opts.pathname.startsWith("/api/control-plane/agents/");
23
+ const isControlPlanePath = opts.pathname.startsWith("/api/control-plane/");
24
24
  // Skip releaseId validation for development assets and signed control-plane
25
25
  // requests because they do not require a user-facing release context.
26
26
  const canSkipReleaseIdValidation = opts.pathname === "/_ws" ||
27
27
  opts.pathname.startsWith("/_veryfront/") ||
28
- isAgentControlPlanePath;
28
+ isControlPlanePath;
29
29
  // Validate releaseId in proxy mode production
30
30
  if (opts.isProxyMode &&
31
31
  resolvedEnvironment === "production" &&
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.1.548";
1
+ export declare const VERSION = "0.1.549";
2
2
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
- export const VERSION = "0.1.548";
3
+ export const VERSION = "0.1.549";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.548",
3
+ "version": "0.1.549",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",