@gea-ai/cli-darwin-arm64 0.1.260901-alpha.0 → 0.1.260906-alpha.0

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/gea-darwin-arm64 CHANGED
Binary file
Binary file
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "directory": "packages/gea-cli"
13
13
  },
14
14
  "type": "module",
15
- "version": "0.1.260901-alpha.0",
15
+ "version": "0.1.260906-alpha.0",
16
16
  "bin": {
17
17
  "gea-internal-darwin-arm64": "gea-darwin-arm64",
18
18
  "gea-worker-runtime-darwin-arm64": "gea-worker-runtime"
@@ -1,6 +1,6 @@
1
1
  # Filesystem System Worker
2
2
 
3
- Last verified: 2026-08-24
3
+ Last verified: 2026-09-05
4
4
 
5
5
  This module is the production `FilesystemObject` for DO-based Agents on the
6
6
  unified Worker Durable Object substrate. It is for Worker Runtime and Agent
@@ -68,6 +68,16 @@ object-store credentials nor host paths enter JavaScript or the sandbox.
68
68
 
69
69
  ## Extending the module
70
70
 
71
+ Storage maintenance calls the authenticated `inspectStorage` operation. It
72
+ returns inline file bytes, received checkpoint image/manifest bytes (including
73
+ retained and pending uploads), and mount file bytes separately. Reserved upload
74
+ capacity is excluded; replay does not count an existing blob twice, and chunk
75
+ garbage collection removes its accounted bytes. `itemCount` counts inline
76
+ files, non-empty checkpoint uploads, and mount files. This is stored content
77
+ accounting: it excludes SQLite metadata, LTX replication overhead, and local
78
+ runtime caches, and does not estimate the unpacked checkpoint tree size.
79
+ The existing `inspect` shape and its inline-only `logicalBytes` are unchanged.
80
+
71
81
  Keep revision and idempotency decisions inside one `ctx.storage` transaction.
72
82
  Prepare bounded content and digests before the synchronous transaction, then
73
83
  commit metadata, chunk ownership, retention, and mutation replay together. Add
@@ -76,6 +86,9 @@ binding.
76
86
 
77
87
  ## Changelog
78
88
 
89
+ [2026-09-05] #local — Added storage inspection for inline files, checkpoint
90
+ uploads, and mount contents so SDK filesystem accounting measures its authority.
91
+
79
92
  [2026-08-24] local — Cut DO-based Agent Computer HTTP traffic to the System
80
93
  Worker and added checkpoint chunking, streaming digest validation, revisioned
81
94
  commit/replay, two-checkpoint retention, and read-only mount persistence.
@@ -205,6 +205,38 @@ export class FilesystemObject extends DurableObject {
205
205
  };
206
206
  }
207
207
 
208
+ #inspectStorage() {
209
+ const storage = this.ctx.storage;
210
+ const meta = readMeta(storage);
211
+ const checkpoints = storage.sql
212
+ .exec(
213
+ `SELECT COALESCE(SUM(received_bytes), 0) AS bytes,
214
+ COUNT(CASE WHEN received_bytes > 0 THEN 1 END) AS item_count
215
+ FROM filesystem_checkpoint_uploads`,
216
+ )
217
+ .one();
218
+ const mounts = storage.sql
219
+ .exec(
220
+ `SELECT COALESCE(SUM(size_bytes), 0) AS bytes,
221
+ COUNT(*) AS item_count
222
+ FROM filesystem_mount_files`,
223
+ )
224
+ .one();
225
+ const files = storage.sql
226
+ .exec(
227
+ "SELECT COUNT(*) AS item_count FROM filesystem_entries WHERE kind = 'file'",
228
+ )
229
+ .one();
230
+ return {
231
+ checkpointBytes: checkpoints.bytes,
232
+ checkpointRevision: readCheckpointRevision(storage),
233
+ inlineBytes: meta.logical_bytes,
234
+ itemCount: files.item_count + checkpoints.item_count + mounts.item_count,
235
+ mountBytes: mounts.bytes,
236
+ revision: meta.revision,
237
+ };
238
+ }
239
+
208
240
  async #applyBatch(input) {
209
241
  const batch = parseBatch(input);
210
242
  const preparedOperations = [];
@@ -419,6 +451,9 @@ export class FilesystemObject extends DurableObject {
419
451
  case "inspect":
420
452
  result = this.#inspect();
421
453
  break;
454
+ case "inspectStorage":
455
+ result = this.#inspectStorage();
456
+ break;
422
457
  case "inspectCheckpoints":
423
458
  result = this.#inspectCheckpoints();
424
459
  break;