Skip to content

fix(eve): preserve fresh reads during empty-response recovery - #3568

Closed
JonasLaux wants to merge 2 commits into
vercel:mainfrom
JonasLaux:fix/empty-response-fresh-tools
Closed

JonasLaux wants to merge 2 commits into
vercel:mainfrom
JonasLaux:fix/empty-response-fresh-tools

Conversation

@JonasLaux

@JonasLaux JonasLaux commented Sep 21, 2026 •

Copy link
Copy Markdown

Summary

eve's empty-response recovery tells the model to answer from existing tool results and not call tools again. Those results may belong to an earlier request, so the instruction can prevent the current request from getting fresh information. Update the recovery instruction to allow needed tool calls while reusing relevant results and discouraging duplicate completed actions. The single retry, tool permissions, approval rules, conditional delivery, and transient recovery message remain unchanged.

Related recovery discussions: #2388, #2386, #3131. Maintainer agreement required by CONTRIBUTING.md is still pending.

Validation

  • Harness suites: 962 unit tests and 71 integration tests passed, including 11 empty-response recovery tests. The new regression fails with the original prompt and passes with the fix; it checks retry messages, available tools, and session history using a mocked model, not real-model compliance.
  • Passed: eve package build/typecheck, changed-file lint/format checks, pnpm docs:check, pnpm guard:invariants, pnpm check:deps, and git diff --check.
  • Workspace lint: 0 errors, 18 warnings in unchanged files.
  • Full unit validation: 9,048 passed, one skipped, one failed in the eve suite because the isolated environment blocks a localhost listener. This run used turbo run test:unit --env-mode=loose --concurrency=2 after the initial pnpm test attempt lost the sandbox's temporary-directory setting.
  • Workspace typecheck stopped at an unchanged fixture's network-dependent model-metadata fetch. Full workspace integration and live-provider E2E validation remain incomplete.
  • Fork CI runs require maintainer approval; Vercel previews require separate team authorization.

Checklist

  • This change was requested or approved by a maintainer
  • I ran the relevant checks from CONTRIBUTING.md
  • I added tests and documentation where relevant
  • I added a changeset if this touches the published eve package
  • DCO sign-off passes for every commit (git commit --signoff)

Signed-off-by: Jonas Laux <jonas@dogsledai.com>
@vercel

vercel Bot commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

@JonasLaux is attempting to deploy a commit to the Vercel Team on Vercel.

A member of the Team first needs to authorize it.

Signed-off-by: Jonas Laux <jonas@dogsledai.com>
@JonasLaux

Copy link
Copy Markdown
Author

Closing in favor of #3620 to follow the issue-first contribution process. The issue includes a minimal reproduction on eve 0.63.0; this PR remains available as implementation reference.

@JonasLaux JonasLaux closed this Sep 22, 2026
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