@molecule/api-code-sandbox-flyio 1.2.3 → 1.2.4

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.
Files changed (2) hide show
  1. package/README.md +12 -1
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -3,7 +3,7 @@ AUTO-GENERATED — DO NOT EDIT THIS FILE.
3
3
  Generated by `mlcl sync-docs` from the package's src/index.ts JSDoc + mlcl/registry.json.
4
4
  Edits here are overwritten on the next commit (molecule's pre-commit hook regenerates).
5
5
  To change this document, edit the module-level JSDoc in src/index.ts.
6
- Generated: 2026-08-16T14:04:35.624Z
6
+ Generated: 2026-10-08T03:25:09.946Z
7
7
  -->
8
8
 
9
9
  # @molecule/api-code-sandbox-flyio
@@ -2145,6 +2145,17 @@ refused, a leading `/` stripped, a write through a symlink refused, and
2145
2145
  setuid/setgid dropped by `--no-same-permissions` — were verified by running
2146
2146
  GNU tar 1.35 against crafted archives rather than inferred from its manual.
2147
2147
 
2148
+ **Absence vs failure: `get()` only answers `null` for a REAL absence.**
2149
+ `get()` (and each read shaped like it — `list()`, `find()`, `getTemplate()`)
2150
+ reserves `null`/`[]` for a positive not-found answer — Fly answered 404 for
2151
+ the app or the Machine — and THROWS for every other failure: 5xx, 429 past
2152
+ the client's retries, timeouts, network errors. A caller that reconciles
2153
+ from `null` (clearing sandbox ids, reaping Machines) must never read a
2154
+ transient Fly API blip as "the sandbox does not exist"; treat a rejection
2155
+ from these methods as "unknown", never as "gone". The thrown error carries
2156
+ the underlying `FlyApiError` (HTTP status, or 0 for a transport failure) as
2157
+ its `cause`.
2158
+
2148
2159
  **`sleep()` is suspend, not stop — that is the point of this bond.**
2149
2160
  `sleep()` calls `POST /v1/apps/{app}/machines/{id}/suspend`, which "uses
2150
2161
  Firecracker snapshots to capture the entire VM state: CPU registers, memory
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@molecule/api-code-sandbox-flyio",
3
- "version": "1.2.3",
3
+ "version": "1.2.4",
4
4
  "description": "Fly.io Machines (Firecracker microVM) code sandbox provider",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -31,7 +31,7 @@
31
31
  "license": "Apache-2.0",
32
32
  "devDependencies": {
33
33
  "@molecule/api-bond": "1.0.2",
34
- "@molecule/api-code-sandbox": "1.2.1",
34
+ "@molecule/api-code-sandbox": "1.3.0",
35
35
  "@types/node": "26.1.2",
36
36
  "typescript": "6.0.3",
37
37
  "vitest": "4.1.11"