@chrismessina/raycast-downloader 0.1.5 → 0.2.1

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/README.md CHANGED
@@ -90,7 +90,7 @@ try {
90
90
 
91
91
  Three things worth copying exactly:
92
92
 
93
- **Log the typed `code`, never the URL or the raw cause.** A signed URL is a bearer credential — it travels in a 0600 file rather than argv for that reason, and a log line is the easiest way to undo that. `error.code`, `error.httpStatus` and `retryable` say everything actionable without carrying the secret.
93
+ **Log the typed `code`, never the URL or the raw cause.** A signed URL is a bearer credential — it travels only through pipes, never argv or a file, for that reason, and a log line is the easiest way to undo that. `error.code`, `error.httpStatus` and `retryable` say everything actionable without carrying the secret.
94
94
 
95
95
  **Use `logger.debug` or `logger.log`, not `logger.error`.** This package takes no logger dependency — `@chrismessina/raycast-logger` is one you install yourself, and any logger works. If you use that one: as of v1.5.0 only `debug` and `log` are gated on the `verboseLogging` preference, while `error` and `warn` emit regardless, so an expected failure would print in every user's console. Check your own logger's gating before copying this.
96
96
 
@@ -147,7 +147,7 @@ Each of these exists because the obvious implementation is wrong in a way that o
147
147
 
148
148
  **Process identity is `(pid, startTime)`, never a bare pid.** macOS `kern.maxproc` is 16000, so pids get recycled. A liveness check of `kill(pid, 0)` alone answers "does *some* process have this pid" — and cancelling on that basis can `kill(-pid)` an unrelated process group.
149
149
 
150
- **Credentials never touch argv.** `ps` is world-readable. Measured: a URL passed as a curl argument is visible to any process on the machine; written to a `0600` config file and passed by path as `curl -K <file>`, it is not. The config is unlinked as soon as curl's first output byte proves it has been read. Signed URLs are bearer credentials, so the config-file channel is a requirement rather than a preference.
150
+ **Credentials never touch argv or disk.** `ps` is world-readable: a URL passed as a curl argument is visible to any process on the machine. A file is no better if the process that should delete it is killed first. So the URL and your `headers` travel only through pipes: `startDownload` hands them to the runner on its stdin, and the runner hands curl its config the same way (`curl -K -`). Signed URLs and `Authorization` headers are bearer credentials, so this is a requirement rather than a preference.
151
151
 
152
152
  **Timeouts are throughput-based, not wall-clock.** `--max-time` counts machine sleep against the budget, so a laptop closed for ten minutes guarantees a spurious failure on a healthy transfer. `--speed-limit`/`--speed-time` measure actual throughput and are sleep-tolerant.
153
153
 
@@ -204,11 +204,20 @@ const outputPath = uniquePath(downloadsDir, filename, { reserve: true });
204
204
 
205
205
  A claim whose owner is provably dead is stolen, so a runner killed mid-transfer does not wedge the filename.
206
206
 
207
- **Three sidecar files may exist next to a `.part` while a download is live** — `.state`, `.claim` and `.headers`. They hold the provenance that makes a resume safe, the live-attempt claim, and curl's header dump. All are removed when the download completes. If you enumerate the destination directory to show the user what is in flight, filter them out.
207
+ **Three sidecar files may exist next to a `.part` while a download is live** — `.state`, `.claim` and `.headers`. They hold the provenance that makes a resume safe, the live-attempt claim, and curl's dump of the *response* headers (never your request headers). Before 0.2.1 a fourth, `.curlrc`, held curl's config briefly at startup. Atomic writes of `.state` and `.claim` also create short-lived `<name>.<pid>….tmp` neighbors; a filter should match the prefix, not an exact list. The runner removes them when the download finishes, best effort — a denied unlink or a killed runner can leave one behind. If you enumerate the destination directory to show the user what is in flight, filter them out, stale ones included.
208
208
 
209
209
  **Check `partialUnsafe` before you resume.** A failed download normally leaves its `.part` file in place precisely so a retry can resume from it. `partialUnsafe: true` on the status is the exception: the runner put something in that file that does not belong to the download and could not take it back out. **The package enforces this itself** — the same fact is recorded beside the file, and a later attempt resets the partial or fails rather than resuming onto it — so the flag is there for what you show the user, not for a rule you have to implement. The flag is absent on every ordinary status — including failures whose partial is perfectly resumable — and absence means "nothing was recorded", not "verified safe": a runner older than 0.1.3 cannot set it. Do not read `bytesDownloaded: 0` as the same signal; an empty response and a failed setup report zero too.
210
210
 
211
- **A 3xx is never a successful download — including with redirects on.** Success is strictly 2xx. With redirects on (the default) curl follows the hops and reports the final 2xx, so the usual redirect is invisible to you; but `--location` only follows a response carrying a usable `Location`, so a **304** (you sent a conditional header) or a **300** ends the transfer as itself. Those now fail with `http_client` rather than publishing an empty or stale file. With `followRedirects: false`, curl writes the redirect *body* to the `.part` file and exits 0 — that stub is discarded and the download fails with "The server redirected (HTTP 302) but redirects are disabled." Expose the preference if your users need it; don't expect a 302 to still produce a file.
211
+ **Not every 2xx is a file, and one 4xx is.** curl exits 0 on each of these, so the runner decides by status:
212
+
213
+ - On a fresh (not resumed) request, **202, 204, 205** carry no file, and a **206** carries only a fragment. Each fails and its body is discarded. After a clean curl exit the code is `pending` (retryable) for a 202, `integrity` for the 206, and `http_client` for the rest; a transfer that also broke mid-body reports its transport failure instead.
214
+ - A resumed request answered **202** fails with `pending` and keeps the partial as it was before the request, so the retry resumes. A 202 says the file is not ready yet, not that the bytes on disk are wrong.
215
+ - A resumed request answered with any other **whole body** (a 2xx other than 202 and 206) fails as not resumable, and the partial is cleared so the retry starts over. curl keeps the old bytes in that case — exiting 0 and calling it "already downloaded" when the body is exactly the partial's length — and when `If-Range` produced the 200, those bytes are the old version of the file.
216
+ - A **416** to a resume whose `Content-Range: bytes */N` equals the bytes on disk means the partial is already the whole file. It then goes through the same checks as any finished transfer — a strict `expectedBytes` that disagrees still fails — before it is published. Any other 416 to a resume clears the partial.
217
+
218
+ A failed or cancelled attempt leaves a `.part` only when it holds bytes the file's own response wrote — unless removing the others was denied, in which case the status carries `partialUnsafe` (above). Its `.state` is removed with the `.part`; that removal is best effort.
219
+
220
+ **A 3xx is never a successful download — including with redirects on.** With redirects on (the default) curl follows the hops and reports the final 2xx, so the usual redirect is invisible to you; but `--location` only follows a response carrying a usable `Location`, so a **304** (you sent a conditional header) or a **300** ends the transfer as itself. Those now fail with `http_client` rather than publishing an empty or stale file. With `followRedirects: false`, curl writes the redirect *body* to the `.part` file and exits 0 — that stub is discarded and the download fails with "The server redirected (HTTP 302) but redirects are disabled." Expose the preference if your users need it; don't expect a 302 to still produce a file.
212
221
 
213
222
  **Never put a signed URL in `meta`.** It is persisted to the status file. Store an identifier you can re-resolve from instead.
214
223
 
package/dist/curl.d.ts CHANGED
@@ -8,10 +8,10 @@
8
8
  *
9
9
  * Two decisions here are load-bearing, both verified empirically:
10
10
  *
11
- * 1. The URL is passed in a 0600 CONFIG FILE, never on the command line.
12
- * Signed URLs are bearer credentials; argv is world-readable via `ps`.
13
- * Measured: with the URL as an argument it is visible in `ps`; via `-K` it
14
- * is not.
11
+ * 1. The URL is passed as CONFIG on curl's stdin (`curl -K -`), never on the
12
+ * command line and never in a file. Signed URLs are bearer credentials;
13
+ * argv is world-readable via `ps`, and a file outlives a process killed
14
+ * before it can delete it.
15
15
  * 2. Timeouts are THROUGHPUT-based (`--speed-limit`/`--speed-time`), not
16
16
  * wall-clock (`--max-time`). `--max-time` counts machine sleep against the
17
17
  * budget, so a laptop closed for ten minutes guarantees a spurious failure
@@ -70,10 +70,9 @@ export interface CurlConfigOptions {
70
70
  ifRange?: string;
71
71
  }
72
72
  /**
73
- * Build the contents of a curl config file (`curl -K <file>`).
73
+ * Build curl's config, which the runner writes to curl's stdin (`curl -K -`).
74
74
  *
75
- * Everything sensitive lives in this file, which the caller must create 0600 and
76
- * delete once curl has started.
75
+ * Everything sensitive lives in this text, so it must never reach argv or disk.
77
76
  */
78
77
  export declare function buildCurlConfig(options: CurlConfigOptions): string;
79
78
  /**
@@ -131,6 +130,8 @@ export interface ClassifyCurlInput {
131
130
  cancelled?: boolean;
132
131
  /** Whether the request was made with redirects enabled. Default true. */
133
132
  followRedirects?: boolean;
133
+ /** Whether the request resumed an existing partial (sent a Range). Default false. */
134
+ resumed?: boolean;
134
135
  }
