Skip to content

chore(evi): upgrade eve to 0.74.0 - #791

Open
evlogai[bot] wants to merge 1 commit into
mainfrom
deps/eve-0.74.0
Open

evlogai[bot] wants to merge 1 commit into
mainfrom
deps/eve-0.74.0

Conversation

@evlogai

@evlogai evlogai Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

What changed

apps/evi moves eve from 0.71.0 to 0.74.0, picking up 0.72.0, 0.72.1, 0.73.0 and 0.74.0, plus the satellite versions the new tool contract forces:

  • @github-tools/eve-extension 0.8.0 → 0.8.1 (rebuilt upstream against eve 0.72.1).
  • Vendored @agent-browser/eve tarball rebuilt against eve 0.74.0: upstream still publishes only a build against eve 0.57 (tool contract 44; npm 0.38.2), and eve 0.74.0 drops every contract below 76, so vendoring stays and the tarball is rebuilt from the same upstream commit with its build pinned to eve 0.74.0.
  • pnpm-workspace.yaml override ai: ^7.0.127 → ^7.0.128: eve 0.72.0 follows the AI SDK evaluation→decisions rename, and the extension's experimental_decide import does not resolve against 7.0.127. The override is what decides the installed copy tree-wide, so apps/evi's own range move alone was not enough. Lockfile resolves ai@7.0.133.

Nothing in the app used the other breaking surfaces: no evaluate/eve/ai imports, no defineInstrumentation action.* handlers (the evlog integration and agent/instrumentation.ts use step.started, untouched), no eve/self-modification mount, and nothing reads Nitro's dropped assets:server entry.

Adaptation: photon prompt handlers

eve 0.73.0 (17d5b11) spans the built-in prompt queue across input.requested, input.resolved and approval.settled on Chat SDK channels, and says a channel that renders prompts itself must make the other two no-ops. agent/channels/photon.ts renders prompts itself, so it gains both:

       await channel.thread.post(body)
     },
+    // eve 0.73 spans the built-in prompt queue across `input.requested`,
+    // `input.resolved` and `approval.settled` on Chat SDK channels. Photon
+    // renders prompts itself from `input.requested`, so the other two are
+    // explicit no-ops; otherwise the built-in handlers post prompts twice
+    // and stop posting later ones.
+    async 'input.resolved'() {},
+    async 'approval.settled'() {},

Behavior notes checked, no action: mcpChannel here uses none of the opt-in 0.73 surfaces (no tools/skills/trustedForwarders), and schedules with no explicit provider now default to Vercel Schedules in production, which is the backend the notes already document (docs/notes.md, "Vercel evaluates schedule cron in UTC").

Why the vendored extensions mount on 0.74.0

eve build fails its template initialization on this host (no /dev/kvm, no Docker), so the compiler-time manifest check was run directly against EXTENSION_CAPABILITY_CONTRACTS in eve@0.74.0 (dist/src/compiler/extension-compatibility.js), the table the build consults:

Manifest requires eve 0.74.0 supported
vendored agent-browser-eve-0.38.2-eve0.74.0.tgz: extension 1, tool 78, instructions 2, config 1 tool 78, instructions [1,2], extension [1], config [1]
@github-tools/eve-extension@0.8.1: extension 1, tool 76, dynamicTool 72, config 1 tool supports 76, dynamicTool supports 72, extension [1], config [1]

The tarball was rebuilt in the sandbox from upstream commit 15dd3b4e6ee21c26b7b5f8048bbe73f31182803c with the repo's patch (updated for the eve 0.74.0 pin and ai@7.0.128): eve extension build emits tool contract 78, tsc passes, and the package's own 42 tests pass. Its provenance and reproduce steps are updated in apps/evi/vendor/README.md.

Checks

From /workspace/repo on 5fd4a49, with the remote cache connected:

  • pnpm run lint: 25/25 tasks successful.
  • pnpm run typecheck: 30/30 tasks successful.
  • apps/evi pnpm test: 43 files, 305 tests passed; the rebuilt extension's own node --test suite: 42/42.
  • apps/evi pnpm build (eve build): the authored module graph evaluates and the compiler accepts both extension manifests, then stops at sandbox template initialization, exit 1: microsandbox requires /dev/kvm, unavailable in this sandbox (same limitation as the 0.71.0 upgrade, chore(evi): upgrade eve to 0.71.0 #777). The manifest table above is the substitute; the deployed build on Vercel uses the Vercel sandbox provider and runs this for real.

No changeset: the change is confined to apps/evi (plus the workspace ai override and lockfile it requires).

ELI5

Evi runs on eve, a framework that moves independently upstream. This pull request moves it three releases forward. The framework changed the "contract" its extensions must speak, so the two extensions get new builds that speak the new contract (one comes from upstream, the other had to be rebuilt locally because upstream has not caught up yet). One small behavior fix: iMessage prompts are rendered by the app itself, and the new version needs two extra empty handlers so prompts are not posted twice. All tests pass; the one check that needs special hardware (a sandbox with virtualization) cannot run here and was verified by hand against the contract table instead.

eve 0.71.0 -> 0.74.0, with the satellite versions the new tool contract
forces: @github-tools/eve-extension 0.8.0 -> 0.8.1 (built against eve
0.72.1, tool contract 76), the vendored @agent-browser/eve tarball
rebuilt from the same upstream source against eve 0.74.0 (tool contract
78), and the workspace `ai` override to ^7.0.128 so `experimental_decide`
resolves. The photon channel gets the explicit `input.resolved` /
`approval.settled` no-ops the 0.73.0 prompt queue requires for a channel
that renders prompts itself.
@vercel

vercel Bot commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
evi Ready Ready Preview Oct 8, 2026 7:27am UTC
evlog-docs Ready Ready Preview, v0 Oct 8, 2026 7:27am UTC
evlog-render-lab Ready Ready Preview Oct 8, 2026 7:27am UTC
evlog-telemetry Ready Ready Preview Oct 8, 2026 7:27am UTC
just-use-evlog Ready Ready Preview Oct 8, 2026 7:27am UTC

Request Review

@coderabbitai

coderabbitai Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: b9038ce4-e351-455e-80fc-d35b419dca15

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Thank you for following the naming conventions! 🙏

@pkg-pr-new

pkg-pr-new Bot commented Oct 8, 2026

Copy link
Copy Markdown
@evlog/cli

npm i https://pkg.pr.new/@evlog/cli@791

evlog

npm i https://pkg.pr.new/evlog@791

@evlog/nuxthub

npm i https://pkg.pr.new/@evlog/nuxthub@791

@evlog/signals

npm i https://pkg.pr.new/@evlog/signals@791

@evlog/telemetry

npm i https://pkg.pr.new/@evlog/telemetry@791

commit: 5fd4a49

This branch was successfully deployed

5 active deployments
Preview – evlog-docs — 5fd4a499 Deployed Oct 8, 2026 by vercel[bot]
Preview – evi — 5fd4a499 Deployed Oct 8, 2026 by vercel[bot]
Preview – just-use-evlog — 5fd4a499 Deployed Oct 8, 2026 by vercel[bot]
Preview – evlog-telemetry — 5fd4a499 Deployed Oct 8, 2026 by vercel[bot]
Preview – evlog-render-lab — 5fd4a499 Deployed Oct 8, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants