feat(agent evals): add the Pi agent as well as pointcloud sim evals - #3879
Draft
hvent90 wants to merge 3 commits into
Draft
feat(agent evals): add the Pi agent as well as pointcloud sim evals#3879hvent90 wants to merge 3 commits into
hvent90 wants to merge 3 commits into
Conversation
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
hvent90
force-pushed
the
feat/pi-eval-agent
branch
from
September 1, 2026 21:16
75026d1 to
0f44871
Compare
Restores the Pi agent split out of feat/agent-evals-split: Pi runs headless over the recording as a file with every model call captured by a local recording proxy, and the dimsim point-cloud mapping suite runs it under three prompt conditions.
… as an error Pi gains instructions, builtin_guidance, tools and passthrough_env fields so a suite can state its condition without restating the agent's own contract, and a skill can replace the built-in recording/robot guidance. The recording handed to Pi is now the case's selected streams written to a fresh store, not the whole source file. A Pi that exits non-zero (a rejected flag, say) raises with its stderr instead of passing as an empty answer. The point-cloud suite's conditions drop the shared prefix accordingly, and grade_rooms takes its visit radius as a parameter.
…tants The suite no longer carries per-agent condition text (selection guidance, access contracts, composed conditions) or run commands for one agent; the case is the instruction, the stack, and the grader. Whoever compares approaches passes their own text with --set instructions. Pi's docstring is a plain list of its settings. The provider name and the proxy's hop-by-hop header set are inlined where they are used instead of living as module constants.
hvent90
force-pushed
the
feat/pi-eval-agent
branch
from
September 2, 2026 17:59
0f44871 to
f79e647
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contribution path
Problem
We should have a control or baseline when doing agent evals. None such existed. An example of a control or baseline would simply be having Claude Code, Codex, OpenCode, Pi, or some similar established coding agent run against our agent evals.
Solution
Add a wrapper for the Pi agent harness.
How to Test
uv run dimos evals run dimos.evals.suites.dimsim_pointcloud_mapping \ --agent dimos.evals.agents.pi \ --set max_steps=30 \ # --set instructions="custom instructions that are appended to the prompt that will influence the agent to approach the task in a particular way"AI assistance
I used Fable 5 to write this PR and I further iterated on it from there.
Checklist