135
136
  /**
136
137
  * Turn a finished curl invocation into a typed error.
@@ -1 +1 @@
1
- {"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,aAAa,EAA0B,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAetG,wBAAgB,OAAO,IAAI,OAAO,CAWjC;AAED,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kDAAkD;IAClD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAuDlE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,IAAI,CAU9E;AAuBD,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA0BlE;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAW3E;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQ/E;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAU1D;AAwBD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa,CA4C3E"}
1
+ {"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,aAAa,EAA0B,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAetG,wBAAgB,OAAO,IAAI,OAAO,CAWjC;AAED,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kDAAkD;IAClD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CA4DlE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,IAAI,CAU9E;AAuBD,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA0BlE;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAW3E;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQ/E;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAU1D;AAwBD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa,CAqE3E"}
package/dist/curl.js CHANGED
@@ -9,10 +9,10 @@
9
9
  *
10
10
  * Two decisions here are load-bearing, both verified empirically:
11
11
  *
12
- * 1. The URL is passed in a 0600 CONFIG FILE, never on the command line.
13
- * Signed URLs are bearer credentials; argv is world-readable via `ps`.
14
- * Measured: with the URL as an argument it is visible in `ps`; via `-K` it
15
- * is not.
12
+ * 1. The URL is passed as CONFIG on curl's stdin (`curl -K -`), never on the
13
+ * command line and never in a file. Signed URLs are bearer credentials;
14
+ * argv is world-readable via `ps`, and a file outlives a process killed
15
+ * before it can delete it.
16
16
  * 2. Timeouts are THROUGHPUT-based (`--speed-limit`/`--speed-time`), not
17
17
  * wall-clock (`--max-time`). `--max-time` counts machine sleep against the
18
18
  * budget, so a laptop closed for ten minutes guarantees a spurious failure
@@ -59,10 +59,9 @@ function hasCurl() {
59
59
  exports.DEFAULT_SPEED_LIMIT_BYTES = 1024;
60
60
  exports.DEFAULT_STALL_SECONDS = 120;
61
61
  /**
62
- * Build the contents of a curl config file (`curl -K <file>`).
62
+ * Build curl's config, which the runner writes to curl's stdin (`curl -K -`).
63
63
  *
64
- * Everything sensitive lives in this file, which the caller must create 0600 and
65
- * delete once curl has started.
64
+ * Everything sensitive lives in this text, so it must never reach argv or disk.
66
65
  */
