Skip to content

test(evals): Compare passive router on gpt-6-luna-decisions [do not merge] - #2240

Closed
sentry-junior[bot] wants to merge 4 commits into
mainfrom
exp/passive-router-luna-decisions
Closed

sentry-junior[bot] wants to merge 4 commits into
mainfrom
exp/passive-router-luna-decisions

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Oct 26, 2026

Copy link
Copy Markdown
Contributor

Experiment only. Do not merge.

This branch is #2238 (at d5953f8) plus one change: the default decision model is openai/gpt-6-luna-decisions instead of typesafe-ai/jev. The router code and policy are the same, so the passive evals compare the two decision models directly.

It targets main because the eval workflows run only on pull requests to main. The diff therefore includes all of #2238.

Compare the evals/conversation/participation.eval.ts results with the #2238 runs on Jev. Close this PR after the comparison.

via David Cramer.

--

View Junior Session [Sentry]

sentry-junior Bot and others added 4 commits October 26, 2026 19:48
Upgrade to AI SDK 7 and AI Gateway provider 4, which add
experimental_decide and gateway decision models. Pi does not depend on
the AI SDK, so the upgrade only touches Junior's direct callers and the
gateway URL that tests and evals fake (/v3/ai moved to /v4/ai).

The passive subscribed-thread router now asks one choice question
(reply, stay_quiet, unsubscribe) through completeDecision instead of a
structured LLM completion. The choice probability replaces the
self-reported confidence for the existing 0.7 gate. Decision models
return no prose, so reasonDetail now records the route and probability.

AI_DECISION_MODEL / decisionModelId selects the model. It defaults to
typesafe-ai/jev; openai/gpt-6-luna-decisions also works. Route cost uses
gateway input rates so passive_reply_routed events keep recording.

Co-Authored-By: David Cramer <david@sentry.io>
Jev routed plain-name messages to a coworker, such as "Alex, ...",
and follow-ups in that human exchange as replies. The passive
participation evals that stayed quiet on the old router now fail.

State the name-address and human-exchange rules in the policy, and give
the reply and stay_quiet criteria discriminating definitions instead of
restating the route name.
The name-address rule used the same names as the passive evals, and the
human-exchange rule listed the eval phrasings. Keep the general rules and
drop the examples so the evals measure the policy, not memorized cases.

Co-Authored-By: David Cramer <david@sentry.io>
Experiment only. Switch the default decision model so CI runs the
passive evals on OpenAI Decisions for comparison with Jev.

Co-Authored-By: David Cramer <david@sentry.io>
@vercel

vercel Bot commented Oct 26, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
junior-docs Ready Ready Preview Oct 26, 2026 9:04pm UTC

Request Review

@sentry-evals

sentry-evals Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Sentry Evals

junior-behavioral

Run Status Passed Failed Errored Cost Tokens Duration
Head Failed 73 2 0 $1.02 0 386.93s

Base commit 4bf3402 has no eval run to compare against.

junior-guardian

Run Status Passed Failed Errored Cost Tokens Duration
Head Passed 87 0 0 $0.02 0 22.34s

Base commit 4bf3402 has no eval run to compare against.

junior-integration

Run Status Passed Failed Errored Cost Tokens Duration
Head Passed 101 0 0 $0.97 0 295.34s

Base commit 4bf3402 has no eval run to compare against.

junior-router

Run Status Passed Failed Errored Cost Tokens Duration
Head Passed 12 0 0 $0.00 0 3.01s

Base commit 4bf3402 has no eval run to compare against.

@github-actions

Copy link
Copy Markdown
Contributor

2 screenshot changes — 2 changed · 0 added · 0 removed

Review screenshots in Frameshift

Gallery Chart Input Cache · Desktop
Gallery Chart Input Cache · Desktop
Changed
Workspace Create · Mobile
Workspace Create · Mobile
Changed

@sentry-junior

sentry-junior Bot commented Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

Comparison done. On the passive evals, Luna-decisions and Jev gave the same results: 7 of 8 passed, and both failed only "only shares topic vocabulary". Closing this experiment, as planned.

@dcramer dcramer closed this Oct 26, 2026

This branch was successfully deployed

1 active deployment
Preview – junior-docs — 951ebe8b Deployed Oct 26, 2026 by vercel[bot]
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