Repository navigation
Conversation
Datasets route to the agent bound to the declaring resources server (or to the declaring agent). #2724 added an optional `agent:` key on dataset entries as an override for a resources server shared by several agents. Review on #2724 argued that such a config should be an error to fix, not something to paper over per dataset — and after #2724/#2732 no config uses the key. - Drop `BenchmarkDatasetConfig.agent`, `dataset_agent_pins()`, and the `pin` parameter of `resolve_dataset_agent()` with its two pin errors. - Callers (benchmark discovery, eval prepare, rollout dispatch, environment validation) lose the pin plumbing; the metrics sidecar no longer needs to exclude the key. - A leftover `agent:` key fails config load with a pointer to the supported ways to choose a harness (agent_map, fan_out, agent-side declaration); the ambiguous-RS error names the same three. - Tests: pin tests replaced by rejection tests on both dataset models and through real discovery; the discovery == collate == dispatch agreement test is kept without the pin. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Adil Asif <adasif@nvidia.com>
Contributor
Author
|
/ok to test b089c1f |
This was referenced Oct 22, 2026
This branch was previously deployed
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.
Problem
#2724 added an optional
agent:key on dataset entries — a "pin" naming which agent runs a dataset when several agents reference the same resources server. Marta's review on #2724 (#2724 (comment)) argued the key should not exist: the only motivating case (bigcodebench) is a composition artifact, and an ambiguous config should be an error to fix, not something to paper over per dataset.She was right, and the migration bore it out: after #2724 and #2732 there is not a single
agent:pin in the repo, and the scaffold never emits one. The key is dead weight with a real cost — a second place, besides the config's own agent → resources-server wiring, where the harness can be chosen.Change
The
agent:key on dataset entries is removed. Routing has exactly two rules, both derived from the config's structure:Zero or several referencing agents is a config error at load time. The error names the three supported ways to choose a harness, none of them per-dataset:
A leftover
agent:key in a dataset entry is rejected when the config loads (not silently ignored), with the same pointers:What goes away:
BenchmarkDatasetConfig.agentanddataset_agent_pins();resolve_dataset_agent()loses itspinparameter and the two pin-specific errors.gym evalprepare, rollout dispatch, environment validation), including validation's "conflicting pins on one instance" check.Behavior
Identical for every config on
mainand on #2732 — none uses the key. The only capability lost is a static, per-dataset default harness for a resources server shared by several agents; that case now fails fast and points atagent_map,fan_out, or agent-side declaration. genrm_compare, the one shared-RS config with RS-declared data, already usesfan_out.Verification
DatasetConfig,BenchmarkDatasetConfig, and through real benchmark discovery.grepforagent:in dataset entries acrossbenchmarks/,resources_servers/,environments/,responses_api_agents/onmainand on chore(data): apply the dataset decoupling migration (agent_ref out of data files) #2732: zero hits.Relationship to other PRs
Follows up on #2724 (merged). Independent of #2732 (configs and data only); whichever lands second rebases trivially. Closes the loop on Marta's #2724 review comment.
🤖 Generated with Claude Code