Skip to content

fix(eve): workflow attributes - seed tags at run creation#278

Merged
AndrewBarba merged 1 commit into
mainfrom
barba/fix-turbo-attribute-race
Jun 25, 2026
Merged

fix(eve): workflow attributes - seed tags at run creation#278
AndrewBarba merged 1 commit into
mainfrom
barba/fix-turbo-attribute-race

Conversation

@AndrewBarba

@AndrewBarba AndrewBarba commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • seed session, subagent, and turn attributes atomically when their Workflow runs are created
  • remove initial attribute writes from first-step bodies
  • share attribute normalization between start-time seeds and later step-side updates

Root cause

Workflow turbo mode starts the first step body before the backgrounded run_started barrier settles. eve wrote lineage attributes at the beginning of that body, so the Vercel world could receive the attribute event before the run existed and return Workflow run ... not found.

Start-time attributes are part of run_created and are explicitly preserved by turbo's synthesized run state, avoiding the race without disabling turbo.

Impact

New session, subagent, and turn runs retain their $eve.* dashboard attributes without emitting the warn-once setEveAttributes error. Later model and token usage updates remain step-side.

Validation

  • pnpm lint
  • pnpm fmt
  • pnpm guard:invariants
  • pnpm typecheck
  • pnpm build
  • pnpm test:unit (4,010 assertions passed; one skipped)
  • pnpm test:integration (371 passed)
  • targeted scenario rerun: app-runtime-dependencies.scenario.test.ts (9 passed)
  • full scenario suite reached 260 passed / 15 skipped; two build-fixture tests raced temporary dist rebuilds and both passed in the isolated rerun

@vercel

vercel Bot commented Jun 25, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
eve-docs Ready Ready Preview, Comment, Open in v0 Jun 25, 2026 4:53am

@AndrewBarba AndrewBarba marked this pull request as ready for review June 25, 2026 04:51
Signed-off-by: Andrew Barba <barba@hey.com>
@github-actions

Copy link
Copy Markdown
Contributor

Bundle + Package Summary: apps/fixtures/weather-agent

Key takeaways

  • No notable deltas vs main (6283eb5).

Delta vs main (6283eb5)

Area Metric Baseline Current Delta
Package Packed tarball 3.39 MB 3.38 MB -498 B ✅
Package Unpacked publish size 12.27 MB 12.27 MB -1.4 kB ✅
Package Installed footprint 52.12 MB 52.12 MB -1.4 kB ✅
Package Published files 2301 2303 +2
Package Installed files 5506 5508 +2
Runtime Unique function payloads 2 2 0
Runtime Total function bytes 9.61 MB 9.61 MB +2.9 kB ⚠️
Runtime Public routes 9 9 0
Changed function payloads vs main (6283eb5) (2)
Function Status Baseline Current Delta Route changes
functions/__server.func changed 3.98 MB 3.98 MB +2.9 kB ⚠️ none
functions/.well-known/workflow/v1/flow.func changed 5.63 MB 5.63 MB +1 B ⚠️ none
Build Metadata
  • Preset: vercel
  • Nitro: nitro@3.0.260610-beta
  • Output directory: apps/fixtures/weather-agent/.vercel/output
  • Build metadata timestamp: 2026-06-25T04:53:59.553Z
  • Route aliases: 9 public, 1 internal (10 total aliases)
  • Vercel routes in config: 10
  • Severity legend: 🔴 dominant/large, 🟠 notable, 🟡 watch, ⚪ small
Package Drill-Down

Package Details

  • Package: eve@0.13.7
  • Package directory: packages/eve
  • Tarball: 3.38 MB (eve-0.13.7.tgz)
  • Unpacked payload: 12.27 MB across 2303 published files
  • Installed footprint: 52.12 MB across 5508 installed files
  • Installed root package: 10.99 MB
  • Installed dependencies: 41.13 MB
  • Runtime dependencies: 1
  • Peer dependencies: 12 (11 optional)

Installed footprint is measured from an isolated temporary npm install of the packed tarball.

Heavy installed dependencies

  • @rolldown/binding-linux-x64-gnu: 20.26 MB (38.9%)
  • eve: 10.99 MB (21.1%)
  • ai: 6.20 MB (11.9%)
  • zod: 5.04 MB (9.7%)
  • nitro: 2.41 MB (4.6%)
