Skip to content

fix(runtime-core): require @bare-ts/lib 0.4.1 so large requests reach the sidecar - #2075

Open
eersnington wants to merge 1 commit into
mainfrom
fix/bare-ts-large-frames
Open

eersnington wants to merge 1 commit into
mainfrom
fix/bare-ts-large-frames

Conversation

@eersnington

Copy link
Copy Markdown
Member

Any client request larger than about 16 KiB made the sidecar exit with ordinary request ingress closed. Examples: filesystem.writeFile of 16 KiB or more, or creating a VM from a large snapshot.

Client @bare-ts/lib 16 KiB writeFile
This repo (lockfile pins 0.4.0) 0.4.0 sidecar exits
Published @rivet-dev/agentos-core@0.4.3, fresh install 0.4.1 works
Same published install, forced to 0.4.0 0.4.0 sidecar exits
  • @bare-ts/lib 0.4.0 corrupts frames larger than its encoder buffer. 0.4.1 fixes it.
  • runtime-core, core, and agentos-toolchain now require ^0.4.1. The lockfile changes only that entry.
  • Fresh npm installs already resolved 0.4.1, so the bug hit this repo's tests and CI, and any downstream lockfile that pinned 0.4.0. That is why no CI test caught large writes.
  • New test: a 256 KiB file round-trips through a real sidecar.

… the sidecar

@bare-ts/lib 0.4.0 corrupts any encoded frame larger than its 16 KiB buffer, so a writeFile of 16 KiB or more, or a large VM create config, made the sidecar exit with "ordinary request ingress closed". Published installs resolve ^0.4.0 to 0.4.1 and work, but this repo's lockfile, CI, and any downstream lockfile that pinned 0.4.0 did not.
@github-actions

Copy link
Copy Markdown
Contributor

📟 Pip-Boy · 8b5b738

📦 Packages · fresh npm install resolve, no lockfile · this PR vs base

No notable install size, dependency, or entrypoint changes across 6 packages.

All 6 packages · linux-x64-gnu
package (linux-x64-gnu) @latest base this PR Δ vs base packages
@rivet-dev/agentos-core 458.2 MB 325.9 MB 325.9 MB 0 10 (0)
@rivet-dev/agentos-node-pty 7.6 KB 18.0 KB 18.0 KB 0 1 (0)
@rivet-dev/agentos-posix 253.6 MB 253.6 MB 253.6 MB 0 7 (0)
@rivet-dev/agentos-runtime-core 253.6 MB 253.6 MB 253.6 MB 0 6 (0)
@rivet-dev/agentos-sandbox 495.5 MB 363.5 MB 363.5 MB 0 85 (0)
@rivet-dev/agentos-toolchain 130.8 KB 141.2 KB 141.2 KB 0 2 (0)

🧹 Rust dependencies

Skipped: this PR doesn't change any Rust code or dependencies.

🦀 Binaries

Skipped: this PR doesn't change any Rust code.

⏱ Timing

job wall time slowest step
zizmor 9s Set up job · 2s
changes 25s checkout · 23s
footprint 2m14s Pack this commit · 43s
⏭ self-test — skipped
⏭ native · ${{ matrix.platform }} — skipped
⏭ hygiene — skipped
report 17s checkout · 3s
🔭 Full CI trace for this commit

One OpenTelemetry trace of CI and Pip-Boy for 8b5b738: every job and step, with the sizes above attached. Run after CI finishes.

pnpm install --frozen-lockfile --filter 'pipboy...'
pnpm --filter pipboy pipboy trace --sha 8b5b738072c90819cad728d54e42fb4745965fb2

Add --otlp <url> to send it to any OTLP/HTTP collector.

Agent instruction: From a rivet-dev/agentos checkout, run the commands above, then read the trace file the last command prints. List the slowest jobs and steps and explain where CI time went.

@railway-app

railway-app Bot commented Oct 21, 2026

Copy link
Copy Markdown

This PR was not deployed automatically as @eersnington does not have access to the Railway project.

In order to get automatic PR deploys, please add @eersnington to your workspace on Railway.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant