Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .changeset/eventstream-iterator-cancel.md

This file was deleted.

10 changes: 0 additions & 10 deletions .changeset/relay-sandbox-hardening.md

This file was deleted.

8 changes: 8 additions & 0 deletions packages/ai-autopilot/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# @gemstack/ai-autopilot

## 0.9.1

### Patch Changes

- 734da1a: fix(ai-autopilot): EventStream iterators are now cancellable

A consumer's async iterator gained a `return()` that drops its waiter from the stream and settles any pending `next()`. Previously a consumer that stopped iterating (e.g. a disconnected SSE client) left its waiter registered until the next `push`/`close`, so many short-lived consumers on an idle stream leaked. Live iteration and history replay are unchanged.

## 0.9.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/ai-autopilot/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@gemstack/ai-autopilot",
"version": "0.9.0",
"version": "0.9.1",
"description": "Orchestration for @gemstack/ai-sdk agents: a Supervisor that plans, dispatches subagents (bounded concurrency + budget guardrails), and synthesizes the result.",
"keywords": [
"ai",
Expand Down
14 changes: 14 additions & 0 deletions packages/framework/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# @gemstack/framework

## 0.8.1

### Patch Changes

- 734da1a: fix(framework): harden the run relay and workspace sandbox against resource exhaustion

- The relay now caps how many runs it holds in memory and evicts the least-recently-used one on overflow. Because it is unauthenticated, an anonymous request to `/r/<id>/…` could previously create per-run state that was never freed; run creation is now bounded (`maxRuns`, default 200).
- A disconnected SSE viewer now cancels its stream iterator, releasing its waiter immediately instead of lingering on the stream until the next event (which may never arrive for an idle run).
- `snapshotWorkspace` checks a file's size before reading it, so a large asset in the workspace is skipped without ever being loaded into memory during a `--sandbox docker` sync.
- `relayPublisher`'s POST has a timeout, so a relay that accepts a connection but never responds can no longer hang the CLI on exit (`flush()`).

- Updated dependencies [734da1a]
- @gemstack/ai-autopilot@0.9.1

## 0.8.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/framework/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@gemstack/framework",
"version": "0.8.0",
"version": "0.8.1",
"description": "The (AI) Framework: turnkey, zero-config AI orchestration that wraps a coding-agent CLI (Claude Code) as a black box and takes you from an idea to a running app. Vite for AI.",
"keywords": [
"ai",
Expand Down