@vm0/cli 9.116.2 → 9.116.3

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.
@@ -9922,7 +9922,7 @@ var require_client_h2 = __commonJS({
9922
9922
  "use strict";
9923
9923
  init_esm_shims();
9924
9924
  var assert2 = __require("assert");
9925
- var { pipeline } = __require("stream");
9925
+ var { pipeline: pipeline2 } = __require("stream");
9926
9926
  var util2 = require_util();
9927
9927
  var {
9928
9928
  RequestContentLengthMismatchError,
@@ -10369,7 +10369,7 @@ var require_client_h2 = __commonJS({
10369
10369
  }
10370
10370
  function writeStream(abort, socket, expectsPayload, h2stream, body, client, request, contentLength) {
10371
10371
  assert2(contentLength !== 0 || client[kRunning] === 0, "stream body cannot be pipelined");
10372
- const pipe2 = pipeline(
10372
+ const pipe2 = pipeline2(
10373
10373
  body,
10374
10374
  h2stream,
10375
10375
  (err) => {
@@ -12427,7 +12427,7 @@ var require_readable = __commonJS({
12427
12427
  "use strict";
12428
12428
  init_esm_shims();
12429
12429
  var assert2 = __require("assert");
12430
- var { Readable } = __require("stream");
12430
+ var { Readable: Readable2 } = __require("stream");
12431
12431
  var { RequestAbortedError, NotSupportedError, InvalidArgumentError: InvalidArgumentError2, AbortError } = require_errors();
12432
12432
  var util2 = require_util();
12433
12433
  var { ReadableStreamFrom } = require_util();
@@ -12439,7 +12439,7 @@ var require_readable = __commonJS({
12439
12439
  var kContentLength = /* @__PURE__ */ Symbol("kContentLength");
12440
12440
  var noop = () => {
12441
12441
  };
12442
- var BodyReadable = class extends Readable {
12442
+ var BodyReadable = class extends Readable2 {
12443
12443
  constructor({
12444
12444
  resume,
12445
12445
  abort,
@@ -12784,7 +12784,7 @@ var require_api_request = __commonJS({
12784
12784
  "use strict";
12785
12785
  init_esm_shims();
12786
12786
  var assert2 = __require("assert");
12787
- var { Readable } = require_readable();
12787
+ var { Readable: Readable2 } = require_readable();
12788
12788
  var { InvalidArgumentError: InvalidArgumentError2, RequestAbortedError } = require_errors();
12789
12789
  var util2 = require_util();
12790
12790
  var { getResolveErrorBodyCallback } = require_util3();
@@ -12879,7 +12879,7 @@ var require_api_request = __commonJS({
12879
12879
  const parsedHeaders = responseHeaders === "raw" ? util2.parseHeaders(rawHeaders) : headers;
12880
12880
  const contentType = parsedHeaders["content-type"];
12881
12881
  const contentLength = parsedHeaders["content-length"];
12882
- const res = new Readable({
12882
+ const res = new Readable2({
12883
12883
  resume,
12884
12884
  abort,
12885
12885
  contentType,
@@ -13198,7 +13198,7 @@ var require_api_pipeline = __commonJS({
13198
13198
  "use strict";
13199
13199
  init_esm_shims();
13200
13200
  var {
13201
- Readable,
13201
+ Readable: Readable2,
13202
13202
  Duplex,
13203
13203
  PassThrough
13204
13204
  } = __require("stream");
@@ -13212,7 +13212,7 @@ var require_api_pipeline = __commonJS({
13212
13212
  var { addSignal, removeSignal } = require_abort_signal();
13213
13213
  var assert2 = __require("assert");
13214
13214
  var kResume = /* @__PURE__ */ Symbol("resume");
13215
- var PipelineRequest = class extends Readable {
13215
+ var PipelineRequest = class extends Readable2 {
13216
13216
  constructor() {
13217
13217
  super({ autoDestroy: true });
13218
13218
  this[kResume] = null;
@@ -13229,7 +13229,7 @@ var require_api_pipeline = __commonJS({
13229
13229
  callback(err);
13230
13230
  }
13231
13231
  };
13232
- var PipelineResponse = class extends Readable {
13232
+ var PipelineResponse = class extends Readable2 {
13233
13233
  constructor(resume) {
13234
13234
  super({ autoDestroy: true });
13235
13235
  this[kResume] = resume;
@@ -13380,7 +13380,7 @@ var require_api_pipeline = __commonJS({
13380
13380
  util2.destroy(ret, err);
13381
13381
  }
13382
13382
  };
13383
- function pipeline(opts, handler) {
13383
+ function pipeline2(opts, handler) {
13384
13384
  try {
13385
13385
  const pipelineHandler = new PipelineHandler(opts, handler);
13386
13386
  this.dispatch({ ...opts, body: pipelineHandler.req }, pipelineHandler);
@@ -13389,7 +13389,7 @@ var require_api_pipeline = __commonJS({
13389
13389
  return new PassThrough().destroy(err);
13390
13390
  }
13391
13391
  }
13392
- module.exports = pipeline;
13392
+ module.exports = pipeline2;
13393
13393
  }
13394
13394
  });
13395
13395
 
@@ -16577,7 +16577,7 @@ var require_fetch = __commonJS({
16577
16577
  subresourceSet
16578
16578
  } = require_constants3();
16579
16579
  var EE = __require("events");
16580
- var { Readable, pipeline, finished } = __require("stream");
16580
+ var { Readable: Readable2, pipeline: pipeline2, finished } = __require("stream");
16581
16581
  var { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = require_util();
16582
16582
  var { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = require_data_url();
16583
16583
  var { getGlobalDispatcher } = require_global2();
@@ -17478,7 +17478,7 @@ var require_fetch = __commonJS({
17478
17478
  headersList.append(bufferToLowerCasedHeaderName(rawHeaders[i]), rawHeaders[i + 1].toString("latin1"), true);
17479
17479
  }
17480
17480
  location = headersList.get("location", true);
17481
- this.body = new Readable({ read: resume });
17481
+ this.body = new Readable2({ read: resume });
17482
17482
  const decoders = [];
17483
17483
  const willFollow = location && request.redirect === "follow" && redirectStatusSet.has(status);
17484
17484
  if (request.method !== "HEAD" && request.method !== "CONNECT" && !nullBodyStatus.includes(status) && !willFollow) {
@@ -17521,7 +17521,7 @@ var require_fetch = __commonJS({
17521
17521
  status,
17522
17522
  statusText,
17523
17523
  headersList,
17524
- body: decoders.length ? pipeline(this.body, ...decoders, (err) => {
17524
+ body: decoders.length ? pipeline2(this.body, ...decoders, (err) => {
17525
17525
  if (err) {
17526
17526
  this.onError(err);
17527
17527
  }
@@ -21474,7 +21474,7 @@ var require_eventsource = __commonJS({
21474
21474
  "../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/lib/web/eventsource/eventsource.js"(exports, module) {
21475
21475
  "use strict";
21476
21476
  init_esm_shims();
21477
- var { pipeline } = __require("stream");
21477
+ var { pipeline: pipeline2 } = __require("stream");
21478
21478
  var { fetching } = require_fetch();
21479
21479
  var { makeRequest } = require_request2();
21480
21480
  var { webidl } = require_webidl();
@@ -21632,7 +21632,7 @@ var require_eventsource = __commonJS({
21632
21632
  ));
21633
21633
  }
21634
21634
  });
21635
- pipeline(
21635
+ pipeline2(
21636
21636
  response.body.stream,
21637
21637
  eventSourceStream,
21638
21638
  (error48) => {
@@ -34652,7 +34652,7 @@ if (DSN) {
34652
34652
  Sentry.init({
34653
34653
  dsn: DSN,
34654
34654
  environment: process.env.SENTRY_ENVIRONMENT ?? "production",
34655
- release: "9.116.2",
34655
+ release: "9.116.3",
34656
34656
  sendDefaultPii: false,
34657
34657
  tracesSampleRate: 0,
34658
34658
  shutdownTimeout: 500,
@@ -34671,7 +34671,7 @@ if (DSN) {
34671
34671
  }
34672
34672
  });
34673
34673
  Sentry.setContext("cli", {
34674
- version: "9.116.2",
34674
+ version: "9.116.3",
34675
34675
  command: process.argv.slice(2).join(" ")
34676
34676
  });
34677
34677
  Sentry.setContext("runtime", {
@@ -70750,7 +70750,8 @@ function getSelectableProviderTypes() {
70750
70750
  }
70751
70751
  var ANTHROPIC_API_BASE = "https://api.anthropic.com";
70752
70752
  function getFirewallBaseUrl(type) {
70753
- return getEnvironmentMapping(type)?.ANTHROPIC_BASE_URL ?? ANTHROPIC_API_BASE;
70753
+ const base = (getEnvironmentMapping(type)?.ANTHROPIC_BASE_URL ?? ANTHROPIC_API_BASE).replace(/\/+$/, "");
70754
+ return `${base}/v1/messages`;
70754
70755
  }
70755
70756
  function mpFirewall(type, authHeader, placeholderValue) {
70756
70757
  const secretName = MODEL_PROVIDER_TYPES[type].secretName;
@@ -75674,6 +75675,9 @@ async function deleteSkill(name) {
75674
75675
 
75675
75676
  // src/lib/api/domains/integrations-slack.ts
75676
75677
  init_esm_shims();
75678
+ import { createWriteStream } from "fs";
75679
+ import { Readable } from "stream";
75680
+ import { pipeline } from "stream/promises";
75677
75681
  async function sendSlackMessage(body) {
75678
75682
  const config2 = await getClientConfig();
75679
75683
  const client = initClient(integrationsSlackMessageContract, config2);
@@ -75701,6 +75705,49 @@ async function completeSlackFileUpload(body) {
75701
75705
  }
75702
75706
  handleError(result, "Failed to complete Slack file upload");
75703
75707
  }
75708
+ async function downloadSlackFile(fileId, outPath) {
75709
+ const baseUrl = await getBaseUrl();
75710
+ const token = await getActiveToken();
75711
+ if (!token) {
75712
+ throw new ApiRequestError("Not authenticated", "UNAUTHORIZED", 401);
75713
+ }
75714
+ const url2 = new URL("/api/zero/integrations/slack/download-file", baseUrl);
75715
+ url2.searchParams.set("file_id", fileId);
75716
+ const headers = {
75717
+ Authorization: `Bearer ${token}`
75718
+ };
75719
+ const bypassSecret = process.env.VERCEL_AUTOMATION_BYPASS_SECRET;
75720
+ if (bypassSecret) {
75721
+ headers["x-vercel-protection-bypass"] = bypassSecret;
75722
+ }
75723
+ const response = await fetch(url2, { headers });
75724
+ if (!response.ok) {
75725
+ let message = `Failed to download Slack file (HTTP ${response.status})`;
75726
+ let code = "UNKNOWN";
75727
+ try {
75728
+ const body = await response.json();
75729
+ if (body.error?.message) message = body.error.message;
75730
+ if (body.error?.code) code = body.error.code;
75731
+ } catch {
75732
+ }
75733
+ throw new ApiRequestError(message, code, response.status);
75734
+ }
75735
+ if (!response.body) {
75736
+ throw new ApiRequestError(
75737
+ "Slack download response has no body",
75738
+ "EMPTY_BODY",
75739
+ 502
75740
+ );
75741
+ }
75742
+ const mimetype = response.headers.get("x-file-mimetype") ?? response.headers.get("content-type") ?? "application/octet-stream";
75743
+ await pipeline(
75744
+ Readable.fromWeb(response.body),
75745
+ createWriteStream(outPath)
75746
+ );
75747
+ const contentLengthHeader = response.headers.get("content-length");
75748
+ const size = contentLengthHeader ? Number(contentLengthHeader) : 0;
75749
+ return { path: outPath, mimetype, size };
75750
+ }
75704
75751
 
75705
75752
  // src/lib/api/domains/zero-schedules.ts
75706
75753
  init_esm_shims();
@@ -77071,6 +77118,7 @@ export {
77071
77118
  sendSlackMessage,
77072
77119
  initSlackFileUpload,
77073
77120
  completeSlackFileUpload,
77121
+ downloadSlackFile,
77074
77122
  deployZeroSchedule,
77075
77123
  listZeroSchedules,
77076
77124
  deleteZeroSchedule,
@@ -77132,4 +77180,4 @@ undici/lib/web/fetch/body.js:
77132
77180
  undici/lib/web/websocket/frame.js:
77133
77181
  (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
77134
77182
  */
77135
- //# sourceMappingURL=chunk-DV6NKREP.js.map
77183
+ //# sourceMappingURL=chunk-PK7CJPFD.js.map