Skip to content

Commit 9c96ebd

Browse files
authored
Merge branch 'llm' into dependabot/github_actions/actions/checkout-6.0.2
2 parents a99e426 + 6da436b commit 9c96ebd

1,083 files changed

Lines changed: 126787 additions & 27653 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.changeset/add-endo-hex.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

.changeset/add-endo-tar.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@endo/tar': minor
3+
---
4+
5+
Add `@endo/tar`, a minimal, portable read-only tar archive parser. Mirrors `@endo/zip` as the tar-side counterpart, extracted from the daemon's Git-tree archiving path, and reads the entries `git archive --format=tar` emits (regular files, directories, symlinks, and pax extended headers).
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@endo/agent-tools': minor
3+
---
4+
5+
Name each git tool's parameters from its method instead of the generic `arg0`/`arg1` convention. `gitToolSchemas` now declares real, declarative property names that read as an LLM-facing signature (`commit``message`, `show``ref`, `createBranch``name`/`options`, `switchBranch``branch`, `log`/`diff``options`), and `makeTool` marshals the named-args record into positionals by each schema's declared `parameters.properties` order and `required` set rather than the hardcoded `argN` keys. Arity, required-key validation, and the schema-to-guard parity are preserved.

.changeset/amaro.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/base64-harden.md

Lines changed: 0 additions & 13 deletions
This file was deleted.

.changeset/base64-native-fallthrough.md

Lines changed: 0 additions & 11 deletions
This file was deleted.

.changeset/bundle-source-cache-source-maps-types.md

Lines changed: 0 additions & 11 deletions
This file was deleted.

.changeset/clear-icons-find.md

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@endo/daemon': major
3+
---
4+
5+
Specialize `EndoMount` as a directory, separate the file kind, and reshape mount entries as pure values.
6+
7+
- `EndoMountEntry` is now a pure value with no observational or handle-minting authority. Its surface is `segments()`, `displayPath()`, and `child(name)`; the prior entry methods `openDirectory`, `openFile`, `createDirectory`, and `createFile` are removed. Consumers that want a live handle on a child go through the parent mount: `mount.lookup(name)` returns the child `EndoMount` (for directories) or `EndoMountFile` (for files). `has`, `stat`, and `lookup` accept either a path string or an entry value.
8+
- `EndoMount.makeDirectory(path)` returns `Promise<EndoMount>` instead of `Promise<void>`; the new directory is the resolved value. `EndoMount.makeFile(path, content?)` is added and returns `Promise<void>`; `content` is `string | undefined` (binary content is supplied through `write(path, readableBlob)` rather than `makeFile`, because mutable typed arrays do not cross CapTP). Callers that relied on `makeDirectory` resolving to `undefined` and then re-looked-up the child should now use the resolved mount directly.
9+
- `EndoMount.readOnly()` returns a structural `ReadableTree` view rather than another `EndoMount`; `EndoMountFile.readOnly()` returns a structural `ReadableBlob` view.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
'@endo/daemon': patch
3+
---
4+
5+
Fix three filesystem bugs in `EndoMount`.
6+
7+
- `EndoMount.write()` (and therefore `copy()`) opened the destination
8+
writer directly on the target, truncating it before the source was
9+
read. When the source resolved to the same file as the target — a
10+
`copy(name, name)` or `write(name, lookup(name))` — the file was
11+
emptied and the now-empty content streamed back, destroying the
12+
source. The write now streams into a sibling scratch file and renames
13+
it onto the target only after the full source has been read.
14+
- `EndoMount.copy()` into a destination strictly below the source (e.g.
15+
`copy(['dir'], ['dir', 'copy'])`) recursed unboundedly because the
16+
destination was created before the live source listing was read. Such
17+
a copy is now rejected up front with a descendant-path guard.
18+
- The XS-backed `makeXsFilePowers()` omitted `appendFileText`,
19+
`statPath`, `pathIdentity`, and `readFileBytes`, so
20+
`EndoMountFile.append()` and the `stat()` methods threw under the XS
21+
supervisor. The methods are now implemented across all three layers
22+
(the JS factory, the XS host aliases, and the Rust host functions).

0 commit comments

Comments
 (0)