optio-api 0.2.7 → 0.2.8

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.
@@ -13,6 +13,8 @@ export type GroupCancelAndWaitParams = z.infer<typeof optioEngineContract.method
13
13
  export type GroupCancelAndWaitResult = z.infer<typeof optioEngineContract.methods.groupCancelAndWait.result>;
14
14
  export type LaunchParams = z.infer<typeof optioEngineContract.methods.launch.params>;
15
15
  export type LaunchResult = z.infer<typeof optioEngineContract.methods.launch.result>;
16
+ export type MaterializeUploadParams = z.infer<typeof optioEngineContract.methods.materializeUpload.params>;
17
+ export type MaterializeUploadResult = z.infer<typeof optioEngineContract.methods.materializeUpload.result>;
16
18
  export type ResyncParams = z.infer<typeof optioEngineContract.methods.resync.params>;
17
19
  export type UnblockLaunchesParams = z.infer<typeof optioEngineContract.methods.unblockLaunches.params>;
18
20
  export type UnblockLaunchesResult = z.infer<typeof optioEngineContract.methods.unblockLaunches.result>;
@@ -37,6 +39,9 @@ export declare class OptioEngineClient {
37
39
  launch(params: LaunchParams, opts?: {
38
40
  timeoutMs?: number;
39
41
  }): Promise<LaunchResult>;
42
+ materializeUpload(params: MaterializeUploadParams, opts?: {
43
+ timeoutMs?: number;
44
+ }): Promise<MaterializeUploadResult>;
40
45
  resync(params: ResyncParams): Promise<void>;
41
46
  unblockLaunches(params: UnblockLaunchesParams, opts?: {
42
47
  timeoutMs?: number;
@@ -61,6 +66,9 @@ export interface OptioEngineService {
61
66
  launch(params: LaunchParams, opts?: {
62
67
  timeoutMs?: number;
63
68
  }): Promise<LaunchResult>;
69
+ materializeUpload(params: MaterializeUploadParams, opts?: {
70
+ timeoutMs?: number;
71
+ }): Promise<MaterializeUploadResult>;
64
72
  resync(params: ResyncParams): Promise<void>;
65
73
  unblockLaunches(params: UnblockLaunchesParams, opts?: {
66
74
  timeoutMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"optio-engine.d.ts","sourceRoot":"","sources":["../../src/_generated/optio-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"optio-engine.d.ts","sourceRoot":"","sources":["../../src/_generated/optio-engine.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,9 @@ export class OptioEngineClient {
21
21
  launch(params, opts) {
22
22
  return this.client.call('optio-engine', 'launch', params, opts);
23
23
  }
24
+ materializeUpload(params, opts) {
25
+ return this.client.call('optio-engine', 'materializeUpload', params, opts);
26
+ }
24
27
  resync(params) {
25
28
  return this.client.notify('optio-engine', 'resync', params);
26
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"optio-engine.js","sourceRoot":"","sources":["../../src/_generated/optio-engine.ts"],"names":[],"mappings":"AAsBA,MAAM,OAAO,iBAAiB;IACR;IAApB,YAAoB,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAC9C,aAAa,CAAC,MAA2B,EAAE,IAA6B;QACtE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,CAAC,MAAoB,EAAE,IAA6B;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,MAAqB,EAAE,IAA6B;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,WAAW,CAAC,MAAyB,EAAE,IAA6B;QAClE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,kBAAkB,CAAC,MAAgC,EAAE,IAA6B;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,CAAC,MAAoB,EAAE,IAA6B;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,CAAC,MAAoB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,MAA6B,EAAE,IAA6B;QAC1E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;CACF"}
1
+ {"version":3,"file":"optio-engine.js","sourceRoot":"","sources":["../../src/_generated/optio-engine.ts"],"names":[],"mappings":"AAwBA,MAAM,OAAO,iBAAiB;IACR;IAApB,YAAoB,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAC9C,aAAa,CAAC,MAA2B,EAAE,IAA6B;QACtE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,CAAC,MAAoB,EAAE,IAA6B;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,MAAqB,EAAE,IAA6B;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,WAAW,CAAC,MAAyB,EAAE,IAA6B;QAClE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,kBAAkB,CAAC,MAAgC,EAAE,IAA6B;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,CAAC,MAAoB,EAAE,IAA6B;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,iBAAiB,CAAC,MAA+B,EAAE,IAA6B;QAC9E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,mBAAmB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,CAAC,MAAoB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,MAA6B,EAAE,IAA6B;QAC1E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"fastify.d.ts","sourceRoot":"","sources":["../../src/adapters/fastify.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAQrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAkB/C,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAiUtE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,GACvB,CAAC,mBAAmB,GAAG;IAAE,GAAG,EAAE,YAAY,CAAA;CAAE,CAAC,GAC7C,CAAC,mBAAmB,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,GAAG,CACtC;IAAE,EAAE,EAAE,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,CAC3C,CAAC,CAAC;AAEP,UAAU,mBAAmB;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CA0UjG"}
1
+ {"version":3,"file":"fastify.d.ts","sourceRoot":"","sources":["../../src/adapters/fastify.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAQrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAmB/C,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAqWtE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,GACvB,CAAC,mBAAmB,GAAG;IAAE,GAAG,EAAE,YAAY,CAAA;CAAE,CAAC,GAC7C,CAAC,mBAAmB,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,GAAG,CACtC;IAAE,EAAE,EAAE,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,CAC3C,CAAC,CAAC;AAEP,UAAU,mBAAmB;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC,OAAO,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAsXjG"}
@@ -12,11 +12,18 @@ import httpProxy from '@fastify/http-proxy';
12
12
  import { createHash } from 'node:crypto';
13
13
  import { checkAuth } from '../auth.js';
14
14
  import { createWidgetUpstreamRegistry } from '../widget-upstream-registry.js';
15
- import { resolveWidgetUpstream, applyInnerAuthHeaders, applyInnerAuthQuery, isWriteMethod, } from '../widget-proxy-core.js';
15
+ import { resolveWidgetUpstream, applyInnerAuthHeaders, applyInnerAuthQuery, stripEmbedderOrigin, isWriteMethod, } from '../widget-proxy-core.js';
16
16
  import { detectLegacyMetadataParams, formatLegacyMetadataMessage, } from '../metadata-filter-query.js';
17
17
  import { parseSseOptions, checkLegacyMetadataParams, LegacyMetadataParamError, } from '../sse-options.js';
18
18
  import { createOptioContext } from '../context.js';
19
19
  import { forwardAgentInput } from '../agent-input.js';
20
+ import { forwardUpload } from '../upload-forward.js';
21
+ import { resolveOptioEngine } from '../resolve.js';
22
+ import { GridFSBucket } from 'mongodb';
23
+ import fastifyMultipart from '@fastify/multipart';
24
+ // Cap a single staged upload at 100 MiB. The bytes stream straight into GridFS
25
+ // (never buffered whole, never over Redis); this only bounds pathological posts.
26
+ const MAX_UPLOAD_BYTES = 100 * 1024 * 1024;
20
27
  const WIDGET_CACHE_TTL_MS = 5000;
21
28
  // Widget URL scheme: /api/widget/<database>/<prefix>/<processId>/<subpath...>
22
29
  // The database and prefix segments are required so the proxy can resolve the
@@ -51,40 +58,52 @@ function rewriteResponseHeaders(headers) {
51
58
  function widgetProxyPrefix(database, prefix, processId) {
52
59
  return `/api/widget/${encodeURIComponent(database)}/${encodeURIComponent(prefix)}/${processId}/`;
53
60
  }
54
- function injectBaseHref(html, proxyPrefix) {
55
- // Inject two things right after <head>:
61
+ function injectBaseHref(html, proxyPrefix, stripPrefix) {
62
+ // Always inject:
56
63
  //
57
- // 1. <base href="<proxyPrefix>"> — forces relative URLs in the page to
58
- // resolve against the proxy root regardless of how deep the current
59
- // document URL is. Required for SPAs (like opencode) whose HTML uses
60
- // relative asset paths ("./assets/x.js") but are loaded via a routing-
61
- // deep URL like /api/widget/<db>/<prefix>/<pid>/<workdir>/session/.
62
- // Without it, assets resolve to `.../workdir/session/assets/x.js` and
63
- // hit the upstream's SPA fallback with wrong MIME types.
64
+ // <base href="<proxyPrefix>"> — forces relative URLs in the page to resolve
65
+ // against the proxy root regardless of how deep the current document URL is.
66
+ // Required for SPAs (like opencode) whose HTML uses relative asset paths
67
+ // ("./assets/x.js") but are loaded via a routing-deep URL like
68
+ // /api/widget/<db>/<prefix>/<pid>/<workdir>/session/. Harmless for ttyd.
64
69
  //
65
- // 2. An inline <script> that runs before the SPA bundle and strips the
66
- // proxy prefix from `location.pathname` via history.replaceState.
67
- // This makes the SPA's client-side router (e.g. @solidjs/router, react
68
- // -router) see the application's intended URL space (`/:dir/session/`
69
- // in opencode's case) rather than the proxy-nested one
70
- // (`/api/widget/<db>/<prefix>/<pid>/:dir/session/`). `<base href>` is
71
- // unaffected, so asset loading continues to work.
70
+ // Inject ONLY when `stripPrefix` (widgetData.stripProxyPrefix):
72
71
  //
73
- // Because the inline script violates `script-src 'self'` CSPs, we also
74
- // return its SHA-256 so the caller can append `'sha256-…'` to the
75
- // outgoing CSP's script-src directive.
72
+ // An inline <script> that runs before the page bundle and strips the proxy
73
+ // prefix from `location.pathname` via history.replaceState, so a client-side
74
+ // SPA router (opencode, kimicode) sees its intended URL space (`/:dir/session/`)
75
+ // rather than the proxy-nested one.
76
+ //
77
+ // This MUST NOT run for ttyd-based widgets (claudecode/grok/antigravity):
78
+ // ttyd derives its /token and /ws endpoints from `location.pathname` at
79
+ // runtime, so stripping the prefix to '/' makes ttyd request them at the
80
+ // origin root and escape the proxy (regression from commit 2accedb: the
81
+ // strip used to crash benignly on the '//' path, leaving pathname intact;
82
+ // once it stopped crashing it began breaking ttyd). Default off = ttyd-safe.
83
+ //
84
+ // The inline script violates `script-src 'self'` CSPs, so we return its
85
+ // SHA-256 for the caller to allowlist. base-href-only needs no CSP change.
76
86
  const baseTag = `<base href="${proxyPrefix}">`;
77
- // Escape regex-meta characters in the prefix for the runtime match.
78
- const prefixLiteralForRegex = proxyPrefix
79
- .replace(/\/$/, '') // the script uses the stripped form without trailing slash
80
- .replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
81
- const scriptBody = `(function(){var r=new RegExp('^' + ${JSON.stringify(prefixLiteralForRegex)});` +
82
- `var p=location.pathname;var m=p.match(r);` +
83
- `if(m){history.replaceState(null,'',(p.slice(m[0].length)||'/')+location.search+location.hash);}` +
84
- `})();`;
85
- const stripScriptSha256 = createHash('sha256').update(scriptBody, 'utf-8').digest('base64');
86
- const stripScript = `<script>${scriptBody}</script>`;
87
- const injection = `${baseTag}${stripScript}`;
87
+ let injection = baseTag;
88
+ let stripScriptSha256 = null;
89
+ if (stripPrefix) {
90
+ // Escape regex-meta characters in the prefix for the runtime match.
91
+ const prefixLiteralForRegex = proxyPrefix
92
+ .replace(/\/$/, '') // the script uses the stripped form without trailing slash
93
+ .replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
94
+ // Collapse any leading slashes in the stripped remainder before re-forming the
95
+ // path. The remainder can begin with a stray '/' (e.g. an iframe src that joined
96
+ // a trailing-slash base with a leading-slash route -> '<prefix>//sessions/...').
97
+ // Left as-is that would yield a protocol-relative '//sessions/...' URL, and
98
+ // history.replaceState would throw a cross-origin SecurityError.
99
+ const scriptBody = `(function(){var r=new RegExp('^' + ${JSON.stringify(prefixLiteralForRegex)});` +
100
+ `var p=location.pathname;var m=p.match(r);` +
101
+ `if(m){var rest='/'+p.slice(m[0].length).replace(/^\\/+/,'');` +
102
+ `history.replaceState(null,'',rest+location.search+location.hash);}` +
103
+ `})();`;
104
+ stripScriptSha256 = createHash('sha256').update(scriptBody, 'utf-8').digest('base64');
105
+ injection = `${baseTag}<script>${scriptBody}</script>`;
106
+ }
88
107
  const m = html.match(/<head(\s[^>]*)?>/i);
89
108
  const transformed = m
90
109
  ? html.replace(m[0], `${m[0]}${injection}`)
@@ -196,15 +215,17 @@ function registerWidgetProxy(app, opts) {
196
215
  // bandwidth savings are worth for a dev-tool reverse proxy.
197
216
  delete req.raw.headers['accept-encoding'];
198
217
  },
199
- // Rewrite headers for outgoing WebSocket handshake (inner-auth injection).
200
- // The Fastify request object is passed as the second argument, which has
201
- // request.raw.__optioWidget set by preHandler (runs before the upgrade handshake).
218
+ // Rewrite headers for outgoing WebSocket handshake (inner-auth injection +
219
+ // drop the browser Origin so strict upstreams don't reject the cross-origin
220
+ // handshake — see stripEmbedderOrigin). The Fastify request object is passed
221
+ // as the second argument, which has request.raw.__optioWidget set by
222
+ // preHandler (runs before the upgrade handshake).
202
223
  wsClientOptions: {
203
224
  rewriteRequestHeaders: (headers, req) => {
204
225
  const widget = req.raw.__optioWidget;
205
226
  if (!widget)
206
- return headers;
207
- return applyInnerAuthHeaders(widget.upstream.innerAuth, headers);
227
+ return stripEmbedderOrigin(headers);
228
+ return stripEmbedderOrigin(applyInnerAuthHeaders(widget.upstream.innerAuth, headers));
208
229
  },
209
230
  },
210
231
  replyOptions: {
@@ -232,10 +253,13 @@ function registerWidgetProxy(app, opts) {
232
253
  return widget?.upstream.url ?? 'http://127.0.0.1/';
233
254
  },
234
255
  rewriteRequestHeaders: (req, headers) => {
256
+ // Drop the browser Origin (stripEmbedderOrigin) so a strict upstream
257
+ // that compares Origin against the reply-from-rewritten Host doesn't
258
+ // reject same-origin POSTs as cross-origin.
235
259
  const widget = req.raw.__optioWidget;
236
260
  if (!widget)
237
- return headers;
238
- return applyInnerAuthHeaders(widget.upstream.innerAuth, headers);
261
+ return stripEmbedderOrigin(headers);
262
+ return stripEmbedderOrigin(applyInnerAuthHeaders(widget.upstream.innerAuth, headers));
239
263
  },
240
264
  rewriteHeaders: rewriteResponseHeaders,
241
265
  // onResponse takes over the response forwarding so we can rewrite
@@ -271,13 +295,17 @@ function registerWidgetProxy(app, opts) {
271
295
  }
272
296
  const widget = request.raw.__optioWidget;
273
297
  const proxyPrefix = widget?.proxyPrefix ?? '/';
298
+ // Opt-in prefix-strip: only client-routed SPAs (opencode/kimicode) set
299
+ // widgetData.stripProxyPrefix. ttyd widgets leave it off so their
300
+ // location.pathname is preserved (see injectBaseHref).
301
+ const stripPrefix = widget?.upstream?.stripProxyPrefix === true;
274
302
  const chunks = [];
275
303
  stream.on('data', (c) => {
276
304
  chunks.push(c);
277
305
  });
278
306
  stream.on('end', () => {
279
307
  const html = Buffer.concat(chunks).toString('utf-8');
280
- const { html: transformed, stripScriptSha256 } = injectBaseHref(html, proxyPrefix);
308
+ const { html: transformed, stripScriptSha256 } = injectBaseHref(html, proxyPrefix, stripPrefix);
281
309
  const body = Buffer.from(transformed, 'utf-8');
282
310
  // Rebuild headers: copy upstream, then override transform-affected ones.
283
311
  const outHeaders = rewriteResponseHeaders(incomingHeaders);
@@ -286,10 +314,11 @@ function registerWidgetProxy(app, opts) {
286
314
  // (We also strip Accept-Encoding on the way out in preHandler so in
287
315
  // practice upstream should send identity, but belt-and-braces.)
288
316
  delete outHeaders['content-encoding'];
289
- // If a CSP is present, allowlist our injected inline script by hash
290
- // so it isn't blocked by `script-src 'self'`.
317
+ // If a CSP is present AND we injected an inline script, allowlist it by
318
+ // hash so it isn't blocked by `script-src 'self'`. base-href-only
319
+ // (stripScriptSha256 === null) needs no CSP change.
291
320
  const csp = outHeaders['content-security-policy'];
292
- if (typeof csp === 'string' && csp.length > 0) {
321
+ if (stripScriptSha256 !== null && typeof csp === 'string' && csp.length > 0) {
293
322
  outHeaders['content-security-policy'] = appendScriptHashToCsp(csp, stripScriptSha256);
294
323
  }
295
324
  rawRes.writeHead(statusCode, outHeaders);
@@ -341,6 +370,10 @@ export function registerOptioApi(app, opts) {
341
370
  reply.code(authResult.status).send(authResult.body);
342
371
  }
343
372
  });
373
+ // multipart/form-data support for the generic widget-upload route below.
374
+ // Registered here (not app-wide behaviour beyond parsing) so `request.file()`
375
+ // is available; every other route continues to use JSON body parsing.
376
+ app.register(fastifyMultipart, { limits: { fileSize: MAX_UPLOAD_BYTES, files: 1 } });
344
377
  // Widget reverse-proxy lives under /api/widget/<database>/<prefix>/<processId>/…
345
378
  // and is registered as an internal part of the Optio API surface so consumers
346
379
  // only need one init call.
@@ -439,6 +472,39 @@ export function registerOptioApi(app, opts) {
439
472
  const result = await forwardAgentInput(db, prefix, processId, payload);
440
473
  reply.code(result.status).send(result.body);
441
474
  });
475
+ // Generic file upload: the widget POSTs a multipart file here; we stream the
476
+ // bytes into GridFS (never over Redis) and hand the blob id to the engine's
477
+ // materializeUpload RPC, which lands it in the running task's workdir.
478
+ app.post('/api/widget-upload/:database/:prefix/:processId', async (request, reply) => {
479
+ const { database, prefix, processId } = request.params;
480
+ let part;
481
+ try {
482
+ part = await request.file();
483
+ }
484
+ catch {
485
+ reply.code(400).send({ message: 'expected multipart/form-data with a file part' });
486
+ return;
487
+ }
488
+ if (!part) {
489
+ reply.code(400).send({ message: 'no file part in request' });
490
+ return;
491
+ }
492
+ let db;
493
+ try {
494
+ ({ db } = resolveDb(dbOpts, { database, prefix }));
495
+ }
496
+ catch {
497
+ reply.code(404).send({ message: 'session not running' });
498
+ return;
499
+ }
500
+ const bucket = new GridFSBucket(db);
501
+ const engine = resolveOptioEngine(ctx, { database, prefix });
502
+ // An oversize part errors its stream (throwFileSizeLimit defaults true),
503
+ // which rejects forwardUpload's pipeline → 502 + staged-blob cleanup, so
504
+ // a truncated file is never materialized into the workdir.
505
+ const result = await forwardUpload({ bucket, engine }, processId, part.filename, part.file);
506
+ reply.code(result.status).send(result.body);
507
+ });
442
508
  app.get('/api/processes/:id/tree/stream', async (request, reply) => {
443
509
  const { id } = request.params;
444
510
  let sseOpts;
@@ -1 +1 @@
1
- {"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../src/adapters/fastify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../src/adapters/fastify.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { Readable } from 'node:stream';
2
+ import type { GridFSBucket } from 'mongodb';
3
+ import type { MaterializeUploadParams, MaterializeUploadResult } from './_generated/optio-engine.js';
4
+ export interface UploadForwardResult {
5
+ status: number;
6
+ body: unknown;
7
+ }
8
+ /**
9
+ * The two collaborators the upload forwarder needs, injected so tests can drive
10
+ * it without a real Mongo/redis stack:
11
+ * - `bucket`: a GridFS bucket over the same Mongo db the API already holds; the
12
+ * uploaded bytes are staged here (they never cross Redis).
13
+ * - `engine`: the clamator `optio-engine` client, whose `materializeUpload` RPC
14
+ * reaches the task's process by `processId` and writes the blob into its
15
+ * workdir via the in-process upload writer.
16
+ */
17
+ export interface UploadForwardDeps {
18
+ bucket: Pick<GridFSBucket, 'openUploadStream' | 'delete'>;
19
+ engine: {
20
+ materializeUpload(params: MaterializeUploadParams): Promise<MaterializeUploadResult>;
21
+ };
22
+ }
23
+ /**
24
+ * Stream one multipart file into GridFS, then hand its blob id to the engine's
25
+ * `materializeUpload` RPC (which resolves the running task by `processId` and
26
+ * writes the file into `<workdir>/uploads/<name>`). The GridFS blob is transient
27
+ * staging: it is best-effort deleted afterwards whether the RPC succeeded, failed
28
+ * or threw. Bytes never enter the RPC params — only the blob id does.
29
+ */
30
+ export declare function forwardUpload(deps: UploadForwardDeps, processId: string, filename: string, stream: Readable): Promise<UploadForwardResult>;
31
+ //# sourceMappingURL=upload-forward.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-forward.d.ts","sourceRoot":"","sources":["../src/upload-forward.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,SAAS,CAAC;AACtD,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,kBAAkB,GAAG,QAAQ,CAAC,CAAC;IAC1D,MAAM,EAAE;QACN,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;KACtF,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,mBAAmB,CAAC,CA6B9B"}
@@ -0,0 +1,45 @@
1
+ import { pipeline } from 'node:stream/promises';
2
+ /**
3
+ * Stream one multipart file into GridFS, then hand its blob id to the engine's
4
+ * `materializeUpload` RPC (which resolves the running task by `processId` and
5
+ * writes the file into `<workdir>/uploads/<name>`). The GridFS blob is transient
6
+ * staging: it is best-effort deleted afterwards whether the RPC succeeded, failed
7
+ * or threw. Bytes never enter the RPC params — only the blob id does.
8
+ */
9
+ export async function forwardUpload(deps, processId, filename, stream) {
10
+ const upload = deps.bucket.openUploadStream(filename);
11
+ const blobId = upload.id;
12
+ try {
13
+ await pipeline(stream, upload);
14
+ }
15
+ catch {
16
+ await safeDelete(deps, blobId);
17
+ return { status: 502, body: { ok: false, message: 'failed to stage upload' } };
18
+ }
19
+ let result;
20
+ try {
21
+ result = await deps.engine.materializeUpload({
22
+ processId,
23
+ blobId: blobId.toHexString(),
24
+ filename,
25
+ });
26
+ }
27
+ catch {
28
+ await safeDelete(deps, blobId);
29
+ return { status: 502, body: { ok: false, message: 'session not reachable' } };
30
+ }
31
+ await safeDelete(deps, blobId);
32
+ if (result.ok) {
33
+ return { status: 200, body: { ok: true, files: [{ filename, path: result.path }] } };
34
+ }
35
+ return { status: 502, body: { ok: false, message: result.reason } };
36
+ }
37
+ async function safeDelete(deps, blobId) {
38
+ try {
39
+ await deps.bucket.delete(blobId);
40
+ }
41
+ catch {
42
+ // Staged blobs are transient; a failed cleanup must not fail the request.
43
+ }
44
+ }
45
+ //# sourceMappingURL=upload-forward.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-forward.js","sourceRoot":"","sources":["../src/upload-forward.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AA6BhD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAuB,EACvB,SAAiB,EACjB,QAAgB,EAChB,MAAgB;IAEhB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAc,CAAC;IAErC,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAwB,EAAE,EAAE,CAAC;IACjF,CAAC;IAED,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAC3C,SAAS;YACT,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC;IAChF,CAAC;IAED,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE/B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;IACvF,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;AACtE,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAuB,EAAE,MAAgB;IACjE,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;IAC5E,CAAC;AACH,CAAC"}
@@ -2,6 +2,19 @@ import { type Db } from 'mongodb';
2
2
  import type { InnerAuthDoc, WidgetUpstreamRegistry, WidgetUpstreamValue } from './widget-upstream-registry.js';
3
3
  export declare function resolveWidgetUpstream(db: Db, prefix: string, registry: WidgetUpstreamRegistry, processId: string): Promise<WidgetUpstreamValue | null>;
4
4
  export declare function applyInnerAuthHeaders(innerAuth: InnerAuthDoc | null, headers: Record<string, string | string[] | undefined>): Record<string, string | string[] | undefined>;
5
+ /**
6
+ * Drop the browser `Origin` header before forwarding to the widget upstream.
7
+ *
8
+ * The upstream runs on loopback and is reachable only through this authenticated
9
+ * proxy, but @fastify/reply-from rewrites the outgoing `Host` to the loopback
10
+ * upstream while the browser's `Origin` still carries the parent page's origin.
11
+ * Strict upstreams (e.g. kimi-code) treat that `Origin` != `Host` mismatch as
12
+ * cross-origin and reject every Origin-bearing request — WebSocket handshakes
13
+ * (which always send `Origin`) and same-origin POSTs alike. Removing the header
14
+ * makes the upstream see a non-browser (originless) client and admit the
15
+ * request; the proxy stays the CSRF/auth trust boundary.
16
+ */
17
+ export declare function stripEmbedderOrigin(headers: Record<string, string | string[] | undefined>): Record<string, string | string[] | undefined>;
5
18
  export declare function applyInnerAuthQuery(innerAuth: InnerAuthDoc | null, url: string): string;
6
19
  export declare function isWriteMethod(method: string): boolean;
7
20
  //# sourceMappingURL=widget-proxy-core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"widget-proxy-core.d.ts","sourceRoot":"","sources":["../src/widget-proxy-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAE/G,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,EAAE,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,sBAAsB,EAChC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAkCrC;AAED,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,YAAY,GAAG,IAAI,EAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GACrD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAc/C;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,YAAY,GAAG,IAAI,EAC9B,GAAG,EAAE,MAAM,GACV,MAAM,CAKR;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGrD"}
1
+ {"version":3,"file":"widget-proxy-core.d.ts","sourceRoot":"","sources":["../src/widget-proxy-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAE/G,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,EAAE,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,sBAAsB,EAChC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAyCrC;AAED,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,YAAY,GAAG,IAAI,EAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GACrD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAc/C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GACrD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAI/C;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,YAAY,GAAG,IAAI,EAC9B,GAAG,EAAE,MAAM,GACV,MAAM,CAKR;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGrD"}
@@ -15,8 +15,14 @@ export async function resolveWidgetUpstream(db, prefix, registry, processId) {
15
15
  // the negative would waste an entry; the 404 is cheap to re-derive.
16
16
  return null;
17
17
  }
18
- const doc = await db.collection(`${prefix}_processes`).findOne({ _id: oid }, { projection: { widgetUpstream: 1 } });
19
- const upstream = (doc?.widgetUpstream ?? null);
18
+ const doc = await db.collection(`${prefix}_processes`).findOne({ _id: oid }, { projection: { widgetUpstream: 1, 'widgetData.stripProxyPrefix': 1 } });
19
+ const rawUpstream = (doc?.widgetUpstream ?? null);
20
+ // Fold the widget's opt-in prefix-strip flag (widgetData.stripProxyPrefix,
21
+ // set by client-routed SPA engines) into the cached upstream value so the
22
+ // HTML-injection path can read it without a second lookup.
23
+ const upstream = rawUpstream === null
24
+ ? null
25
+ : { ...rawUpstream, stripProxyPrefix: doc?.widgetData?.stripProxyPrefix === true };
20
26
  // Only cache positive lookups. A null (no widgetUpstream registered yet
21
27
  // or just cleared at teardown) must NOT stick in the cache: when the
22
28
  // worker subsequently calls set_widget_upstream, the dashboard's first
@@ -42,6 +48,24 @@ export function applyInnerAuthHeaders(innerAuth, headers) {
42
48
  // query auth does not touch headers
43
49
  return headers;
44
50
  }
51
+ /**
52
+ * Drop the browser `Origin` header before forwarding to the widget upstream.
53
+ *
54
+ * The upstream runs on loopback and is reachable only through this authenticated
55
+ * proxy, but @fastify/reply-from rewrites the outgoing `Host` to the loopback
56
+ * upstream while the browser's `Origin` still carries the parent page's origin.
57
+ * Strict upstreams (e.g. kimi-code) treat that `Origin` != `Host` mismatch as
58
+ * cross-origin and reject every Origin-bearing request — WebSocket handshakes
59
+ * (which always send `Origin`) and same-origin POSTs alike. Removing the header
60
+ * makes the upstream see a non-browser (originless) client and admit the
61
+ * request; the proxy stays the CSRF/auth trust boundary.
62
+ */
63
+ export function stripEmbedderOrigin(headers) {
64
+ if (!('origin' in headers))
65
+ return headers;
66
+ const { origin: _origin, ...rest } = headers;
67
+ return rest;
68
+ }
45
69
  export function applyInnerAuthQuery(innerAuth, url) {
46
70
  if (!innerAuth || innerAuth.kind !== 'query')
47
71
  return url;
@@ -1 +1 @@
1
- {"version":3,"file":"widget-proxy-core.js","sourceRoot":"","sources":["../src/widget-proxy-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAW,MAAM,SAAS,CAAC;AAG5C,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,EAAM,EACN,MAAc,EACd,QAAgC,EAChC,SAAiB;IAEjB,wEAAwE;IACxE,oDAAoD;IACpD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,YAAY,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;IAE7D,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,IAAI,GAAa,CAAC;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,kEAAkE;QAClE,oEAAoE;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,YAAY,CAAC,CAAC,OAAO,CAC5D,EAAE,GAAG,EAAE,GAAG,EAAE,EACZ,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,CACtC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,cAAc,IAAI,IAAI,CAA+B,CAAC;IAC7E,yEAAyE;IACzE,qEAAqE;IACrE,uEAAuE;IACvE,uEAAuE;IACvE,gEAAgE;IAChE,yEAAyE;IACzE,yCAAyC;IACzC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,SAA8B,EAC9B,OAAsD;IAEtD,IAAI,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC;IAE/B,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9F,OAAO,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,SAAS,OAAO,EAAE,EAAE,CAAC;IAC3D,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;IACzE,CAAC;IAED,oCAAoC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,SAA8B,EAC9B,GAAW;IAEX,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,GAAG,CAAC;IACzD,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAChD,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzD,OAAO,GAAG,GAAG,GAAG,SAAS,GAAG,SAAS,CAAC,IAAI,IAAI,YAAY,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/B,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,SAAS,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"widget-proxy-core.js","sourceRoot":"","sources":["../src/widget-proxy-core.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export interface WidgetUpstreamValue {
2
2
  url: string;
3
3
  innerAuth: InnerAuthDoc | null;
4
+ stripProxyPrefix?: boolean;
4
5
  }
5
6
  export type InnerAuthDoc = {
6
7
  kind: 'basic';
@@ -1 +1 @@
1
- {"version":3,"file":"widget-upstream-registry.d.ts","sourceRoot":"","sources":["../src/widget-upstream-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/D,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAAC;IAChE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAOD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,sBAAsB,CA2B5F"}
1
+ {"version":3,"file":"widget-upstream-registry.d.ts","sourceRoot":"","sources":["../src/widget-upstream-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;IAI/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/D,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAAC;IAChE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAOD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,sBAAsB,CA2B5F"}
@@ -1 +1 @@
1
- {"version":3,"file":"widget-upstream-registry.js","sourceRoot":"","sources":["../src/widget-upstream-registry.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,4BAA4B,CAAC,IAAuB;IAClE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IAE7C,SAAS,QAAQ,CAAC,SAAiB;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,GAAG,CAAC,SAAS;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;QACpC,CAAC;QACD,GAAG,CAAC,SAAS;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;QAC3C,CAAC;QACD,GAAG,CAAC,SAAS,EAAE,KAAK;YAClB,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,UAAU,CAAC,SAAS;YAClB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"widget-upstream-registry.js","sourceRoot":"","sources":["../src/widget-upstream-registry.ts"],"names":[],"mappings":"AA0BA,MAAM,UAAU,4BAA4B,CAAC,IAAuB;IAClE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IAE7C,SAAS,QAAQ,CAAC,SAAiB;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,GAAG,CAAC,SAAS;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;QACpC,CAAC;QACD,GAAG,CAAC,SAAS;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;QAC3C,CAAC;QACD,GAAG,CAAC,SAAS,EAAE,KAAK;YAClB,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,UAAU,CAAC,SAAS;YAClB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "optio-api",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Server-side optio API with Fastify, Express, and Next.js adapters.",
6
6
  "repository": {
@@ -45,12 +45,13 @@
45
45
  "@clamator/over-redis": "^0.1.9",
46
46
  "@clamator/protocol": "^0.1.9",
47
47
  "@fastify/http-proxy": "^11.0.0",
48
+ "@fastify/multipart": "^9.4.0",
48
49
  "@ts-rest/core": "^3.51.0",
49
50
  "ioredis": "^5.4.0",
50
51
  "mongodb": "^6.12.0",
51
52
  "zod": "^3",
52
53
  "filtrum-mongo": "0.1.1",
53
- "optio-contracts": "0.3.0"
54
+ "optio-contracts": "0.3.1"
54
55
  },
55
56
  "optionalDependencies": {
56
57
  "@ts-rest/fastify": "^3.51.0"