Skip to content

water seed protocol - #2287

Open
kxayaphone79-png wants to merge 15 commits into
vercel:mainfrom
kxayaphone79-png:kubernetes-dockerfiles
Open

water seed protocol#2287
kxayaphone79-png wants to merge 15 commits into
vercel:mainfrom
kxayaphone79-png:kubernetes-dockerfiles

Conversation

@kxayaphone79-png

@kxayaphone79-png kxayaphone79-png commented Aug 19, 2026

Copy link
Copy Markdown

Summary

Validation

Checklist

  • I linked an issue with prior discussion confirming this change is wanted
  • 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: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
OpenTelemetry has a singleton half and a plural half. A process has one
tracer provider, so it has one resource, one sampler, and one propagator
set; it has as many destinations as the author cares to name. Folding
both into a single `otel()` made the collision a runtime error eve had to
detect. Splitting them makes it structurally impossible: one declaration
per file, and only one file exports `otel()`.

`otelIntegration({ traceExporter })` wraps the exporter in an eve-owned
batching processor rather than taking `@opentelemetry/sdk-trace-base` as
a runtime dependency — an exporter needs one thing done for it, and the
dependency arrives with the whole SDK behind it.

The two harness consumers move onto `#harness/otel-settings.js`, a store
both layouts write, so neither the turn loop nor the channel-request
wrapper has to know which one the build used.

Signed-off-by: Chad Hietala <chadhietala@gmail.com>
`otelIntegration()` takes `recordInputs` and `recordOutputs`. Content is
written onto the span if any destination wants it, and a destination that
declined drops it on its way out through a processor in front of its own —
so a local spool and a hosted backend no longer have to agree, while an
agent whose every destination declines still never materializes a prompt.

The redactor copies rather than strips in place: the span it is handed is
shared with every other processor in the pipeline.

`EVE_TRACES_CONTENT` becomes `localTraces()`'s override and only ever
narrows, rather than deciding what a hosted backend beside it receives.

Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
Signed-off-by: Chad Hietala <chadhietala@gmail.com>
@vercel

vercel Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

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

A member of the Team first needs to authorize it.

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.

2 participants