Publish payload breakdown
Published file size
🟠 dist/src/compiled/experimental-ai-sdk-code-mo... [####....................] 1.51 MB 12.3%
🟡 dist/src/compiled/@workflow/core/runtime.js      [##......................] 788.4 kB 6.4%
🟡 dist/src/compiled/@vercel/sandbox/index.js       [##......................] 632.0 kB 5.2%
🟡 dist/src/compiled/@chat-adapter/slack/index.js   [#.......................] 438.4 kB 3.6%
🟡 dist/src/compiled/_chunks/workflow/attribute-... [#.......................] 371.6 kB 3.0%
🔴 Other published files                            [########################] 8.53 MB 69.5%
Installed footprint breakdown
Installed package size
🔴 @rolldown/binding-linux-x64-gnu [########################] 20.26 MB 38.9%
🔴 eve                             [#############...........] 10.99 MB 21.1%
🔴 ai                              [#######.................] 6.20 MB 11.9%
🔴 zod                             [######..................] 5.04 MB 9.7%
🟠 nitro                           [###.....................] 2.41 MB 4.6%
🟡 rolldown                        [#.......................] 771.7 kB 1.5%
🔴 Other installed packages        [########................] 6.46 MB 12.4%
Runtime dependencies (1)
Package Range Notes
nitro 3.0.260610-beta
Peer dependencies (12)
Package Range Notes
@opentelemetry/api ^1.0.0 optional peer
@sveltejs/kit ^2.0.0 optional peer
ai catalog:
braintrust ^3.0.0 optional peer
just-bash ^3.0.0 optional peer
microsandbox ^0.5.0 optional peer
next ^16.0.0 optional peer
nuxt ^4.0.0 optional peer
react ^19.0.0 optional peer
svelte ^5.0.0 optional peer
vite ^8.0.0 optional peer
vue ^3.5.0 optional peer
Function Drill-Down

Payload Size Graph

Unique function payload size and share of total
🔴 functions/.well-known/workflow/v1/flow.func     [########################] 5.63 MB 58.6%
🔴 functions/__server.func                         [#################.......] 3.98 MB 41.4%

Top Function Payloads

🟠 functions/.well-known/workflow/v1/flow.func • 1 public route • 5.63 MB
Metric Value
Public routes /.well-known/workflow/v1/flow
Runtime nodejs24.x
Handler index.mjs
Payload 5.63 MB
Function files 5.63 MB across 26 files
Traced dependencies 0 B
Signal 🟠 Bundled file __eve_nitro_handler__.mjs is 1.87 MB (33.2%)

🟠 🔎 Dependency Analysis

📦 Bundled files:

Bundled file size
🟠 __eve_nitro_handler__.mjs              [########################] 1.87 MB 33.2%
🟠 _chunks/runtime.mjs                    [#############...........] 975.4 kB 17.3%
🟡 _chunks/sandbox.mjs                    [##########..............] 766.0 kB 13.6%
🟡 _chunks/attribute-changes-DUxG-Gic.mjs [######..................] 473.2 kB 8.4%
🟡 _libs/@ai-sdk/gateway+[...].mjs        [#####...................] 409.9 kB 7.3%
🟠 Other bundled files                    [###############.........] 1.13 MB 20.1%

🧾 Vercel Config

{
  "handler": "index.mjs",
  "launcherType": "Nodejs",
  "shouldAddHelpers": false,
  "supportsResponseStreaming": true,
  "runtime": "nodejs24.x",
  "environment": {
    "NODE_OPTIONS": "--experimental-require-module"
  },
  "maxDuration": "max",
  "experimentalTriggers": [
    {
      "type": "queue/v2beta",
      "topic": "__eve_wkf_workflow_*",
      "consumer": "default",
      "retryAfterSeconds": 5,
      "initialDelaySeconds": 0
    }
  ]
}

🟠 functions/__server.func • 8 public routes, 1 internal alias • 3.98 MB
Metric Value
Public routes /
/eve/v1/callback/[token]
/eve/v1/connections/[name]/callback/[token]
/eve/v1/health
/eve/v1/info
/eve/v1/session
/eve/v1/session/[sessionId]
/eve/v1/session/[sessionId]/stream
Internal aliases /__server
Runtime nodejs24.x
Handler index.mjs
Payload 3.98 MB
Function files 3.98 MB across 21 files
Traced dependencies 0 B
Signal 🟠 Bundled file index.mjs is 1.51 MB (37.9%)

🟠 🔎 Dependency Analysis

📦 Bundled files:

Bundled file size
🟠 index.mjs                              [########################] 1.51 MB 37.9%
🟠 _chunks/runtime.mjs                    [##############..........] 883.8 kB 22.2%
🟠 _chunks/sandbox.mjs                    [############............] 766.0 kB 19.3%
🟡 _chunks/attribute-changes-DUxG-Gic.mjs [#######.................] 448.9 kB 11.3%
⚪ _libs/zod.mjs                          [##......................] 114.2 kB 2.9%
🟡 Other bundled files                    [####....................] 258.8 kB 6.5%

🧾 Vercel Config

{
  "handler": "index.mjs",
  "launcherType": "Nodejs",
  "shouldAddHelpers": false,
  "supportsResponseStreaming": true,
  "runtime": "nodejs24.x"
}

@AndrewBarba AndrewBarba merged commit 9d72bb1 into main Jun 25, 2026
37 checks passed
@AndrewBarba AndrewBarba deleted the barba/fix-turbo-attribute-race branch June 25, 2026 04:56
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