67
66
  function buildCurlConfig(options) {
68
67
  const { url, outputPath, headers = {}, followRedirects = true, resume = false, speedLimitBytes = exports.DEFAULT_SPEED_LIMIT_BYTES, stallSeconds = exports.DEFAULT_STALL_SECONDS, connectTimeoutSeconds = 30, limitRateBytes, maxTimeSeconds, dumpHeaderPath, ifRange, } = options;
@@ -94,8 +93,12 @@ function buildCurlConfig(options) {
94
93
  lines.push("continue-at = -");
95
94
  if (limitRateBytes !== undefined)
96
95
  lines.push(`limit-rate = ${limitRateBytes}`);
97
- if (dumpHeaderPath)
96
+ if (dumpHeaderPath) {
98
97
  lines.push(`dump-header = "${escapeConfigValue(dumpHeaderPath)}"`);
98
+ // Through a proxy, curl dumps the tunnel's "200 Connection established"
99
+ // block too, and the runner would read it as the origin's answer.
100
+ lines.push("suppress-connect-headers");
101
+ }
99
102
  // Only meaningful alongside `continue-at`, which is what generates the Range
100
103
  // this validates. Harmless without one: a server ignores `If-Range` on an
101
104
  // unranged request.
@@ -256,7 +259,7 @@ const EXIT_CODES = {
256
259
  * "curl exited 22".
257
260
  */
258
261
  function classifyCurlFailure(input) {
259
- const { exitCode, signal, httpCode, stderrTail, cancelled, followRedirects = true } = input;
262
+ const { exitCode, signal, httpCode, stderrTail, cancelled, followRedirects = true, resumed = false } = input;
260
263
  if (cancelled || signal === "SIGTERM" || signal === "SIGINT") {
261
264
  return new errors_1.DownloadError("cancelled", "Download cancelled.", { exitCode, signal });
262
265
  }
@@ -276,6 +279,30 @@ function classifyCurlFailure(input) {
276
279
  // `http_client` names.
277
280
  "http_client", unfollowedRedirectMessage(httpCode, followRedirects), { httpStatus: httpCode, exitCode, signal });
278
281
  }
282
+ // A resumed request answered with a whole body that curl did NOT refuse:
283
+ // measured, it exits 0 when the body's length equals the resume offset
284
+ // ("already downloaded") and leaves the partial as it was. Same meaning as
285
+ // exit 33 — the partial cannot be trusted to be this file — same message.
286
+ // A 2xx only reaches here when the runner refused it as not-the-file (202,
287
+ // 204, 205, or a 206 nobody asked for). Same reason as the 3xx branch above:
288
+ // curl exited 0, so EXIT_CODES has nothing to say about it.
289
+ // A 202 means "not ready yet" whether or not this was a resume, and whether curl
290
+ // exited 0 (took the body) or 33 (refused it as an answer to a range). The
291
+ // runner keeps a resumed partial for it, so it must not read as "cannot resume".
292
+ if (httpCode === 202 && (exitCode === 0 || exitCode === 33)) {
293
+ return new errors_1.DownloadError("pending", unusableSuccessMessage(202), { httpStatus: 202, exitCode, signal });
294
+ }
295
+ if (exitCode === 0 && httpCode !== undefined && httpCode >= 200 && httpCode < 300) {
296
+ if (resumed && httpCode !== 206) {
297
+ return new errors_1.DownloadError(EXIT_CODES[33].code, EXIT_CODES[33].message, { httpStatus: httpCode, exitCode, signal });
298
+ }
299
+ const code = httpCode === 202 ? "pending" : httpCode === 206 ? "integrity" : "http_client";
300
+ return new errors_1.DownloadError(code, unusableSuccessMessage(httpCode), {
301
+ httpStatus: httpCode,
302
+ exitCode,
303
+ signal,
304
+ });
305
+ }
279
306
  if (httpCode !== undefined && httpCode >= 400) {
280
307
  const code = (0, errors_1.classifyHttpStatus)(httpCode);
281
308
  return new errors_1.DownloadError(code, httpErrorMessage(httpCode), { httpStatus: httpCode, exitCode, signal });
@@ -303,6 +330,16 @@ function unfollowedRedirectMessage(status, followRedirects) {
303
330
  return `The server redirected (HTTP ${status}) but redirects are disabled.`;
304
331
  return `The server returned a redirect that could not be followed (HTTP ${status}).`;
305
332
  }
333
+ function unusableSuccessMessage(status) {
334
+ switch (status) {
335
+ case 202:
336
+ return "The server accepted the request but has not produced the file yet (HTTP 202). Try again later.";
337
+ case 206:
338
+ return "The server sent only part of the file (HTTP 206).";
339
+ default:
340
+ return `The server returned no file (HTTP ${status}).`;
341
+ }
342
+ }
306
343
  function httpErrorMessage(status) {
307
344
  switch (status) {
308
345
  case 401:
package/dist/curl.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"curl.js","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"curl.js","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"detach.d.ts","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAiBH,OAAO,EAUL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAClC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACjF;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AA2DD;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAWnC;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAqP1F;AAuBD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,EACpC,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,OAAO,CAAC,CA6FlB;AAoCD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAEpF"}
1
+ {"version":3,"file":"detach.d.ts","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAgBH,OAAO,EAUL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAClC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACjF;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AA2DD;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAWnC;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAoP1F;AAuBD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,EACpC,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,OAAO,CAAC,CA6FlB;AAoCD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAEpF"}
package/dist/detach.js CHANGED
@@ -33,7 +33,6 @@ const node_path_1 = require("node:path");
33
33
  const curl_1 = require("./curl");
34
34
  const errors_1 = require("./errors");
35
35
  const partial_1 = require("./partial");
36
- const paths_1 = require("./paths");
37
36
  const status_1 = require("./status");
38
37
  /**
39
38
  * Every location the runner might live, cheapest first.
@@ -171,36 +170,30 @@ async function startDownload(options) {
171
170
  (0, partial_1.releasePartialClaim)(partPath, claimToken);
172
171
  throw new errors_1.DownloadError("validation", "curl is required to download files but was not found on this system.");
173
172
  }
174
- // The payload carries the URL, so it goes in a 0600 file rather than argv,
175
- // which `ps` exposes to every process on the machine. The runner unlinks it.
176
- const payloadPath = (0, node_path_1.join)(statusDir, `${id}.payload.json`);
177
- try {
178
- (0, paths_1.writeSecretFile)(payloadPath, JSON.stringify({
179
- id,
180
- url,
181
- outputPath,
182
- partPath,
183
- filename,
184
- statusDir,
185
- headers,
186
- expectedBytes,
187
- resume,
188
- followRedirects,
189
- speedLimitBytes,
190
- stallSeconds,
191
- limitRateBytes,
192
- sizeCheck,
193
- claimToken,
194
- meta,
195
- notifyOnFinish,
196
- }));
197
- }
198
- catch (error) {
199
- // Nothing has been spawned, so this claim belongs to nobody.
200
- (0, partial_1.releasePartialClaim)(partPath, claimToken);
201
- throw error;
202
- }
203
- const child = (0, node_child_process_1.spawn)(process.execPath, [runner, payloadPath], {
173
+ // The payload carries the URL and the caller's headers, both potentially
174
+ // bearer credentials, so it travels through the runner's stdin: never argv,
175
+ // which `ps` exposes to every process on the machine, and never a file, which
176
+ // a runner that dies before reading it would leave behind in plain text.
177
+ const payload = JSON.stringify({
178
+ id,
179
+ url,
180
+ outputPath,
181
+ partPath,
182
+ filename,
183
+ statusDir,
184
+ headers,
185
+ expectedBytes,
186
+ resume,
187
+ followRedirects,
188
+ speedLimitBytes,
189
+ stallSeconds,
190
+ limitRateBytes,
191
+ sizeCheck,
192
+ claimToken,
193
+ meta,
194
+ notifyOnFinish,
195
+ });
196
+ const child = (0, node_child_process_1.spawn)(process.execPath, [runner], {
204
197
  // POSIX: makes the child a process-group leader so `kill(-pid)` reaches
205
198
  // curl too, and detaches it from the parent's session so it survives the
206
199
  // command being unloaded.
@@ -209,9 +202,26 @@ async function startDownload(options) {
209
202
  // would flash a black box at the user. `unref()` alone is what lets the
210
203
  // child outlive the parent there, and `taskkill /T` handles the tree.
211
204
  detached: process.platform !== "win32",
212
- stdio: "ignore",
205
+ stdio: ["pipe", "ignore", "ignore"],
213
206
  windowsHide: true,
214
207
  });
208
+ // `end` closes the pipe, which is how the runner knows it has the whole thing.
209
+ // Settles once the last byte is in the kernel's pipe buffer, where it survives
210
+ // this command exiting. A payload bigger than that buffer is only partly there
211
+ // until the runner reads, so `startDownload` must not return before this: a
212
+ // command unloaded with the tail still in Node's memory hands the runner half
213
+ // a JSON document. A runner that dies first closes the pipe (EPIPE), which
214
+ // settles it too; that runner reports through its status, or the spawn `error`
215
+ // handler below does.
216
+ const delivered = new Promise((resolve) => {
217
+ if (!child.stdin)
218
+ return resolve();
219
+ child.stdin.once("finish", resolve);
220
+ child.stdin.once("error", () => resolve());
221
+ child.once("exit", () => resolve());
222
+ child.once("error", () => resolve());
223
+ });
224
+ child.stdin?.end(payload);
215
225
  child.unref();
216
226
  // One shape for both statuses this function may write: the spawn-failure
217
227
  // below and the start-up seed further down. They differ in three fields and
@@ -260,12 +270,6 @@ async function startDownload(options) {
260
270
  // may already have retried and taken a new claim, and releasing that one
261
271
  // would hand the path to a third attempt mid-transfer.
262
272
  (0, partial_1.releasePartialClaim)(partPath, claimToken);
263
- try {
264
- (0, node_fs_1.unlinkSync)(payloadPath);
265
- }
266
- catch {
267
- // The runner never started, so nothing else will remove it.
268
- }
269
273
  const failedPid = child.pid;
270
274
  if (failedPid === undefined)
271
275
  return;
@@ -286,12 +290,6 @@ async function startDownload(options) {
286
290
  const pid = child.pid;
287
291
  if (pid === undefined) {
288
292
  (0, partial_1.releasePartialClaim)(partPath, claimToken);
289
- try {
290
- (0, node_fs_1.unlinkSync)(payloadPath);
291
- }
292
- catch {
293
- // Best effort.
294
- }
295
293
  throw new errors_1.DownloadError("unknown", "Could not start the download process.");
296
294
  }
297
295
  // Hand the claim to the process that will actually hold it. Taken under this
@@ -310,6 +308,7 @@ async function startDownload(options) {
310
308
  // was told, instantly, that it had failed again. The runner writes its own
311
309
  // pid into its first status, so requiring the pid to match is a precise test
312
310
  // for "this attempt, not the last one".
311
+ await delivered;
313
312
  const seeded = await waitForStatus(id, statusDir, 3000, pid);
314
313
  // `spawnFailed` is checked because the seed would otherwise overwrite the
315
314
  // terminal failure the error handler just wrote with a `starting` status that
@@ -1 +1 @@
1
- {"version":3,"file":"detach.js","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detach.js","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -6,7 +6,12 @@
6
6
  * and must not inherit curl semantics it never produces. Anything here has to
7
7
  * make sense for *any* transport.
8
8
  */
9
- export type DownloadErrorCode = "cancelled" | "network" | "dns" | "tls" | "timeout" | "stalled" | "http_client" | "http_server" | "auth" | "forbidden" | "not_found" | "rate_limited" | "disk_full" | "permission" | "url_expired" | "integrity"
9
+ export type DownloadErrorCode = "cancelled" | "network" | "dns" | "tls" | "timeout" | "stalled" | "http_client" | "http_server" | "auth" | "forbidden" | "not_found" | "rate_limited" | "disk_full" | "permission" | "url_expired"
10
+ /**
11
+ * The server accepted the request but has not produced the file yet
12
+ * (HTTP 202). Retryable: the same request succeeds once it is ready.
13
+ */
14
+ | "pending" | "integrity"
10
15
  /** Caller-supplied input was rejected before any request was made. */
11
16
  | "validation"
12
17
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,SAAS,GACT,KAAK,GACL,KAAK,GACL,SAAS,GACT,SAAS,GACT,aAAa,GACb,aAAa,GACb,MAAM,GACN,WAAW,GACX,WAAW,GACX,cAAc,GACd,WAAW,GACX,YAAY,GACZ,aAAa,GACb,WAAW;AACb,sEAAsE;GACpE,YAAY;AACd;;;;;;GAMG;GACD,UAAU;AACZ;;;;GAIG;GACD,aAAa;AACf;;;;GAIG;GACD,eAAe,GACf,SAAS,CAAC;AAEd;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAyBD,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;gBAEb,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,mBAAwB;CAYvF;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CASpE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,SAAS,GACT,KAAK,GACL,KAAK,GACL,SAAS,GACT,SAAS,GACT,aAAa,GACb,aAAa,GACb,MAAM,GACN,WAAW,GACX,WAAW,GACX,cAAc,GACd,WAAW,GACX,YAAY,GACZ,aAAa;AACf;;;GAGG;GACD,SAAS,GACT,WAAW;AACb,sEAAsE;GACpE,YAAY;AACd;;;;;;GAMG;GACD,UAAU;AACZ;;;;GAIG;GACD,aAAa;AACf;;;;GAIG;GACD,eAAe,GACf,SAAS,CAAC;AAEd;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA0BD,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;gBAEb,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,mBAAwB;CAYvF;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CASpE"}
package/dist/errors.js CHANGED
@@ -28,6 +28,7 @@ const RETRYABLE = new Set([
28
28
  "http_server",
29
29
  "rate_limited",
30
30
  "url_expired",
31
+ "pending",
31
32
  // Bytes are already on disk, so a retry resumes rather than restarting.
32
33
  "interrupted",
33
34
  // `runner_failed` is deliberately absent: the helper crashed on startup, and
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AA2GH,0CAEC;AAWD,gDASC;AAtED;;;;;;;GAOG;AACH,MAAM,SAAS,GAAmC,IAAI,GAAG,CAAoB;IAC3E,SAAS;IACT,KAAK;IACL,KAAK;IACL,SAAS;IACT,SAAS;IACT,aAAa;IACb,cAAc;IACd,aAAa;IACb,wEAAwE;IACxE,aAAa;IACb,6EAA6E;IAC7E,yEAAyE;CAC1E,CAAC,CAAC;AAEH,MAAa,aAAc,SAAQ,KAAK;IAUtC,YAAY,IAAuB,EAAE,OAAe,EAAE,SAA8B,EAAE;QACpF,gFAAgF;QAChF,gFAAgF;QAChF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACF;AAtBD,sCAsBC;AAED,yDAAyD;AACzD,SAAgB,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,aAAa,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,aAAa,CAAC;IACzC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,cAAc,CAAC;IAC1C,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,aAAa,CAAC;IACxC,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,aAAa,CAAC;IACxC,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAiHH,0CAEC;AAWD,gDASC;AAvED;;;;;;;GAOG;AACH,MAAM,SAAS,GAAmC,IAAI,GAAG,CAAoB;IAC3E,SAAS;IACT,KAAK;IACL,KAAK;IACL,SAAS;IACT,SAAS;IACT,aAAa;IACb,cAAc;IACd,aAAa;IACb,SAAS;IACT,wEAAwE;IACxE,aAAa;IACb,6EAA6E;IAC7E,yEAAyE;CAC1E,CAAC,CAAC;AAEH,MAAa,aAAc,SAAQ,KAAK;IAUtC,YAAY,IAAuB,EAAE,OAAe,EAAE,SAA8B,EAAE;QACpF,gFAAgF;QAChF,gFAAgF;QAChF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACF;AAtBD,sCAsBC;AAED,yDAAyD;AACzD,SAAgB,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,aAAa,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,aAAa,CAAC;IACzC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,cAAc,CAAC;IAC1C,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,aAAa,CAAC;IACxC,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,aAAa,CAAC;IACxC,OAAO,SAAS,CAAC;AACnB,CAAC"}
package/dist/partial.d.ts CHANGED
@@ -123,6 +123,10 @@ export declare function writePartialState(partPath: string, state: PartialState)
123
123
  * could not be persisted, which is a worse failure than it looks — the caller
124
124
  * then has a contaminated file that nothing on disk warns about, and must say
125
125
  * so in the status instead.
126
+ *
127
+ * On that failure the existing state is removed: it vouches for the bytes as
128
+ * they WERE, and with no state at all `mayResume` refuses. A full disk refuses
129
+ * the write but still allows the unlink.
126
130
  */
127
131
  export declare function markPartialUnsafe(partPath: string): boolean;
128
132
  export declare function clearPartialState(partPath: string): void;
@@ -190,4 +194,26 @@ export declare function parseValidators(dump: string): {
190
194
  etag?: string;
191
195
  lastModified?: string;
192
196
  };
197
+ /**
198
+ * The status of the LAST response block in a curl header dump, and whether that
199
+ * block's headers are complete (terminated by the blank line), or undefined when
200
+ * no response has been dumped yet.
201
+ *
202
+ * The runner's close handler has curl's own `http_code`; a cancellation, and the
203
+ * meter watching a transfer still in flight, have only this.
204
+ */
205
+ export declare function parseFinalStatus(dump: string): {
206
+ status: number;
207
+ complete: boolean;
208
+ } | undefined;
209
+ /**
210
+ * The complete length a 416 reported, from the LAST response block's
211
+ * `Content-Range: bytes * /N` (RFC 9110 §14.4), or undefined if it gave none.
212
+ *
213
+ * This is how a resumed request learns the partial is already the whole file:
214
+ * asking for the range that starts at byte N of an N-byte resource is
215
+ * unsatisfiable by definition. Same boundary rule as `parseValidators` — an
216
+ * earlier hop's header never describes the final response.
217
+ */
218
+ export declare function parseUnsatisfiedRangeTotal(dump: string): number | undefined;
193
219
  //# sourceMappingURL=partial.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"partial.d.ts","sourceRoot":"","sources":["../src/partial.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAmBH,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,CAAC,EAAE,CAAC,CAAC;IACL;;;;;OAKG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sFAAsF;IACtF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,mFAAmF;AACnF,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASvD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAkB/E;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAc3E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAehF;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAMxD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAyCtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAoBzG;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAU9E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,IAAI,CAWzF;AAED,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAG7E;AA0ED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAoCtF"}
1
+ {"version":3,"file":"partial.d.ts","sourceRoot":"","sources":["../src/partial.ts"],"names":[],"mappings":"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"}